Как сделать так, чтобы аура заклинания срабатывала только при проках? - PullRequest
2 голосов
/ 01 апреля 2019

Я делаю собственный AuraScript для заклинания воина под названием «Отражение заклинания», я хочу, чтобы эта аура отражала заклинание, только если владелец ауры находится перед заклинателем, откуда приходит заклинание.

Я попробовал это с procs и сделал оператор if if(GetTarget()->isInFront(eventInfo.GetProcTarget()), но я не смог найти правильный способ заставить ауру отражать только когда она работает.

Мой код до сих пор:

class spell_custom_reflect : public SpellScriptLoader
{
    public:
    spell_custom_reflect() : SpellScriptLoader("spell_custom_reflect") { }

        class spell_custom_reflect_AuraScript : public AuraScript
        {
            PrepareAuraScript(spell_custom_reflect_AuraScript);

            bool CheckProc(ProcEventInfo& eventInfo)
            {
                return if(GetTarget()->isInFront(eventInfo.GetProcTarget()))
            }

            void HandleEffectProc(AuraEffect const* aurEff, ProcEventInfo& eventInfo)
            {
                // I want to reflect only when the aura effect procs.
            }

            void Register()
            {
                DoCheckProc += AuraCheckProcFn(spell_custom_reflect_AuraScript::CheckProc);
                OnEffectProc += AuraEffectProcFn(spell_custom_reflect_AuraScript::HandleEffectProc, EFFECT_0, SPELL_AURA_DUMMY);
            }
        };

        AuraScript* GetAuraScript() const
        {
            return new spell_custom_reflect_AuraScript();
        }
};

Так кто-нибудь может мне помочь?

...