TrinityCore
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
UnitAI Class Referenceabstract

#include <UnitAI.h>

Public Member Functions

 UnitAI (Unit *unit)
 
virtual ~UnitAI ()
 
virtual bool CanAIAttack (Unit const *) const
 
virtual void AttackStart (Unit *)
 
virtual void UpdateAI (uint32 diff)=0
 
virtual void InitializeAI ()
 
virtual void Reset ()
 
virtual void OnCharmed (bool apply)=0
 
virtual void DoAction (int32)
 
virtual uint32 GetData (uint32) const
 
virtual void SetData (uint32, uint32)
 
virtual void SetGUID (ObjectGuid, int32=0)
 
virtual ObjectGuid GetGUID (int32=0) const
 
UnitSelectTarget (SelectAggroTarget targetType, uint32 position=0, float dist=0.0f, bool playerOnly=false, int32 aura=0)
 
template<class PREDICATE >
UnitSelectTarget (SelectAggroTarget targetType, uint32 position, PREDICATE const &predicate)
 
void SelectTargetList (std::list< Unit * > &targetList, uint32 num, SelectAggroTarget targetType, float dist=0.0f, bool playerOnly=false, int32 aura=0)
 
template<class PREDICATE >
void SelectTargetList (std::list< Unit * > &targetList, PREDICATE const &predicate, uint32 maxTargets, SelectAggroTarget targetType)
 
virtual void DamageDealt (Unit *, uint32 &, DamageEffectType)
 
virtual void DamageTaken (Unit *, uint32 &)
 
virtual void HealReceived (Unit *, uint32 &)
 
virtual void HealDone (Unit *, uint32 &)
 
virtual void SpellInterrupted (uint32, uint32)
 
void AttackStartCaster (Unit *victim, float dist)
 
void DoCast (uint32 spellId)
 
void DoCast (Unit *victim, uint32 spellId, bool triggered=false)
 
void DoCastVictim (uint32 spellId, bool triggered=false)
 
void DoCastAOE (uint32 spellId, bool triggered=false)
 
void DoMeleeAttackIfReady ()
 
bool DoSpellAttackIfReady (uint32 spellId)
 
virtual void sGossipHello (Player *)
 
virtual void sGossipSelect (Player *, uint32, uint32)
 
virtual void sGossipSelectCode (Player *, uint32, uint32, char const *)
 
virtual void sQuestAccept (Player *, Quest const *)
 
virtual void sQuestSelect (Player *, Quest const *)
 
virtual void sQuestReward (Player *, Quest const *, uint32)
 
virtual bool sOnDummyEffect (Unit *, uint32, SpellEffIndex)
 
virtual void sOnGameEvent (bool, uint16)
 

Static Public Member Functions

static void FillAISpellInfo ()
 

Static Public Attributes

static AISpellInfoTypeAISpellInfo
 

Protected Attributes

Unit *const me
 

Private Member Functions

 UnitAI (UnitAI const &right)=delete
 
UnitAIoperator= (UnitAI const &right)=delete
 

Constructor & Destructor Documentation

UnitAI::UnitAI ( Unit unit)
inlineexplicit
123 : me(unit) { }
Unit *const me
Definition: UnitAI.h:121
virtual UnitAI::~UnitAI ( )
inlinevirtual
124 { }
UnitAI::UnitAI ( UnitAI const right)
privatedelete

Member Function Documentation

void UnitAI::AttackStart ( Unit victim)
virtual

Reimplemented in npc_warmage_coldarra::npc_warmage_coldarraAI, npc_spirit_bomb::npc_spirit_bombAI, npc_the_lich_king_tirion_dawn::npc_the_lich_king_tirion_dawnAI, npc_gunship_gunner::npc_gunship_gunnerAI, npc_valkyr_shadowguard::npc_valkyr_shadowguardAI, npc_scion_of_eternity::npc_scion_of_eternityAI, npc_tonk_mine::npc_tonk_mineAI, npc_phoenix_egg_tk::npc_phoenix_egg_tkAI, boss_maiev_shadowsong::boss_maievAI, npc_lord_illidan_stormrage::npc_lord_illidan_stormrageAI, boss_julianne::boss_julianneAI, boss_grand_astromancer_capernian::boss_grand_astromancer_capernianAI, npc_varian_toc::npc_varian_tocAI, npc_garrosh_toc::npc_garrosh_tocAI, npc_ashtongue_sorcerer::npc_ashtongue_sorcererAI, boss_faction_championsAI, npc_massive_jormungar::npc_massive_jormungarAI, boss_roar::boss_roarAI, boss_veklor::boss_veklorAI, npc_ashtongue_channeler::npc_ashtongue_channelerAI, npc_felmyst_trail::npc_felmyst_trailAI, boss_malygos::boss_malygosAI, npc_ferocious_rhino::npc_ferocious_rhinoAI, npc_flame_patch_alar::npc_flame_patch_alarAI, boss_illidan_stormrage::boss_illidan_stormrageAI, npc_jedogas_aufseher_trigger::npc_jedogas_aufseher_triggerAI, npc_tirion_toc::npc_tirion_tocAI, npc_green_dragon_combat_trigger::npc_green_dragon_combat_triggerAI, boss_headless_horseman::boss_headless_horsemanAI, boss_tinhead::boss_tinheadAI, npc_highlord_darion_mograine::npc_highlord_darion_mograineAI, npc_frenzied_worgen::npc_frenzied_worgenAI, npc_living_mojo::npc_living_mojoAI, npc_arthas::npc_arthasAI, npc_jedoga_initiand::npc_jedoga_initiandAI, npc_egg_pile::npc_egg_pileAI, npc_molten_golem::npc_molten_golemAI, boss_alythess::boss_alythessAI, npc_lesser_shadow_fissure::npc_lesser_shadow_fissureAI, npc_molten_barrage::npc_molten_barrageAI, advisorbase_ai, boss_strawman::boss_strawmanAI, npc_icefang::npc_icefangAI, boss_magtheridon::boss_magtheridonAI, npc_ravenous_furbolg::npc_ravenous_furbolgAI, boss_deathbringer_saurfang::boss_deathbringer_saurfangAI, npc_weegli_blastfuse::npc_weegli_blastfuseAI, npc_annhylde_the_caller::npc_annhylde_the_callerAI, boss_valithria_dreamwalker::boss_valithria_dreamwalkerAI, npc_warden_mellichar::npc_warden_mellicharAI, npc_illidari_council::npc_illidari_councilAI, npc_hive_zara_larva::npc_hive_zara_larvaAI, boss_four_horsemen::boss_four_horsemenAI, boss_lady_deathwhisper::boss_lady_deathwhisperAI, boss_high_inquisitor_whitemane::boss_high_inquisitor_whitemaneAI, boss_olm_the_summoner::boss_olm_the_summonerAI, npc_zelfrax::npc_zelfraxAI, boss_shade_of_akama::boss_shade_of_akamaAI, ScriptedAI, npc_amanitar_mushrooms::npc_amanitar_mushroomsAI, boss_dorothee::boss_dorotheeAI, boss_brutallus::boss_brutallusAI, boss_nightbane::boss_nightbaneAI, npc_blood_elf_council_voice_trigger::npc_blood_elf_council_voice_triggerAI, boss_felmyst::boss_felmystAI, boss_grand_warlock_nethekurse::boss_grand_warlock_nethekurseAI, boss_ingvar_the_plunderer::boss_ingvar_the_plundererAI, boss_tyrannus::boss_tyrannusAI, boss_alar::boss_alarAI, npc_demon_chain::npc_demon_chainAI, npc_underbog_mushroom::npc_underbog_mushroomAI, npc_abyssal::npc_abyssalAI, boss_palehoof::boss_palehoofAI, npc_medivh_bm::npc_medivh_bmAI, boss_urom::boss_uromAI, boss_volkhan::boss_volkhanAI, boss_jedoga_shadowseeker::boss_jedoga_shadowseekerAI, npc_announcer_toc10::npc_announcer_toc10AI, boss_novos::boss_novosAI, npc_millhouse_manastorm::npc_millhouse_manastormAI, VehicleAI, boss_baron_rivendare::boss_baron_rivendareAI, SmartAI, TurretAI, npc_doom_blossom::npc_doom_blossomAI, ArcherAI, npc_mageguard_dalaran::npc_mageguard_dalaranAI, npc_webbed_creature::npc_webbed_creatureAI, CasterAI, npc_escortAI, NullCreatureAI, FollowerAI, PossessedAI, PetAI, TotemAI, and PassiveAI.

30 {
31  if (victim && me->Attack(victim, true))
32  {
33  // Clear distracted state on attacking
35  {
37  me->GetMotionMaster()->Clear();
38  }
39  me->GetMotionMaster()->MoveChase(victim);
40  }
41 }
bool Attack(Unit *victim, bool meleeAttack)
Definition: Unit.cpp:7222
Definition: Unit.h:562
void Clear(bool reset=true)
Definition: MotionMaster.h:138
void MoveChase(Unit *target, float dist=0.0f, float angle=0.0f)
Definition: MotionMaster.cpp:241
MotionMaster * GetMotionMaster()
Definition: Unit.h:2101
Unit *const me
Definition: UnitAI.h:121
void ClearUnitState(uint32 f)
Definition: Unit.h:1396
bool HasUnitState(const uint32 f) const
Definition: Unit.h:1395

+ Here is the call graph for this function:

void UnitAI::AttackStartCaster ( Unit victim,
float  dist 
)
44 {
45  if (victim && me->Attack(victim, false))
46  me->GetMotionMaster()->MoveChase(victim, dist);
47 }
bool Attack(Unit *victim, bool meleeAttack)
Definition: Unit.cpp:7222
void MoveChase(Unit *target, float dist=0.0f, float angle=0.0f)
Definition: MotionMaster.cpp:241
MotionMaster * GetMotionMaster()
Definition: Unit.h:2101
Unit *const me
Definition: UnitAI.h:121

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

virtual void UnitAI::DamageDealt ( Unit ,
uint32 ,
DamageEffectType   
)
inlinevirtual
virtual void UnitAI::DamageTaken ( Unit ,
uint32  
)
inlinevirtual

Reimplemented in npc_uther_quel_delar::npc_uther_quel_delarAI, npc_terenas_menethil::npc_terenas_menethilAI, npc_training_dummy::npc_training_dummyAI, npc_gunship_boarding_addAI, npc_akama_illidan::npc_akama_illidanAI, npc_immortal_guardian::npc_immortal_guardianAI, npc_valkyr_shadowguard::npc_valkyr_shadowguardAI, npc_dark_nucleus::npc_dark_nucleusAI, npc_shambling_horror_icc::npc_shambling_horror_iccAI, npc_muradin_bronzebeard_igb::npc_muradin_bronzebeard_igbAI, boss_romulo::boss_romuloAI, boss_maiev_shadowsong::boss_maievAI, npc_the_lich_king_escape_hor::npc_the_lich_king_escape_horAI, boss_julianne::boss_julianneAI, boss_aerial_command_unit::boss_aerial_command_unitAI, npc_crok_scourgebane::npc_crok_scourgebaneAI, npc_volatile_felfire_fiend::npc_volatile_felfire_fiendAI, boss_brain_of_yogg_saron::boss_brain_of_yogg_saronAI, npc_tesla::npc_teslaAI, npc_high_overlord_saurfang_igb::npc_high_overlord_saurfang_igbAI, boss_vx_001::boss_vx_001AI, boss_prince_valanar_icc::boss_prince_valanarAI, npc_pool_of_tar::npc_pool_of_tarAI, npc_feugen::npc_feugenAI, boss_cthun::cthunAI, npc_collapsing_star::npc_collapsing_starAI, boss_elder_stonebark::boss_elder_stonebarkAI, npc_jaina_or_sylvanas_escape_hor::npc_jaina_or_sylvanas_escape_horAI, npc_anubarak_spike::npc_anubarak_spikeAI, boss_flame_leviathan_defense_turret::boss_flame_leviathan_defense_turretAI, boss_sara::boss_saraAI, npc_boombot::npc_boombotAI, boss_leviathan_mk_ii::boss_leviathan_mk_iiAI, boss_prince_taldaram_icc::boss_prince_taldaramAI, npc_gunship::npc_gunshipAI, boss_the_lich_king::boss_the_lich_kingAI, boss_sathrovarr::boss_sathrovarrAI, npc_frost_sphere::npc_frost_sphereAI, boss_headless_horseman::boss_headless_horsemanAI, boss_taerar::boss_taerarAI, npc_stalagg::npc_stalaggAI, boss_illidan_stormrage::boss_illidan_stormrageAI, boss_kaelthas::boss_kaelthasAI, npc_death_knight_initiate::npc_death_knight_initiateAI, npc_scourge_hulk::npc_scourge_hulkAI, boss_essence_of_desire::boss_essence_of_desireAI, npc_hellfire_channeler::npc_hellfire_channelerAI, npc_gothik_minion::npc_gothik_minionAI, npc_felkael_phoenix::npc_felkael_phoenixAI, boss_twilight_halion::boss_twilight_halionAI, boss_emeriss::boss_emerissAI, boss_algalon_the_observer::boss_algalon_the_observerAI, npc_ember_of_alar::npc_ember_of_alarAI, boss_kalec::boss_kalecAI, boss_shade_of_aran::boss_aranAI, boss_prince_keleseth_icc::boss_prince_kelesethAI, boss_essence_of_suffering::boss_essence_of_sufferingAI, npc_brann_hos::npc_brann_hosAI, boss_illidari_councilAI, npc_molten_golem::npc_molten_golemAI, npc_saronite_vapors::npc_saronite_vaporsAI, boss_eye_of_cthun::eye_of_cthunAI, boss_archimonde::boss_archimondeAI, boss_sindragosa::boss_sindragosaAI, boss_hodir::boss_hodirAI, boss_lady_deathwhisper::boss_lady_deathwhisperAI, boss_lethon::boss_lethonAI, boss_kelthuzad::boss_kelthuzadAI, boss_valithria_dreamwalker::boss_valithria_dreamwalkerAI, advisorbase_ai, boss_gothik::boss_gothikAI, boss_halion::boss_halionAI, boss_deathbringer_saurfang::boss_deathbringer_saurfangAI, boss_kalecgos::boss_kalecgosAI, boss_professor_putricide::boss_professor_putricideAI, npc_spark_of_ionar::npc_spark_of_ionarAI, boss_freya::boss_freyaAI, npc_snobold_vassal::npc_snobold_vassalAI, npc_iron_construct::npc_iron_constructAI, npc_ohgan::npc_ohganAI, boss_paletress::boss_paletressAI, boss_drakkari_elemental::boss_drakkari_elementalAI, boss_high_inquisitor_whitemane::boss_high_inquisitor_whitemaneAI, npc_ice_block::npc_ice_blockAI, boss_ysondre::boss_ysondreAI, npc_rotting_forest_rager::npc_rotting_forest_ragerAI, npc_ichor_globule::npc_ichor_globuleAI, npc_head::npc_headAI, boss_black_knight::boss_black_knightAI, boss_xt002::boss_xt002_AI, npc_vrykul_skeleton::npc_vrykul_skeletonAI, npc_baltharus_the_warborn_clone::npc_baltharus_the_warborn_cloneAI, npc_tournament_training_dummy::npc_tournament_training_dummyAI, boss_felmyst::boss_felmystAI, npc_doomfire_targetting::npc_doomfire_targettingAI, boss_gormok::boss_gormokAI, boss_skarvald_the_constructor::boss_skarvald_the_constructorAI, boss_muru::boss_muruAI, boss_prince_taldaram::boss_prince_taldaramAI, boss_ymiron::boss_ymironAI, boss_doomrel::boss_doomrelAI, npc_infested_root_walker::npc_infested_root_walkerAI, boss_eadric::boss_eadricAI, boss_ionar::boss_ionarAI, npc_salsalabim::npc_salsalabimAI, npc_amanitar_mushrooms::npc_amanitar_mushroomsAI, boss_eregos::boss_eregosAI, npc_private_hendel::npc_private_hendelAI, boss_loken::boss_lokenAI, npc_doomfire::npc_doomfireAI, boss_noth::boss_nothAI, boss_felblood_kaelthas::boss_felblood_kaelthasAI, boss_mandokir::boss_mandokirAI, boss_mother_shahraz::boss_shahrazAI, boss_alar::boss_alarAI, netherspite_infernal::netherspite_infernalAI, boss_drakkari_colossus::boss_drakkari_colossusAI, ScriptedAI, boss_baltharus_the_warborn::boss_baltharus_the_warbornAI, boss_keristrasza::boss_keristraszaAI, npc_core_rager::npc_core_ragerAI, boss_slabhide::boss_slabhideAI, npc_ancient_wisp::npc_ancient_wispAI, boss_talon_king_ikiss::boss_talon_king_ikissAI, boss_scarlet_commander_mograine::boss_scarlet_commander_mograineAI, npc_firesworn::npc_fireswornAI, boss_garfrost::boss_garfrostAI, boss_earthrager_ptah::boss_earthrager_ptahAI, npc_inner_demon::npc_inner_demonAI, boss_darkweaver_syth::boss_darkweaver_sythAI, npc_tapoke_slim_jahn::npc_tapoke_slim_jahnAI, boss_mal_ganis::boss_mal_ganisAI, npc_sc_millhouse_manastorm::npc_sc_millhouse_manastormAI, boss_ingvar_the_plunderer::boss_ingvar_the_plundererAI, boss_temple_guardian_anhuur::boss_temple_guardian_anhuurAI, boss_twinemperorsAI, boss_razorgore::boss_razorgoreAI, boss_balinda::boss_balindaAI, boss_bronjahm::boss_bronjahmAI, boss_ozruk::boss_ozrukAI, boss_viscidus::boss_viscidusAI, boss_vexallus::boss_vexallusAI, SmartAI, npc_unkor_the_ruthless::npc_unkor_the_ruthlessAI, boss_herod::boss_herodAI, boss_ormorok::boss_ormorokAI, boss_anzu::boss_anzuAI, boss_pathaleon_the_calculator::boss_pathaleon_the_calculatorAI, boss_volazj::boss_volazjAI, boss_thorngrin_the_tender::boss_thorngrin_the_tenderAI, npc_naga_distiller::npc_naga_distillerAI, boss_commander_sarannis::boss_commander_sarannisAI, boss_falric::boss_falricAI, boss_interrogator_vishas::boss_interrogator_vishasAI, boss_bloodmage_thalnos::boss_bloodmage_thalnosAI, boss_kormok::boss_kormokAI, boss_moam::boss_moamAI, boss_golemagg::boss_golemaggAI, boss_eck::boss_eckAI, boss_kurinnaxx::boss_kurinnaxxAI, npc_argent_valiant::npc_argent_valiantAI, CritterAI, boss_pit_lord_argaloth::boss_pit_lord_argalothAI, boss_mother_smolderweb::boss_mothersmolderwebAI, boss_azshir_the_sleepless::boss_azshir_the_sleeplessAI, boss_general_angerforge::boss_general_angerforgeAI, boss_aku_mai::boss_aku_maiAI, boss_vectus::boss_vectusAI, boss_magmus::boss_magmusAI, boss_death_knight_darkreaver::boss_death_knight_darkreaverAI, and hyjal_trashAI.

228 { }

+ Here is the caller graph for this function:

virtual void UnitAI::DoAction ( int32  )
inlinevirtual

Reimplemented in npc_uther_quel_delar::npc_uther_quel_delarAI, npc_spring_rabbit::npc_spring_rabbitAI, npc_hidden_cultist::npc_hidden_cultistAI, npc_trapped_mammoth_calf::npc_trapped_mammoth_calfAI, npc_broken_frostmourne::npc_broken_frostmourneAI, npc_turned_champion::npc_turned_championAI, npc_terenas_menethil::npc_terenas_menethilAI, npc_yogg_saron_keeper::npc_yogg_saron_keeperAI, npc_strangulate_vehicle::npc_strangulate_vehicleAI, npc_arcane_overload::npc_arcane_overloadAI, npc_mimiron_computer::npc_mimiron_computerAI, npc_nexus_lord::npc_nexus_lordAI, npc_caster_hover_disk::npc_caster_hover_diskAI, npc_argent_captainAI, npc_kinetic_bomb::npc_kinetic_bombAI, npc_melee_hover_disk::npc_melee_hover_diskAI, npc_lorekeeper::npc_lorekeeperAI, boss_maiev_shadowsong::boss_maievAI, npc_ball_of_flame::npc_ball_of_flameAI, npc_tirion_fordring_tft::npc_tirion_fordringAI, npc_muradin_bronzebeard_igb::npc_muradin_bronzebeard_igbAI, boss_aerial_command_unit::boss_aerial_command_unitAI, npc_ominous_cloud::npc_ominous_cloudAI, boss_brain_of_yogg_saron::boss_brain_of_yogg_saronAI, npc_blood_queen_lana_thel::npc_blood_queen_lana_thelAI, npc_scarlet_miner_cart::npc_scarlet_miner_cartAI, npc_meteor_strike::npc_meteor_strikeAI, boss_yogg_saron::boss_yogg_saronAI, boss_elder_ironbranch::boss_elder_ironbranchAI, npc_saurfang_event::npc_saurfang_eventAI, npc_crok_scourgebane::npc_crok_scourgebaneAI, npc_meteor_strike_initial::npc_meteor_strike_initialAI, boss_vx_001::boss_vx_001AI, boss_prince_valanar_icc::boss_prince_valanarAI, npc_orb_carrier::npc_orb_carrierAI, npc_high_overlord_saurfang_igb::npc_high_overlord_saurfang_igbAI, boss_elder_stonebark::boss_elder_stonebarkAI, npc_brann_bronzebeard_algalon::npc_brann_bronzebeard_algalonAI, boss_cthun::cthunAI, boss_sara::boss_saraAI, npc_muradin_bronzebeard_icc::npc_muradin_bronzebeard_iccAI, npc_jaina_or_sylvanas_escape_hor::npc_jaina_or_sylvanas_escape_horAI, npc_rimefang::npc_rimefangAI, boss_sister_svalna::boss_sister_svalnaAI, npc_demolitionist_legoso::npc_demolitionist_legosoAI, npc_colonel_jules::npc_colonel_julesAI, npc_feugen::npc_feugenAI, boss_elder_brightleaf::boss_elder_brightleafAI, npc_living_constellation::npc_living_constellationAI, npc_risen_archmage::npc_risen_archmageAI, boss_leviathan_mk_ii::boss_leviathan_mk_iiAI, boss_sathrovarr::boss_sathrovarrAI, boss_prince_taldaram_icc::boss_prince_taldaramAI, npc_spinestalker::npc_spinestalkerAI, npc_frost_freeze_trap::npc_frost_freeze_trapAI, npc_creature_generator_akama::npc_creature_generator_akamaAI, npc_high_overlord_saurfang_icc::npc_high_overlord_saurfangAI, npc_expedition_commander::npc_expedition_commanderAI, npc_halion_controller::npc_halion_controllerAI, boss_voice_of_yogg_saron::boss_voice_of_yogg_saronAI, npc_ice_tomb::npc_ice_tombAI, boss_the_lich_king::boss_the_lich_kingAI, boss_razorscale::boss_razorscaleAI, boss_deathbringer_saurfang::boss_deathbringer_saurfangAI, npc_green_dragon_combat_trigger::npc_green_dragon_combat_triggerAI, npc_nerubian_burrower::npc_nerubian_burrowerAI, npc_barada::npc_baradaAI, npc_gothik_minion::npc_gothik_minionAI, npc_stalagg::npc_stalaggAI, npc_simon_bunny::npc_simon_bunnyAI, boss_stormcaller_brundir::boss_stormcaller_brundirAI, boss_archimonde::boss_archimondeAI, boss_hodir::boss_hodirAI, boss_prince_keleseth_icc::boss_prince_kelesethAI, boss_kaelthas::boss_kaelthasAI, boss_flame_leviathan::boss_flame_leviathanAI, npc_swarm_scarab::npc_swarm_scarabAI, boss_malygos::boss_malygosAI, npc_egg_pile::npc_egg_pileAI, boss_professor_putricide::boss_professor_putricideAI, boss_mimiron::boss_mimironAI, npc_sinclari_vh::npc_sinclariAI, npc_chained_spirit::npc_chained_spiritAI, npc_weegli_blastfuse::npc_weegli_blastfuseAI, npc_brann_bronzebeard_anraphet::npc_brann_bronzebeard_anraphetAI, npc_snobold_vassal::npc_snobold_vassalAI, boss_algalon_the_observer::boss_algalon_the_observerAI, boss_krick::boss_krickAI, boss_valithria_dreamwalker::boss_valithria_dreamwalkerAI, boss_runemaster_molgeim::boss_runemaster_molgeimAI, boss_rimefang::boss_rimefangAI, boss_lord_marrowgar::boss_lord_marrowgarAI, npc_big_ooze::npc_big_oozeAI, npc_sironas::npc_sironasAI, boss_sindragosa::boss_sindragosaAI, boss_drakkari_elemental::boss_drakkari_elementalAI, boss_twin_baseAI, boss_general_vezax::boss_general_vezaxAI, boss_lady_deathwhisper::boss_lady_deathwhisperAI, npc_volcano::npc_volcanoAI, boss_xt002::boss_xt002_AI, npc_jaina_fos::npc_jaina_fosAI, boss_blood_queen_lana_thel::boss_blood_queen_lana_thelAI, boss_razorscale_controller::boss_razorscale_controllerAI, npc_azure_ring_captain::npc_azure_ring_captainAI, npc_snufflenose_gopher::npc_snufflenose_gopherAI, npc_ethereal_sphere::npc_ethereal_sphereAI, boss_shade_of_akama::boss_shade_of_akamaAI, boss_horAI, boss_palehoof::boss_palehoofAI, boss_thaddius::boss_thaddiusAI, boss_tyrannus::boss_tyrannusAI, boss_anraphet::boss_anraphetAI, npc_sergeant_bly::npc_sergeant_blyAI, boss_ignis::boss_ignis_AI, npc_void_sentry::npc_void_sentryAI, boss_sapphiron::boss_sapphironAI, boss_mandokir::boss_mandokirAI, boss_kalecgos::boss_kalecgosAI, boss_steelbreaker::boss_steelbreakerAI, boss_majordomo::boss_majordomoAI, boss_auriaya::boss_auriayaAI, boss_temple_guardian_anhuur::boss_temple_guardian_anhuurAI, boss_novos::boss_novosAI, boss_magus_telestra::boss_magus_telestraAI, boss_slabhide::boss_slabhideAI, boss_jedoga_shadowseeker::boss_jedoga_shadowseekerAI, SmartAI, boss_eregos::boss_eregosAI, boss_ingvar_the_plunderer::boss_ingvar_the_plundererAI, generic_boss_controllerAI, boss_sjonnir::boss_sjonnirAI, boss_drakkari_colossus::boss_drakkari_colossusAI, boss_ossirian::boss_ossirianAI, boss_high_king_maulgar::boss_high_king_maulgarAI, boss_alizabal::boss_alizabalAI, npc_voljin_zulaman::npc_voljin_zulamanAI, boss_ichoron::boss_ichoronAI, boss_razorgore::boss_razorgoreAI, boss_balinda::boss_balindaAI, boss_corborus::boss_corborusAI, npc_sylvanas_fos::npc_sylvanas_fosAI, boss_buru::boss_buruAI, boss_broggok::boss_broggokAI, npc_ioc_gunship_captain::npc_ioc_gunship_captainAI, boss_ambassador_hellmaw::boss_ambassador_hellmawAI, boss_selin_fireheart::boss_selin_fireheartAI, boss_baltharus_the_warborn::boss_baltharus_the_warbornAI, boss_warchief_kargath_bladefist::boss_warchief_kargath_bladefistAI, boss_moam::boss_moamAI, boss_king_dred::boss_king_dredAI, boss_galvangar::boss_galvangarAI, and npc_xerestrasza::npc_xerestraszaAI.

138 { }

+ Here is the caller graph for this function:

void UnitAI::DoCast ( uint32  spellId)
102 {
103  Unit* target = NULL;
104 
105  switch (AISpellInfo[spellId].target)
106  {
107  default:
108  case AITARGET_SELF:
109  target = me;
110  break;
111  case AITARGET_VICTIM:
112  target = me->GetVictim();
113  break;
114  case AITARGET_ENEMY:
115  {
116  if (SpellInfo const* spellInfo = sSpellMgr->GetSpellInfo(spellId))
117  {
118  bool playerOnly = spellInfo->HasAttribute(SPELL_ATTR3_ONLY_TARGET_PLAYERS);
119  target = SelectTarget(SELECT_TARGET_RANDOM, 0, spellInfo->GetMaxRange(false), playerOnly);
120  }
121  break;
122  }
123  case AITARGET_ALLY:
124  target = me;
125  break;
126  case AITARGET_BUFF:
127  target = me;
128  break;
129  case AITARGET_DEBUFF:
130  {
131  if (SpellInfo const* spellInfo = sSpellMgr->GetSpellInfo(spellId))
132  {
133  bool playerOnly = spellInfo->HasAttribute(SPELL_ATTR3_ONLY_TARGET_PLAYERS);
134  float range = spellInfo->GetMaxRange(false);
135 
136  DefaultTargetSelector targetSelector(me, range, playerOnly, -(int32)spellId);
137  if (!(spellInfo->AuraInterruptFlags & AURA_INTERRUPT_FLAG_NOT_VICTIM)
138  && targetSelector(me->GetVictim()))
139  target = me->GetVictim();
140  else
141  target = SelectTarget(SELECT_TARGET_RANDOM, 0, targetSelector);
142  }
143  break;
144  }
145  }
146 
147  if (target)
148  me->CastSpell(target, spellId, false);
149 }
Definition: SharedDefines.h:472
static AISpellInfoType * AISpellInfo
Definition: UnitAI.h:250
Definition: CreatureAIImpl.h:43
Definition: CreatureAIImpl.h:40
Definition: SpellInfo.h:326
Definition: Unit.h:81
arena_t NULL
Definition: jemalloc_internal.h:624
Definition: CreatureAIImpl.h:42
Unit *const me
Definition: UnitAI.h:121
Definition: CreatureAIImpl.h:41
Definition: UnitAI.h:35
Unit * GetVictim() const
Definition: Unit.h:1379
Unit * SelectTarget(SelectAggroTarget targetType, uint32 position=0, float dist=0.0f, bool playerOnly=false, int32 aura=0)
Definition: UnitAI.cpp:91
#define sSpellMgr
Definition: SpellMgr.h:756
int32_t int32
Definition: Define.h:146
Definition: CreatureAIImpl.h:38
Definition: UnitAI.h:43
Definition: CreatureAIImpl.h:39
Definition: Unit.h:1305
void CastSpell(SpellCastTargets const &targets, SpellInfo const *spellInfo, CustomSpellValues const *value, TriggerCastFlags triggerFlags=TRIGGERED_NONE, Item *castItem=NULL, AuraEffect const *triggeredByAura=NULL, ObjectGuid originalCaster=ObjectGuid::Empty)
Definition: Unit.cpp:869

+ Here is the call graph for this function:

void UnitAI::DoCast ( Unit victim,
uint32  spellId,
bool  triggered = false 
)
152 {
153  if (!victim || (me->HasUnitState(UNIT_STATE_CASTING) && !triggered))
154  return;
155 
156  me->CastSpell(victim, spellId, triggered);
157 }
Definition: Unit.h:565
Unit *const me
Definition: UnitAI.h:121
bool HasUnitState(const uint32 f) const
Definition: Unit.h:1395
void CastSpell(SpellCastTargets const &targets, SpellInfo const *spellInfo, CustomSpellValues const *value, TriggerCastFlags triggerFlags=TRIGGERED_NONE, Item *castItem=NULL, AuraEffect const *triggeredByAura=NULL, ObjectGuid originalCaster=ObjectGuid::Empty)
Definition: Unit.cpp:869

+ Here is the call graph for this function:

void UnitAI::DoCastAOE ( uint32  spellId,
bool  triggered = false 
)
168 {
169  if (!triggered && me->HasUnitState(UNIT_STATE_CASTING))
170  return;
171 
172  me->CastSpell((Unit*)NULL, spellId, triggered);
173 }
Definition: Unit.h:565
arena_t NULL
Definition: jemalloc_internal.h:624
Unit *const me
Definition: UnitAI.h:121
bool HasUnitState(const uint32 f) const
Definition: Unit.h:1395
Definition: Unit.h:1305
void CastSpell(SpellCastTargets const &targets, SpellInfo const *spellInfo, CustomSpellValues const *value, TriggerCastFlags triggerFlags=TRIGGERED_NONE, Item *castItem=NULL, AuraEffect const *triggeredByAura=NULL, ObjectGuid originalCaster=ObjectGuid::Empty)
Definition: Unit.cpp:869

+ Here is the call graph for this function:

void UnitAI::DoCastVictim ( uint32  spellId,
bool  triggered = false 
)
160 {
161  if (!me->GetVictim() || (me->HasUnitState(UNIT_STATE_CASTING) && !triggered))
162  return;
163 
164  me->CastSpell(me->GetVictim(), spellId, triggered);
165 }
Definition: Unit.h:565
Unit *const me
Definition: UnitAI.h:121
Unit * GetVictim() const
Definition: Unit.h:1379
bool HasUnitState(const uint32 f) const
Definition: Unit.h:1395
void CastSpell(SpellCastTargets const &targets, SpellInfo const *spellInfo, CustomSpellValues const *value, TriggerCastFlags triggerFlags=TRIGGERED_NONE, Item *castItem=NULL, AuraEffect const *triggeredByAura=NULL, ObjectGuid originalCaster=ObjectGuid::Empty)
Definition: Unit.cpp:869

+ Here is the call graph for this function:

void UnitAI::DoMeleeAttackIfReady ( )
50 {
52  return;
53 
54  Unit* victim = me->GetVictim();
55 
56  if (!me->IsWithinMeleeRange(victim))
57  return;
58 
59  //Make sure our attack is ready and we aren't currently casting before checking distance
60  if (me->isAttackReady())
61  {
62  me->AttackerStateUpdate(victim);
64  }
65 
67  {
70  }
71 }
void AttackerStateUpdate(Unit *victim, WeaponAttackType attType=BASE_ATTACK, bool extra=false)
Definition: Unit.cpp:1874
Definition: Unit.h:565
Unit *const me
Definition: UnitAI.h:121
Definition: Unit.h:618
Unit * GetVictim() const
Definition: Unit.h:1379
bool IsWithinMeleeRange(const Unit *obj, float dist=MELEE_RANGE) const
Definition: Unit.cpp:508
bool haveOffhandWeapon() const
Definition: Unit.cpp:418
bool isAttackReady(WeaponAttackType type=BASE_ATTACK) const
Definition: Unit.h:1357
void resetAttackTimer(WeaponAttackType type=BASE_ATTACK)
Definition: Unit.cpp:481
bool HasUnitState(const uint32 f) const
Definition: Unit.h:1395
Definition: Unit.h:1305

+ Here is the call graph for this function:

bool UnitAI::DoSpellAttackIfReady ( uint32  spellId)
74 {
76  return true;
77 
78  if (SpellInfo const* spellInfo = sSpellMgr->GetSpellInfo(spellId))
79  {
80  if (me->IsWithinCombatRange(me->GetVictim(), spellInfo->GetMaxRange(false)))
81  {
82  me->CastSpell(me->GetVictim(), spellInfo, TRIGGERED_NONE);
84  return true;
85  }
86  }
87 
88  return false;
89 }
bool IsWithinCombatRange(const Unit *obj, float dist2compare) const
Definition: Unit.cpp:492
Definition: Unit.h:565
Definition: SpellInfo.h:326
Unit *const me
Definition: UnitAI.h:121
Unit * GetVictim() const
Definition: Unit.h:1379
#define sSpellMgr
Definition: SpellMgr.h:756
bool isAttackReady(WeaponAttackType type=BASE_ATTACK) const
Definition: Unit.h:1357
void resetAttackTimer(WeaponAttackType type=BASE_ATTACK)
Definition: Unit.cpp:481
bool HasUnitState(const uint32 f) const
Definition: Unit.h:1395
void CastSpell(SpellCastTargets const &targets, SpellInfo const *spellInfo, CustomSpellValues const *value, TriggerCastFlags triggerFlags=TRIGGERED_NONE, Item *castItem=NULL, AuraEffect const *triggeredByAura=NULL, ObjectGuid originalCaster=ObjectGuid::Empty)
Definition: Unit.cpp:869
Definition: Unit.h:460

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void UnitAI::FillAISpellInfo ( )
static
178 {
179  AISpellInfo = new AISpellInfoType[sSpellMgr->GetSpellInfoStoreSize()];
180 
181  AISpellInfoType* AIInfo = AISpellInfo;
182  const SpellInfo* spellInfo;
183 
184  for (uint32 i = 0; i < sSpellMgr->GetSpellInfoStoreSize(); ++i, ++AIInfo)
185  {
186  spellInfo = sSpellMgr->GetSpellInfo(i);
187  if (!spellInfo)
188  continue;
189 
191  AIInfo->condition = AICOND_DIE;
192  else if (spellInfo->IsPassive() || spellInfo->GetDuration() == -1)
193  AIInfo->condition = AICOND_AGGRO;
194  else
195  AIInfo->condition = AICOND_COMBAT;
196 
197  if (AIInfo->cooldown < spellInfo->RecoveryTime)
198  AIInfo->cooldown = spellInfo->RecoveryTime;
199 
200  if (!spellInfo->GetMaxRange(false))
202  else
203  {
204  for (SpellEffectInfo const* effect : spellInfo->GetEffectsForDifficulty(DIFFICULTY_NONE))
205  {
206  if (!effect)
207  continue;
208 
209  uint32 targetType = effect->TargetA.GetTarget();
210 
211  if (targetType == TARGET_UNIT_TARGET_ENEMY
212  || targetType == TARGET_DEST_TARGET_ENEMY)
214  else if (targetType == TARGET_UNIT_DEST_AREA_ENEMY)
216 
217  if (effect->Effect == SPELL_EFFECT_APPLY_AURA)
218  {
219  if (targetType == TARGET_UNIT_TARGET_ENEMY)
221  else if (spellInfo->IsPositive())
223  }
224  }
225  }
226  AIInfo->realCooldown = spellInfo->RecoveryTime + spellInfo->StartRecoveryTime;
227  AIInfo->maxRange = spellInfo->GetMaxRange(false) * 3 / 4;
228  }
229 }
static AISpellInfoType * AISpellInfo
Definition: UnitAI.h:250
Definition: DBCEnums.h:404
bool IsPassive() const
Definition: SpellInfo.cpp:1403
Definition: CreatureAIImpl.h:43
Definition: CreatureAIImpl.h:40
Definition: SpellInfo.h:326
float GetMaxRange(bool positive=false, Unit *caster=NULL, Spell *spell=NULL) const
Definition: SpellInfo.cpp:2475
#define UPDATE_TARGET(a)
Definition: UnitAI.cpp:175
AICondition condition
Definition: CreatureAIImpl.h:60
#define false
Definition: CascPort.h:18
Definition: SharedDefines.h:1016
Definition: CreatureAIImpl.h:48
Definition: CreatureAIImpl.h:42
int32 GetDuration() const
Definition: SpellInfo.cpp:2490
uint32 RecoveryTime
Definition: SpellInfo.h:363
Definition: CreatureAIImpl.h:50
bool HasAttribute(SpellAttr0 attribute) const
Definition: SpellInfo.h:462
#define sSpellMgr
Definition: SpellMgr.h:756
Definition: SpellInfo.h:238
Definition: SharedDefines.h:1886
uint32_t uint32
Definition: Define.h:150
Definition: CreatureAIImpl.h:38
uint32 cooldown
Definition: CreatureAIImpl.h:61
Definition: SharedDefines.h:379
Definition: CreatureAIImpl.h:49
Definition: SharedDefines.h:1922
SpellEffectInfoVector GetEffectsForDifficulty(uint32 difficulty) const
Definition: SpellInfo.cpp:3311
Definition: CreatureAIImpl.h:39
Definition: SharedDefines.h:1880
Definition: CreatureAIImpl.h:55

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

virtual uint32 UnitAI::GetData ( uint32  ) const
inlinevirtual

Reimplemented in npc_wormhole::npc_wormholeAI, npc_gauntlet_trash, npc_mimiron_emergency_fire_bot::npc_mimiron_emergency_fire_botAI, npc_meteor_strike::npc_meteor_strikeAI, npc_dream_portal::npc_dream_portalAI, npc_sindragosa_trash::npc_sindragosa_trashAI, npc_darkrune_guardian::npc_darkrune_guardianAI, npc_gunship::npc_gunshipAI, boss_leviathan_mk_ii::boss_leviathan_mk_iiAI, npc_living_constellation::npc_living_constellationAI, boss_the_lich_king::boss_the_lich_kingAI, npc_scourge_hulk::npc_scourge_hulkAI, boss_professor_putricide::boss_professor_putricideAI, boss_deathbringer_saurfang::boss_deathbringer_saurfangAI, npc_essence_of_twin::npc_essence_of_twinAI, boss_stormcaller_brundir::boss_stormcaller_brundirAI, boss_valithria_dreamwalker::boss_valithria_dreamwalkerAI, npc_brann_hos::npc_brann_hosAI, boss_razorscale::boss_razorscaleAI, boss_malygos::boss_malygosAI, boss_freya::boss_freyaAI, boss_sartharion::boss_sartharionAI, boss_algalon_the_observer::boss_algalon_the_observerAI, boss_flame_leviathan::boss_flame_leviathanAI, boss_xt002::boss_xt002_AI, boss_sindragosa::boss_sindragosaAI, boss_runemaster_molgeim::boss_runemaster_molgeimAI, boss_thaddius::boss_thaddiusAI, boss_festergut::boss_festergutAI, boss_general_vezax::boss_general_vezaxAI, npc_crystal_spike_trigger::npc_crystal_spike_triggerAI, boss_devourer_of_souls::boss_devourer_of_soulsAI, boss_sapphiron::boss_sapphironAI, boss_mandokir::boss_mandokirAI, boss_volkhan::boss_volkhanAI, boss_auriaya::boss_auriayaAI, boss_novos::boss_novosAI, boss_drakkari_colossus::boss_drakkari_colossusAI, boss_garfrost::boss_garfrostAI, boss_magus_telestra::boss_magus_telestraAI, boss_keleseth::boss_kelesethAI, boss_steelbreaker::boss_steelbreakerAI, boss_trollgore::boss_trollgoreAI, boss_ignis::boss_ignis_AI, boss_jedoga_shadowseeker::boss_jedoga_shadowseekerAI, boss_ymiron::boss_ymironAI, boss_ichoron::boss_ichoronAI, SmartAI, boss_gal_darah::boss_gal_darahAI, boss_sjonnir::boss_sjonnirAI, boss_faerlina::boss_faerlinaAI, boss_bronjahm::boss_bronjahmAI, boss_eregos::boss_eregosAI, boss_anomalus::boss_anomalusAI, boss_loatheb::boss_loathebAI, boss_elder_nadox::boss_elder_nadoxAI, boss_zuramat::boss_zuramatAI, boss_moorabi::boss_moorabiAI, boss_king_dred::boss_king_dredAI, and boss_heigan::boss_heiganAI.

139 { return 0; }

+ Here is the caller graph for this function:

virtual ObjectGuid UnitAI::GetGUID ( int32  = 0) const
inlinevirtual
virtual void UnitAI::HealDone ( Unit ,
uint32  
)
inlinevirtual

Reimplemented in player_overlord_brandAI.

234 { }

+ Here is the caller graph for this function:

virtual void UnitAI::HealReceived ( Unit ,
uint32  
)
inlinevirtual

Reimplemented in boss_valithria_dreamwalker::boss_valithria_dreamwalkerAI, and SmartAI.

231 { }

+ Here is the caller graph for this function:

virtual void UnitAI::InitializeAI ( )
inlinevirtual

Reimplemented in npc_wormhole::npc_wormholeAI, npc_muradin_bronzebeard_igb::npc_muradin_bronzebeard_igbAI, npc_sindragosa_trash::npc_sindragosa_trashAI, npc_high_overlord_saurfang_igb::npc_high_overlord_saurfang_igbAI, boss_prince_valanar_icc::boss_prince_valanarAI, npc_rimefang::npc_rimefangAI, boss_sister_svalna::boss_sister_svalnaAI, npc_violet_hold_teleportation_portal::npc_violet_hold_teleportation_portalAI, npc_spinestalker::npc_spinestalkerAI, npc_violet_hold_teleportation_portal_commonAI, boss_prince_taldaram_icc::boss_prince_taldaramAI, boss_kiljaeden::boss_kiljaedenAI, npc_kiljaeden_controller::npc_kiljaeden_controllerAI, boss_prince_keleseth_icc::boss_prince_kelesethAI, boss_valithria_dreamwalker::boss_valithria_dreamwalkerAI, boss_archimonde::boss_archimondeAI, boss_flame_leviathan::boss_flame_leviathanAI, npc_webwrap::npc_webwrapAI, npc_bushwhacker::npc_bushwhackerAI, npc_pet_mage_mirror_image::npc_pet_mage_mirror_imageAI, SmartAI, boss_tyrannus::boss_tyrannusAI, boss_sapphiron::boss_sapphironAI, boss_anubrekhan::boss_anubrekhanAI, boss_gal_darah::boss_gal_darahAI, boss_faerlina::boss_faerlinaAI, boss_razuvious::boss_razuviousAI, molten_flame::molten_flameAI, boss_varos::boss_varosAI, CasterAI, npc_pet_dk_ebon_gargoyle::npc_pet_dk_ebon_gargoyleAI, and CombatAI.

130 { if (!me->isDead()) Reset(); }
Unit *const me
Definition: UnitAI.h:121
bool isDead() const
Definition: Unit.h:1694
virtual void Reset()
Definition: UnitAI.h:132

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

UnitAI& UnitAI::operator= ( UnitAI const right)
privatedelete
virtual void UnitAI::Reset ( )
inlinevirtual

Reimplemented in npc_pandaren_monk::npc_pandaren_monkAI, npc_quel_delar_sword::npc_quel_delar_swordAI, npc_egbert::npc_egbertAI, npc_uther_quel_delar::npc_uther_quel_delarAI, npc_lumbering_abomination::npc_lumbering_abominationAI, npc_spring_rabbit::npc_spring_rabbitAI, npc_hidden_cultist::npc_hidden_cultistAI, npc_risen_witch_doctor::npc_risen_witch_doctorAI, npc_toc_pet_hunter::npc_toc_pet_hunterAI, npc_firework::npc_fireworkAI, npc_raging_ghoul::npc_raging_ghoulAI, npc_parasitic_shadowfiend::npc_parasitic_shadowfiendAI, npc_toc_pet_warlock::npc_toc_pet_warlockAI, npc_escape_event_trash, npc_warmage_coldarra::npc_warmage_coldarraAI, npc_shadow_demon::shadow_demonAI, npc_valiance_keep_cannoneer::npc_valiance_keep_cannoneerAI, npc_toc_retro_paladin::npc_toc_retro_paladinAI, npc_cage_trap_trigger::cage_trap_triggerAI, npc_spiritual_reflection::npc_spiritual_reflectionAI, npc_broken_frostmourne::npc_broken_frostmourneAI, npc_toc_enh_shaman::npc_toc_enh_shamanAI, npc_trapped_mammoth_calf::npc_trapped_mammoth_calfAI, npc_laughing_skull::npc_laughing_skullAI, npc_turned_champion::npc_turned_championAI, npc_frostsworn_general::npc_frostsworn_generalAI, npc_spirit_warden::npc_spirit_wardenAI, npc_toc_rogue::npc_toc_rogueAI, npc_bonker_togglevolt::npc_bonker_togglevoltAI, npc_garona::npc_garonaAI, npc_mootoo_the_younger::npc_mootoo_the_youngerAI, npc_toc_dk::npc_toc_dkAI, npc_arthas_teleport_visual::npc_arthas_teleport_visualAI, npc_impaling_spear::npc_impaling_spearAI, npc_the_lich_king_tirion_dawn::npc_the_lich_king_tirion_dawnAI, npc_phantom_hallucination::npc_phantom_hallucinationAI, npc_toc_warrior::npc_toc_warriorAI, npc_imprisoned_beryl_sorcerer::npc_imprisoned_beryl_sorcererAI, npc_mimiron_proximity_mine::npc_mimiron_proximity_mineAI, npc_captain_rupert::npc_captain_rupertAI, npc_yogg_saron_keeper::npc_yogg_saron_keeperAI, npc_mimiron_frost_bomb::npc_mimiron_frost_bombAI, npc_enraged_spirit::npc_enraged_spiritAI, npc_toc_boomkin::npc_toc_boomkinAI, npc_captain_grondel::npc_captain_grondelAI, npc_observation_ring_keeper::npc_observation_ring_keeperAI, npc_beryl_sorcerer::npc_beryl_sorcererAI, npc_mimiron_flames::npc_mimiron_flamesAI, npc_training_dummy::npc_training_dummyAI, npc_immortal_guardian::npc_immortal_guardianAI, npc_captain_brandon::npc_captain_brandonAI, npc_gauntlet_trash, npc_valkyr_shadowguard::npc_valkyr_shadowguardAI, npc_toc_hunter::npc_toc_hunterAI, npc_scion_of_eternity::npc_scion_of_eternityAI, alliance_rifleman::alliance_riflemanAI, npc_akama_illidan::npc_akama_illidanAI, npc_tonk_mine::npc_tonk_mineAI, npc_phoenix_egg_tk::npc_phoenix_egg_tkAI, npc_zafod_boombox::npc_zafod_boomboxAI, npc_influence_tentacle::npc_influence_tentacleAI, npc_captain_arnath::npc_captain_arnathAI, npc_steam_tonk::npc_steam_tonkAI, npc_raging_spirit::npc_raging_spiritAI, npc_mimiron_emergency_fire_bot::npc_mimiron_emergency_fire_botAI, npc_nexus_lord::npc_nexus_lordAI, npc_phoenix_tk::npc_phoenix_tkAI, npc_crusher_tentacle::npc_crusher_tentacleAI, npc_toc_mage::npc_toc_mageAI, npc_sinster_reflection::npc_sinster_reflectionAI, npc_dark_nucleus::npc_dark_nucleusAI, npc_illidari_spawn::npc_illidari_spawnAI, boss_zelfan::boss_zelfanAI, npc_constrictor_tentacle::npc_constrictor_tentacleAI, npc_caster_hover_disk::npc_caster_hover_diskAI, npc_living_ember::npc_living_emberAI, npc_shambling_horror_icc::npc_shambling_horror_iccAI, npc_ancient_conservator::npc_ancient_conservatorAI, npc_violet_hold_defense_system::npc_violet_hold_defense_systemAI, npc_kael_flamestrike::npc_kael_flamestrikeAI, npc_gargoyle::npc_gargoyleAI, npc_counselor_talbot::npc_counselor_talbotAI, npc_giant_eye_tentacle::giant_eye_tentacleAI, npc_toc_warlock::npc_toc_warlockAI, boss_romulo::boss_romuloAI, npc_kinetic_bomb::npc_kinetic_bombAI, npc_shield_orb::npc_shield_orbAI, npc_corruptor_tentacle::npc_corruptor_tentacleAI, boss_apoko::boss_apokoAI, boss_master_engineer_telonicus::boss_master_engineer_telonicusAI, npc_melee_hover_disk::npc_melee_hover_diskAI, boss_maiev_shadowsong::boss_maievAI, npc_image_lich_king::npc_image_lich_kingAI, npc_lord_illidan_stormrage::npc_lord_illidan_stormrageAI, npc_guardian_of_yogg_saron::npc_guardian_of_yogg_saronAI, npc_storm_lasher::npc_storm_lasherAI, npc_guardian::npc_guardianAI, npc_armageddon::npc_armageddonAI, npc_frost_wyrm::npc_frost_wyrmAI, npc_ball_of_flame::npc_ball_of_flameAI, npc_freya_ward_summon::npc_freya_ward_summonAI, npc_toc_shadow_priest::npc_toc_shadow_priestAI, npc_tirion_fordring_tft::npc_tirion_fordringAI, npc_ominous_cloud::npc_ominous_cloudAI, npc_giant_claw_tentacle::giant_claw_tentacleAI, npc_scarlet_miner::npc_scarlet_minerAI, boss_julianne::boss_julianneAI, npc_ashtongue_spiritbinder::npc_ashtongue_spiritbinderAI, npc_freyas_ward::npc_freyas_wardAI, npc_ancient_water_spirit::npc_ancient_water_spiritAI, npc_volatile_felfire_fiend::npc_volatile_felfire_fiendAI, boss_garaxxas::boss_garaxxasAI, npc_dream_cloud::npc_dream_cloudAI, boss_grand_astromancer_capernian::boss_grand_astromancer_capernianAI, npc_fel_stalker::npc_fel_stalkerAI, npc_toc_priest::npc_toc_priestAI, npc_blood_queen_lana_thel::npc_blood_queen_lana_thelAI, npc_garments_of_quests::npc_garments_of_questsAI, boss_brain_of_yogg_saron::boss_brain_of_yogg_saronAI, npc_felfire_portal::npc_felfire_portalAI, npc_darkrune_sentinel::npc_darkrune_sentinelAI, npc_detonating_lasher::npc_detonating_lasherAI, npc_ashtongue_elementalist::npc_ashtongue_elementalistAI, npc_claw_tentacle::claw_tentacleAI, npc_mimirons_inferno::npc_mimirons_infernoAI, boss_lord_sanguinar::boss_lord_sanguinarAI, npc_torloth_the_magnificent::npc_torloth_the_magnificentAI, npc_twilight_whelp::npc_twilight_whelpAI, npc_gluttonous_abomination::npc_gluttonous_abominationAI, npc_crypt_fiend::npc_crypt_fiendAI, npc_sindragosa_trash::npc_sindragosa_trashAI, npc_crok_scourgebane::npc_crok_scourgebaneAI, npc_darkrune_guardian::npc_darkrune_guardianAI, npc_oscillating_frequency_scanner_master_bunny::npc_oscillating_frequency_scanner_master_bunnyAI, npc_ashtongue_rogue::npc_ashtongue_rogueAI, boss_warlord_salaris::boss_warlord_salarisAI, npc_toc_paladin::npc_toc_paladinAI, boss_rouge_toc5::boss_rouge_toc5AI, npc_twilight_fissure::npc_twilight_fissureAI, npc_hand_of_the_deceiver::npc_hand_of_the_deceiverAI, npc_toasty_fire::npc_toasty_fireAI, npc_eye_tentacle::eye_tentacleAI, npc_anachronos_quest_trigger::npc_anachronos_quest_triggerAI, boss_elder_ironbranch::boss_elder_ironbranchAI, boss_yogg_saron::boss_yogg_saronAI, npc_varian_toc::npc_varian_tocAI, npc_darkrune_watcher::npc_darkrune_watcherAI, boss_thaladred_the_darkener::boss_thaladred_the_darkenerAI, boss_bigbadwolf::boss_bigbadwolfAI, npc_thassarian::npc_thassarianAI, npc_suppresser::npc_suppresserAI, npc_banshee::npc_bansheeAI, npc_flame_tsunami::npc_flame_tsunamiAI, npc_storm_cloud::npc_storm_cloudAI, boss_icehowl::boss_icehowlAI, npc_darnavan::npc_darnavanAI, npc_devouring_flame::npc_devouring_flameAI, npc_ashtongue_defender::npc_ashtongue_defenderAI, npc_toc_shaman::npc_toc_shamanAI, npc_shield_generator_channel::npc_shield_generator_channelAI, npc_ros_dark_rider::npc_ros_dark_riderAI, violet_hold_trashAI, npc_hodir_mage::npc_hodir_mageAI, npc_muradin_bronzebeard_icc::npc_muradin_bronzebeard_iccAI, boss_veras_darkshadow::boss_veras_darkshadowAI, npc_vengeful_shade::npc_vengeful_shadeAI, boss_prince_valanar_icc::boss_prince_valanarAI, boss_leviathan_mk_ii::boss_leviathan_mk_iiAI, boss_yazzai::boss_yazzaiAI, npc_garrosh_toc::npc_garrosh_tocAI, npc_blazing_skeleton::npc_blazing_skeletonAI, npc_jaina_or_sylvanas_escape_hor::npc_jaina_or_sylvanas_escape_horAI, npc_mechanolift::npc_mechanoliftAI, npc_injured_patient::npc_injured_patientAI, npc_pulsing_pumpkin::npc_pulsing_pumpkinAI, npc_twilight_eggs::npc_twilight_eggsAI, boss_elder_stonebark::boss_elder_stonebarkAI, npc_rimefang::npc_rimefangAI, npc_mole_machine_trigger::npc_mole_machine_triggerAI, boss_hunter_toc5::boss_hunter_toc5AI, npc_slime_pool::npc_slime_poolAI, npc_qiraj_war_spawn::npc_qiraj_war_spawnAI, npc_hodir_druid::npc_hodir_druidAI, boss_lord_crispin_ference::boss_lord_crispin_ferenceAI, npc_cyclone::npc_cycloneAI, npc_alexstraza_the_lifebinder::npc_alexstraza_the_lifebinderAI, npc_life_spark::npc_life_sparkAI, npc_colonel_jules::npc_colonel_julesAI, npc_toc_druid::npc_toc_druidAI, npc_ashtongue_sorcerer::npc_ashtongue_sorcererAI, npc_toxic_sporebat::npc_toxic_sporebatAI, boss_sara::boss_saraAI, npc_feugen::npc_feugenAI, boss_sister_svalna::boss_sister_svalnaAI, npc_necromancer::npc_necromancerAI, npc_palehoof_orb::npc_palehoof_orbAI, npc_earthmender_wilda::npc_earthmender_wildaAI, boss_lady_malande::boss_lady_malandeAI, npc_living_constellation::npc_living_constellationAI, boss_eramas_brightblaze::boss_eramas_brightblazeAI, npc_cult_adherent::npc_cult_adherentAI, npc_hodir_shaman::npc_hodir_shamanAI, npc_nexus_drake_hatchling::npc_nexus_drake_hatchlingAI, npc_greyheart_spellbinder::npc_greyheart_spellbinderAI, npc_acolyte_of_vesperon::npc_acolyte_of_vesperonAI, boss_dreadscale::boss_dreadscaleAI, boss_lord_robin_daris::boss_lord_robin_darisAI, npc_risen_archmage::npc_risen_archmageAI, npc_kelthuzad_abomination::npc_kelthuzad_abominationAI, npc_rocknot::npc_rocknotAI, npc_stillpine_capitive::npc_stillpine_capitiveAI, npc_anubarak_spike::npc_anubarak_spikeAI, boss_elder_brightleaf::boss_elder_brightleafAI, npc_lake_frog::npc_lake_frogAI, boss_crone::boss_croneAI, boss_acidmaw::boss_acidmawAI, npc_boombot::npc_boombotAI, npc_doctor::npc_doctorAI, npc_tainted_elemental::npc_tainted_elementalAI, npc_bullet_controller::npc_bullet_controllerAI, npc_shadow_image::npc_shadow_imageAI, npc_the_etymidian::npc_the_etymidianAI, boss_essence_of_anger::boss_essence_of_angerAI, npc_arcane_sphere::npc_arcane_sphereAI, npc_dark_rider_of_acherus::npc_dark_rider_of_acherusAI, npc_spinestalker::npc_spinestalkerAI, boss_flame_leviathan_defense_cannon::boss_flame_leviathan_defense_cannonAI, npc_king_jokkum_vehicle::npc_king_jokkum_vehicleAI, npc_cult_fanatic::npc_cult_fanaticAI, npc_a_special_surprise::npc_a_special_surpriseAI, npc_ghoul::npc_ghoulAI, npc_maxx_a_million_escort::npc_maxx_a_million_escortAI, npc_hodir_priest::npc_hodir_priestAI, npc_creature_generator_akama::npc_creature_generator_akamaAI, npc_massive_jormungar::npc_massive_jormungarAI, boss_ellris_duskhallow::boss_ellris_duskhallowAI, boss_shaman_toc5::boss_shaman_toc5AI, npc_high_overlord_saurfang_icc::npc_high_overlord_saurfangAI, boss_lady_keira_berrybuck::boss_lady_keira_berrybuckAI, npc_taretha::npc_tarethaAI, npc_acolyte_of_shadron::npc_acolyte_of_shadronAI, boss_leotheras_the_blind_demonform::boss_leotheras_the_blind_demonformAI, npc_expedition_commander::npc_expedition_commanderAI, boss_high_nethermancer_zerevor::boss_high_nethermancer_zerevorAI, npc_torturer_lecraft::npc_torturer_lecraftAI, npc_felkael_phoenix_egg::npc_felkael_phoenix_eggAI, npc_death_ravager::npc_death_ravagerAI, boss_sathrovarr::boss_sathrovarrAI, npc_frost_sphere::npc_frost_sphereAI, npc_rotting_frost_giant::npc_rotting_frost_giantAI, npc_snowpacked_icicle::npc_snowpacked_icicleAI, npc_raz_the_crazed::npc_raz_the_crazedAI, npc_the_lich_king_controller::npc_the_lich_king_controllerAI, npc_bessy::npc_bessyAI, boss_fathomguard_caribdis::boss_fathomguard_caribdisAI, npc_halion_controller::npc_halion_controllerAI, boss_prince_taldaram_icc::boss_prince_taldaramAI, boss_taerar::boss_taerarAI, npc_enchanted_elemental::npc_enchanted_elementalAI, npc_azure_saboteur::npc_azure_saboteurAI, npc_watcher_silthik::npc_watcher_silthikAI, boss_roar::boss_roarAI, npc_ice_tomb::npc_ice_tombAI, npc_pummeller::npc_pummellerAI, npc_felmyst_trail::npc_felmyst_trailAI, boss_kiljaeden::boss_kiljaedenAI, npc_elder_kekek::npc_elder_kekekAI, npc_lurgglbr::npc_lurgglbrAI, npc_venture_co_straggler::npc_venture_co_stragglerAI, npc_ashtongue_channeler::npc_ashtongue_channelerAI, npc_vesperon::npc_vesperonAI, npc_unleashed_ballAI, boss_faction_championsAI, boss_lady_catriona_von_indi::boss_lady_catriona_von_indiAI, npc_icicle::npc_icicleAI, npc_abomination::npc_abominationAI, npc_blackhole::npc_blackholeAI, boss_essence_of_desire::boss_essence_of_desireAI, npc_wizzlecrank_shredder::npc_wizzlecrank_shredderAI, npc_scourge_hulk::npc_scourge_hulkAI, npc_flame_patch_alar::npc_flame_patch_alarAI, npc_wyrmrest_defender::npc_wyrmrest_defenderAI, npc_death_knight_initiate::npc_death_knight_initiateAI, npc_zerekethvoidzone::npc_zerekethvoidzoneAI, npc_felmyst_vapor::npc_felmyst_vaporAI, npc_jedogas_aufseher_trigger::npc_jedogas_aufseher_triggerAI, npc_aran_elemental::water_elementalAI, npc_tirion_toc::npc_tirion_tocAI, boss_kagani_nightstrike::boss_kagani_nightstrikeAI, npc_nerubian_burrower::npc_nerubian_burrowerAI, npc_crazed_mage::npc_crazed_mageAI, npc_ferocious_rhino::npc_ferocious_rhinoAI, boss_cthun::cthunAI, npc_felkael_phoenix::npc_felkael_phoenixAI, boss_krosh_firehand::boss_krosh_firehandAI, npc_dragonmaw_peon::npc_dragonmaw_peonAI, boss_veklor::boss_veklorAI, npc_scrapbot::npc_scrapbotAI, npc_high_inquisitor_valroth::npc_high_inquisitor_valrothAI, npc_green_dragon_combat_trigger::npc_green_dragon_combat_triggerAI, npc_hellfire_channeler::npc_hellfire_channelerAI, boss_illidan_stormrage::boss_illidan_stormrageAI, npc_watcher_narjil::npc_watcher_narjilAI, boss_jormungarAI, npc_barada::npc_baradaAI, npc_tooga::npc_toogaAI, boss_the_lich_king::boss_the_lich_kingAI, boss_mage_toc5::boss_mage_toc5AI, boss_baron_rafe_dreuger::boss_baron_rafe_dreugerAI, npc_wounded_skirmisher::npc_wounded_skirmisherAI, boss_emeriss::boss_emerissAI, boss_gathios_the_shatterer::boss_gathios_the_shattererAI, npc_shadron::npc_shadronAI, boss_fathomguard_tidalvess::boss_fathomguard_tidalvessAI, npc_stalagg::npc_stalaggAI, boss_kalec::boss_kalecAI, npc_hellfire_sentry::npc_hellfire_sentryAI, npc_void_sentinel::npc_void_sentinelAI, npc_ember_of_alar::npc_ember_of_alarAI, npc_high_oracle_soo_roo::npc_high_oracle_soo_rooAI, boss_voice_of_yogg_saron::boss_voice_of_yogg_saronAI, npc_image_of_medivh::npc_image_of_medivhAI, boss_eydis::boss_eydisAI, npc_alchemist_finklestein::npc_alchemist_finklesteinAI, npc_brann_bronzebeard_keystone::npc_brann_bronzebeard_keystoneAI, npc_kurenai_captive::npc_kurenai_captiveAI, npc_isla_starmane::npc_isla_starmaneAI, boss_tinhead::boss_tinheadAI, boss_stormcaller_brundir::boss_stormcaller_brundirAI, npc_spectator::npc_spectatorAI, npc_firebomb::npc_firebombAI, npc_felkael_flamestrike::npc_felkael_flamestrikeAI, npc_mad_prisoner::npc_mad_prisonerAI, npc_thrall_old_hillsbrad::npc_thrall_old_hillsbradAI, npc_anachronos_the_ancient::npc_anachronos_the_ancientAI, npc_dancing_flames::npc_dancing_flamesAI, boss_mimiron::boss_mimironAI, npc_swarm_scarab::npc_swarm_scarabAI, boss_kaelthas::boss_kaelthasAI, npc_geezle::npc_geezleAI, npc_memory::npc_memoryAI, npc_solarium_priest::npc_solarium_priestAI, npc_blessed_banner::npc_blessed_bannerAI, npc_kservant::npc_kservantAI, npc_phase_hunter::npc_phase_hunterAI, npc_kiljaeden_controller::npc_kiljaeden_controllerAI, boss_headless_horseman::boss_headless_horsemanAI, npc_giant_infernal::npc_giant_infernalAI, npc_nesingwary_trapper::npc_nesingwary_trapperAI, boss_blindeye_the_seer::boss_blindeye_the_seerAI, npc_watcher_gashra::npc_watcher_gashraAI, boss_essence_of_suffering::boss_essence_of_sufferingAI, npc_akama_shade::npc_akamaAI, npc_tenebron::npc_tenebronAI, npc_ritual_channeler::npc_ritual_channelerAI, boss_veknilash::boss_veknilashAI, npc_mistress_of_pain::npc_mistress_of_painAI, npc_OOX17::npc_OOX17AI, boss_baroness_dorothea_millstipe::boss_baroness_dorothea_millstipeAI, npc_stormforged_lieutenant::npc_stormforged_lieutenantAI, npc_mindless_abomination::npc_mindless_abominationAI, npc_omrogg_heads::npc_omrogg_headsAI, npc_feral_defender::npc_feral_defenderAI, npc_amberpine_woodsman::npc_amberpine_woodsmanAI, npc_arthas::npc_arthasAI, boss_nefarian::boss_nefarianAI, npc_scarlet_courier::npc_scarlet_courierAI, npc_egg_pile::npc_egg_pileAI, npc_scorch_ground::npc_scorch_groundAI, npc_dark_fiend::npc_dark_fiendAI, npc_frenzied_worgen::npc_frenzied_worgenAI, npc_syth_shadow::npc_syth_shadowAI, npc_highlord_tirion_fordring_lh::npc_highlord_tirion_fordringAI, npc_molten_golem::npc_molten_golemAI, WorldBossAI, npc_demolitionist_legoso::npc_demolitionist_legosoAI, npc_jungle_punch_target::npc_jungle_punch_targetAI, npc_living_mojo::npc_living_mojoAI, npc_coilfang_ambusher::npc_coilfang_ambusherAI, boss_prince_keleseth_icc::boss_prince_kelesethAI, npc_jaina_or_sylvanas_intro_hor::npc_jaina_or_sylvanas_intro_horAI, npc_lesser_shadow_fissure::npc_lesser_shadow_fissureAI, npc_saronite_vapors::npc_saronite_vaporsAI, npc_flame_of_azzinoth::flame_of_azzinothAI, boss_priestess_lackey_commonAI, npc_the_biggest_tree::npc_the_biggest_treeAI, npc_ingvar_throw_dummy::npc_ingvar_throw_dummyAI, npc_phalanx::npc_phalanxAI, npc_enslaved_netherwing_drake::npc_enslaved_netherwing_drakeAI, npc_chained_spirit::npc_chained_spiritAI, npc_fizzlebang_toc::npc_fizzlebang_tocAI, npc_precious_icc::npc_precious_iccAI, boss_malygos::boss_malygosAI, npc_anub_ar_warrior::npc_anub_ar_warriorAI, boss_alythess::boss_alythessAI, npc_nether_portal::npc_nether_portalAI, npc_floon::npc_floonAI, boss_toc_champion_controller::boss_toc_champion_controllerAI, npc_tallhorn_stag::npc_tallhorn_stagAI, guard_shattrath_aldor::guard_shattrath_aldorAI, boss_fjola::boss_fjolaAI, boss_lethon::boss_lethonAI, npc_twilight_sadist::npc_twilight_sadistAI, npc_jedoga_initiand::npc_jedoga_initiandAI, npc_fel_guard_hound::npc_fel_guard_houndAI, BossAI, npc_corki::npc_corkiAI, boss_warrior_toc5::boss_warrior_toc5AI, boss_razorscale::boss_razorscaleAI, npc_twiggy_flathead::npc_twiggy_flatheadAI, npc_highlord_darion_mograine::npc_highlord_darion_mograineAI, npc_sinclari_vh::npc_sinclariAI, npc_stonekeepers::npc_stonekeepersAI, npc_kayra_longmane::npc_kayra_longmaneAI, boss_moroes_guestAI, npc_chicken_cluck::npc_chicken_cluckAI, npc_magwin::npc_magwinAI, npc_yor::npc_yorAI, npc_daegarn::npc_daegarnAI, boss_fathomguard_sharkkis::boss_fathomguard_sharkkisAI, npc_nerubar_victim::npc_nerubar_victimAI, npc_syth_frost::npc_syth_frostAI, npc_sanctum_sentry::npc_sanctum_sentryAI, boss_hodir::boss_hodirAI, boss_strawman::boss_strawmanAI, npc_avatar_of_martyred::npc_avatar_of_martyredAI, boss_kiggler_the_crazed::boss_kiggler_the_crazedAI, npc_ranshalla::npc_ranshallaAI, npc_blackhand_incarcerator::npc_blackhand_incarceratorAI, advisorbase_ai, npc_brann_hos::npc_brann_hosAI, npc_muru_portal::npc_muru_portalAI, npc_fel_orc_convert::npc_fel_orc_convertAI, npc_risen_ghoul::npc_risen_ghoulAI, boss_saronite_animus::boss_saronite_animusAI, npc_weegli_blastfuse::npc_weegli_blastfuseAI, npc_tomb_creature::npc_tomb_creatureAI, npc_crystal_channel_target::npc_crystal_channel_targetAI, npc_spark_of_ionar::npc_spark_of_ionarAI, npc_fel_infernal::npc_fel_infernalAI, boss_algalon_the_observer::boss_algalon_the_observerAI, npc_water_globule::npc_water_globuleAI, boss_freya::boss_freyaAI, npc_iron_construct::npc_iron_constructAI, boss_vazruden_the_herald::boss_vazruden_the_heraldAI, boss_valithria_dreamwalker::boss_valithria_dreamwalkerAI, boss_kelthuzad::boss_kelthuzadAI, npc_anub_ar_shadowcaster::npc_anub_ar_shadowcasterAI, boss_halion::boss_halionAI, npc_auriaya_seeping_trigger::npc_auriaya_seeping_triggerAI, boss_rimefang::boss_rimefangAI, npc_stinky_icc::npc_stinky_iccAI, npc_warden_mellichar::npc_warden_mellicharAI, boss_terestian_illhoof::boss_terestianAI, boss_paletress::boss_paletressAI, npc_snobold_vassal::npc_snobold_vassalAI, boss_krick::boss_krickAI, boss_runemaster_molgeim::boss_runemaster_molgeimAI, npc_shadowmoon_channeler::npc_shadowmoon_channelerAI, boss_archimonde::boss_archimondeAI, npc_outhouse_bunny::npc_outhouse_bunnyAI, npc_injured_draenei::npc_injured_draeneiAI, npc_prince_taldaram_flame_sphere::npc_prince_taldaram_flame_sphereAI, npc_time_rift::npc_time_riftAI, npc_annhylde_the_caller::npc_annhylde_the_callerAI, npc_ravenous_furbolg::npc_ravenous_furbolgAI, npc_highborne_lamenter::npc_highborne_lamenterAI, guard_shattrath_scryer::guard_shattrath_scryerAI, npc_custodian_of_time::npc_custodian_of_timeAI, boss_harbinger_skyriss_illusion::boss_harbinger_skyriss_illusionAI, npc_engineer_helice::npc_engineer_heliceAI, npc_ethereal_apprentice::npc_ethereal_apprenticeAI, npc_syth_arcane::npc_syth_arcaneAI, npc_slad_ran_viper::npc_slad_ran_viperAI, boss_teron_gorefiend::boss_teron_gorefiendAI, npc_idol_room_spawner::npc_idol_room_spawnerAI, npc_rotting_forest_rager::npc_rotting_forest_ragerAI, boss_yauj::boss_yaujAI, npc_snowfall_glade_playmate::npc_snowfall_glade_playmateAI, boss_deathbringer_saurfang::boss_deathbringer_saurfangAI, npc_erekem_guard::npc_erekem_guardAI, npc_freed_protodrake::npc_freed_protodrakeAI, npc_wounded_blood_elf::npc_wounded_blood_elfAI, boss_flame_leviathan::boss_flame_leviathanAI, boss_ysondre::boss_ysondreAI, boss_high_inquisitor_whitemane::boss_high_inquisitor_whitemaneAI, npc_tito::npc_titoAI, boss_kalecgos_kj::boss_kalecgos_kjAI, npc_wg_queue::npc_wg_queueAI, npc_ruby_emerald_amber_drake::npc_ruby_emerald_amber_drakeAI, npc_archaedas_minions::npc_archaedas_minionsAI, npc_twilight_torturer::npc_twilight_torturerAI, npc_infernal_volcano::npc_infernal_volcanoAI, npc_illidari_council::npc_illidari_councilAI, npc_head::npc_headAI, boss_drakkari_elemental::boss_drakkari_elementalAI, npc_daranelle::npc_daranelleAI, boss_magtheridon::boss_magtheridonAI, npc_sironas::npc_sironasAI, npc_drakkari_scytheclaw::npc_drakkari_scytheclawAI, npc_vrykul_skeleton::npc_vrykul_skeletonAI, npc_skywing::npc_skywingAI, npc_mature_netherwing_drake::npc_mature_netherwing_drakeAI, boss_leotheras_the_blind::boss_leotheras_the_blindAI, npc_anub_ar_skirmisher::npc_anub_ar_skirmisherAI, npc_voidtraveler::npc_voidtravelerAI, npc_creditmarker_visit_with_ancestors::npc_creditmarker_visit_with_ancestorsAI, boss_malchezaar::boss_malchezaarAI, boss_lady_deathwhisper::boss_lady_deathwhisperAI, npc_crusade_recruit::npc_crusade_recruitAI, npc_volcano::npc_volcanoAI, boss_olm_the_summoner::boss_olm_the_summonerAI, npc_sartura_royal_guard::npc_sartura_royal_guardAI, boss_sindragosa::boss_sindragosaAI, npc_malformed_ooze::npc_malformed_oozeAI, npc_fiendish_imp::npc_fiendish_impAI, npc_enslaved_proto_drake::npc_enslaved_proto_drakeAI, boss_lich_king_toc::boss_lich_king_tocAI, npc_koltira_deathweaver::npc_koltira_deathweaverAI, boss_professor_putricide::boss_professor_putricideAI, generic_halionAI, npc_jaina_fos::npc_jaina_fosAI, npc_slad_ran_constrictor::npc_slad_ran_constrictorAI, npc_anubisath_sentinel::aqsentinelAI, npc_syth_fire::npc_syth_fireAI, npc_steamrigger_mechanic::npc_steamrigger_mechanicAI, npc_legion_flame::npc_legion_flameAI, npc_mrfloppy::npc_mrfloppyAI, boss_vazruden::boss_vazrudenAI, npc_chaotic_rift::npc_chaotic_riftAI, npc_spectral_ghostly_citizen::npc_spectral_ghostly_citizenAI, npc_engineer_spark_overgrind::npc_engineer_spark_overgrindAI, npc_taskmaster_fizzule::npc_taskmaster_fizzuleAI, npc_doomfire_targetting::npc_doomfire_targettingAI, boss_xt002::boss_xt002_AI, npc_tournament_training_dummy::npc_tournament_training_dummyAI, npc_lesser_doomguard::npc_lesser_doomguardAI, npc_onyx_flamecaller::npc_onyx_flamecallerAI, npc_ethereal_beacon::npc_ethereal_beaconAI, boss_skadi::boss_skadiAI, npc_faerlina_add::npc_faerlina_addAI, npc_towering_infernal::npc_towering_infernalAI, boss_eye_of_cthun::eye_of_cthunAI, boss_lady_vashj::boss_lady_vashjAI, npc_flash_freeze::npc_flash_freezeAI, npc_ethereal_sphere::npc_ethereal_sphereAI, boss_exarch_maladaar::boss_exarch_maladaarAI, boss_horAI, npc_frozen_orb::npc_frozen_orbAI, npc_muglash::npc_muglashAI, boss_blood_council_controller::boss_blood_council_controllerAI, npc_tempest_minion::npc_tempest_minionAI, boss_razorscale_controller::boss_razorscale_controllerAI, npc_brunnhildar_prisoner::npc_brunnhildar_prisonerAI, npc_focus_fire::npc_focus_fireAI, npc_nether_wraith::npc_nether_wraithAI, ScriptedAI, npc_ahnkahar_nerubian::npc_ahnkahar_nerubianAI, npc_drakkari_gutripper::npc_drakkari_gutripperAI, npc_azure_ring_captain::npc_azure_ring_captainAI, npc_fiendish_portal::npc_fiendish_portalAI, boss_muru::boss_muruAI, npc_plaguehound_tracker::npc_plaguehound_trackerAI, npc_cooshcoosh::npc_cooshcooshAI, boss_chromaggus::boss_chromaggusAI, boss_thaddius::boss_thaddiusAI, npc_infested_root_walker::npc_infested_root_walkerAI, boss_gothik::boss_gothikAI, boss_eadric::boss_eadricAI, npc_disciple_of_naralex::npc_disciple_of_naralexAI, boss_skarvald_the_constructor::boss_skarvald_the_constructorAI, npc_emily::npc_emilyAI, npc_dream_fog::npc_dream_fogAI, npc_arugal_voidwalker::npc_arugal_voidwalkerAI, generic_vehicleAI_toc5::generic_vehicleAI_toc5AI, npc_released_offspring_harkoa::npc_released_offspring_harkoaAI, npc_salsalabim::npc_salsalabimAI, boss_victor_nefarius::boss_victor_nefariusAI, boss_vem::boss_vemAI, boss_anubarak_trial::boss_anubarak_trialAI, npc_geist_ambusher::npc_geist_ambusherAI, dummy_dragonAI, boss_twin_baseAI, boss_rend_blackhand::boss_rend_blackhandAI, boss_shade_of_akama::boss_shade_of_akamaAI, npc_ragin_flames::npc_ragin_flamesAI, npc_eyestalk::npc_eyestalkAI, npc_doomfire::npc_doomfireAI, npc_pet_mage_mirror_image::npc_pet_mage_mirror_imageAI, npc_unstable_sphere::npc_unstable_sphereAI, npc_amanitar_mushrooms::npc_amanitar_mushroomsAI, boss_doomrel::boss_doomrelAI, npc_tribuna_controller::npc_tribuna_controllerAI, npc_winterfin_playmate::npc_winterfin_playmateAI, boss_reliquary_of_souls::boss_reliquary_of_soulsAI, boss_warp_splinter::boss_warp_splinterAI, npc_ancestral_wolf::npc_ancestral_wolfAI, npc_snufflenose_gopher::npc_snufflenose_gopherAI, npc_private_hendel::npc_private_hendelAI, boss_volazj::boss_volazjAI, npc_shadowy_construct::npc_shadowy_constructAI, npc_air_force_bots::npc_air_force_botsAI, npc_grimstone::npc_grimstoneAI, npc_barnes::npc_barnesAI, boss_bjarngrim::boss_bjarngrimAI, npc_scarlet_trainee::npc_scarlet_traineeAI, boss_gormok::boss_gormokAI, boss_razuvious::boss_razuviousAI, npc_minigob_manabonk::npc_minigob_manabonkAI, boss_warbringer_omrogg::boss_warbringer_omroggAI, npc_wisp_invis::npc_wisp_invisAI, npc_archavon_warder::npc_archavon_warderAI, npc_commander_eligor_dawnbringer::npc_commander_eligor_dawnbringerAI, boss_blood_queen_lana_thel::boss_blood_queen_lana_thelAI, boss_dorothee::boss_dorotheeAI, boss_felblood_kaelthas::boss_felblood_kaelthasAI, npc_blood_elf_council_voice_trigger::npc_blood_elf_council_voice_triggerAI, boss_kalecgos::boss_kalecgosAI, boss_steelbreaker::boss_steelbreakerAI, boss_midnight::boss_midnightAI, boss_shade_of_aran::boss_aranAI, npc_demon_chain::npc_demon_chainAI, boss_priestess_delrissa::boss_priestess_delrissaAI, boss_svala::boss_svalaAI, boss_onyxia::boss_onyxiaAI, npc_flamewaker_priest::npc_flamewaker_priestAI, npc_shadowfang_prisoner::npc_shadowfang_prisonerAI, boss_sartharion::boss_sartharionAI, boss_ick::boss_ickAI, boss_tyrannus::boss_tyrannusAI, boss_high_astromancer_solarian::boss_high_astromancer_solarianAI, boss_anraphet::boss_anraphetAI, boss_devourer_of_souls::boss_devourer_of_soulsAI, npc_infernal_attacker::npc_infernal_attackerAI, npc_core_rager::npc_core_ragerAI, npc_giant_spotlight::npc_giant_spotlightAI, boss_lord_marrowgar::boss_lord_marrowgarAI, boss_felmyst::boss_felmystAI, npc_underbog_mushroom::npc_underbog_mushroomAI, boss_moroes::boss_moroesAI, boss_the_lurker_below::boss_the_lurker_belowAI, npc_the_scourge_cauldron::npc_the_scourge_cauldronAI, boss_netherspite::boss_netherspiteAI, boss_nightbane::boss_nightbaneAI, boss_anub_arak::boss_anub_arakAI, boss_fathomlord_karathress::boss_fathomlord_karathressAI, boss_kologarn::boss_kologarnAI, npc_captured_rageclaw::npc_captured_rageclawAI, npc_coilfang_waterelemental::npc_coilfang_waterelementalAI, npc_flame_warder::npc_flame_warderAI, boss_morogrim_tidewalker::boss_morogrim_tidewalkerAI, boss_lieutenant_drake::boss_lieutenant_drakeAI, boss_black_knight::boss_black_knightAI, npc_frost_warder::npc_frost_warderAI, boss_four_horsemen::boss_four_horsemenAI, boss_ignis::boss_ignis_AI, boss_hydross_the_unstable::boss_hydross_the_unstableAI, boss_warlord_kalithresh::boss_warlord_kalithreshAI, boss_ymiron::boss_ymironAI, npc_restless_soul::npc_restless_soulAI, boss_high_priestess_azil::boss_high_priestess_azilAI, boss_magus_telestra::boss_magus_telestraAI, boss_keleseth::boss_kelesethAI, npc_sergeant_bly::npc_sergeant_blyAI, boss_alar::boss_alarAI, npc_darrowshire_spirit::npc_darrowshire_spiritAI, npc_ranger_lilatha::npc_ranger_lilathaAI, npc_unworthy_initiate::npc_unworthy_initiateAI, hyjalAI, npc_gilthares::npc_giltharesAI, boss_general_vezax::boss_general_vezaxAI, npc_firesworn::npc_fireswornAI, npc_ancient_wisp::npc_ancient_wispAI, npc_iceborn_protodrake::npc_iceborn_protodrakeAI, boss_palehoof::boss_palehoofAI, boss_slabhide::boss_slabhideAI, npc_twilight_flame_caller::npc_twilight_flame_callerAI, boss_mandokir::boss_mandokirAI, boss_sapphiron::boss_sapphironAI, boss_urom::boss_uromAI, boss_auriaya::boss_auriayaAI, netherspite_infernal::netherspite_infernalAI, npc_lady_sylvanas_windrunner::npc_lady_sylvanas_windrunnerAI, boss_mother_shahraz::boss_shahrazAI, npc_abyssal::npc_abyssalAI, npc_announcer_toc10::npc_announcer_toc10AI, boss_earthrager_ptah::boss_earthrager_ptahAI, npc_willix::npc_willixAI, boss_cannon_master_willey::boss_cannon_master_willeyAI, boss_sacrolash::boss_sacrolashAI, boss_gurtogg_bloodboil::boss_gurtogg_bloodboilAI, npc_enslaved_soul::npc_enslaved_soulAI, boss_dathrohan_balnazzar::boss_dathrohan_balnazzarAI, boss_maexxna::boss_maexxnaAI, boss_volkhan::boss_volkhanAI, boss_entropius::boss_entropiusAI, npc_deathstalker_erland::npc_deathstalker_erlandAI, npc_blackfathom_deeps_event::npc_blackfathom_deeps_eventAI, boss_ionar::boss_ionarAI, npc_commander_dawnforge::npc_commander_dawnforgeAI, npc_blastmaster_emi_shortfuse::npc_blastmaster_emi_shortfuseAI, boss_ingvar_the_plunderer::boss_ingvar_the_plundererAI, boss_grand_warlock_nethekurse::boss_grand_warlock_nethekurseAI, boss_brutallus::boss_brutallusAI, boss_ossirian::boss_ossirianAI, boss_faerlina::boss_faerlinaAI, boss_warchief_kargath_bladefist::boss_warchief_kargath_bladefistAI, boss_mal_ganis::boss_mal_ganisAI, boss_temple_guardian_anhuur::boss_temple_guardian_anhuurAI, boss_viscidus::boss_viscidusAI, boss_rotface::boss_rotfaceAI, boss_high_king_maulgar::boss_high_king_maulgarAI, boss_anubrekhan::boss_anubrekhanAI, npc_maghar_captive::npc_maghar_captiveAI, boss_jedoga_shadowseeker::boss_jedoga_shadowseekerAI, npc_millhouse_manastorm::npc_millhouse_manastormAI, npc_medivh_bm::npc_medivh_bmAI, boss_twinemperorsAI, boss_jaraxxus::boss_jaraxxusAI, boss_drakkari_colossus::boss_drakkari_colossusAI, boss_eregos::boss_eregosAI, boss_slad_ran::boss_slad_ranAI, npc_nether_drake::npc_nether_drakeAI, boss_ragnaros::boss_ragnarosAI, generic_boss_controllerAI, npc_inner_demon::npc_inner_demonAI, boss_gruul::boss_gruulAI, npc_raliq_the_drunk::npc_raliq_the_drunkAI, boss_baron_rivendare::boss_baron_rivendareAI, npc_belnistrasz::npc_belnistraszAI, boss_anomalus::boss_anomalusAI, npc_sylvanas_fos::npc_sylvanas_fosAI, boss_gal_darah::boss_gal_darahAI, boss_grandmaster_vorpil::boss_grandmaster_vorpilAI, boss_supremus::boss_supremusAI, boss_harbinger_skyriss::boss_harbinger_skyrissAI, npc_av_marshal_or_warmaster::npc_av_marshal_or_warmasterAI, boss_scarlet_commander_mograine::boss_scarlet_commander_mograineAI, boss_general_zarithrian::boss_general_zarithrianAI, boss_noth::boss_nothAI, emerald_dragonAI, boss_loken::boss_lokenAI, npc_pet_shaman_fire_elemental::npc_pet_shaman_fire_elementalAI, npc_voljin_zulaman::npc_voljin_zulamanAI, boss_novos::boss_novosAI, boss_garfrost::boss_garfrostAI, npc_kilrek::npc_kilrekAI, boss_archaedas::boss_archaedasAI, boss_prince_taldaram::boss_prince_taldaramAI, boss_corborus::boss_corborusAI, boss_festergut::boss_festergutAI, boss_ichoron::boss_ichoronAI, boss_ayamiss::boss_ayamissAI, npc_aquementas::npc_aquementasAI, boss_krik_thir::boss_krik_thirAI, boss_wrath_scryer_soccothrates::boss_wrath_scryer_soccothratesAI, boss_mekgineer_steamrigger::boss_mekgineer_steamriggerAI, boss_kelidan_the_breaker::boss_kelidan_the_breakerAI, boss_attumen::boss_attumenAI, boss_sjonnir::boss_sjonnirAI, npc_apothecary_hanes::npc_Apothecary_HanesAI, boss_sartura::boss_sarturaAI, boss_xevozz::boss_xevozzAI, npc_warp_splinter_treant::npc_warp_splinter_treantAI, boss_captain_skarloc::boss_captain_skarlocAI, npc_draenei_survivor::npc_draenei_survivorAI, boss_tharon_ja::boss_tharon_jaAI, boss_high_botanist_freywinn::boss_high_botanist_freywinnAI, boss_alizabal::boss_alizabalAI, boss_hadronox::boss_hadronoxAI, boss_trollgore::boss_trollgoreAI, boss_darkweaver_syth::boss_darkweaver_sythAI, boss_nazan::boss_nazanAI, npc_unkor_the_ruthless::npc_unkor_the_ruthlessAI, boss_vaelastrasz::boss_vaelAI, boss_baltharus_the_warborn::boss_baltharus_the_warbornAI, npc_sinkhole_kill_credit::npc_sinkhole_kill_creditAI, boss_nexusprince_shaffar::boss_nexusprince_shaffarAI, boss_laj::boss_lajAI, boss_curator::boss_curatorAI, boss_shirrak_the_dead_watcher::boss_shirrak_the_dead_watcherAI, boss_the_black_stalker::boss_the_black_stalkerAI, boss_silver_hand_bosses::boss_silver_hand_bossesAI, boss_azgalor::boss_azgalorAI, boss_ozruk::boss_ozrukAI, boss_emalon::boss_emalonAI, boss_mr_smite::boss_mr_smiteAI, boss_huhuran::boss_huhuranAI, npc_doom_blossom::npc_doom_blossomAI, boss_shattered_executioner::boss_shattered_executionerAI, boss_razorgore::boss_razorgoreAI, boss_kirtonos_the_herald::boss_kirtonos_the_heraldAI, boss_epoch_hunter::boss_epoch_hunterAI, boss_kri::boss_kriAI, boss_saviana_ragefire::boss_saviana_ragefireAI, boss_ormorok::boss_ormorokAI, boss_anzu::boss_anzuAI, boss_pyroguard_emberseer::boss_pyroguard_emberseerAI, boss_keristrasza::boss_keristraszaAI, boss_varos::boss_varosAI, boss_omor_the_unscarred::boss_omor_the_unscarredAI, boss_kazrogal::boss_kazrogalAI, boss_ouro::boss_ouroAI, boss_bronjahm::boss_bronjahmAI, boss_moorabi::boss_moorabiAI, boss_high_inquisitor_fairbanks::boss_high_inquisitor_fairbanksAI, npc_cairne_bloodhoof::npc_cairne_bloodhoofAI, npc_invis_infernal_caster::npc_invis_infernal_casterAI, boss_selin_fireheart::boss_selin_fireheartAI, boss_anetheron::boss_anetheronAI, boss_heigan::boss_heiganAI, boss_magistrate_barthilas::boss_magistrate_barthilasAI, boss_rajaxx::boss_rajaxxAI, boss_patchwerk::boss_patchwerkAI, boss_elder_nadox::boss_elder_nadoxAI, boss_loatheb::boss_loathebAI, boss_herod::boss_herodAI, npc_tapoke_slim_jahn::npc_tapoke_slim_jahnAI, boss_rage_winterchill::boss_rage_winterchillAI, boss_zum_rah::boss_zum_rahAI, boss_vexallus::boss_vexallusAI, npc_stolen_soul::npc_stolen_soulAI, boss_watchkeeper_gargolmar::boss_watchkeeper_gargolmarAI, npc_aeranas::npc_aeranasAI, boss_balinda::boss_balindaAI, boss_overlord_wyrmthalak::boss_overlordwyrmthalakAI, boss_fankriss::boss_fankrissAI, boss_najentus::boss_najentusAI, boss_doomlord_kazzak::boss_doomlordkazzakAI, boss_baroness_anastari::boss_baroness_anastariAI, boss_nerubenkan::boss_nerubenkanAI, boss_moam::boss_moamAI, npc_mist::npc_mistAI, boss_king_dred::boss_king_dredAI, npc_crusade_persuaded::npc_crusade_persuadedAI, boss_ramstein_the_gorger::boss_ramstein_the_gorgerAI, boss_drakos::boss_drakosAI, npc_injured_goblin::npc_injured_goblinAI, npc_jadespine_basilisk::npc_jadespine_basiliskAI, boss_skeram::boss_skeramAI, npc_ruul_snowhoof::npc_ruul_snowhoofAI, npc_xerestrasza::npc_xerestraszaAI, npc_mageguard_dalaran::npc_mageguard_dalaranAI, boss_gyth::boss_gythAI, boss_twilight_corrupter::boss_twilight_corrupterAI, boss_princess_theradras::boss_ptheradrasAI, boss_falric::boss_falricAI, boss_ambassador_hellmaw::boss_ambassador_hellmawAI, boss_doomwalker::boss_doomwalkerAI, boss_dalliah_the_doomsayer::boss_dalliah_the_doomsayerAI, guard_generic::guard_genericAI, npc_valkyr_battle_maiden::npc_valkyr_battle_maidenAI, boss_instructor_malicia::boss_instructormaliciaAI, boss_noxxion::boss_noxxionAI, npc_lazy_peon::npc_lazy_peonAI, boss_zuramat::boss_zuramatAI, boss_blackheart_the_inciter::boss_blackheart_the_inciterAI, boss_murmur::boss_murmurAI, npc_wrathbone_flayer::npc_wrathbone_flayerAI, boss_hungarfen::boss_hungarfenAI, boss_golemagg::boss_golemaggAI, boss_talon_king_ikiss::boss_talon_king_ikissAI, boss_vanndar::boss_vanndarAI, boss_postmaster_malown::boss_postmaster_malownAI, boss_timmy_the_cruel::boss_timmy_the_cruelAI, npc_yenniku::npc_yennikuAI, boss_amnennar_the_coldbringer::boss_amnennar_the_coldbringerAI, npc_naga_distiller::npc_naga_distillerAI, boss_thorngrin_the_tender::boss_thorngrin_the_tenderAI, celebras_the_cursed::celebras_the_cursedAI, boss_landslide::boss_landslideAI, boss_kurinnaxx::boss_kurinnaxxAI, npc_crystalcore_devastator::npc_crystalcore_devastatorAI, boss_ironaya::boss_ironayaAI, boss_chrono_lord_deja::boss_chrono_lord_dejaAI, boss_mennu_the_betrayer::boss_mennu_the_betrayerAI, boss_commander_sarannis::boss_commander_sarannisAI, boss_void_reaver::boss_void_reaverAI, boss_magmadar::boss_magmadarAI, boss_maiden_of_virtue::boss_maiden_of_virtueAI, boss_kormok::boss_kormokAI, npc_oox09hl::npc_oox09hlAI, boss_aeonus::boss_aeonusAI, boss_temporus::boss_temporusAI, boss_eck::boss_eckAI, boss_erekem::boss_erekemAI, npc_warmage_violetstand::npc_warmage_violetstandAI, npc_argent_valiant::npc_argent_valiantAI, boss_rokmar_the_crackler::boss_rokmar_the_cracklerAI, boss_galvangar::boss_galvangarAI, boss_lord_valthalak::boss_lord_valthalakAI, boss_jindo_the_godbreaker::boss_jindo_the_godbreakerAI, npc_webbed_creature::npc_webbed_creatureAI, boss_amanitar::boss_amanitarAI, boss_krystallus::boss_krystallusAI, boss_maiden_of_grief::boss_maiden_of_griefAI, boss_drekthar::boss_drektharAI, boss_darkmaster_gandling::boss_darkmaster_gandlingAI, boss_marwyn::boss_marwynAI, boss_halycon::boss_halyconAI, boss_interrogator_vishas::boss_interrogator_vishasAI, boss_maleki_the_pallid::boss_maleki_the_pallidAI, npc_pet_hunter_snake_trap::npc_pet_hunter_snake_trapAI, boss_corla::boss_corlaAI, boss_romogg_bonecrusher::boss_romogg_bonecrusherAI, boss_arcanist_doan::boss_arcanist_doanAI, boss_bloodmage_thalnos::boss_bloodmage_thalnosAI, boss_daakara::boss_daakaraAI, boss_nalorakk::boss_nalorakkAI, boss_beauty::boss_beautyAI, boss_mordresh_fire_eye::boss_mordresh_fire_eyeAI, generic_creature::generic_creatureAI, boss_ascendant_lord_obsidius::boss_ascendant_lord_obsidiusAI, boss_karsh_steelbender::boss_karsh_steelbenderAI, boss_hexlord_malacrass::boss_hex_lord_malacrassAI, boss_venoxis::boss_venoxisAI, boss_pandemonius::boss_pandemoniusAI, boss_quagmirran::boss_quagmirranAI, boss_broggok::boss_broggokAI, npc_pet_shaman_earth_elemental::npc_pet_shaman_earth_elementalAI, boss_zanzil::boss_zanzilAI, boss_hydromancer_thespia::boss_thespiaAI, boss_zereketh_the_unbound::boss_zereketh_the_unboundAI, boss_emperor_dagran_thaurissan::boss_draganthaurissanAI, boss_general_angerforge::boss_general_angerforgeAI, boss_warmaster_voone::boss_warmastervooneAI, boss_infinite_corruptor::boss_infinite_corruptorAI, npc_whisperwind_lasher::npc_whisperwind_lasherAI, npc_ymirjar_flamebearer::npc_ymirjar_flamebearerAI, boss_thorim::boss_thorimAI, npc_drakuru_shackles::npc_drakuru_shacklesAI, boss_gizrul_the_slavener::boss_gizrul_the_slavenerAI, boss_shadow_hunter_voshgajin::boss_shadowvoshAI, boss_the_beast::boss_thebeastAI, boss_urok_doomhowl::boss_urok_doomhowlAI, boss_janalai::boss_janalaiAI, boss_kilnara::boss_kilnaraAI, boss_aku_mai::boss_aku_maiAI, boss_mother_smolderweb::boss_mothersmolderwebAI, boss_lord_alexei_barov::boss_lordalexeibarovAI, boss_boss_ras_frostwhisper::boss_rasfrostAI, boss_vectus::boss_vectusAI, boss_halazzi::boss_halazziAI, boss_magmus::boss_magmusAI, boss_highlord_omokk::boss_highlordomokkAI, boss_glutton::boss_gluttonAI, npc_dragonflayer_forge_master::npc_dragonflayer_forge_masterAI, boss_moira_bronzebeard::boss_moira_bronzebeardAI, boss_drakkisath::boss_drakkisathAI, boss_azshir_the_sleepless::boss_azshir_the_sleeplessAI, npc_ghoul_flayer::npc_ghoul_flayerAI, boss_moragg::boss_moraggAI, boss_houndmaster_loksey::boss_houndmaster_lokseyAI, boss_scorn::boss_scornAI, boss_grilek::boss_grilekAI, boss_hazzarah::boss_hazzarahAI, boss_renataki::boss_renatakiAI, boss_wushoolay::boss_wushoolayAI, boss_high_interrogator_gerstahn::boss_high_interrogator_gerstahnAI, npc_pet_gen_mojo::npc_pet_gen_mojoAI, CombatAI, quartermaster_zigris::boss_quatermasterzigrisAI, boss_tuten_kash::boss_tuten_kashAI, npc_fire_cyclone::npc_fire_cycloneAI, boss_jandice_barov::boss_jandicebarovAI, boss_death_knight_darkreaver::boss_death_knight_darkreaverAI, boss_akilzon::boss_akilzonAI, boss_ambassador_flamelash::boss_ambassador_flamelashAI, and boss_lavanthor::boss_lavanthorAI.

132 { }

+ Here is the caller graph for this function:

Unit * UnitAI::SelectTarget ( SelectAggroTarget  targetType,
uint32  position = 0,
float  dist = 0.0f,
bool  playerOnly = false,
int32  aura = 0 
)
92 {
93  return SelectTarget(targetType, position, DefaultTargetSelector(me, dist, playerOnly, aura));
94 }
Unit *const me
Definition: UnitAI.h:121
Unit * SelectTarget(SelectAggroTarget targetType, uint32 position=0, float dist=0.0f, bool playerOnly=false, int32 aura=0)
Definition: UnitAI.cpp:91
Definition: UnitAI.h:43
template<class PREDICATE >
Unit* UnitAI::SelectTarget ( SelectAggroTarget  targetType,
uint32  position,
PREDICATE const predicate 
)
inline
148  {
150  if (position >= threatlist.size())
151  return NULL;
152 
153  std::list<Unit*> targetList;
154  for (ThreatContainer::StorageType::const_iterator itr = threatlist.begin(); itr != threatlist.end(); ++itr)
155  if (predicate((*itr)->getTarget()))
156  targetList.push_back((*itr)->getTarget());
157 
158  if (position >= targetList.size())
159  return NULL;
160 
161  if (targetType == SELECT_TARGET_NEAREST || targetType == SELECT_TARGET_FARTHEST)
162  targetList.sort(Trinity::ObjectDistanceOrderPred(me));
163 
164  switch (targetType)
165  {
168  {
169  std::list<Unit*>::iterator itr = targetList.begin();
170  std::advance(itr, position);
171  return *itr;
172  }
175  {
176  std::list<Unit*>::reverse_iterator ritr = targetList.rbegin();
177  std::advance(ritr, position);
178  return *ritr;
179  }
181  {
182  std::list<Unit*>::iterator itr = targetList.begin();
183  std::advance(itr, urand(position, uint32(targetList.size() - 1)));
184  return *itr;
185  }
186  default:
187  break;
188  }
189 
190  return NULL;
191  }
Definition: UnitAI.h:36
arena_t NULL
Definition: jemalloc_internal.h:624
ThreatContainer::StorageType const & getThreatList() const
Definition: ThreatManager.h:263
Definition: Object.h:668
Unit *const me
Definition: UnitAI.h:121
Definition: UnitAI.h:37
void advance(octet_iterator &it, distance_type n, octet_iterator end)
Definition: checked.h:190
Definition: UnitAI.h:35
uint32 urand(uint32 min, uint32 max)
Definition: Random.cpp:45
std::list< HostileReference * > StorageType
Definition: ThreatManager.h:149
Definition: UnitAI.h:39
ThreatManager & getThreatManager()
Definition: Unit.h:1998
uint32_t uint32
Definition: g3dmath.h:168
Definition: UnitAI.h:38

+ Here is the call graph for this function:

void UnitAI::SelectTargetList ( std::list< Unit * > &  targetList,
uint32  num,
SelectAggroTarget  targetType,
float  dist = 0.0f,
bool  playerOnly = false,
int32  aura = 0 
)
97 {
98  SelectTargetList(targetList, DefaultTargetSelector(me, dist, playerOnly, aura), num, targetType);
99 }
Unit *const me
Definition: UnitAI.h:121
void SelectTargetList(std::list< Unit * > &targetList, uint32 num, SelectAggroTarget targetType, float dist=0.0f, bool playerOnly=false, int32 aura=0)
Definition: UnitAI.cpp:96
Definition: UnitAI.h:43

+ Here is the caller graph for this function:

template<class PREDICATE >
void UnitAI::SelectTargetList ( std::list< Unit * > &  targetList,
PREDICATE const predicate,
uint32  maxTargets,
SelectAggroTarget  targetType 
)
inline
198  {
200  if (threatlist.empty())
201  return;
202 
203  for (ThreatContainer::StorageType::const_iterator itr = threatlist.begin(); itr != threatlist.end(); ++itr)
204  if (predicate((*itr)->getTarget()))
205  targetList.push_back((*itr)->getTarget());
206 
207  if (targetList.size() < maxTargets)
208  return;
209 
210  if (targetType == SELECT_TARGET_NEAREST || targetType == SELECT_TARGET_FARTHEST)
211  targetList.sort(Trinity::ObjectDistanceOrderPred(me));
212 
213  if (targetType == SELECT_TARGET_FARTHEST || targetType == SELECT_TARGET_BOTTOMAGGRO)
214  targetList.reverse();
215 
216  if (targetType == SELECT_TARGET_RANDOM)
217  Trinity::Containers::RandomResizeList(targetList, maxTargets);
218  else
219  targetList.resize(maxTargets);
220  }
void RandomResizeList(std::list< T > &list, uint32 size)
Definition: Containers.h:34
ThreatContainer::StorageType const & getThreatList() const
Definition: ThreatManager.h:263
Definition: Object.h:668
Unit *const me
Definition: UnitAI.h:121
Definition: UnitAI.h:37
Definition: UnitAI.h:35
std::list< HostileReference * > StorageType
Definition: ThreatManager.h:149
Definition: UnitAI.h:39
ThreatManager & getThreatManager()
Definition: Unit.h:1998
Definition: UnitAI.h:38

+ Here is the call graph for this function:

virtual void UnitAI::SetData ( uint32  ,
uint32   
)
inlinevirtual

Reimplemented in npc_shadowmoon_tuber_node::npc_shadowmoon_tuber_nodeAI, npc_gauntlet_trash, npc_gunship_boarding_addAI, npc_mimiron_emergency_fire_bot::npc_mimiron_emergency_fire_botAI, npc_the_lich_king_escape_hor::npc_the_lich_king_escape_horAI, npc_muradin_bronzebeard_igb::npc_muradin_bronzebeard_igbAI, npc_combustion_consumption::npc_combustion_consumptionAI, npc_meteor_strike::npc_meteor_strikeAI, npc_sindragosa_trash::npc_sindragosa_trashAI, npc_saurfang_event::npc_saurfang_eventAI, npc_darkrune_guardian::npc_darkrune_guardianAI, npc_high_overlord_saurfang_igb::npc_high_overlord_saurfang_igbAI, violet_hold_trashAI, boss_leviathan_mk_ii::boss_leviathan_mk_iiAI, npc_alexstraza_the_lifebinder::npc_alexstraza_the_lifebinderAI, npc_halion_controller::npc_halion_controllerAI, npc_violet_hold_teleportation_portal::npc_violet_hold_teleportation_portalAI, npc_violet_hold_teleportation_portal_commonAI, boss_the_lich_king::boss_the_lich_kingAI, npc_raz_the_crazed::npc_raz_the_crazedAI, boss_professor_putricide::boss_professor_putricideAI, gunship_npc_AI, npc_argent_soldier::npc_argent_soldierAI, npc_simon_bunny::npc_simon_bunnyAI, boss_toc_champion_controller::boss_toc_champion_controllerAI, npc_alchemist_finklestein::npc_alchemist_finklesteinAI, boss_halion::boss_halionAI, npc_omrogg_heads::npc_omrogg_headsAI, npc_highlord_tirion_fordring_lh::npc_highlord_tirion_fordringAI, boss_malygos::boss_malygosAI, boss_flame_leviathan::boss_flame_leviathanAI, boss_xt002::boss_xt002_AI, npc_blackhand_incarcerator::npc_blackhand_incarceratorAI, npc_crystal_channel_target::npc_crystal_channel_targetAI, boss_paletress::boss_paletressAI, npc_outhouse_bunny::npc_outhouse_bunnyAI, npc_idol_room_spawner::npc_idol_room_spawnerAI, generic_halionAI, npc_blastmaster_emi_shortfuse::npc_blastmaster_emi_shortfuseAI, boss_festergut::boss_festergutAI, boss_blood_council_controller::boss_blood_council_controllerAI, npc_enslaved_proto_drake::npc_enslaved_proto_drakeAI, boss_victor_nefarius::boss_victor_nefariusAI, boss_auriaya::boss_auriayaAI, boss_rend_blackhand::boss_rend_blackhandAI, dummy_dragonAI, boss_drakkari_colossus::boss_drakkari_colossusAI, generic_vehicleAI_toc5::generic_vehicleAI_toc5AI, boss_keleseth::boss_kelesethAI, boss_earthrager_ptah::boss_earthrager_ptahAI, SmartAI, boss_wrath_scryer_soccothrates::boss_wrath_scryer_soccothratesAI, npc_announcer_toc5::npc_announcer_toc5AI, boss_grand_warlock_nethekurse::boss_grand_warlock_nethekurseAI, boss_shattered_executioner::boss_shattered_executionerAI, boss_dalliah_the_doomsayer::boss_dalliah_the_doomsayerAI, boss_pyroguard_emberseer::boss_pyroguard_emberseerAI, boss_gyth::boss_gythAI, and npc_invis_infernal_caster::npc_invis_infernal_casterAI.

140 { }

+ Here is the caller graph for this function:

virtual void UnitAI::sGossipHello ( Player )
inlinevirtual

Reimplemented in SmartAI.

253 { }

+ Here is the caller graph for this function:

virtual void UnitAI::sGossipSelect ( Player ,
uint32  ,
uint32   
)
inlinevirtual

Reimplemented in npc_akama_illidan::npc_akama_illidanAI, npc_observation_ring_keeper::npc_observation_ring_keeperAI, npc_zafod_boombox::npc_zafod_boomboxAI, npc_lorekeeper::npc_lorekeeperAI, npc_muradin_bronzebeard_igb::npc_muradin_bronzebeard_igbAI, npc_brann_bronzebeard_ulduar_intro::npc_brann_bronzebeard_ulduar_introAI, npc_tirion_fordring_tft::npc_tirion_fordringAI, npc_high_overlord_saurfang_igb::npc_high_overlord_saurfang_igbAI, npc_jaina_or_sylvanas_escape_hor::npc_jaina_or_sylvanas_escape_horAI, npc_muradin_bronzebeard_icc::npc_muradin_bronzebeard_iccAI, npc_lake_frog::npc_lake_frogAI, npc_salanar_the_horseman::npc_salanar_the_horsemanAI, npc_high_overlord_saurfang_icc::npc_high_overlord_saurfangAI, npc_alchemist_finklestein::npc_alchemist_finklesteinAI, npc_akama_shade::npc_akamaAI, npc_barada::npc_baradaAI, npc_brann_bronzebeard_keystone::npc_brann_bronzebeard_keystoneAI, npc_sinclari_vh::npc_sinclariAI, boss_victor_nefarius::boss_victor_nefariusAI, npc_jaina_or_sylvanas_intro_hor::npc_jaina_or_sylvanas_intro_horAI, npc_brann_bronzebeard_anraphet::npc_brann_bronzebeard_anraphetAI, npc_crusade_recruit::npc_crusade_recruitAI, npc_engineer_spark_overgrind::npc_engineer_spark_overgrindAI, npc_morridune::npc_morriduneAI, boss_vaelastrasz::boss_vaelAI, SmartAI, npc_verdisa_beglaristrasz_eternos::npc_verdisa_beglaristrasz_eternosAI, npc_blastmaster_emi_shortfuse::npc_blastmaster_emi_shortfuseAI, npc_voljin_zulaman::npc_voljin_zulamanAI, and npc_injured_goblin::npc_injured_goblinAI.

254 { }

+ Here is the caller graph for this function:

virtual void UnitAI::sGossipSelectCode ( Player ,
uint32  ,
uint32  ,
char const  
)
inlinevirtual

Reimplemented in SmartAI.

255 { }

+ Here is the caller graph for this function:

virtual bool UnitAI::sOnDummyEffect ( Unit ,
uint32  ,
SpellEffIndex   
)
inlinevirtual

Reimplemented in SmartAI.

259 { return false; }

+ Here is the caller graph for this function:

virtual void UnitAI::sOnGameEvent ( bool  ,
uint16   
)
inlinevirtual

Reimplemented in SmartAI.

260 { }
virtual void UnitAI::SpellInterrupted ( uint32  ,
uint32   
)
inlinevirtual

Called when a spell is interrupted by Spell::EffectInterruptCast Use to reschedule next planned cast of spell.

Reimplemented in CombatAI.

238 { }
virtual void UnitAI::sQuestReward ( Player ,
Quest const ,
uint32   
)
inlinevirtual

Reimplemented in SmartAI.

258 { }

+ Here is the caller graph for this function:

virtual void UnitAI::sQuestSelect ( Player ,
Quest const  
)
inlinevirtual
257 { }
virtual void UnitAI::UpdateAI ( uint32  diff)
pure virtual

Implemented in npc_pandaren_monk::npc_pandaren_monkAI, npc_quel_delar_sword::npc_quel_delar_swordAI, npc_egbert::npc_egbertAI, npc_uther_quel_delar::npc_uther_quel_delarAI, npc_train_wrecker::npc_train_wreckerAI, npc_imp_in_a_ball::npc_imp_in_a_ballAI, npc_lumbering_abomination::npc_lumbering_abominationAI, npc_spring_rabbit::npc_spring_rabbitAI, npc_hidden_cultist::npc_hidden_cultistAI, npc_risen_witch_doctor::npc_risen_witch_doctorAI, npc_toc_pet_hunter::npc_toc_pet_hunterAI, npc_parasitic_shadowfiend::npc_parasitic_shadowfiendAI, npc_raging_ghoul::npc_raging_ghoulAI, npc_toc_pet_warlock::npc_toc_pet_warlockAI, npc_escape_event_trash, npc_warmage_coldarra::npc_warmage_coldarraAI, npc_shadow_demon::shadow_demonAI, npc_toc_retro_paladin::npc_toc_retro_paladinAI, npc_valiance_keep_cannoneer::npc_valiance_keep_cannoneerAI, npc_cage_trap_trigger::cage_trap_triggerAI, npc_toc_enh_shaman::npc_toc_enh_shamanAI, npc_spiritual_reflection::npc_spiritual_reflectionAI, npc_broken_frostmourne::npc_broken_frostmourneAI, npc_trapped_mammoth_calf::npc_trapped_mammoth_calfAI, npc_laughing_skull::npc_laughing_skullAI, npc_spirit_bomb::npc_spirit_bombAI, npc_frostsworn_general::npc_frostsworn_generalAI, npc_spirit_warden::npc_spirit_wardenAI, npc_toc_rogue::npc_toc_rogueAI, npc_garona::npc_garonaAI, npc_tortured_rifleman::npc_tortured_riflemanAI, npc_gunship_mage::npc_gunship_mageAI, npc_terenas_menethil::npc_terenas_menethilAI, npc_toc_dk::npc_toc_dkAI, npc_spectral_footman::npc_spectral_footmanAI, npc_arthas_teleport_visual::npc_arthas_teleport_visualAI, npc_yogg_saron_illusions::npc_yogg_saron_illusionsAI, npc_akama_illidan::npc_akama_illidanAI, npc_gunship_rocketeer::npc_gunship_rocketeerAI, npc_impaling_spear::npc_impaling_spearAI, npc_shadowy_mercenary::npc_shadowy_mercenaryAI, npc_the_lich_king_tirion_dawn::npc_the_lich_king_tirion_dawnAI, npc_gunship_gunner::npc_gunship_gunnerAI, npc_toc_warrior::npc_toc_warriorAI, npc_imprisoned_beryl_sorcerer::npc_imprisoned_beryl_sorcererAI, npc_yogg_saron_keeper::npc_yogg_saron_keeperAI, npc_strangulate_vehicle::npc_strangulate_vehicleAI, npc_mimiron_proximity_mine::npc_mimiron_proximity_mineAI, npc_captain_rupert::npc_captain_rupertAI, npc_gunship_boarding_leader::npc_gunship_boarding_leaderAI, npc_phantom_mage::npc_phantom_mageAI, npc_mimiron_frost_bomb::npc_mimiron_frost_bombAI, npc_wyrmrest_skytalon::npc_wyrmrest_skytalonAI, npc_beryl_sorcerer::npc_beryl_sorcererAI, npc_observation_ring_keeper::npc_observation_ring_keeperAI, npc_toc_boomkin::npc_toc_boomkinAI, npc_captain_grondel::npc_captain_grondelAI, npc_training_dummy::npc_training_dummyAI, npc_valkyr_shadowguard::npc_valkyr_shadowguardAI, npc_mimiron_flames::npc_mimiron_flamesAI, npc_gunship_boarding_addAI, npc_unstable_sun_beam::npc_unstable_sun_beamAI, npc_arcane_overload::npc_arcane_overloadAI, npc_ghostly_priest::npc_ghostly_priestAI, npc_immortal_guardian::npc_immortal_guardianAI, npc_captain_brandon::npc_captain_brandonAI, npc_nature_bomb::npc_nature_bombAI, npc_scion_of_eternity::npc_scion_of_eternityAI, npc_toc_hunter::npc_toc_hunterAI, alliance_rifleman::alliance_riflemanAI, npc_descend_into_madness::npc_descend_into_madnessAI, npc_phoenix_egg_tk::npc_phoenix_egg_tkAI, npc_mimiron_computer::npc_mimiron_computerAI, npc_eonars_gift::npc_eonars_giftAI, npc_tonk_mine::npc_tonk_mineAI, npc_zafod_boombox::npc_zafod_boomboxAI, npc_leryssa::npc_leryssaAI, npc_influence_tentacle::npc_influence_tentacleAI, npc_healthy_spore::npc_healthy_sporeAI, npc_raging_spirit::npc_raging_spiritAI, npc_captain_arnath::npc_captain_arnathAI, npc_nexus_lord::npc_nexus_lordAI, npc_mimiron_emergency_fire_bot::npc_mimiron_emergency_fire_botAI, npc_phoenix_tk::npc_phoenix_tkAI, npc_crusher_tentacle::npc_crusher_tentacleAI, npc_toc_mage::npc_toc_mageAI, boss_romulo::boss_romuloAI, npc_dark_nucleus::npc_dark_nucleusAI, npc_sinster_reflection::npc_sinster_reflectionAI, npc_illidari_spawn::npc_illidari_spawnAI, npc_living_ember::npc_living_emberAI, npc_gargoyle::npc_gargoyleAI, boss_maiev_shadowsong::boss_maievAI, npc_ancient_conservator::npc_ancient_conservatorAI, npc_constrictor_tentacle::npc_constrictor_tentacleAI, boss_zelfan::boss_zelfanAI, npc_shambling_horror_icc::npc_shambling_horror_iccAI, npc_violet_hold_defense_system::npc_violet_hold_defense_systemAI, npc_the_lich_king_escape_hor::npc_the_lich_king_escape_horAI, npc_kael_flamestrike::npc_kael_flamestrikeAI, npc_counselor_talbot::npc_counselor_talbotAI, npc_mimiron_assault_bot::npc_mimiron_assault_botAI, npc_kinetic_bomb::npc_kinetic_bombAI, npc_toc_warlock::npc_toc_warlockAI, npc_muradin_bronzebeard_igb::npc_muradin_bronzebeard_igbAI, npc_giant_eye_tentacle::giant_eye_tentacleAI, npc_lord_illidan_stormrage::npc_lord_illidan_stormrageAI, npc_shield_orb::npc_shield_orbAI, npc_corruptor_tentacle::npc_corruptor_tentacleAI, npc_snaplasher::npc_snaplasherAI, npc_melee_hover_disk::npc_melee_hover_diskAI, npc_combustion_consumption::npc_combustion_consumptionAI, boss_master_engineer_telonicus::boss_master_engineer_telonicusAI, boss_aerial_command_unit::boss_aerial_command_unitAI, boss_apoko::boss_apokoAI, npc_tirion_fordring_tft::npc_tirion_fordringAI, npc_scarlet_miner::npc_scarlet_minerAI, npc_ball_of_flame::npc_ball_of_flameAI, npc_frost_wyrm::npc_frost_wyrmAI, boss_julianne::boss_julianneAI, npc_guardian_of_yogg_saron::npc_guardian_of_yogg_saronAI, npc_storm_lasher::npc_storm_lasherAI, npc_guardian::npc_guardianAI, npc_armageddon::npc_armageddonAI, npc_toc_shadow_priest::npc_toc_shadow_priestAI, npc_freya_ward_summon::npc_freya_ward_summonAI, npc_giant_claw_tentacle::giant_claw_tentacleAI, npc_ominous_cloud::npc_ominous_cloudAI, npc_meteor_strike_flame::npc_meteor_strike_flameAI, npc_power_spark::npc_power_sparkAI, npc_ashtongue_spiritbinder::npc_ashtongue_spiritbinderAI, boss_grand_astromancer_capernian::boss_grand_astromancer_capernianAI, npc_volatile_felfire_fiend::npc_volatile_felfire_fiendAI, npc_freyas_ward::npc_freyas_wardAI, npc_garments_of_quests::npc_garments_of_questsAI, boss_garaxxas::boss_garaxxasAI, npc_ancient_water_spirit::npc_ancient_water_spiritAI, npc_blood_queen_lana_thel::npc_blood_queen_lana_thelAI, npc_fel_stalker::npc_fel_stalkerAI, npc_dream_cloud::npc_dream_cloudAI, npc_meteor_strike::npc_meteor_strikeAI, npc_portal_eoe::npc_portal_eoeAI, npc_toc_priest::npc_toc_priestAI, boss_brain_of_yogg_saron::boss_brain_of_yogg_saronAI, npc_hodirs_fury::npc_hodirs_furyAI, npc_torloth_the_magnificent::npc_torloth_the_magnificentAI, npc_dream_portal::npc_dream_portalAI, npc_felfire_portal::npc_felfire_portalAI, npc_ashtongue_elementalist::npc_ashtongue_elementalistAI, boss_vx_001::boss_vx_001AI, npc_darkrune_sentinel::npc_darkrune_sentinelAI, npc_detonating_lasher::npc_detonating_lasherAI, npc_claw_tentacle::claw_tentacleAI, npc_meteor_strike_initial::npc_meteor_strike_initialAI, boss_lord_sanguinar::boss_lord_sanguinarAI, npc_mimirons_inferno::npc_mimirons_infernoAI, npc_sindragosa_trash::npc_sindragosa_trashAI, npc_anachronos_quest_trigger::npc_anachronos_quest_triggerAI, npc_crypt_fiend::npc_crypt_fiendAI, npc_tesla::npc_teslaAI, npc_twilight_whelp::npc_twilight_whelpAI, npc_gluttonous_abomination::npc_gluttonous_abominationAI, npc_high_overlord_saurfang_igb::npc_high_overlord_saurfang_igbAI, npc_oscillating_frequency_scanner_master_bunny::npc_oscillating_frequency_scanner_master_bunnyAI, boss_prince_valanar_icc::boss_prince_valanarAI, npc_darkrune_guardian::npc_darkrune_guardianAI, npc_ashtongue_rogue::npc_ashtongue_rogueAI, npc_scarlet_ghoul::npc_scarlet_ghoulAI, boss_rouge_toc5::boss_rouge_toc5AI, npc_jaina_or_sylvanas_escape_hor::npc_jaina_or_sylvanas_escape_horAI, npc_vics_flying_machine::npc_vics_flying_machineAI, boss_warlord_salaris::boss_warlord_salarisAI, npc_toc_paladin::npc_toc_paladinAI, npc_hand_of_the_deceiver::npc_hand_of_the_deceiverAI, boss_icehowl::boss_icehowlAI, npc_thorims_hammer::npc_thorims_hammerAI, boss_yogg_saron::boss_yogg_saronAI, boss_elder_ironbranch::boss_elder_ironbranchAI, npc_blistering_zombie::npc_blistering_zombieAI, npc_twilight_fissure::npc_twilight_fissureAI, boss_illidan_stormrage::boss_illidan_stormrageAI, npc_eye_tentacle::eye_tentacleAI, npc_brann_bronzebeard_algalon::npc_brann_bronzebeard_algalonAI, npc_thassarian::npc_thassarianAI, boss_bigbadwolf::boss_bigbadwolfAI, npc_muradin_bronzebeard_icc::npc_muradin_bronzebeard_iccAI, npc_colossus::npc_colossusAI, boss_thaladred_the_darkener::boss_thaladred_the_darkenerAI, npc_feugen::npc_feugenAI, npc_darnavan::npc_darnavanAI, npc_darkrune_watcher::npc_darkrune_watcherAI, npc_varian_toc::npc_varian_tocAI, npc_banshee::npc_bansheeAI, npc_orb_carrier::npc_orb_carrierAI, npc_suppresser::npc_suppresserAI, boss_sister_svalna::boss_sister_svalnaAI, npc_pool_of_tar::npc_pool_of_tarAI, npc_injured_patient::npc_injured_patientAI, npc_ashtongue_defender::npc_ashtongue_defenderAI, npc_flame_tsunami::npc_flame_tsunamiAI, npc_pulsing_pumpkin::npc_pulsing_pumpkinAI, npc_rimefang::npc_rimefangAI, npc_toc_shaman::npc_toc_shamanAI, npc_hodir_mage::npc_hodir_mageAI, npc_shield_generator_channel::npc_shield_generator_channelAI, boss_the_lich_king::boss_the_lich_kingAI, boss_elder_stonebark::boss_elder_stonebarkAI, boss_leviathan_mk_ii::boss_leviathan_mk_iiAI, boss_veras_darkshadow::boss_veras_darkshadowAI, npc_earthmender_wilda::npc_earthmender_wildaAI, npc_colonel_jules::npc_colonel_julesAI, npc_mechanolift::npc_mechanoliftAI, npc_twilight_eggs::npc_twilight_eggsAI, boss_yazzai::boss_yazzaiAI, npc_blazing_skeleton::npc_blazing_skeletonAI, npc_garrosh_toc::npc_garrosh_tocAI, npc_alexstraza_the_lifebinder::npc_alexstraza_the_lifebinderAI, boss_hunter_toc5::boss_hunter_toc5AI, npc_necromancer::npc_necromancerAI, npc_mole_machine_trigger::npc_mole_machine_triggerAI, npc_slime_pool::npc_slime_poolAI, npc_qiraj_war_spawn::npc_qiraj_war_spawnAI, npc_ashtongue_sorcerer::npc_ashtongue_sorcererAI, npc_hodir_druid::npc_hodir_druidAI, boss_lord_crispin_ference::boss_lord_crispin_ferenceAI, npc_cyclone::npc_cycloneAI, npc_living_constellation::npc_living_constellationAI, boss_flame_leviathan_safety_container::boss_flame_leviathan_safety_containerAI, npc_toxic_sporebat::npc_toxic_sporebatAI, npc_toc_druid::npc_toc_druidAI, npc_life_spark::npc_life_sparkAI, npc_doctor::npc_doctorAI, npc_nexus_drake_hatchling::npc_nexus_drake_hatchlingAI, npc_acolyte_of_vesperon::npc_acolyte_of_vesperonAI, boss_sara::boss_saraAI, boss_malygos::boss_malygosAI, npc_cult_adherent::npc_cult_adherentAI, npc_high_overlord_saurfang_icc::npc_high_overlord_saurfangAI, npc_greyheart_spellbinder::npc_greyheart_spellbinderAI, npc_risen_archmage::npc_risen_archmageAI, npc_palehoof_orb::npc_palehoof_orbAI, npc_frostbrood_skytalon::npc_frostbrood_skytalonAI, boss_lady_malande::boss_lady_malandeAI, boss_prince_taldaram_icc::boss_prince_taldaramAI, boss_eramas_brightblaze::boss_eramas_brightblazeAI, npc_putricide_oozeAI, npc_rocknot::npc_rocknotAI, boss_elder_brightleaf::boss_elder_brightleafAI, npc_anachronos_the_ancient::npc_anachronos_the_ancientAI, npc_stillpine_capitive::npc_stillpine_capitiveAI, npc_hodir_shaman::npc_hodir_shamanAI, npc_spinestalker::npc_spinestalkerAI, npc_boombot::npc_boombotAI, boss_lord_robin_daris::boss_lord_robin_darisAI, boss_crone::boss_croneAI, npc_anubarak_spike::npc_anubarak_spikeAI, npc_a_special_surprise::npc_a_special_surpriseAI, boss_sathrovarr::boss_sathrovarrAI, npc_kelthuzad_abomination::npc_kelthuzad_abominationAI, boss_faction_championsAI, npc_king_jokkum_vehicle::npc_king_jokkum_vehicleAI, npc_lake_frog::npc_lake_frogAI, npc_shadow_image::npc_shadow_imageAI, npc_frost_freeze_trap::npc_frost_freeze_trapAI, npc_tainted_elemental::npc_tainted_elementalAI, boss_essence_of_anger::boss_essence_of_angerAI, npc_creature_generator_akama::npc_creature_generator_akamaAI, npc_halion_controller::npc_halion_controllerAI, npc_ghoul::npc_ghoulAI, npc_maxx_a_million_escort::npc_maxx_a_million_escortAI, npc_the_etymidian::npc_the_etymidianAI, npc_acolyte_of_shadron::npc_acolyte_of_shadronAI, npc_cult_fanatic::npc_cult_fanaticAI, npc_bullet_controller::npc_bullet_controllerAI, npc_arcane_sphere::npc_arcane_sphereAI, boss_kiljaeden::boss_kiljaedenAI, npc_violet_hold_teleportation_portal_commonAI, npc_dark_rider_of_acherus::npc_dark_rider_of_acherusAI, npc_torturer_lecraft::npc_torturer_lecraftAI, boss_flame_leviathan_defense_cannon::boss_flame_leviathan_defense_cannonAI, npc_expedition_commander::npc_expedition_commanderAI, boss_shaman_toc5::boss_shaman_toc5AI, boss_leotheras_the_blind_demonform::boss_leotheras_the_blind_demonformAI, boss_kaelthas::boss_kaelthasAI, boss_taerar::boss_taerarAI, npc_massive_jormungar::npc_massive_jormungarAI, boss_ellris_duskhallow::boss_ellris_duskhallowAI, npc_hodir_priest::npc_hodir_priestAI, boss_headless_horseman::boss_headless_horsemanAI, boss_lady_keira_berrybuck::boss_lady_keira_berrybuckAI, npc_stalagg::npc_stalaggAI, boss_high_nethermancer_zerevor::boss_high_nethermancer_zerevorAI, npc_the_lich_king_controller::npc_the_lich_king_controllerAI, npc_unleashed_light::npc_unleashed_lightAI, npc_raz_the_crazed::npc_raz_the_crazedAI, npc_felkael_phoenix_egg::npc_felkael_phoenix_eggAI, npc_taretha::npc_tarethaAI, npc_death_ravager::npc_death_ravagerAI, boss_fathomguard_caribdis::boss_fathomguard_caribdisAI, boss_roar::boss_roarAI, npc_rotting_frost_giant::npc_rotting_frost_giantAI, npc_azure_saboteur::npc_azure_saboteurAI, npc_snowpacked_icicle::npc_snowpacked_icicleAI, npc_enchanted_elemental::npc_enchanted_elementalAI, npc_ice_tomb::npc_ice_tombAI, npc_highlord_darion_mograine::npc_highlord_darion_mograineAI, npc_unleashed_dark::npc_unleashed_darkAI, npc_arthas::npc_arthasAI, npc_watcher_silthik::npc_watcher_silthikAI, npc_image_of_medivh::npc_image_of_medivhAI, boss_essence_of_desire::boss_essence_of_desireAI, npc_argent_soldier::npc_argent_soldierAI, npc_elder_kekek::npc_elder_kekekAI, npc_lurgglbr::npc_lurgglbrAI, npc_abomination::npc_abominationAI, npc_pummeller::npc_pummellerAI, npc_death_knight_initiate::npc_death_knight_initiateAI, npc_ashtongue_channeler::npc_ashtongue_channelerAI, boss_cthun::cthunAI, npc_felmyst_trail::npc_felmyst_trailAI, npc_vesperon::npc_vesperonAI, npc_venture_co_straggler::npc_venture_co_stragglerAI, npc_gothik_minion::npc_gothik_minionAI, boss_lady_catriona_von_indi::boss_lady_catriona_von_indiAI, boss_professor_putricide::boss_professor_putricideAI, npc_felkael_phoenix::npc_felkael_phoenixAI, npc_scourge_hulk::npc_scourge_hulkAI, npc_barada::npc_baradaAI, npc_icicle::npc_icicleAI, npc_blackhole::npc_blackholeAI, npc_nerubian_burrower::npc_nerubian_burrowerAI, npc_green_dragon_combat_trigger::npc_green_dragon_combat_triggerAI, npc_torch_tossing_target_bunny_controller::npc_torch_tossing_target_bunny_controllerAI, npc_geezle::npc_geezleAI, npc_kurenai_captive::npc_kurenai_captiveAI, boss_stormcaller_brundir::boss_stormcaller_brundirAI, npc_flame_patch_alar::npc_flame_patch_alarAI, npc_wyrmrest_defender::npc_wyrmrest_defenderAI, npc_dragonmaw_peon::npc_dragonmaw_peonAI, boss_algalon_the_observer::boss_algalon_the_observerAI, boss_jormungarAI, npc_felmyst_vapor::npc_felmyst_vaporAI, npc_hellfire_channeler::npc_hellfire_channelerAI, npc_jedogas_aufseher_trigger::npc_jedogas_aufseher_triggerAI, npc_aran_elemental::water_elementalAI, npc_crazed_mage::npc_crazed_mageAI, boss_kagani_nightstrike::boss_kagani_nightstrikeAI, boss_krosh_firehand::boss_krosh_firehandAI, npc_tirion_toc::npc_tirion_tocAI, npc_ferocious_rhino::npc_ferocious_rhinoAI, npc_thrall_old_hillsbrad::npc_thrall_old_hillsbradAI, boss_prince_keleseth_icc::boss_prince_kelesethAI, boss_gathios_the_shatterer::boss_gathios_the_shattererAI, boss_grubbis::boss_grubbisAI, boss_alythess::boss_alythessAI, boss_veklor::boss_veklorAI, npc_watcher_narjil::npc_watcher_narjilAI, boss_voice_of_yogg_saron::boss_voice_of_yogg_saronAI, npc_high_inquisitor_valroth::npc_high_inquisitor_valrothAI, npc_scrapbot::npc_scrapbotAI, npc_wounded_skirmisher::npc_wounded_skirmisherAI, npc_ember_of_alar::npc_ember_of_alarAI, boss_mage_toc5::boss_mage_toc5AI, boss_tinhead::boss_tinheadAI, npc_shadron::npc_shadronAI, boss_fathomguard_tidalvess::boss_fathomguard_tidalvessAI, npc_alchemist_finklestein::npc_alchemist_finklesteinAI, boss_baron_rafe_dreuger::boss_baron_rafe_dreugerAI, boss_kalec::boss_kalecAI, npc_void_sentinel::npc_void_sentinelAI, npc_high_oracle_soo_roo::npc_high_oracle_soo_rooAI, npc_hellfire_sentry::npc_hellfire_sentryAI, npc_brann_bronzebeard_keystone::npc_brann_bronzebeard_keystoneAI, boss_essence_of_suffering::boss_essence_of_sufferingAI, npc_swarm_scarab::npc_swarm_scarabAI, boss_mimiron::boss_mimironAI, npc_bone_spike::npc_bone_spikeAI, npc_felkael_flamestrike::npc_felkael_flamestrikeAI, npc_highlord_tirion_fordring_lh::npc_highlord_tirion_fordringAI, boss_priestess_lackey_commonAI, npc_firebomb::npc_firebombAI, npc_blessed_banner::npc_blessed_bannerAI, npc_mad_prisoner::npc_mad_prisonerAI, npc_kiljaeden_controller::npc_kiljaeden_controllerAI, npc_phase_hunter::npc_phase_hunterAI, npc_dancing_flames::npc_dancing_flamesAI, npc_jungle_punch_target::npc_jungle_punch_targetAI, npc_akama_shade::npc_akamaAI, npc_xt002_heart::npc_xt002_heartAI, boss_nefarian::boss_nefarianAI, npc_giant_infernal::npc_giant_infernalAI, npc_nesingwary_trapper::npc_nesingwary_trapperAI, boss_blindeye_the_seer::boss_blindeye_the_seerAI, npc_solarium_priest::npc_solarium_priestAI, boss_deathbringer_saurfang::boss_deathbringer_saurfangAI, npc_memory::npc_memoryAI, npc_living_mojo::npc_living_mojoAI, npc_watcher_gashra::npc_watcher_gashraAI, npc_egg_pile::npc_egg_pileAI, npc_simon_bunny::npc_simon_bunnyAI, npc_jedoga_initiand::npc_jedoga_initiandAI, npc_molten_golem::npc_molten_golemAI, boss_veknilash::boss_veknilashAI, npc_flame_of_azzinoth::flame_of_azzinothAI, npc_tenebron::npc_tenebronAI, npc_mistress_of_pain::npc_mistress_of_painAI, npc_enslaved_netherwing_drake::npc_enslaved_netherwing_drakeAI, boss_valithria_dreamwalker::boss_valithria_dreamwalkerAI, npc_stormforged_lieutenant::npc_stormforged_lieutenantAI, npc_ritual_channeler::npc_ritual_channelerAI, npc_scarlet_courier::npc_scarlet_courierAI, npc_omrogg_heads::npc_omrogg_headsAI, boss_baroness_dorothea_millstipe::boss_baroness_dorothea_millstipeAI, npc_chained_spirit::npc_chained_spiritAI, boss_sindragosa::boss_sindragosaAI, npc_amberpine_woodsman::npc_amberpine_woodsmanAI, npc_dark_fiend::npc_dark_fiendAI, boss_lady_deathwhisper::boss_lady_deathwhisperAI, npc_mindless_abomination::npc_mindless_abominationAI, npc_feral_defender::npc_feral_defenderAI, boss_leotheras_the_blind::boss_leotheras_the_blindAI, npc_seismic_shard::npc_seismic_shardAI, npc_frenzied_worgen::npc_frenzied_worgenAI, boss_razorscale::boss_razorscaleAI, npc_scorch_ground::npc_scorch_groundAI, player_overlord_brandAI, boss_hodir::boss_hodirAI, boss_sartharion::boss_sartharionAI, npc_demolitionist_legoso::npc_demolitionist_legosoAI, npc_syth_shadow::npc_syth_shadowAI, npc_coilfang_ambusher::npc_coilfang_ambusherAI, boss_felmyst::boss_felmystAI, npc_coldflame::npc_coldflameAI, boss_teron_gorefiend::boss_teron_gorefiendAI, npc_fizzlebang_toc::npc_fizzlebang_tocAI, npc_jaina_or_sylvanas_intro_hor::npc_jaina_or_sylvanas_intro_horAI, npc_precious_icc::npc_precious_iccAI, npc_warden_mellichar::npc_warden_mellicharAI, boss_freya::boss_freyaAI, npc_the_biggest_tree::npc_the_biggest_treeAI, npc_sinclari_vh::npc_sinclariAI, boss_strawman::boss_strawmanAI, npc_nether_portal::npc_nether_portalAI, boss_vazruden_the_herald::boss_vazruden_the_heraldAI, advisorbase_ai, npc_hyldsmeet_protodrake::npc_hyldsmeet_protodrakeAI, npc_saronite_vapors::npc_saronite_vaporsAI, boss_gothik::boss_gothikAI, boss_halion::boss_halionAI, npc_announcer_toc5::npc_announcer_toc5AI, WorldBossAI, boss_kelthuzad::boss_kelthuzadAI, boss_malchezaar::boss_malchezaarAI, npc_eye_of_acherus::npc_eye_of_acherusAI, npc_phalanx::npc_phalanxAI, npc_blackhand_incarcerator::npc_blackhand_incarceratorAI, boss_moroes_guestAI, npc_anub_ar_warrior::npc_anub_ar_warriorAI, npc_stalactite_trigger::npc_stalactite_triggerAI, npc_fel_guard_hound::npc_fel_guard_houndAI, boss_terestian_illhoof::boss_terestianAI, npc_twilight_sadist::npc_twilight_sadistAI, boss_runemaster_molgeim::boss_runemaster_molgeimAI, npc_floon::npc_floonAI, npc_brann_bronzebeard_anraphet::npc_brann_bronzebeard_anraphetAI, npc_twiggy_flathead::npc_twiggy_flatheadAI, boss_warrior_toc5::boss_warrior_toc5AI, dummy_dragonAI, boss_flame_leviathan::boss_flame_leviathanAI, boss_fathomguard_sharkkis::boss_fathomguard_sharkkisAI, npc_tallhorn_stag::npc_tallhorn_stagAI, npc_black_knight_skeletal_gryphon::npc_black_knight_skeletal_gryphonAI, npc_stonekeepers::npc_stonekeepersAI, guard_shattrath_aldor::guard_shattrath_aldorAI, npc_snobold_vassal::npc_snobold_vassalAI, npc_gravity_well::npc_gravity_wellAI, boss_kiggler_the_crazed::boss_kiggler_the_crazedAI, npc_corki::npc_corkiAI, npc_muru_portal::npc_muru_portalAI, boss_krick::boss_krickAI, npc_chicken_cluck::npc_chicken_cluckAI, npc_icefang::npc_icefangAI, npc_yor::npc_yorAI, npc_sanctum_sentry::npc_sanctum_sentryAI, boss_magtheridon::boss_magtheridonAI, npc_avatar_of_martyred::npc_avatar_of_martyredAI, npc_fel_orc_convert::npc_fel_orc_convertAI, npc_time_rift::npc_time_riftAI, npc_syth_frost::npc_syth_frostAI, BossAI, npc_ohgan::npc_ohganAI, boss_rimefang::boss_rimefangAI, boss_kalecgos_kj::boss_kalecgos_kjAI, npc_water_globule::npc_water_globuleAI, npc_tomb_creature::npc_tomb_creatureAI, npc_spark_of_ionar::npc_spark_of_ionarAI, boss_paletress::boss_paletressAI, npc_ruby_emerald_amber_drake::npc_ruby_emerald_amber_drakeAI, boss_blood_queen_lana_thel::boss_blood_queen_lana_thelAI, npc_weegli_blastfuse::npc_weegli_blastfuseAI, boss_saronite_animus::boss_saronite_animusAI, npc_son_of_flame::npc_son_of_flameAI, npc_lava_fissure::npc_lava_fissureAI, npc_iron_construct::npc_iron_constructAI, boss_four_horsemen::boss_four_horsemenAI, npc_head::npc_headAI, npc_risen_ghoul::npc_risen_ghoulAI, boss_thaddius::boss_thaddiusAI, npc_annhylde_the_caller::npc_annhylde_the_callerAI, npc_crystal_channel_target::npc_crystal_channel_targetAI, npc_big_ooze::npc_big_oozeAI, npc_fel_infernal::npc_fel_infernalAI, npc_illidari_council::npc_illidari_councilAI, boss_onyxia::boss_onyxiaAI, npc_shadowmoon_channeler::npc_shadowmoon_channelerAI, npc_blazing_monstrosity::npc_blazing_monstrosityAI, boss_lady_vashj::boss_lady_vashjAI, npc_anub_ar_shadowcaster::npc_anub_ar_shadowcasterAI, npc_stinky_icc::npc_stinky_iccAI, npc_injured_draenei::npc_injured_draeneiAI, npc_auriaya_seeping_trigger::npc_auriaya_seeping_triggerAI, npc_prince_taldaram_flame_sphere::npc_prince_taldaram_flame_sphereAI, boss_skadi::boss_skadiAI, npc_ravenous_furbolg::npc_ravenous_furbolgAI, boss_yauj::boss_yaujAI, npc_engineer_helice::npc_engineer_heliceAI, npc_archaedas_minions::npc_archaedas_minionsAI, boss_high_inquisitor_whitemane::boss_high_inquisitor_whitemaneAI, npc_highborne_lamenter::npc_highborne_lamenterAI, boss_blood_council_controller::boss_blood_council_controllerAI, npc_ethereal_apprentice::npc_ethereal_apprenticeAI, npc_koltira_deathweaver::npc_koltira_deathweaverAI, guard_shattrath_scryer::guard_shattrath_scryerAI, npc_snowfall_glade_playmate::npc_snowfall_glade_playmateAI, npc_muglash::npc_muglashAI, boss_anubarak_trial::boss_anubarak_trialAI, npc_custodian_of_time::npc_custodian_of_timeAI, npc_syth_arcane::npc_syth_arcaneAI, npc_infernal_volcano::npc_infernal_volcanoAI, npc_hive_zara_larva::npc_hive_zara_larvaAI, npc_barnes::npc_barnesAI, npc_slad_ran_viper::npc_slad_ran_viperAI, boss_felblood_kaelthas::boss_felblood_kaelthasAI, npc_commander_eligor_dawnbringer::npc_commander_eligor_dawnbringerAI, npc_freed_protodrake::npc_freed_protodrakeAI, SimpleCharmedAI, npc_tito::npc_titoAI, npc_rock_borer::npc_rock_borerAI, npc_ichor_globule::npc_ichor_globuleAI, npc_tournament_training_dummy::npc_tournament_training_dummyAI, boss_brutallus::boss_brutallusAI, npc_vrykul_skeleton::npc_vrykul_skeletonAI, npc_erekem_guard::npc_erekem_guardAI, npc_sironas::npc_sironasAI, boss_netherspite::boss_netherspiteAI, npc_mature_netherwing_drake::npc_mature_netherwing_drakeAI, npc_twilight_torturer::npc_twilight_torturerAI, boss_jedoga_shadowseeker::boss_jedoga_shadowseekerAI, boss_olm_the_summoner::boss_olm_the_summonerAI, boss_warbringer_omrogg::boss_warbringer_omroggAI, boss_drakkari_elemental::boss_drakkari_elementalAI, boss_xt002::boss_xt002_AI, npc_wg_queue::npc_wg_queueAI, boss_nightbane::boss_nightbaneAI, npc_baltharus_the_warborn_clone::npc_baltharus_the_warborn_cloneAI, npc_zelfrax::npc_zelfraxAI, npc_little_ooze::npc_little_oozeAI, boss_lich_king_toc::boss_lich_king_tocAI, generic_halionAI, npc_frozen_orb_stalker::npc_frozen_orb_stalkerAI, npc_enslaved_proto_drake::npc_enslaved_proto_drakeAI, boss_priestess_delrissa::boss_priestess_delrissaAI, boss_moroes::boss_moroesAI, boss_exarch_maladaar::boss_exarch_maladaarAI, boss_reliquary_of_souls::boss_reliquary_of_soulsAI, npc_volcano::npc_volcanoAI, npc_anub_ar_skirmisher::npc_anub_ar_skirmisherAI, npc_drakkari_scytheclaw::npc_drakkari_scytheclawAI, boss_razorscale_controller::boss_razorscale_controllerAI, boss_shade_of_akama::boss_shade_of_akamaAI, npc_skywing::npc_skywingAI, npc_voidtraveler::npc_voidtravelerAI, npc_jaina_fos::npc_jaina_fosAI, npc_mrfloppy::npc_mrfloppyAI, boss_vazruden::boss_vazrudenAI, npc_spectral_ghostly_citizen::npc_spectral_ghostly_citizenAI, npc_taskmaster_fizzule::npc_taskmaster_fizzuleAI, boss_victor_nefarius::boss_victor_nefariusAI, npc_sartura_royal_guard::npc_sartura_royal_guardAI, npc_lesser_doomguard::npc_lesser_doomguardAI, boss_kologarn::boss_kologarnAI, npc_crusade_recruit::npc_crusade_recruitAI, npc_fiendish_imp::npc_fiendish_impAI, npc_engineer_spark_overgrind::npc_engineer_spark_overgrindAI, generic_vehicleAI_toc5::generic_vehicleAI_toc5AI, boss_bjarngrim::boss_bjarngrimAI, npc_malformed_ooze::npc_malformed_oozeAI, npc_crystal_spike_trigger::npc_crystal_spike_triggerAI, boss_rend_blackhand::boss_rend_blackhandAI, boss_eye_of_cthun::eye_of_cthunAI, boss_magus_telestra::boss_magus_telestraAI, npc_steamrigger_mechanic::npc_steamrigger_mechanicAI, boss_devourer_of_souls::boss_devourer_of_soulsAI, npc_doomfire_targetting::npc_doomfire_targettingAI, boss_gormok::boss_gormokAI, boss_steelbreaker::boss_steelbreakerAI, boss_svala::boss_svalaAI, boss_mandokir::boss_mandokirAI, npc_towering_infernal::npc_towering_infernalAI, boss_volazj::boss_volazjAI, npc_legion_flame::npc_legion_flameAI, npc_slad_ran_constrictor::npc_slad_ran_constrictorAI, npc_syth_fire::npc_syth_fireAI, npc_grimstone::npc_grimstoneAI, npc_chaotic_rift::npc_chaotic_riftAI, npc_wg_spirit_guide::npc_wg_spirit_guideAI, npc_ethereal_beacon::npc_ethereal_beaconAI, npc_faerlina_add::npc_faerlina_addAI, boss_sapphiron::boss_sapphironAI, npc_tempest_minion::npc_tempest_minionAI, boss_volkhan::boss_volkhanAI, boss_grand_warlock_nethekurse::boss_grand_warlock_nethekurseAI, npc_webwrap::npc_webwrapAI, npc_ethereal_sphere::npc_ethereal_sphereAI, boss_slabhide::boss_slabhideAI, boss_auriaya::boss_auriayaAI, boss_fathomlord_karathress::boss_fathomlord_karathressAI, boss_hydross_the_unstable::boss_hydross_the_unstableAI, boss_shade_of_aran::boss_aranAI, boss_ossirian::boss_ossirianAI, boss_tyrannus::boss_tyrannusAI, boss_ionar::boss_ionarAI, npc_snufflenose_gopher::npc_snufflenose_gopherAI, boss_doomrel::boss_doomrelAI, boss_eadric::boss_eadricAI, npc_azure_ring_captain::npc_azure_ring_captainAI, npc_shadowy_construct::npc_shadowy_constructAI, boss_anraphet::boss_anraphetAI, boss_alar::boss_alarAI, npc_harbinger_of_flame::npc_harbinger_of_flameAI, npc_tribuna_controller::npc_tribuna_controllerAI, npc_frozen_orb::npc_frozen_orbAI, boss_warchief_kargath_bladefist::boss_warchief_kargath_bladefistAI, boss_sacrolash::boss_sacrolashAI, boss_temple_guardian_anhuur::boss_temple_guardian_anhuurAI, npc_sc_millhouse_manastorm::npc_sc_millhouse_manastormAI, boss_noth::boss_nothAI, npc_flash_freeze::npc_flash_freezeAI, boss_chromaggus::boss_chromaggusAI, boss_viscidus::boss_viscidusAI, npc_disciple_of_naralex::npc_disciple_of_naralexAI, npc_brunnhildar_prisoner::npc_brunnhildar_prisonerAI, boss_warp_splinter::boss_warp_splinterAI, boss_high_astromancer_solarian::boss_high_astromancer_solarianAI, npc_wisp_invis::npc_wisp_invisAI, boss_high_priestess_azil::boss_high_priestess_azilAI, boss_eregos::boss_eregosAI, boss_ignis::boss_ignis_AI, npc_focus_fire::npc_focus_fireAI, boss_earthrager_ptah::boss_earthrager_ptahAI, boss_urom::boss_uromAI, npc_nether_wraith::npc_nether_wraithAI, boss_pyroguard_emberseer::boss_pyroguard_emberseerAI, boss_ick::boss_ickAI, npc_ahnkahar_nerubian::npc_ahnkahar_nerubianAI, npc_cooshcoosh::npc_cooshcooshAI, trigger_periodic::trigger_periodicAI, boss_dorothee::boss_dorotheeAI, npc_drakkari_gutripper::npc_drakkari_gutripperAI, boss_drakkari_colossus::boss_drakkari_colossusAI, npc_salsalabim::npc_salsalabimAI, boss_kalecgos::boss_kalecgosAI, boss_vem::boss_vemAI, npc_dk_understudy::npc_dk_understudyAI, boss_ingvar_the_plunderer::boss_ingvar_the_plundererAI, npc_amanitar_mushrooms::npc_amanitar_mushroomsAI, npc_geist_ambusher::npc_geist_ambusherAI, npc_minigob_manabonk::npc_minigob_manabonkAI, boss_the_lurker_below::boss_the_lurker_belowAI, boss_lord_marrowgar::boss_lord_marrowgarAI, boss_ichoron::boss_ichoronAI, npc_bushwhacker::npc_bushwhackerAI, npc_ragin_flames::npc_ragin_flamesAI, npc_dream_fog::npc_dream_fogAI, npc_arugal_voidwalker::npc_arugal_voidwalkerAI, npc_winterfin_playmate::npc_winterfin_playmateAI, boss_garfrost::boss_garfrostAI, npc_unstable_sphere::npc_unstable_sphereAI, boss_selin_fireheart::boss_selin_fireheartAI, boss_kelidan_the_breaker::boss_kelidan_the_breakerAI, boss_rotface::boss_rotfaceAI, npc_commander_dawnforge::npc_commander_dawnforgeAI, npc_eyestalk::npc_eyestalkAI, boss_keleseth::boss_kelesethAI, boss_anub_arak::boss_anub_arakAI, boss_morogrim_tidewalker::boss_morogrim_tidewalkerAI, boss_laj::boss_lajAI, npc_maghar_captive::npc_maghar_captiveAI, npc_blood_elf_council_voice_trigger::npc_blood_elf_council_voice_triggerAI, npc_pet_mage_mirror_image::npc_pet_mage_mirror_imageAI, npc_unworthy_initiate::npc_unworthy_initiateAI, npc_medivh_bm::npc_medivh_bmAI, boss_scarlet_commander_mograine::boss_scarlet_commander_mograineAI, boss_anubrekhan::boss_anubrekhanAI, boss_midnight::boss_midnightAI, boss_baltharus_the_warborn::boss_baltharus_the_warbornAI, npc_infernal_attacker::npc_infernal_attackerAI, npc_archavon_warder::npc_archavon_warderAI, npc_lady_sylvanas_windrunner::npc_lady_sylvanas_windrunnerAI, boss_festergut::boss_festergutAI, boss_warlord_kalithresh::boss_warlord_kalithreshAI, npc_flamewaker_priest::npc_flamewaker_priestAI, npc_scarlet_trainee::npc_scarlet_traineeAI, boss_palehoof::boss_palehoofAI, npc_core_rager::npc_core_ragerAI, boss_gruul::boss_gruulAI, npc_twilight_flame_caller::npc_twilight_flame_callerAI, npc_restless_soul::npc_restless_soulAI, npc_nether_drake::npc_nether_drakeAI, boss_keristrasza::boss_keristraszaAI, boss_erekem::boss_erekemAI, npc_abyssal::npc_abyssalAI, boss_grandmaster_vorpil::boss_grandmaster_vorpilAI, ScriptedAI, boss_harbinger_skyriss::boss_harbinger_skyrissAI, npc_underbog_mushroom::npc_underbog_mushroomAI, boss_lieutenant_drake::boss_lieutenant_drakeAI, npc_belnistrasz::npc_belnistraszAI, boss_ayamiss::boss_ayamissAI, boss_black_knight::boss_black_knightAI, boss_gurtogg_bloodboil::boss_gurtogg_bloodboilAI, boss_shattered_executioner::boss_shattered_executionerAI, boss_bronjahm::boss_bronjahmAI, boss_wrath_scryer_soccothrates::boss_wrath_scryer_soccothratesAI, npc_giant_spotlight::npc_giant_spotlightAI, boss_sjonnir::boss_sjonnirAI, npc_flame_warder::npc_flame_warderAI, boss_general_vezax::boss_general_vezaxAI, npc_frost_warder::npc_frost_warderAI, npc_coilfang_waterelemental::npc_coilfang_waterelementalAI, boss_alizabal::boss_alizabalAI, boss_kirtonos_the_herald::boss_kirtonos_the_heraldAI, boss_skeram::boss_skeramAI, boss_saviana_ragefire::boss_saviana_ragefireAI, boss_faerlina::boss_faerlinaAI, boss_archaedas::boss_archaedasAI, boss_general_zarithrian::boss_general_zarithrianAI, boss_hadronox::boss_hadronoxAI, npc_firesworn::npc_fireswornAI, boss_jaraxxus::boss_jaraxxusAI, npc_inner_demon::npc_inner_demonAI, npc_millhouse_manastorm::npc_millhouse_manastormAI, emerald_dragonAI, boss_vexallus::boss_vexallusAI, boss_silver_hand_bosses::boss_silver_hand_bossesAI, npc_blackfathom_deeps_event::npc_blackfathom_deeps_eventAI, npc_ancient_wisp::npc_ancient_wispAI, boss_high_king_maulgar::boss_high_king_maulgarAI, boss_loken::boss_lokenAI, boss_buru::boss_buruAI, boss_novos::boss_novosAI, npc_unkor_the_ruthless::npc_unkor_the_ruthlessAI, npc_kalecgos::npc_kalecgosAI, boss_dathrohan_balnazzar::boss_dathrohan_balnazzarAI, npc_sergeant_bly::npc_sergeant_blyAI, npc_iceborn_protodrake::npc_iceborn_protodrakeAI, boss_anomalus::boss_anomalusAI, boss_cannon_master_willey::boss_cannon_master_willeyAI, npc_grobbulus_poison_cloud::npc_grobbulus_poison_cloudAI, boss_mekgineer_steamrigger::boss_mekgineer_steamriggerAI, boss_high_botanist_freywinn::boss_high_botanist_freywinnAI, hyjalAI, boss_corborus::boss_corborusAI, boss_xevozz::boss_xevozzAI, npc_draenei_survivor::npc_draenei_survivorAI, boss_ozruk::boss_ozrukAI, npc_voljin_zulaman::npc_voljin_zulamanAI, boss_prince_taldaram::boss_prince_taldaramAI, boss_razuvious::boss_razuviousAI, boss_vaelastrasz::boss_vaelAI, boss_ragnaros::boss_ragnarosAI, netherspite_infernal::netherspite_infernalAI, boss_baron_rivendare::boss_baron_rivendareAI, boss_mal_ganis::boss_mal_ganisAI, boss_balinda::boss_balindaAI, boss_azgalor::boss_azgalorAI, boss_elder_nadox::boss_elder_nadoxAI, boss_ormorok::boss_ormorokAI, npc_mageguard_dalaran::npc_mageguard_dalaranAI, boss_razorgore::boss_razorgoreAI, npc_professor_phizzlethorpe::npc_professor_phizzlethorpeAI, npc_ruul_snowhoof::npc_ruul_snowhoofAI, boss_emalon::boss_emalonAI, npc_aquementas::npc_aquementasAI, boss_tharon_ja::boss_tharon_jaAI, boss_omor_the_unscarred::boss_omor_the_unscarredAI, boss_watchkeeper_gargolmar::boss_watchkeeper_gargolmarAI, boss_krik_thir::boss_krik_thirAI, npc_sylvanas_fos::npc_sylvanas_fosAI, boss_maexxna::boss_maexxnaAI, boss_zuramat::boss_zuramatAI, npc_pet_dk_ebon_gargoyle::npc_pet_dk_ebon_gargoyleAI, boss_anetheron::boss_anetheronAI, boss_kazrogal::boss_kazrogalAI, boss_anzu::boss_anzuAI, boss_nazan::boss_nazanAI, boss_heigan::boss_heiganAI, npc_av_marshal_or_warmaster::npc_av_marshal_or_warmasterAI, boss_attumen::boss_attumenAI, boss_moam::boss_moamAI, boss_slad_ran::boss_slad_ranAI, boss_dalliah_the_doomsayer::boss_dalliah_the_doomsayerAI, SmartAI, boss_rage_winterchill::boss_rage_winterchillAI, boss_captain_skarloc::boss_captain_skarlocAI, boss_amanitar::boss_amanitarAI, boss_falric::boss_falricAI, boss_doomlord_kazzak::boss_doomlordkazzakAI, boss_the_black_stalker::boss_the_black_stalkerAI, boss_loatheb::boss_loathebAI, boss_pathaleon_the_calculator::boss_pathaleon_the_calculatorAI, npc_kilrek::npc_kilrekAI, boss_fankriss::boss_fankrissAI, boss_sartura::boss_sarturaAI, boss_king_dred::boss_king_dredAI, boss_doomwalker::boss_doomwalkerAI, boss_curator::boss_curatorAI, boss_patchwerk::boss_patchwerkAI, boss_shirrak_the_dead_watcher::boss_shirrak_the_dead_watcherAI, npc_raliq_the_drunk::npc_raliq_the_drunkAI, VehicleAI, boss_occuthar::boss_occutharAI, boss_gyth::boss_gythAI, npc_ioc_gunship_captain::npc_ioc_gunship_captainAI, npc_sinkhole_kill_credit::npc_sinkhole_kill_creditAI, boss_thorngrin_the_tender::boss_thorngrin_the_tenderAI, npc_pet_shaman_fire_elemental::npc_pet_shaman_fire_elementalAI, boss_epoch_hunter::boss_epoch_hunterAI, boss_chrono_lord_deja::boss_chrono_lord_dejaAI, boss_temporus::boss_temporusAI, boss_trollgore::boss_trollgoreAI, boss_varos::boss_varosAI, boss_commander_sarannis::boss_commander_sarannisAI, boss_mr_smite::boss_mr_smiteAI, boss_magistrate_barthilas::boss_magistrate_barthilasAI, boss_aeonus::boss_aeonusAI, npc_pet_hunter_snake_trap::npc_pet_hunter_snake_trapAI, npc_omen::npc_omenAI, boss_mechano_lord_capacitus::boss_mechano_lord_capacitusAI, npc_crusade_persuaded::npc_crusade_persuadedAI, npc_xerestrasza::npc_xerestraszaAI, boss_gluth::boss_gluthAI, boss_high_inquisitor_fairbanks::boss_high_inquisitor_fairbanksAI, npc_doom_blossom::npc_doom_blossomAI, npc_warp_splinter_treant::npc_warp_splinter_treantAI, boss_majordomo::boss_majordomoAI, boss_kri::boss_kriAI, boss_zum_rah::boss_zum_rahAI, boss_murmur::boss_murmurAI, npc_invis_infernal_caster::npc_invis_infernal_casterAI, boss_twilight_corrupter::boss_twilight_corrupterAI, boss_rajaxx::boss_rajaxxAI, npc_lazy_peon::npc_lazy_peonAI, boss_blackheart_the_inciter::boss_blackheart_the_inciterAI, boss_nethermancer_sepethrea::boss_nethermancer_sepethreaAI, boss_galvangar::boss_galvangarAI, npc_yenniku::npc_yennikuAI, boss_maiden_of_grief::boss_maiden_of_griefAI, npc_frost_tomb::npc_frost_tombAI, boss_drekthar::boss_drektharAI, boss_overlord_wyrmthalak::boss_overlordwyrmthalakAI, boss_nerubenkan::boss_nerubenkanAI, boss_void_reaver::boss_void_reaverAI, boss_maiden_of_virtue::boss_maiden_of_virtueAI, boss_darkmaster_gandling::boss_darkmaster_gandlingAI, boss_amnennar_the_coldbringer::boss_amnennar_the_coldbringerAI, boss_huhuran::boss_huhuranAI, boss_ramstein_the_gorger::boss_ramstein_the_gorgerAI, boss_kurinnaxx::boss_kurinnaxxAI, boss_archavon::boss_archavonAI, boss_mennu_the_betrayer::boss_mennu_the_betrayerAI, TurretAI, boss_kormok::boss_kormokAI, boss_ouro::boss_ouroAI, boss_marwyn::boss_marwynAI, boss_romogg_bonecrusher::boss_romogg_bonecrusherAI, boss_general_angerforge::boss_general_angerforgeAI, boss_golemagg::boss_golemaggAI, boss_drakos::boss_drakosAI, npc_argent_valiant::npc_argent_valiantAI, npc_stolen_soul::npc_stolen_soulAI, boss_gatewatcher_iron_hand::boss_gatewatcher_iron_handAI, boss_baroness_anastari::boss_baroness_anastariAI, npc_cairne_bloodhoof::npc_cairne_bloodhoofAI, boss_corla::boss_corlaAI, npc_wrathbone_flayer::npc_wrathbone_flayerAI, boss_pit_lord_argaloth::boss_pit_lord_argalothAI, boss_instructor_malicia::boss_instructormaliciaAI, npc_whisperwind_lasher::npc_whisperwind_lasherAI, npc_aeranas::npc_aeranasAI, npc_valkyr_battle_maiden::npc_valkyr_battle_maidenAI, boss_rokmar_the_crackler::boss_rokmar_the_cracklerAI, boss_gatewatcher_gyrokill::boss_gatewatcher_gyrokillAI, boss_postmaster_malown::boss_postmaster_malownAI, boss_thorim::boss_thorimAI, npc_dragonflayer_forge_master::npc_dragonflayer_forge_masterAI, guard_generic::guard_genericAI, boss_emperor_dagran_thaurissan::boss_draganthaurissanAI, boss_sulfuron::boss_sulfuronAI, boss_daakara::boss_daakaraAI, boss_noxxion::boss_noxxionAI, boss_princess_theradras::boss_ptheradrasAI, boss_halycon::boss_halyconAI, boss_timmy_the_cruel::boss_timmy_the_cruelAI, npc_greengill_slave::npc_greengill_slaveAI, boss_nalorakk::boss_nalorakkAI, boss_toravon::boss_toravonAI, npc_injured_goblin::npc_injured_goblinAI, boss_ascendant_lord_obsidius::boss_ascendant_lord_obsidiusAI, boss_karsh_steelbender::boss_karsh_steelbenderAI, boss_lord_valthalak::boss_lord_valthalakAI, boss_arcanist_doan::boss_arcanist_doanAI, npc_jadespine_basilisk::npc_jadespine_basiliskAI, boss_zereketh_the_unbound::boss_zereketh_the_unboundAI, boss_hexlord_malacrass::boss_hex_lord_malacrassAI, boss_venoxis::boss_venoxisAI, boss_krystallus::boss_krystallusAI, boss_magmadar::boss_magmadarAI, boss_azshir_the_sleepless::boss_azshir_the_sleeplessAI, boss_zanzil::boss_zanzilAI, celebras_the_cursed::celebras_the_cursedAI, boss_koralon::boss_koralonAI, boss_hungarfen::boss_hungarfenAI, ArcherAI, boss_vanndar::boss_vanndarAI, boss_beauty::boss_beautyAI, boss_maleki_the_pallid::boss_maleki_the_pallidAI, boss_jindo_the_godbreaker::boss_jindo_the_godbreakerAI, boss_mordresh_fire_eye::boss_mordresh_fire_eyeAI, boss_quagmirran::boss_quagmirranAI, boss_janalai::boss_janalaiAI, boss_kilnara::boss_kilnaraAI, boss_cyanigosa::boss_cyanigosaAI, boss_gizrul_the_slavener::boss_gizrul_the_slavenerAI, boss_mother_smolderweb::boss_mothersmolderwebAI, boss_warmaster_voone::boss_warmastervooneAI, boss_halazzi::boss_halazziAI, boss_landslide::boss_landslideAI, npc_crystalcore_devastator::npc_crystalcore_devastatorAI, boss_glutton::boss_gluttonAI, boss_grobbulus::boss_grobbulusAI, npc_escortAI, boss_jandice_barov::boss_jandicebarovAI, boss_vectus::boss_vectusAI, boss_shadow_hunter_voshgajin::boss_shadowvoshAI, boss_baron_geddon::boss_baron_geddonAI, boss_ironaya::boss_ironayaAI, boss_magmus::boss_magmusAI, boss_the_beast::boss_thebeastAI, boss_urok_doomhowl::boss_urok_doomhowlAI, boss_moragg::boss_moraggAI, boss_drakkisath::boss_drakkisathAI, boss_broodlord::boss_broodlordAI, boss_garr::boss_garrAI, boss_highlord_omokk::boss_highlordomokkAI, boss_tuten_kash::boss_tuten_kashAI, npc_warmage_violetstand::npc_warmage_violetstandAI, generic_creature::generic_creatureAI, boss_lord_alexei_barov::boss_lordalexeibarovAI, boss_boss_ras_frostwhisper::boss_rasfrostAI, boss_akilzon::boss_akilzonAI, CasterAI, boss_gehennas::boss_gehennasAI, boss_lucifron::boss_lucifronAI, boss_doctor_theolen_krastinov::boss_theolenkrastinovAI, boss_kelris::boss_kelrisAI, npc_ymirjar_flamebearer::npc_ymirjar_flamebearerAI, quartermaster_zigris::boss_quatermasterzigrisAI, boss_shazzrah::boss_shazzrahAI, boss_illucia_barov::boss_illuciabarovAI, boss_lorekeeper_polkelt::boss_lorekeeperpolkeltAI, boss_the_ravenian::boss_theravenianAI, boss_moira_bronzebeard::boss_moira_bronzebeardAI, npc_pet_shaman_earth_elemental::npc_pet_shaman_earth_elementalAI, boss_flamegor::boss_flamegorAI, boss_lavanthor::boss_lavanthorAI, NullCreatureAI, boss_high_interrogator_gerstahn::boss_high_interrogator_gerstahnAI, boss_grilek::boss_grilekAI, boss_hazzarah::boss_hazzarahAI, boss_renataki::boss_renatakiAI, boss_wushoolay::boss_wushoolayAI, boss_ambassador_flamelash::boss_ambassador_flamelashAI, FollowerAI, boss_ebonroc::boss_ebonrocAI, boss_firemaw::boss_firemawAI, npc_pet_gen_mojo::npc_pet_gen_mojoAI, npc_fire_cyclone::npc_fire_cycloneAI, CombatAI, boss_gelihast::boss_gelihastAI, PossessedAI, TotemAI, PetAI, AggressorAI, ReactorAI, PassiveAI, and hyjal_trashAI.

+ Here is the caller graph for this function:

Member Data Documentation

AISpellInfoType * UnitAI::AISpellInfo
static
Unit* const UnitAI::me
protected

The documentation for this class was generated from the following files: