void AttackStart(Unit* who) { if (Phase1) AttackStartNoMove(who); else ScriptedAI::AttackStart(who); }
void ScriptedAI::AttackStart(Unit* who) { if (IsCombatMovementAllowed()) CreatureAI::AttackStart(who); else AttackStartNoMove(who); }
void AttackStart(Unit* pWho) { if (!pWho) return; AttackStartNoMove(pWho); }
void DoMeleeAttackIfReady() { if (me->isAttackReady() && !me->IsNonMeleeSpellCasted(false)) { if (me->IsWithinMeleeRange(me->getVictim())) { me->AttackerStateUpdate(me->getVictim()); me->resetAttackTimer(); } else { Unit *pTarget = NULL; pTarget = me->SelectNearestTarget(5); if (pTarget) { if (Phase1) AttackStartNoMove(pTarget); else ScriptedAI::AttackStart(pTarget); } else { me->CastSpell(me, SPELL_FLAME_BUFFET, true); me->setAttackTimer(BASE_ATTACK, 3000); } } } }
void AttackStart(Unit* who) { if (!who) return; AttackStartNoMove(who); }
void AttackStart(Unit* who) { if (!Intro && !Flying) if (Phase == 1) ScriptedAI::AttackStart(who); else AttackStartNoMove(who); }
void MoveInLineOfSight(Unit *who) { if (!Intro && !Flying) if (!me->getVictim() && me->canStartAttack(who)) if (Phase == 1) ScriptedAI::AttackStart(who); else AttackStartNoMove(who); }
void SentryDownBy(Unit* pKiller) { if (sentryDown) { AttackStartNoMove(pKiller); sentryDown = false; } else sentryDown = true; }
void ScriptedAI::AttackStart(Unit* pWho, bool melee) { if (!pWho) return; if (!melee) AttackStartNoMove(pWho); else AttackStart(pWho); }
void JustSummoned(Creature *summoned) { if (!summoned) return; Unit *victim = m_creature->getVictim(); if (summoned->GetEntry() == ENTRY_NAZAN) { CAST_AI(boss_nazanAI, summoned->AI())->VazrudenGUID = VazrudenGUID; summoned->AddUnitMovementFlag(MOVEMENTFLAG_LEVITATING); summoned->SetSpeed(MOVE_FLIGHT, 2.5); if (victim) AttackStartNoMove(victim); } else if (victim) summoned->AI()->AttackStart(victim); }
void MoveInLineOfSight(Unit* who) override { if (!who) return; if (me->IsInCombat()) return; if (who->GetTypeId() != TYPEID_PLAYER) return; if (me->GetDistance(who) > 50.0f) return; AttackStartNoMove(who); }
void JustSummoned(Creature* summoned) override { if (!summoned) return; Unit* victim = me->GetVictim(); if (summoned->GetEntry() == NPC_NAZAN) { summoned->SetDisableGravity(true); summoned->SetSpeed(MOVE_FLIGHT, 2.5f); if (victim) AttackStartNoMove(victim); } else if (victim) summoned->AI()->AttackStart(victim); }
void JustSummoned(Creature* pSummoned) { if (!pSummoned) return; Unit* pVictim = me->getVictim(); if (pSummoned->GetEntry() == ENTRY_NAZAN) { CAST_AI(boss_nazan::boss_nazanAI, pSummoned->AI())->VazrudenGUID = VazrudenGUID; pSummoned->AddUnitMovementFlag(MOVEMENTFLAG_LEVITATING); pSummoned->SetSpeed(MOVE_FLIGHT, 2.5f); if (pVictim) AttackStartNoMove(pVictim); } else if (pVictim) pSummoned->AI()->AttackStart(pVictim); }
void JustSummoned(Creature* summoned) { if (!summoned) return; Unit* victim = me->GetVictim(); if (summoned->GetEntry() == ENTRY_NAZAN) { CAST_AI(boss_nazan::boss_nazanAI, summoned->AI())->VazrudenGUID = VazrudenGUID; summoned->SetDisableGravity(true); summoned->SetSpeed(MOVE_FLIGHT, 2.5f); if (victim) AttackStartNoMove(victim); } else if (victim) summoned->AI()->AttackStart(victim); }
void AttackStart(Unit* who) { AttackStartNoMove(who); }