Я делаю собственный 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();
}
};
Так кто-нибудь может мне помочь?