TrinityCore
Loading...
Searching...
No Matches
ScriptedAI Struct Reference

#include <ScriptedCreature.h>

Inherits CreatureAI.

Inherited by AdvisorBaseAI, BossAI, BroggokPrisionerBaseAI, CoolestFriendBaseAI, DarkFallenAI, EscortAI, FathomGuardBaseAI, FollowerAI, GuardAI, GuestBaseAI, MalacrassCompanionBaseAI, OgreBaseAI, ShadowswordBaseAI, WorldBossAI, alliance_rifleman::alliance_riflemanAI, boss_ambassador_flamelash::boss_ambassador_flamelashAI, boss_anomalus, boss_balinda, boss_black_knight::boss_black_knightAI, boss_boss_ras_frostwhisper, boss_celebras_the_cursed, boss_death_knight_darkreaver, boss_doomrel::boss_doomrelAI, boss_doomwalker, boss_dorothee, boss_drakkari_elemental, boss_drekthar, boss_eadric::boss_eadricAI, boss_emperor_dagran_thaurissan::boss_draganthaurissanAI, boss_eye_of_cthun::eye_of_cthunAI, boss_flame_leviathan_defense_cannon::boss_flame_leviathan_defense_cannonAI, boss_flame_leviathan_seat::boss_flame_leviathan_seatAI, boss_galvangar, boss_general_angerforge::boss_general_angerforgeAI, boss_gloomrel::boss_gloomrelAI, boss_grubbis::boss_grubbisAI, boss_harbinger_skyriss_illusion, boss_headless_horseman, boss_high_inquisitor_whitemane, boss_high_interrogator_gerstahn::boss_high_interrogator_gerstahnAI, boss_hunter_toc5::boss_hunter_toc5AI, boss_ioc_horde_alliance, boss_jandice_barov, boss_kalecgos_human, boss_kalecgos_kj::boss_kalecgos_kjAI, boss_kiljaeden::boss_kiljaedenAI, boss_kormok, boss_krick, boss_landslide, boss_lich_king_toc, boss_mage_toc5::boss_mage_toc5AI, boss_magmus::boss_magmusAI, boss_malchezaar::boss_malchezaarAI, boss_moira_bronzebeard::boss_moira_bronzebeardAI, boss_mr_smite::boss_mr_smiteAI, boss_netherspite::boss_netherspiteAI, boss_noxxion, boss_paletress::boss_paletressAI, boss_priestess_delrissa, boss_priestess_lackey_commonAI, boss_princess_theradras, boss_rimefang, boss_roar, boss_rouge_toc5::boss_rouge_toc5AI, boss_sara::boss_saraAI, boss_saronite_animus::boss_saronite_animusAI, boss_shade_of_aran::boss_aranAI, boss_shaman_toc5::boss_shaman_toc5AI, boss_silver_hand_bosses::boss_silver_hand_bossesAI, boss_strawman, boss_tinhead, boss_twilight_corrupter::boss_twilight_corrupterAI, boss_valithria_dreamwalker, boss_vanndar, boss_vectus, boss_warrior_toc5::boss_warrior_toc5AI, dummy_dragonAI, gunship_npc_AI, netherspite_infernal::netherspite_infernalAI, npc_a_special_surprise::npc_a_special_surpriseAI, npc_acolyte_of_shadron, npc_acolyte_of_vesperon, npc_aged_dying_ancient_kodo::npc_aged_dying_ancient_kodoAI, npc_ahnkahar_nerubian, npc_ahune_bunny, npc_ahune_ice_spear_bunny, npc_akama_illidan, npc_akama_shade, npc_alchemist_adrianna, npc_alchemist_finklestein, npc_alexstraza_the_lifebinder::npc_alexstraza_the_lifebinderAI, npc_amani_dragonhawk_hatchling, npc_amanishi_hatcher, npc_amanitar_mushrooms, npc_amberpine_woodsman, npc_anachronos_quest_trigger::npc_anachronos_quest_triggerAI, npc_anachronos_the_ancient::npc_anachronos_the_ancientAI, npc_ancient_conservator::npc_ancient_conservatorAI, npc_ancient_water_spirit::npc_ancient_water_spiritAI, npc_ancient_wisp, npc_andorov, npc_angered_soul_fragment, npc_annhylde_the_caller, npc_announcer_toc5::npc_announcer_toc5AI, npc_anubarak_pet_template, npc_anubarak_spike, npc_anubisath_sentinel::aqsentinelAI, npc_apothecary_genericAI, npc_aran_elemental::water_elementalAI, npc_arcane_overload, npc_argent_captainAI, npc_argent_squire_gruntling::npc_argent_squire_gruntlingAI, npc_argent_valiant, npc_armageddon::npc_armageddonAI, npc_arthas_stratholme::npc_arthas_stratholmeAI, npc_arugal_voidwalker::npc_arugal_voidwalkerAI, npc_ashtongue_broken, npc_ashtongue_defender, npc_ashtongue_elementalist, npc_ashtongue_rogue, npc_ashtongue_sorcerer, npc_ashtongue_spiritbinder, npc_av_marshal_or_warmaster, npc_azure_ring_captain, npc_azure_saboteur, npc_ball_of_flame, npc_barada::npc_baradaAI, npc_barnes, npc_barrett_toc, npc_beasts_combat_stalker, npc_belnistrasz::npc_belnistraszAI, npc_big_ooze, npc_bjarngrim_stormforged_lieutenant, npc_black_hole, npc_blackfathom_deeps_event, npc_blackhand_incarcerator, npc_blackheart_the_inciter_dummy, npc_blazing_skeleton, npc_blessed_banner, npc_blistering_zombie, npc_bloodmage_laurith, npc_bone_spike, npc_boombot, npc_brann_bronzebeard_keystone, npc_brann_bronzebeard_ulduar_intro::npc_brann_bronzebeard_ulduar_introAI, npc_brewfest_reveler::npc_brewfest_revelerAI, npc_brewfest_reveler_2, npc_brood_of_anzu, npc_brunnhildar_prisoner, npc_bullet_controller, npc_buru_egg, npc_cairne_bloodhoof, npc_calvin_montague::npc_calvin_montagueAI, npc_cameron, npc_chaotic_rift, npc_chicken_cluck::npc_chicken_cluckAI, npc_claw, npc_claw_tentacle::claw_tentacleAI, npc_coilfang_ambusher, npc_coilfang_guardian, npc_coilfang_waterelemental, npc_coldflame, npc_colonel_jules::npc_colonel_julesAI, npc_colossus::npc_colossusAI, npc_combustion_consumption, npc_commander_dawnforge::npc_commander_dawnforgeAI, npc_commander_eligor_dawnbringer, npc_constrictor_tentacle::npc_constrictor_tentacleAI, npc_core_rager, npc_coren_direbrew_sisters, npc_corrupted_lightning_totem, npc_corrupted_soul_fragment, npc_corruptor_tentacle::npc_corruptor_tentacleAI, npc_counselor_talbot, npc_creature_generator_akama, npc_crusade_recruit, npc_crusher_tentacle::npc_crusher_tentacleAI, npc_crystal_channel_target, npc_crystal_spike_trigger, npc_cult_adherent, npc_cult_fanatic, npc_curator_astral_flare::npc_curator_astral_flareAI, npc_cw_area_trigger::npc_cw_area_triggerAI, npc_cyclone, npc_daegarn, npc_dancing_flames, npc_dark_fiend, npc_dark_nucleus, npc_dark_rider_of_acherus, npc_darkness, npc_darkrune_guardian, npc_darkrune_sentinel, npc_darkrune_watcher, npc_darnavan, npc_detonating_lasher::npc_detonating_lasherAI, npc_direbrew_antagonist, npc_direbrew_minion, npc_disciple_of_naralex, npc_dk_understudy, npc_dkc1_gothik::npc_dkc1_gothikAI, npc_doctor::npc_doctorAI, npc_doomfire, npc_doomfire_spirit, npc_draenei_survivor::npc_draenei_survivorAI, npc_dragonflayer_forge_master, npc_dragonhawk_egg, npc_drakkari_gutripper, npc_drakkari_invader, npc_drakkari_scytheclaw, npc_dream_cloud, npc_dream_fog::npc_dream_fogAI, npc_earthen_guardian, npc_earthen_hallshaper_custodian, npc_earthen_ring_flamecaller, npc_elder_kekek::npc_elder_kekekAI, npc_ember_of_alar, npc_enchanted_elemental, npc_engineer_spark_overgrind::npc_engineer_spark_overgrindAI, npc_engineering_tele_trinket::npc_engineering_tele_trinketAI, npc_enraged_spirit::npc_enraged_spiritAI, npc_enslaved_netherwing_drake::npc_enslaved_netherwing_drakeAI, npc_enslaved_proto_drake, npc_enslaved_soul, npc_entrance_faction_leader, npc_eonars_gift::npc_eonars_giftAI, npc_erekem_guard, npc_erozion, npc_escape_event_trash, npc_essence_of_twin, npc_ethereal_apprentice, npc_ethereal_beacon, npc_ethereal_sphere, npc_expedition_commander, npc_expedition_defender, npc_expedition_engineer, npc_expedition_trapper, npc_experience::npc_experienceAI, npc_eye_of_acherus, npc_eye_tentacle::eye_tentacleAI, npc_faerlina_add, npc_fallout_slime, npc_fathomlord_karathress_cyclone, npc_fear_controller, npc_fel_crystal, npc_fel_infernal, npc_fel_orc_convert, npc_felblood_kaelthas_phoenix, npc_felfire_portal::npc_felfire_portalAI, npc_felmyst_trail, npc_felmyst_vapor, npc_feral_defender, npc_feugen, npc_fiendish_imp::npc_fiendish_impAI, npc_fire_bomb, npc_fire_bomb_zulaman, npc_firesworn, npc_firework, npc_fizzlebang_toc, npc_flame_of_azzinoth, npc_flame_of_ragnaros, npc_flame_patch_alar, npc_flame_strike_trigger_kael, npc_flame_tsunami, npc_flamewaker_priest, npc_flash_freeze_combat, npc_flash_freeze_init, npc_focus_fire, npc_frenzied_bloodseeker_bat, npc_freya_ward_summon::npc_freya_ward_summonAI, npc_freyas_ward::npc_freyas_wardAI, npc_frost_freeze_trap, npc_frost_sphere, npc_frost_tomb, npc_frostsworn_general::npc_frostsworn_generalAI, npc_frostwing_ymirjar_vrykul, npc_frozen_core, npc_frozen_orb, npc_frozen_orb_stalker, npc_garona::npc_garonaAI, npc_garrosh_toc, npc_gatewatcher_petAI, npc_gauntlet_trash, npc_geezle::npc_geezleAI, npc_geist_ambusher, npc_gen_void_zone, npc_general_arlos, npc_giant_claw_tentacle::giant_claw_tentacleAI, npc_giant_eye_tentacle::giant_eye_tentacleAI, npc_giant_flesh_tentacle::flesh_tentacleAI, npc_giant_spotlight, npc_glob_of_viscidus::npc_glob_of_viscidusAI, npc_gluttonous_abomination, npc_gothik_minion_baseAI, npc_gothik_trigger, npc_grandmother, npc_grauf, npc_greyheart_spellbinder, npc_grizzlemaw_cw_trigger::npc_grizzlemaw_cw_triggerAI, npc_guardian::npc_guardianAI, npc_guardian_of_yogg_saron::npc_guardian_of_yogg_saronAI, npc_guardian_pavilion, npc_hadronox_crusherPackAI, npc_hadronox_foeAI, npc_halion_controller, npc_hand_of_the_deceiver::npc_hand_of_the_deceiverAI, npc_harrison_jones::npc_harrison_jonesAI, npc_healing_ward, npc_healthy_spore::npc_healthy_sporeAI, npc_hellfire_channeler, npc_high_oracle_soo_roo::npc_high_oracle_soo_rooAI, npc_high_overlord_saurfang_icc, npc_high_overlord_saurfang_igb, npc_highborne_lamenter::npc_highborne_lamenterAI, npc_highlord_tirion_fordring_lh, npc_hive_zara_larva, npc_hive_zara_swarmer, npc_hodirs_fury::npc_hodirs_furyAI, npc_icc_nerubar_broodkeeper, npc_icc_orb_controller, npc_ice_tomb, npc_iceborn_protodrake, npc_ichor_globule, npc_icicle, npc_idol_room_spawner::npc_idol_room_spawnerAI, npc_illidan_generic_fire, npc_illidari_elite, npc_illidari_spawn::npc_illidari_spawnAI, npc_image_belgaristrasz, npc_image_of_medivh::npc_image_of_medivhAI, npc_immortal_guardian::npc_immortal_guardianAI, npc_imp_in_a_ball::npc_imp_in_a_ballAI, npc_infernal_attacker::npc_infernal_attackerAI, npc_infernal_rain_hellfire, npc_infernal_volcano, npc_ingvar_throw_dummy, npc_injured_draenei::npc_injured_draeneiAI, npc_injured_patient::npc_injured_patientAI, npc_inner_demon, npc_innkeeper::npc_innkeeperAI, npc_invis_infernal_caster::npc_invis_infernal_casterAI, npc_ioc_gunship_captain, npc_iron_construct::npc_iron_constructAI, npc_iron_roots::npc_iron_rootsAI, npc_iron_sludge, npc_ironhand_guardian::npc_ironhand_guardianAI, npc_jaina_fos, npc_jaina_or_sylvanas_escape_hor::npc_jaina_or_sylvanas_escape_horAI, npc_jaina_or_sylvanas_intro_hor::npc_jaina_or_sylvanas_intro_horAI, npc_jormungars_slime_pool, npc_jungle_punch_target, npc_kaelthas_controller, npc_kalecgos, npc_kelthuzad_guardian, npc_kelthuzad_minionAI, npc_kelthuzad_shadow_fissure, npc_kiljaeden_controller::npc_kiljaeden_controllerAI, npc_kilrek::npc_kilrekAI, npc_kinetic_bomb, npc_koltira_deathweaver, npc_lady_sylvanas_windrunner::npc_lady_sylvanas_windrunnerAI, npc_lake_frog, npc_laughing_skull::npc_laughing_skullAI, npc_legion_flame, npc_leryssa, npc_lesser_doomguard, npc_lesser_shadow_fissure, npc_life_spark, npc_little_ooze, npc_living_ember, npc_living_inferno, npc_living_mojo, npc_lokhtos_darkbargainer::npc_lokhtos_darkbargainerAI, npc_lord_illidan_stormrage::npc_lord_illidan_stormrageAI, npc_lorekeeper::npc_lorekeeperAI, npc_madrigosa, npc_mageguard_dalaran, npc_magister_aledis::npc_magister_aledisAI, npc_magtheridon_room, npc_maiev, npc_malformed_ooze, npc_marzon_silent_blade::npc_marzon_silent_bladeAI, npc_mature_netherwing_drake::npc_mature_netherwing_drakeAI, npc_medivh_bm, npc_memory::npc_memoryAI, npc_meteor_strike, npc_meteor_strike_flame, npc_meteor_strike_initial, npc_midsummer_bunny_pole::npc_midsummer_bunny_poleAI, npc_millhouse_manastorm, npc_mimiron_assault_bot::npc_mimiron_assault_botAI, npc_mimiron_computer::npc_mimiron_computerAI, npc_mimiron_emergency_fire_bot::npc_mimiron_emergency_fire_botAI, npc_mimiron_flames::npc_mimiron_flamesAI, npc_mimiron_frost_bomb::npc_mimiron_frost_bombAI, npc_mimiron_magnetic_core, npc_mimiron_proximity_mine::npc_mimiron_proximity_mineAI, npc_minigob_manabonk, npc_mistress_of_pain, npc_mrfloppy, npc_muradin_bronzebeard_icc, npc_muradin_bronzebeard_igb, npc_muru_portal, npc_naga_distiller, npc_nagrand_banner::npc_nagrand_bannerAI, npc_nature_bomb::npc_nature_bombAI, npc_nerubian_burrower, npc_nether_drake::npc_nether_drakeAI, npc_nether_portal, npc_nether_vapor, npc_nether_wraith, npc_nexus_lord, npc_observation_ring_keeper::npc_observation_ring_keeperAI, npc_ohgan, npc_omen, npc_omrogg_heads, npc_onyx_flamecaller, npc_open_portal_target_toc, npc_orb_carrier, npc_oscillating_frequency_scanner_master_bunny::npc_oscillating_frequency_scanner_master_bunnyAI, npc_outhouse_bunny, npc_overlord_runthak_orgrimmar::npc_overlord_runthak_orgrimmarAI, npc_parasitic_shadowfiend, npc_partygoer, npc_partygoer_pather, npc_pet_dk_rune_weapon, npc_pet_gen_soul_trader, npc_pet_hunter_snake_trap, npc_pet_mage_mirror_image, npc_pet_shaman_earth_elemental, npc_pet_shaman_fire_elemental, npc_pet_trainer::npc_pet_trainerAI, npc_phalanx::npc_phalanxAI, npc_phase_hunter::npc_phase_hunterAI, npc_phoenix_egg_the_eye, npc_phoenix_the_eye, npc_pool_of_tar::npc_pool_of_tarAI, npc_portal_eoe, npc_power_spark, npc_precious_icc, npc_prince_taldaram_flame_sphere, npc_prof_alchemy::npc_prof_alchemyAI, npc_prof_blacksmith::npc_prof_blacksmithAI, npc_prof_leather::npc_prof_leatherAI, npc_prof_tailor::npc_prof_tailorAI, npc_pulsing_pumpkin, npc_pummeller, npc_pure_energy, npc_putricide_oozeAI, npc_q10720_keg_credit, npc_q10720_marmot, npc_qiraj_war_spawn::npc_qiraj_war_spawnAI, npc_quel_delar_sword::npc_quel_delar_swordAI, npc_raging_flames, npc_raging_spirit, npc_razorscale_devouring_flame, npc_razorscale_harpoon_fire_state, npc_razorscale_spawner, npc_released_offspring_harkoa, npc_reliquary_combat_trigger, npc_restless_soul::npc_restless_soulAI, npc_rimefang_icc, npc_risen_archmage, npc_risen_ghoul::npc_risen_ghoulAI, npc_ritual_channeler, npc_rizzle_sprysprocket, npc_ros_dark_rider::npc_ros_dark_riderAI, npc_rotting_frost_giant, npc_salanar_the_horseman::npc_salanar_the_horsemanAI, npc_sanctum_sentry, npc_sapphiron_blizzard, npc_sapphiron_wing_buffet, npc_saronite_vapors::npc_saronite_vaporsAI, npc_sartura_royal_guard, npc_saurfang_event, npc_scarlet_courier::npc_scarlet_courierAI, npc_scarlet_ghoul, npc_scion_of_eternity, npc_scorch_ground::npc_scorch_groundAI, npc_scourge_hulk, npc_scrapbot, npc_seeping_essence_stalker, npc_sergeant_bly::npc_sergeant_blyAI, npc_shade_of_jindo, npc_shadow_image, npc_shadow_of_leotheras, npc_shadowmoon_channeler, npc_shadowmoon_tuber_node::npc_shadowmoon_tuber_nodeAI, npc_shadowy_construct, npc_shaman_bonfire_bunny, npc_shambling_horror_icc, npc_shenthul::npc_shenthulAI, npc_shield_orb::npc_shield_orbAI, npc_sif::npc_sifAI, npc_simon_bunny::npc_simon_bunnyAI, npc_sinclari_vh, npc_sindragosa_trash, npc_singularity, npc_sinster_reflection::npc_sinster_reflectionAI, npc_sironas::npc_sironasAI, npc_skadi_trashAI, npc_skittering_infector, npc_skittering_swarmer, npc_slad_ran_constrictor, npc_slad_ran_viper, npc_snaplasher::npc_snaplasherAI, npc_snobold_vassal, npc_snowfall_glade_playmate::npc_snowfall_glade_playmateAI, npc_snowpacked_icicle_target, npc_soaring_eagle, npc_solarium_agent, npc_solarium_priest, npc_son_of_flame, npc_spark_of_ionar, npc_spawn_of_marli, npc_spectator, npc_spectral_ghostly_citizen::npc_spectral_ghostly_citizenAI, npc_spinestalker, npc_spirit_of_the_lynx, npc_spirit_warden, npc_spiritual_reflection::npc_spiritual_reflectionAI, npc_spring_rabbit::npc_spring_rabbitAI, npc_stalagg, npc_static_field, npc_steam_tonk::npc_steam_tonkAI, npc_steamrigger_mechanic, npc_stinky_icc, npc_stolen_soul, npc_stone_keeper, npc_storm_cloud, npc_storm_lasher::npc_storm_lasherAI, npc_strangulate_vehicle, npc_summoned_skeleton, npc_sun_beam::npc_sun_beamAI, npc_suppresser, npc_swarm_scarab, npc_swarming_guardian, npc_sylvanas_fos, npc_tainted_elemental, npc_tallhorn_stag, npc_taskmaster_fizzule::npc_taskmaster_fizzuleAI, npc_tempest_minion, npc_terenas_menethil, npc_tesla, npc_thalorien_dawnseeker, npc_thassarian, npc_the_biggest_tree::npc_the_biggest_treeAI, npc_the_etymidian::npc_the_etymidianAI, npc_the_lich_king_controller, npc_the_lich_king_escape_hor::npc_the_lich_king_escape_horAI, npc_the_lich_king_tirion_dawn::npc_the_lich_king_tirion_dawnAI, npc_thorim_minibossAI, npc_thorim_trashAI, npc_thorims_hammer::npc_thorims_hammerAI, npc_thrall_herald_of_war::npc_thrall_herald_of_warAI, npc_thrall_warchief::npc_thrall_warchiefAI, npc_tiger_matriarch, npc_tiger_matriarch_credit, npc_time_rift, npc_tirion_fordring_tft, npc_tirion_toc, npc_tito, npc_toasty_fire, npc_tomb_creature::npc_tomb_creatureAI, npc_torch_tossing_target_bunny_controller::npc_torch_tossing_target_bunny_controllerAI, npc_torloth_the_magnificent::npc_torloth_the_magnificentAI, npc_tournament_training_dummy, npc_towering_infernal, npc_toxic_sporebat, npc_tribuna_controller, npc_troll_volunteer, npc_turned_champion::npc_turned_championAI, npc_twiggy_flathead::npc_twiggy_flatheadAI, npc_twilight_eggs, npc_twilight_fissure, npc_twilight_volunteer, npc_twilight_whelp, npc_twisted_visage, npc_tyrion::npc_tyrionAI, npc_underbog_mushroom, npc_unkor_the_ruthless::npc_unkor_the_ruthlessAI, npc_unleashed_ballAI, npc_unstable_sun_beam::npc_unstable_sun_beamAI, npc_unworthy_initiate::npc_unworthy_initiateAI, npc_uther_quel_delar::npc_uther_quel_delarAI, npc_valiance_keep_cannoneer, npc_valkyr_shadowguard, npc_vampiric_fiend, npc_varian_toc, npc_vault_warder, npc_vengeful_shade, npc_venture_co_straggler, npc_verdisa_beglaristrasz_eternos, npc_vilebranch_speaker, npc_violet_hold_defense_system, npc_violet_hold_teleportation_portal_commonAI, npc_void_sentinel, npc_void_sentinel_summoner, npc_void_sentry, npc_void_spawn, npc_void_traveler, npc_voidwalker_summoner, npc_volatile_felfire_fiend::npc_volatile_felfire_fiendAI, npc_volkhan_molten_golem, npc_vrykul_skeleton, npc_warchiefs_portal, npc_warden_mellichar, npc_warp_splinter_sapling, npc_watch_commander_leonus, npc_water_globule, npc_weegli_blastfuse::npc_weegli_blastfuseAI, npc_wg_demolisher_engineer, npc_wg_give_promotion_credit::npc_wg_give_promotion_creditAI, npc_wg_queue, npc_wg_spirit_guide, npc_wild_shadow_fissure, npc_winterfin_playmate::npc_winterfin_playmateAI, npc_wounded_skirmisher, npc_wrathbone_flayer, npc_xerestrasza, npc_ymirjar_flamebearer, npc_yogg_saron_illusions::npc_yogg_saron_illusionsAI, npc_yogg_saron_keeper::npc_yogg_saron_keeperAI, npc_yor, npc_zealot_lorkhan, npc_zealot_zath, npc_zombie_chow, npc_zulaman_hostage::npc_zulaman_hostageAI, npc_zulian_prowler, npc_zuljin_spirit, and npc_zuljin_vortex.

Public Member Functions

 ScriptedAI (Creature *creature)
 
virtual ~ScriptedAI ()
 
void AttackStartNoMove (Unit *target)
 
virtual void UpdateAI (uint32 diff) override
 
void AttackStart (Unit *) override
 
void DoStartMovement (Unit *target, float distance=0.0f, float angle=0.0f)
 
void DoStartNoMovement (Unit *target)
 
void DoStopAttack ()
 
void DoCastSpell (Unit *target, SpellInfo const *spellInfo, bool triggered=false)
 
void DoPlaySoundToSet (WorldObject *source, uint32 soundId)
 
void AddThreat (Unit *victim, float amount, Unit *who=nullptr)
 
void ModifyThreatByPercent (Unit *victim, int32 pct, Unit *who=nullptr)
 
void ResetThreat (Unit *victim, Unit *who=nullptr)
 
void ResetThreatList (Unit *who=nullptr)
 
float GetThreat (Unit const *victim, Unit const *who=nullptr)
 
void ForceCombatStop (Creature *who, bool reset=true)
 
void ForceCombatStopForCreatureEntry (uint32 entry, float maxSearchRange=250.0f, bool samePhase=true, bool reset=true)
 
void ForceCombatStopForCreatureEntry (std::vector< uint32 > creatureEntries, float maxSearchRange=250.0f, bool samePhase=true, bool reset=true)
 
void DoTeleportTo (float x, float y, float z, uint32 time=0)
 
void DoTeleportTo (float const pos[4])
 
void DoTeleportPlayer (Unit *unit, float x, float y, float z, float o)
 
void DoTeleportAll (float x, float y, float z, float o)
 
Unit * DoSelectLowestHpFriendly (float range, uint32 minHPDiff=1)
 
Unit * DoSelectBelowHpPctFriendlyWithEntry (uint32 entry, float range, uint8 hpPct=1, bool excludeSelf=true)
 
std::list< Creature * > DoFindFriendlyCC (float range)
 
std::list< Creature * > DoFindFriendlyMissingBuff (float range, uint32 spellId)
 
Player * GetPlayerAtMinimumRange (float minRange)
 
Creature * DoSpawnCreature (uint32 entry, float offsetX, float offsetY, float offsetZ, float angle, uint32 type, Milliseconds despawntime)
 
bool HealthBelowPct (uint32 pct) const
 
bool HealthAbovePct (uint32 pct) const
 
SpellInfo const * SelectSpell (Unit *target, uint32 school, uint32 mechanic, SelectTargetType targets, uint32 powerCostMin, uint32 powerCostMax, float rangeMin, float rangeMax, SelectEffect effect)
 
void SetEquipmentSlots (bool loadDefault, int32 mainHand=EQUIP_NO_CHANGE, int32 offHand=EQUIP_NO_CHANGE, int32 ranged=EQUIP_NO_CHANGE)
 
void SetCombatMovement (bool allowMovement)
 
bool IsCombatMovementAllowed () const
 
bool IsHeroic () const
 
Difficulty GetDifficulty () const
 
bool Is25ManRaid () const
 
void SetAggressiveStateAfter (Milliseconds timer, Creature *who=nullptr, bool startCombat=true, Creature *summoner=nullptr, StartCombatArgs const &combatArgs={ })
 
void DoAddEvent (Milliseconds timer, BasicEvent *event, WorldObject *who=nullptr)
 
template<class T >
T const & DUNGEON_MODE (T const &normal5, T const &heroic10) const
 
template<class T >
T const & RAID_MODE (T const &normal10, T const &normal25) const
 
template<class T >
T const & RAID_MODE (T const &normal10, T const &normal25, T const &heroic10, T const &heroic25) const
 
- Public Member Functions inherited from CreatureAI
 CreatureAI (Creature *creature)
 
virtual ~CreatureAI ()
 
bool IsEngaged () const
 
void Talk (uint8 id, WorldObject const *whisperTarget=nullptr)
 
void MoveInLineOfSight_Safe (Unit *who)
 == Reactions At =================================
 
void TriggerAlert (Unit const *who) const
 
virtual void EnterEvadeMode (EvadeReason why=EVADE_REASON_OTHER)
 
void JustEnteredCombat (Unit *) override
 
virtual void JustStartedThreateningMe (Unit *who)
 
virtual void JustEngagedWith (Unit *)
 
virtual void JustDied (Unit *)
 
virtual void KilledUnit (Unit *)
 
virtual void JustSummoned (Creature *)
 
virtual void IsSummonedBy (WorldObject *)
 
virtual void SummonedCreatureDespawn (Creature *)
 
virtual void SummonedCreatureDies (Creature *, Unit *)
 
virtual void SpellHit (WorldObject *, SpellInfo const *)
 
virtual void SpellHitTarget (WorldObject *, SpellInfo const *)
 
virtual void OnSpellCast (SpellInfo const *)
 
virtual void OnSpellFailed (SpellInfo const *)
 
virtual void OnSpellStart (SpellInfo const *)
 
virtual void OnChannelFinished (SpellInfo const *)
 
virtual void OnAuraApplied (AuraApplication const *)
 
virtual void OnAuraRemoved (AuraApplication const *)
 
virtual bool IsEscorted () const
 
virtual void JustAppeared ()
 
virtual void MovementInform (uint32, uint32)
 
void OnCharmed (bool isNew) override
 
virtual void JustReachedHome ()
 
void DoZoneInCombat (Creature *creature=nullptr)
 
virtual void ReceiveEmote (Player *, uint32)
 
virtual void OwnerAttackedBy (Unit *attacker)
 
virtual void OwnerAttacked (Unit *target)
 
virtual void CorpseRemoved (uint32 &)
 == Triggered Actions Requested ==================
 
virtual Optional< QuestGiverStatus > GetDialogStatus (Player *)
 == Gossip system ================================
 
virtual bool OnGossipHello (Player *)
 
virtual bool OnGossipSelect (Player *, uint32, uint32)
 
virtual bool OnGossipSelectCode (Player *, uint32, uint32, char const *)
 
virtual void OnQuestAccept (Player *, Quest const *)
 
virtual void OnQuestReward (Player *, Quest const *, uint32)
 
virtual void WaypointStarted (uint32, uint32)
 == Waypoints system =============================
 
virtual void WaypointReached (uint32, uint32)
 
virtual void WaypointPathEnded (uint32, uint32)
 
virtual void PassengerBoarded (Unit *, int8, bool)
 == Fields =======================================
 
virtual void OnSpellClick (Unit *, bool)
 
virtual bool CanSeeAlways (WorldObject const *)
 
virtual PlayerAI * GetAIForCharmedPlayer (Player *)
 
int32 VisualizeBoundary (Seconds duration, Unit *owner=nullptr, bool fill=false) const
 
virtual bool CheckInRoom ()
 
CreatureBoundary const * GetBoundary () const
 
void SetBoundary (CreatureBoundary const *boundary, bool negativeBoundaries=false)
 
bool IsInBoundary (Position const *who=nullptr) const
 
- Public Member Functions inherited from UnitAI
 UnitAI (Unit *unit)
 
virtual ~UnitAI ()
 
virtual bool CanAIAttack (Unit const *) const
 
virtual void InitializeAI ()
 
virtual void Reset ()
 
virtual void DoAction (int32)
 
virtual uint32 GetData (uint32) const
 
virtual void SetData (uint32, uint32)
 
virtual void SetGUID (ObjectGuid const &, int32=0)
 
virtual ObjectGuid GetGUID (int32=0) const
 
Unit * SelectTarget (SelectTargetMethod targetType, uint32 offset=0, float dist=0.0f, bool playerOnly=false, bool withTank=true, int32 aura=0)
 
template<class PREDICATE >
Unit * SelectTarget (SelectTargetMethod targetType, uint32 offset, PREDICATE const &predicate)
 
void SelectTargetList (std::list< Unit * > &targetList, uint32 num, SelectTargetMethod targetType, uint32 offset=0, float dist=0.0f, bool playerOnly=false, bool withTank=true, int32 aura=0)
 
template<class PREDICATE >
void SelectTargetList (std::list< Unit * > &targetList, uint32 num, SelectTargetMethod targetType, uint32 offset, PREDICATE const &predicate)
 
virtual void JustExitedCombat ()
 
virtual void OnDespawn ()
 
virtual void DamageDealt (Unit *, uint32 &, DamageEffectType)
 
virtual void DamageTaken (Unit *, uint32 &, DamageEffectType, SpellInfo const *)
 
virtual void HealReceived (Unit *, uint32 &)
 
virtual void HealDone (Unit *, uint32 &)
 
virtual void SpellInterrupted (uint32, uint32)
 
void AttackStartCaster (Unit *victim, float dist)
 
SpellCastResult DoCast (uint32 spellId)
 
SpellCastResult DoCast (Unit *victim, uint32 spellId, CastSpellExtraArgs const &args={})
 
SpellCastResult DoCastSelf (uint32 spellId, CastSpellExtraArgs const &args={})
 
SpellCastResult DoCastVictim (uint32 spellId, CastSpellExtraArgs const &args={})
 
SpellCastResult DoCastAOE (uint32 spellId, CastSpellExtraArgs const &args={})
 
float DoGetSpellMaxRange (uint32 spellId, bool positive=false)
 
virtual bool ShouldSparWith (Unit const *) const
 
void DoMeleeAttackIfReady ()
 
bool DoSpellAttackIfReady (uint32 spellId)
 
virtual void OnGameEvent (bool, uint16)
 
virtual std::string GetDebugInfo () const
 

Public Attributes

bool IsFleeing
 

Private Attributes

Difficulty _difficulty
 
bool _isCombatMovementAllowed
 
bool _isHeroic
 

Additional Inherited Members

- Public Types inherited from CreatureAI
enum  EvadeReason {
  EVADE_REASON_NO_HOSTILES , EVADE_REASON_BOUNDARY , EVADE_REASON_NO_PATH , EVADE_REASON_SEQUENCE_BREAK ,
  EVADE_REASON_OTHER
}
 
- Static Public Member Functions inherited from CreatureAI
static bool IsInBounds (CreatureBoundary const &boundary, Position const *who)
 
- Static Public Member Functions inherited from UnitAI
static void FillAISpellInfo ()
 
- Static Public Attributes inherited from UnitAI
static AISpellInfoType * AISpellInfo
 
- Protected Member Functions inherited from CreatureAI
bool UpdateVictim ()
 
Creature * DoSummon (uint32 entry, Position const &pos, Milliseconds despawnTime=30s, TempSummonType summonType=TEMPSUMMON_CORPSE_TIMED_DESPAWN)
 
Creature * DoSummon (uint32 entry, WorldObject *obj, float radius=5.0f, Milliseconds despawnTime=30s, TempSummonType summonType=TEMPSUMMON_CORPSE_TIMED_DESPAWN)
 
Creature * DoSummonFlyer (uint32 entry, WorldObject *obj, float flightZ, float radius=5.0f, Milliseconds despawnTime=30s, TempSummonType summonType=TEMPSUMMON_CORPSE_TIMED_DESPAWN)
 
void EngagementStart (Unit *who)
 
void EngagementOver ()
 
virtual void MoveInLineOfSight (Unit *)
 
bool _EnterEvadeMode (EvadeReason why=EVADE_REASON_OTHER)
 
- Protected Attributes inherited from CreatureAI
Creature *const me
 
CreatureBoundary const * _boundary
 
bool _negateBoundary
 
- Protected Attributes inherited from UnitAI
Unit *const me
 

Detailed Description

Definition at line 131 of file ScriptedCreature.h.

Constructor & Destructor Documentation

◆ ScriptedAI()

ScriptedAI::ScriptedAI ( Creature *  creature)
explicit

Definition at line 132 of file ScriptedCreature.cpp.

◆ ~ScriptedAI()

virtual ScriptedAI::~ScriptedAI ( )
inlinevirtual

Definition at line 135 of file ScriptedCreature.h.

Member Function Documentation

◆ AddThreat()

void ScriptedAI::AddThreat ( Unit *  victim,
float  amount,
Unit *  who = nullptr 
)

Definition at line 207 of file ScriptedCreature.cpp.

References ThreatManager::AddThreat(), Unit::GetThreatManager(), and CreatureAI::me.

Referenced by npc_blastmaster_emi_shortfuse::npc_blastmaster_emi_shortfuseAI::AggroAllPlayers(), npc_announcer_toc5::npc_announcer_toc5AI::AggroAllPlayers(), npc_shadow_image::AttackRandomTarget(), npc_highlord_darion_mograine::npc_highlord_darion_mograineAI::AttackStart(), boss_veklor::boss_veklorAI::AttackStart(), boss_faction_championsAI::AttackStart(), boss_four_horsemen_baseAI::BeginEncounter(), boss_four_horsemen_baron::BeginFighting(), boss_four_horsemen_thane::BeginFighting(), boss_gurtogg_bloodboil::ChangePhase(), boss_buru::ChaseNewVictim(), npc_dark_nucleus::DamageTaken(), BloodPrincesBossAI::DamageTaken(), npc_gothik_minion_baseAI::DoAction(), npc_feugen::DoAction(), boss_ick::DoAction(), boss_supremus::ExecuteEvent(), npc_zuljin_vortex::FixateRandomTarget(), npc_torloth_the_magnificent::npc_torloth_the_magnificentAI::HandleAnimation(), npc_fallout_slime::InitializeAI(), npc_escape_event_trash::IsSummonedBy(), npc_tiger_matriarch::IsSummonedBy(), npc_little_ooze::IsSummonedBy(), npc_fathomlord_karathress_cyclone::JustAppeared(), npc_inner_demon::JustAppeared(), npc_solarium_priest::JustAppeared(), npc_solarium_agent::JustAppeared(), npc_raging_flames::JustEngagedWith(), boss_priestess_delrissa::JustEngagedWith(), boss_priestess_lackey_commonAI::JustEngagedWith(), npc_hand_of_the_deceiver::npc_hand_of_the_deceiverAI::JustEngagedWith(), npc_stalagg::JustEngagedWith(), npc_feugen::JustEngagedWith(), boss_freya::boss_freyaAI::JustEngagedWith(), boss_ymiron::JustSummoned(), npc_kiljaeden_controller::npc_kiljaeden_controllerAI::JustSummoned(), npc_brann_hos::JustSummoned(), boss_freya::boss_freyaAI::JustSummoned(), dummy_dragonAI::MovementInform(), npc_gunship_boarding_addAI::MovementInform(), npc_highlord_darion_mograine::npc_highlord_darion_mograineAI::NPCChangeTarget(), npc_illidari_elite::Reset(), boss_thaladred_the_darkener::ScheduleEvents(), npc_shadowy_construct::SelectNewTarget(), npc_highlord_darion_mograine::npc_highlord_darion_mograineAI::SpawnNPC(), npc_enslaved_netherwing_drake::npc_enslaved_netherwing_drakeAI::SpellHit(), npc_water_globule::SpellHitTarget(), npc_anubarak_spike::StartChase(), boss_twinemperorsAI::TryActivateAfterTTelep(), boss_malchezaar::boss_malchezaarAI::UpdateAI(), boss_kagani_nightstrike::UpdateAI(), npc_hand_of_the_deceiver::npc_hand_of_the_deceiverAI::UpdateAI(), npc_felfire_portal::npc_felfire_portalAI::UpdateAI(), npc_volatile_felfire_fiend::npc_volatile_felfire_fiendAI::UpdateAI(), npc_giant_infernal::npc_giant_infernalAI::UpdateAI(), npc_demolitionist_legoso::npc_demolitionist_legosoAI::UpdateAI(), npc_clintar_spirit::npc_clintar_spiritAI::UpdateAI(), boss_gothik::UpdateAI(), npc_gothik_minion_baseAI::UpdateAI(), boss_patchwerk::UpdateAI(), npc_detonating_lasher::npc_detonating_lasherAI::UpdateAI(), generic_vehicleAI_toc5::generic_vehicleAI_toc5AI::UpdateAI(), boss_warrior_toc5::boss_warrior_toc5AI::UpdateAI(), boss_netherspite::boss_netherspiteAI::UpdatePortals(), npc_giant_infernal::npc_giant_infernalAI::WaypointReached(), npc_abomination::npc_abominationAI::WaypointReached(), npc_ghoul::npc_ghoulAI::WaypointReached(), npc_necromancer::npc_necromancerAI::WaypointReached(), npc_banshee::npc_bansheeAI::WaypointReached(), npc_crypt_fiend::npc_crypt_fiendAI::WaypointReached(), npc_fel_stalker::npc_fel_stalkerAI::WaypointReached(), npc_frost_wyrm::npc_frost_wyrmAI::WaypointReached(), and npc_gargoyle::npc_gargoyleAI::WaypointReached().

◆ AttackStart()

void ScriptedAI::AttackStart ( Unit *  who)
overridevirtual

Reimplemented from UnitAI.

Definition at line 147 of file ScriptedCreature.cpp.

References UnitAI::AttackStart(), AttackStartNoMove(), and IsCombatMovementAllowed().

Referenced by WorldBossAI::_JustEngagedWith(), npc_shadow_image::AttackRandomTarget(), npc_snobold_vassal::AttackStart(), boss_deathbringer_saurfang::AttackStart(), npc_twisted_visage::AttackStart(), npc_kelthuzad_minionAI::AttackStart(), npc_ashtongue_sorcerer::AttackStart(), boss_kiggler_the_crazed::AttackStart(), boss_victor_nefarius::BeginEvent(), boss_four_horsemen_baron::BeginFighting(), boss_four_horsemen_thane::BeginFighting(), boss_buru::ChaseNewVictim(), boss_selin_fireheart::DoAction(), boss_drakkari_colossus::DoAction(), npc_gothik_minion_baseAI::DoAction(), boss_jormungarAI::Emerge(), npc_clintar_spirit::npc_clintar_spiritAI::EnterEvadeMode(), npc_scarlet_ghoul::FindMinions(), npc_zuljin_vortex::FixateRandomTarget(), npc_skittering_swarmer::InitializeAI(), npc_skittering_infector::InitializeAI(), npc_ancient_wisp::JustAppeared(), npc_fathomlord_karathress_cyclone::JustAppeared(), npc_inner_demon::JustAppeared(), boss_twinemperorsAI::JustEngagedWith(), alliance_rifleman::alliance_riflemanAI::MoveInLineOfSight(), boss_twinemperorsAI::MoveInLineOfSight(), boss_nefarian::MovementInform(), boss_blood_queen_lana_thel::MovementInform(), npc_omen::MovementInform(), npc_gunship_boarding_addAI::MovementInform(), npc_calvin_montague::npc_calvin_montagueAI::OnQuestAccept(), npc_vengeful_shade::Reset(), npc_illidari_elite::Reset(), npc_ashtongue_defender::Reset(), npc_ashtongue_rogue::Reset(), npc_ashtongue_elementalist::Reset(), npc_ashtongue_spiritbinder::Reset(), npc_shadowy_construct::SelectNewTarget(), npc_the_lich_king_escape_hor::npc_the_lich_king_escape_horAI::SelectVictim(), gunship_npc_AI::SelectVictim(), boss_shade_of_akama::SpellHit(), npc_akama_shade::SpellHit(), npc_nether_drake::npc_nether_drakeAI::SpellHit(), npc_enslaved_netherwing_drake::npc_enslaved_netherwing_drakeAI::SpellHit(), boss_flame_leviathan::boss_flame_leviathanAI::SpellHitTarget(), npc_anubarak_spike::StartChase(), boss_twinemperorsAI::TryActivateAfterTTelep(), boss_pyroguard_emberseer::UpdateAI(), boss_vaelastrasz::UpdateAI(), npc_unworthy_initiate::npc_unworthy_initiateAI::UpdateAI(), npc_scarlet_courier::npc_scarlet_courierAI::UpdateAI(), boss_headless_horseman::UpdateAI(), npc_madrigosa::UpdateAI(), boss_arlokk::UpdateAI(), boss_grilek::UpdateAI(), boss_marli::UpdateAI(), boss_renataki::UpdateAI(), boss_thekal::UpdateAI(), npc_claw_tentacle::claw_tentacleAI::UpdateAI(), npc_giant_claw_tentacle::giant_claw_tentacleAI::UpdateAI(), npc_clintar_spirit::npc_clintar_spiritAI::UpdateAI(), npc_qiraj_war_spawn::npc_qiraj_war_spawnAI::UpdateAI(), npc_sergeant_bly::npc_sergeant_blyAI::UpdateAI(), boss_hadronox::UpdateAI(), npc_hadronox_foeAI::UpdateAI(), npc_jaina_or_sylvanas_escape_hor::npc_jaina_or_sylvanas_escape_horAI::UpdateAI(), boss_garfrost::UpdateAI(), boss_drakkari_elemental::UpdateAI(), boss_professor_putricide::UpdateAI(), npc_rimefang_icc::UpdateAI(), boss_gothik::UpdateAI(), npc_gothik_minion_baseAI::UpdateAI(), boss_algalon_the_observer::UpdateAI(), npc_feral_defender::UpdateAI(), npc_detonating_lasher::npc_detonating_lasherAI::UpdateAI(), npc_mimiron_assault_bot::npc_mimiron_assault_botAI::UpdateAI(), boss_svala::UpdateAI(), npc_maiev::UpdateAI(), npc_scarlet_ghoul::UpdateAI(), npc_felmyst_vapor::UpdateAI(), npc_pet_dk_rune_weapon::UpdateRuneWeaponVictim(), and npc_thorim_trashAI::UseAbility().

◆ AttackStartNoMove()

void ScriptedAI::AttackStartNoMove ( Unit *  target)

Definition at line 138 of file ScriptedCreature.cpp.

References Unit::Attack(), DoStartNoMovement(), and CreatureAI::me.

Referenced by AttackStart().

◆ DoAddEvent()

void ScriptedAI::DoAddEvent ( Milliseconds  timer,
BasicEvent *  event,
WorldObject *  who = nullptr 
)

◆ DoCastSpell()

void ScriptedAI::DoCastSpell ( Unit *  target,
SpellInfo const *  spellInfo,
bool  triggered = false 
)

◆ DoFindFriendlyCC()

std::list< Creature * > ScriptedAI::DoFindFriendlyCC ( float  range)

Definition at line 439 of file ScriptedCreature.cpp.

References CreatureAI::me, and Cell::VisitAllObjects().

Referenced by npc_hodir_priest::ScheduleEvents().

◆ DoFindFriendlyMissingBuff()

◆ DoPlaySoundToSet()

void ScriptedAI::DoPlaySoundToSet ( WorldObject *  source,
uint32  soundId 
)

◆ DoSelectBelowHpPctFriendlyWithEntry()

Unit * ScriptedAI::DoSelectBelowHpPctFriendlyWithEntry ( uint32  entry,
float  range,
uint8  hpPct = 1,
bool  excludeSelf = true 
)

◆ DoSelectLowestHpFriendly()

◆ DoSpawnCreature()

◆ DoStartMovement()

◆ DoStartNoMovement()

◆ DoStopAttack()

◆ DoTeleportAll()

void ScriptedAI::DoTeleportAll ( float  x,
float  y,
float  z,
float  o 
)

◆ DoTeleportPlayer()

void ScriptedAI::DoTeleportPlayer ( Unit *  unit,
float  x,
float  y,
float  z,
float  o 
)

◆ DoTeleportTo() [1/2]

void ScriptedAI::DoTeleportTo ( float const  pos[4])

Definition at line 390 of file ScriptedCreature.cpp.

References CreatureAI::me, and Unit::NearTeleportTo().

◆ DoTeleportTo() [2/2]

void ScriptedAI::DoTeleportTo ( float  x,
float  y,
float  z,
uint32  time = 0 
)

◆ DUNGEON_MODE()

◆ ForceCombatStop()

◆ ForceCombatStopForCreatureEntry() [1/2]

void ScriptedAI::ForceCombatStopForCreatureEntry ( std::vector< uint32 >  creatureEntries,
float  maxSearchRange = 250.0f,
bool  samePhase = true,
bool  reset = true 
)

Definition at line 285 of file ScriptedCreature.cpp.

References ForceCombatStopForCreatureEntry().

◆ ForceCombatStopForCreatureEntry() [2/2]

void ScriptedAI::ForceCombatStopForCreatureEntry ( uint32  entry,
float  maxSearchRange = 250.0f,
bool  samePhase = true,
bool  reset = true 
)

◆ GetDifficulty()

◆ GetPlayerAtMinimumRange()

Player * ScriptedAI::GetPlayerAtMinimumRange ( float  minRange)

Definition at line 459 of file ScriptedCreature.cpp.

References CreatureAI::me, and Cell::VisitWorldObjects().

◆ GetThreat()

◆ HealthAbovePct()

◆ HealthBelowPct()

bool ScriptedAI::HealthBelowPct ( uint32  pct) const

Definition at line 296 of file ScriptedCreature.cpp.

References Unit::HealthBelowPct(), and CreatureAI::me.

Referenced by boss_vancleef::DamageTaken(), boss_jedoga_shadowseeker::DamageTaken(), boss_slad_ran::DamageTaken(), boss_ormorok::DamageTaken(), npc_ashtongue_spiritbinder::DamageTaken(), boss_nightbane::boss_nightbaneAI::DamageTaken(), boss_deathbringer_saurfang::DamageTaken(), npc_crok_scourgebane::DamageTaken(), npc_tiger_matriarch::DamageTaken(), boss_kalecgos_human::DamageTaken(), boss_sathrovarr::ExecuteEvent(), boss_erekem::GetChainHealTarget(), boss_high_inquisitor_whitemane::UpdateAI(), npc_phalanx::npc_phalanxAI::UpdateAI(), boss_gyth::UpdateAI(), boss_lord_valthalak::UpdateAI(), boss_overlord_wyrmthalak::UpdateAI(), boss_chromaggus::UpdateAI(), boss_vaelastrasz::UpdateAI(), boss_malchezaar::boss_malchezaarAI::UpdateAI(), boss_shade_of_aran::boss_aranAI::UpdateAI(), boss_priestess_lackey_commonAI::UpdateAI(), boss_yazzai::UpdateAI(), boss_arcanist_doan::UpdateAI(), boss_silver_hand_bosses::boss_silver_hand_bossesAI::UpdateAI(), boss_kalecgos::UpdateAI(), boss_kiljaeden::boss_kiljaedenAI::UpdateAI(), npc_hand_of_the_deceiver::npc_hand_of_the_deceiverAI::UpdateAI(), boss_azuregos::UpdateAI(), boss_mal_ganis::boss_mal_ganisAI::UpdateAI(), npc_thrall_old_hillsbrad::UpdateAI(), boss_onyxia::UpdateAI(), npc_disciple_of_naralex::UpdateAI(), boss_zum_rah::boss_zum_rahAI::UpdateAI(), boss_sartharion::UpdateAI(), boss_anubarak_trial::UpdateAI(), npc_nerubian_burrower::UpdateAI(), npc_toc_druid::UpdateAI(), npc_toc_paladin::UpdateAI(), npc_toc_shadow_priest::UpdateAI(), npc_toc_mage::UpdateAI(), npc_toc_hunter::UpdateAI(), npc_toc_boomkin::UpdateAI(), npc_toc_warrior::UpdateAI(), npc_toc_dk::UpdateAI(), npc_toc_rogue::UpdateAI(), npc_toc_retro_paladin::UpdateAI(), npc_captain_brandon::UpdateAI(), boss_gothik::UpdateAI(), boss_kelthuzad::UpdateAI(), boss_maexxna::UpdateAI(), boss_anomalus::UpdateAI(), boss_svala::UpdateAI(), boss_ichoron::UpdateAI(), npc_maghar_captive::npc_maghar_captiveAI::UpdateAI(), npc_kurenai_captive::npc_kurenai_captiveAI::UpdateAI(), npc_phase_hunter::npc_phase_hunterAI::UpdateAI(), boss_ionar::UpdateAI(), npc_arthas_stratholme::npc_arthas_stratholmeAI::UpdateAICombat(), npc_crok_scourgebane::UpdateEscortAI(), and npc_brann_hos::UpdateEscortAI().

◆ Is25ManRaid()

bool ScriptedAI::Is25ManRaid ( ) const
inline

Definition at line 248 of file ScriptedCreature.h.

References RAID_DIFFICULTY_25MAN_HEROIC, and RAID_DIFFICULTY_25MAN_NORMAL.

Referenced by boss_lady_deathwhisper::DamageTaken(), npc_high_overlord_saurfang_igb::DoAction(), npc_muradin_bronzebeard_igb::DoAction(), boss_professor_putricide::DoAction(), npc_expedition_engineer::HandleBaseMovement(), npc_expedition_engineer::HandleFourthHarpoonMovement(), npc_expedition_engineer::HandleHarpoonMovement(), npc_expedition_engineer::HandleSecondHarpoonMovement(), npc_expedition_engineer::HandleThirdHarpoonMovement(), boss_blood_queen_lana_thel::JustDied(), boss_professor_putricide::JustDied(), boss_sindragosa::JustDied(), boss_the_lich_king::JustDied(), npc_faerlina_add::JustDied(), boss_general_zarithrian::JustEngagedWith(), boss_anubrekhan::JustEngagedWith(), boss_xt002::JustEngagedWith(), boss_blood_queen_lana_thel::MovementInform(), boss_xt002::RescheduleEvents(), boss_blood_queen_lana_thel::Reset(), npc_captain_arnath::Reset(), npc_frostwing_ymirjar_vrykul::Reset(), npc_green_dragon_combat_trigger::Reset(), npc_faerlina_add::Reset(), boss_razorscale::Reset(), boss_faerlina::SummonAdds(), boss_razuvious::SummonAdds(), boss_anubrekhan::SummonGuards(), boss_lady_deathwhisper::SummonWaveP1(), boss_lady_deathwhisper::SummonWaveP2(), boss_blood_queen_lana_thel::UpdateAI(), boss_deathbringer_saurfang::UpdateAI(), npc_high_overlord_saurfang_igb::UpdateAI(), npc_muradin_bronzebeard_igb::UpdateAI(), boss_professor_putricide::UpdateAI(), boss_gluth::UpdateAI(), boss_kelthuzad::UpdateAI(), boss_patchwerk::UpdateAI(), and boss_xt002::UpdateAI().

◆ IsCombatMovementAllowed()

bool ScriptedAI::IsCombatMovementAllowed ( ) const
inline

◆ IsHeroic()

bool ScriptedAI::IsHeroic ( ) const
inline

Definition at line 242 of file ScriptedCreature.h.

Referenced by boss_novos::CrystalHandlerDied(), boss_vexallus::DamageTaken(), boss_eregos::DamageTaken(), boss_lady_deathwhisper::DamageTaken(), npc_shambling_horror_icc::DamageTaken(), npc_valkyr_shadowguard::DamageTaken(), npc_terenas_menethil::DamageTaken(), boss_magus_telestra::DamageTaken(), boss_mekgineer_steamrigger::DamageTaken(), boss_commander_sarannis::DamageTaken(), npc_orb_carrier::DoAction(), boss_professor_putricide::DoAction(), boss_the_lich_king::DoAction(), npc_terenas_menethil::DoAction(), boss_valithria_dreamwalker::DoAction(), npc_tirion_toc::HandleBarrettSummon(), boss_aeonus::JustAppeared(), npc_lesser_shadow_fissure::JustAppeared(), boss_harbinger_skyriss_illusion::JustAppeared(), npc_mistress_of_pain::JustEngagedWith(), boss_northrend_beastsAI::JustEngagedWith(), boss_twin_baseAI::JustEngagedWith(), npc_vrykul_skeleton::JustEngagedWith(), boss_the_lich_king::JustEngagedWith(), boss_felblood_kaelthas::JustEngagedWith(), boss_epoch::boss_epochAI::JustEngagedWith(), boss_salramm::boss_salrammAI::JustEngagedWith(), boss_chrono_lord_deja::JustEngagedWith(), boss_temporus::JustEngagedWith(), boss_elder_nadox::JustEngagedWith(), boss_deathbringer_saurfang::JustEngagedWith(), boss_lady_deathwhisper::JustEngagedWith(), boss_professor_putricide::JustEngagedWith(), boss_ormorok::JustEngagedWith(), boss_krystallus::JustEngagedWith(), boss_maiden_of_grief::JustEngagedWith(), boss_dalronn_the_controller::JustEngagedWith(), boss_talon_king_ikiss::JustEngagedWith(), boss_grandmaster_vorpil::JustEngagedWith(), boss_mekgineer_steamrigger::JustEngagedWith(), boss_hungarfen::JustEngagedWith(), boss_the_black_stalker::JustEngagedWith(), boss_grand_warlock_nethekurse::JustEngagedWith(), boss_dalliah_the_doomsayer::JustEngagedWith(), boss_harbinger_skyriss::JustEngagedWith(), boss_commander_sarannis::JustEngagedWith(), boss_mechano_lord_capacitus::JustEngagedWith(), boss_pathaleon_the_calculator::JustEngagedWith(), npc_valkyr_shadowguard::MovementInform(), boss_the_lich_king::MovementInform(), npc_combustion_consumption::npc_combustion_consumption(), boss_anubarak_trial::Reset(), boss_faction_championsAI::Reset(), npc_infernal_volcano::Reset(), npc_nether_portal::Reset(), npc_beasts_combat_stalker::Reset(), boss_rotface::Reset(), boss_magus_telestra::Reset(), npc_ritual_channeler::Reset(), boss_ambassador_hellmaw::Reset(), boss_murmur::Reset(), boss_prince_keleseth_icc::ScheduleEvents(), boss_prince_taldaram_icc::ScheduleEvents(), boss_prince_valanar_icc::ScheduleEvents(), boss_cyanigosa::ScheduleTasks(), boss_lavanthor::ScheduleTasks(), boss_xevozz::ScheduleTasks(), boss_the_lich_king::SpellHit(), boss_selin_fireheart::UpdateAI(), boss_anubarak_trial::UpdateAI(), boss_deathbringer_saurfang::UpdateAI(), boss_lord_marrowgar::UpdateAI(), npc_strangulate_vehicle::UpdateAI(), npc_terenas_menethil::UpdateAI(), boss_valithria_dreamwalker::UpdateAI(), boss_keristrasza::UpdateAI(), npc_vrykul_skeleton::UpdateAI(), boss_warchief_kargath_bladefist::UpdateAI(), boss_commander_sarannis::UpdateAI(), and boss_vazruden_the_herald::UpdateSpecialEvents().

◆ ModifyThreatByPercent()

◆ RAID_MODE() [1/2]

◆ RAID_MODE() [2/2]

template<class T >
T const & ScriptedAI::RAID_MODE ( T const &  normal10,
T const &  normal25,
T const &  heroic10,
T const &  heroic25 
) const
inline

◆ ResetThreat()

void ScriptedAI::ResetThreat ( Unit *  victim,
Unit *  who = nullptr 
)

◆ ResetThreatList()

void ScriptedAI::ResetThreatList ( Unit *  who = nullptr)

Definition at line 234 of file ScriptedCreature.cpp.

References Unit::GetThreatManager(), CreatureAI::me, and ThreatManager::ResetAllThreat().

Referenced by npc_shadow_image::AttackRandomTarget(), boss_supremus::ChangePhase(), boss_buru::ChaseNewVictim(), boss_jeklik::DamageTaken(), boss_lady_deathwhisper::DamageTaken(), npc_feral_defender::DamageTaken(), boss_lady_vashj::DoAction(), boss_leotheras_the_blind::DoAction(), boss_nightbane::boss_nightbaneAI::ExecuteEvent(), boss_talon_king_ikiss::ExecuteEvent(), boss_supremus::ExecuteEvent(), npc_zuljin_vortex::FixateRandomTarget(), npc_fathomlord_karathress_cyclone::JustAppeared(), npc_water_globule::JustAppeared(), npc_raging_flames::JustEngagedWith(), boss_ayamiss::MovementInform(), boss_thorim::boss_thorimAI::MovementInform(), boss_ragnaros::OnSpellCast(), boss_thaladred_the_darkener::ScheduleEvents(), npc_shadowy_construct::SelectNewTarget(), boss_twinemperorsAI::SetAfterTeleport(), boss_shazzrah::SpellHit(), boss_victor_nefarius::UpdateAI(), boss_julianne::UpdateAI(), boss_romulo::UpdateAI(), boss_priestess_lackey_commonAI::UpdateAI(), boss_kagani_nightstrike::UpdateAI(), boss_zuljin::UpdateAI(), boss_arlokk::UpdateAI(), boss_thekal::UpdateAI(), boss_venoxis::UpdateAI(), boss_azuregos::UpdateAI(), boss_buru::UpdateAI(), boss_skeram::boss_skeramAI::UpdateAI(), boss_viscidus::boss_viscidusAI::UpdateAI(), boss_gothik::UpdateAI(), npc_gothik_minion_baseAI::UpdateAI(), boss_kelthuzad::UpdateAI(), boss_noth::UpdateAI(), boss_algalon_the_observer::UpdateAI(), boss_stormcaller_brundir::boss_stormcaller_brundirAI::UpdateAI(), boss_blackheart_the_inciter::UpdateAI(), boss_illidan_stormrage::UpdateAI(), boss_hydross_the_unstable::UpdateAI(), boss_leotheras_the_blind::UpdateAI(), boss_alar::UpdateAI(), boss_kaelthas::UpdateAI(), generic_vehicleAI_toc5::generic_vehicleAI_toc5AI::UpdateAI(), and boss_warrior_toc5::boss_warrior_toc5AI::UpdateAI().

◆ SelectSpell()

SpellInfo const * ScriptedAI::SelectSpell ( Unit *  target,
uint32  school,
uint32  mechanic,
SelectTargetType  targets,
uint32  powerCostMin,
uint32  powerCostMax,
float  rangeMin,
float  rangeMax,
SelectEffect  effect 
)

◆ SetAggressiveStateAfter()

◆ SetCombatMovement()

void ScriptedAI::SetCombatMovement ( bool  allowMovement)

Definition at line 488 of file ScriptedCreature.cpp.

References _isCombatMovementAllowed.

Referenced by alliance_rifleman::alliance_riflemanAI::alliance_riflemanAI(), boss_faction_championsAI::AttackStart(), boss_four_horsemen_baron::BeginFighting(), boss_four_horsemen_thane::BeginFighting(), boss_blood_council_controller::boss_blood_council_controller(), boss_kiljaeden::boss_kiljaedenAI::boss_kiljaedenAI(), boss_kologarn::boss_kologarnAI::boss_kologarnAI(), boss_murmur::boss_murmur(), boss_voice_of_yogg_saron::boss_voice_of_yogg_saronAI::boss_voice_of_yogg_saronAI(), npc_claw_tentacle::claw_tentacleAI::claw_tentacleAI(), boss_cthun::cthunAI::cthunAI(), boss_eye_of_cthun::eye_of_cthunAI::eye_of_cthunAI(), npc_eye_tentacle::eye_tentacleAI::eye_tentacleAI(), npc_giant_flesh_tentacle::flesh_tentacleAI::flesh_tentacleAI(), npc_giant_claw_tentacle::giant_claw_tentacleAI::giant_claw_tentacleAI(), npc_giant_eye_tentacle::giant_eye_tentacleAI::giant_eye_tentacleAI(), EscortAI::InitializeAI(), boss_alythess::InitializeAI(), boss_thaddius::InitializeAI(), boss_hadronox::JustAppeared(), boss_ayamiss::JustReachedHome(), npc_snobold_vassal::MountOnBoss(), npc_anubarak_spike::MoveInLineOfSight(), boss_ayamiss::MovementInform(), npc_armageddon::npc_armageddonAI::npc_armageddonAI(), npc_blessed_banner::npc_blessed_banner(), npc_bone_spike::npc_bone_spike(), npc_bullet_controller::npc_bullet_controller(), npc_chaotic_rift::npc_chaotic_rift(), npc_combustion_consumption::npc_combustion_consumption(), npc_constrictor_tentacle::npc_constrictor_tentacleAI::npc_constrictor_tentacleAI(), npc_corruptor_tentacle::npc_corruptor_tentacleAI::npc_corruptor_tentacleAI(), npc_crusher_tentacle::npc_crusher_tentacleAI::npc_crusher_tentacleAI(), npc_eonars_gift::npc_eonars_giftAI::npc_eonars_giftAI(), npc_expedition_trapper::npc_expedition_trapper(), npc_felfire_portal::npc_felfire_portalAI::npc_felfire_portalAI(), npc_frost_freeze_trap::npc_frost_freeze_trap(), npc_guardian_pavilion::npc_guardian_pavilion(), npc_healthy_spore::npc_healthy_sporeAI::npc_healthy_sporeAI(), npc_ice_tomb::npc_ice_tomb(), npc_illidan_generic_fire::npc_illidan_generic_fire(), npc_infernal_volcano::npc_infernal_volcano(), npc_iron_roots::npc_iron_rootsAI::npc_iron_rootsAI(), npc_kiljaeden_controller::npc_kiljaeden_controllerAI::npc_kiljaeden_controllerAI(), npc_legion_flame::npc_legion_flame(), npc_meteor_strike::npc_meteor_strike(), npc_meteor_strike_flame::npc_meteor_strike_flame(), npc_meteor_strike_initial::npc_meteor_strike_initial(), npc_nature_bomb::npc_nature_bombAI::npc_nature_bombAI(), npc_nether_portal::npc_nether_portal(), npc_reliquary_combat_trigger::npc_reliquary_combat_trigger(), npc_ritual_channeler::npc_ritual_channeler(), npc_sif::npc_sifAI::npc_sifAI(), npc_snobold_vassal::npc_snobold_vassal(), npc_sun_beam::npc_sun_beamAI::npc_sun_beamAI(), npc_tiger_matriarch_credit::npc_tiger_matriarch_credit(), npc_tournament_training_dummy::npc_tournament_training_dummy(), npc_tribuna_controller::npc_tribuna_controller(), npc_twilight_eggs::npc_twilight_eggs(), npc_twilight_fissure::npc_twilight_fissure(), npc_unstable_sun_beam::npc_unstable_sun_beamAI::npc_unstable_sun_beamAI(), npc_valkyr_shadowguard::npc_valkyr_shadowguard(), boss_onyxia::Reset(), npc_unleashed_ballAI::Reset(), boss_four_horsemen_baseAI::Reset(), boss_razuvious::Reset(), boss_razorscale::Reset(), npc_thorim_pre_phase::npc_thorim_pre_phaseAI::Reset(), boss_onyxia::UpdateAI(), boss_hadronox::UpdateAI(), boss_razuvious::UpdateAI(), boss_razorscale::UpdateAI(), boss_mr_smite::boss_mr_smiteAI::UpdateAI(), npc_thorim_trashAI::UseAbility(), and npc_coilfang_ambusher::WaypointPathEnded().

◆ SetEquipmentSlots()

void ScriptedAI::SetEquipmentSlots ( bool  loadDefault,
int32  mainHand = EQUIP_NO_CHANGE,
int32  offHand = EQUIP_NO_CHANGE,
int32  ranged = EQUIP_NO_CHANGE 
)

Definition at line 470 of file ScriptedCreature.cpp.

References Creature::GetOriginalEquipmentId(), Creature::LoadEquipment(), CreatureAI::me, and Unit::SetVirtualItem().

Referenced by boss_malchezaar::boss_malchezaarAI::ClearWeapons(), boss_nalorakk::DoAction(), boss_the_lich_king::DoAction(), boss_leotheras_the_blind::DoAction(), boss_twin_baseAI::EnableDualWield(), boss_svala::JustDied(), boss_garfrost::MovementInform(), npc_ingvar_throw_dummy::MovementInform(), boss_ingvar_the_plunderer::OnSpellCast(), boss_high_king_maulgar::OnSpellCast(), boss_mr_smite::boss_mr_smiteAI::Reset(), boss_dathrohan_balnazzar::Reset(), boss_nalorakk::Reset(), npc_toc_druid::Reset(), npc_toc_shaman::Reset(), npc_toc_paladin::Reset(), npc_toc_priest::Reset(), npc_toc_shadow_priest::Reset(), npc_toc_warlock::Reset(), npc_toc_mage::Reset(), npc_toc_hunter::Reset(), npc_toc_boomkin::Reset(), npc_toc_warrior::Reset(), npc_toc_dk::Reset(), npc_toc_rogue::Reset(), npc_toc_enh_shaman::Reset(), npc_toc_retro_paladin::Reset(), boss_fjola::Reset(), boss_eydis::Reset(), boss_garfrost::Reset(), boss_the_lich_king::Reset(), boss_leotheras_the_blind::Reset(), boss_high_king_maulgar::Reset(), boss_malchezaar::boss_malchezaarAI::UpdateAI(), boss_kirtonos_the_herald::UpdateAI(), boss_dathrohan_balnazzar::UpdateAI(), boss_zuljin::UpdateAI(), boss_renataki::UpdateAI(), boss_the_lich_king::UpdateAI(), npc_tirion_fordring_tft::UpdateAI(), boss_magus_telestra::UpdateAI(), boss_leotheras_the_blind::UpdateAI(), boss_mr_smite::boss_mr_smiteAI::UpdateAI(), and boss_kirtonos_the_herald::UpdateIntroEvents().

◆ UpdateAI()

void ScriptedAI::UpdateAI ( uint32  diff)
overridevirtual

Implements UnitAI.

Reimplemented in boss_high_inquisitor_whitemane, npc_thorim_trashAI, GuardAI, BossAI, WorldBossAI, EscortAI, npc_av_marshal_or_warmaster, boss_balinda, boss_drekthar, boss_galvangar, boss_vanndar, npc_grimstone::npc_grimstoneAI, npc_phalanx::npc_phalanxAI, npc_rocknot::npc_rocknotAI, boss_ambassador_flamelash::boss_ambassador_flamelashAI, boss_coren_direbrew, npc_coren_direbrew_sisters, boss_emperor_dagran_thaurissan::boss_draganthaurissanAI, boss_general_angerforge::boss_general_angerforgeAI, boss_high_interrogator_gerstahn::boss_high_interrogator_gerstahnAI, boss_magmus::boss_magmusAI, npc_ironhand_guardian::npc_ironhand_guardianAI, boss_moira_bronzebeard::boss_moira_bronzebeardAI, boss_doomrel::boss_doomrelAI, boss_drakkisath, boss_gizrul_the_slavener, boss_gyth, boss_halycon, boss_highlord_omokk, boss_lord_valthalak, boss_mother_smolderweb, boss_overlord_wyrmthalak, boss_pyroguard_emberseer, npc_blackhand_incarcerator, quartermaster_zigris, boss_rend_blackhand, boss_shadow_hunter_voshgajin, boss_the_beast, boss_urok_doomhowl, boss_warmaster_voone, boss_broodlord, boss_chromaggus, boss_ebonroc, boss_firemaw, boss_flamegor, boss_victor_nefarius, boss_nefarian, boss_razorgore, boss_vaelastrasz, boss_baron_geddon, boss_garr, boss_gehennas, boss_golemagg, npc_core_rager, boss_lucifron, boss_magmadar, boss_majordomo, boss_ragnaros, boss_shazzrah, boss_sulfuron, npc_flamewaker_priest, npc_curator_astral_flare::npc_curator_astral_flareAI, boss_maiden_of_virtue, boss_attumen::boss_attumenAI, boss_midnight::boss_midnightAI, boss_moroes, GuestBaseAI, boss_netherspite::boss_netherspiteAI, boss_nightbane::boss_nightbaneAI, netherspite_infernal::netherspite_infernalAI, boss_malchezaar::boss_malchezaarAI, boss_shade_of_aran::boss_aranAI, npc_aran_elemental::water_elementalAI, npc_kilrek::npc_kilrekAI, npc_fiendish_imp::npc_fiendish_impAI, boss_dorothee, boss_strawman, boss_tinhead, boss_roar, boss_crone, npc_tito, boss_big_bad_wolf, boss_julianne, boss_romulo, npc_barnes, npc_image_of_medivh::npc_image_of_medivhAI, boss_felblood_kaelthas, npc_felblood_kaelthas_phoenix, boss_priestess_delrissa, boss_priestess_lackey_commonAI, boss_kagani_nightstrike, boss_ellris_duskhallow, boss_eramas_brightblaze, boss_yazzai, boss_warlord_salaris, boss_garaxxas, boss_apoko, boss_zelfan, boss_selin_fireheart, boss_vexallus, npc_kalecgos, npc_unworthy_initiate::npc_unworthy_initiateAI, npc_eye_of_acherus, npc_dark_rider_of_acherus, npc_koltira_deathweaver, npc_scarlet_courier::npc_scarlet_courierAI, npc_a_special_surprise::npc_a_special_surpriseAI, npc_highlord_darion_mograine::npc_highlord_darion_mograineAI, boss_arcanist_doan, boss_azshir_the_sleepless, boss_headless_horseman, npc_pulsing_pumpkin, npc_scarlet_trainee, boss_high_inquisitor_fairbanks, boss_scarlet_commander_mograine, boss_darkmaster_gandling, boss_death_knight_darkreaver, boss_doctor_theolen_krastinov, boss_illucia_barov, boss_instructor_malicia, boss_jandice_barov, boss_kirtonos_the_herald, boss_kormok, boss_lord_alexei_barov, boss_lorekeeper_polkelt, boss_boss_ras_frostwhisper, boss_the_ravenian, boss_vectus, boss_apothecary_hummel, npc_apothecary_baxter, boss_archmage_arugal::boss_archmage_arugalAI, boss_baron_rivendare, boss_baroness_anastari, boss_cannon_master_willey, boss_dathrohan_balnazzar, boss_magistrate_barthilas, boss_maleki_the_pallid, boss_nerubenkan, boss_silver_hand_bosses::boss_silver_hand_bossesAI, boss_postmaster_malown, boss_ramstein_the_gorger, boss_timmy_the_cruel, npc_restless_soul::npc_restless_soulAI, npc_spectral_ghostly_citizen::npc_spectral_ghostly_citizenAI, boss_brutallus, npc_madrigosa, boss_sacrolash, boss_alythess, npc_shadow_image, boss_felmyst, boss_kalecgos, boss_kalecgos_human, npc_kiljaeden_controller::npc_kiljaeden_controllerAI, boss_kiljaeden::boss_kiljaedenAI, npc_hand_of_the_deceiver::npc_hand_of_the_deceiverAI, npc_felfire_portal::npc_felfire_portalAI, npc_volatile_felfire_fiend::npc_volatile_felfire_fiendAI, npc_armageddon::npc_armageddonAI, npc_shield_orb::npc_shield_orbAI, npc_sinster_reflection::npc_sinster_reflectionAI, boss_muru, boss_entropius, npc_muru_portal, npc_void_sentinel_summoner, npc_void_sentinel, npc_void_spawn, npc_dark_fiend, npc_darkness, npc_singularity, ShadowswordBaseAI, boss_archaedas, npc_earthen_hallshaper_custodian, npc_earthen_guardian, npc_vault_warder, boss_ironaya, npc_stone_keeper, boss_twilight_corrupter::boss_twilight_corrupterAI, npc_cameron, npc_partygoer_pather, npc_partygoer, npc_thalorien_dawnseeker, npc_calvin_montague::npc_calvin_montagueAI, npc_lady_sylvanas_windrunner::npc_lady_sylvanas_windrunnerAI, npc_highborne_lamenter::npc_highborne_lamenterAI, boss_akilzon, npc_soaring_eagle, boss_halazzi, npc_spirit_of_the_lynx, npc_corrupted_lightning_totem, boss_hexlord_malacrass, MalacrassCompanionBaseAI, boss_janalai, npc_amanishi_hatcher, npc_amani_dragonhawk_hatchling, boss_nalorakk, boss_zuljin, npc_zuljin_vortex, npc_zuljin_spirit, npc_harrison_jones::npc_harrison_jonesAI, boss_arlokk, npc_zulian_prowler, boss_gahzranka, boss_grilek, boss_hakkar, boss_hazzarah, boss_jeklik, boss_jindo, npc_healing_ward, npc_shade_of_jindo, boss_mandokir, npc_ohgan, npc_vilebranch_speaker, boss_marli, npc_spawn_of_marli, boss_renataki, boss_thekal, npc_zealot_lorkhan, npc_zealot_zath, boss_venoxis, boss_wushoolay, npc_winterfin_playmate::npc_winterfin_playmateAI, npc_snowfall_glade_playmate::npc_snowfall_glade_playmateAI, npc_the_biggest_tree::npc_the_biggest_treeAI, npc_high_oracle_soo_roo::npc_high_oracle_soo_rooAI, npc_elder_kekek::npc_elder_kekekAI, npc_the_etymidian::npc_the_etymidianAI, npc_alexstraza_the_lifebinder::npc_alexstraza_the_lifebinderAI, npc_omen, npc_giant_spotlight, npc_tiger_matriarch_credit, npc_tiger_matriarch, npc_blackfathom_deeps_event, boss_gelihast, boss_kelris, boss_azuregos, boss_anetheron, npc_towering_infernal, boss_archimonde, npc_doomfire, npc_doomfire_spirit, npc_ancient_wisp, boss_azgalor, npc_lesser_doomguard, boss_kazrogal, boss_rage_winterchill, npc_giant_infernal::npc_giant_infernalAI, npc_abomination::npc_abominationAI, npc_ghoul::npc_ghoulAI, npc_necromancer::npc_necromancerAI, npc_banshee::npc_bansheeAI, npc_crypt_fiend::npc_crypt_fiendAI, npc_fel_stalker::npc_fel_stalkerAI, npc_frost_wyrm::npc_frost_wyrmAI, npc_gargoyle::npc_gargoyleAI, alliance_rifleman::alliance_riflemanAI, hyjal_trashAI, hyjalAI, boss_mal_ganis::boss_mal_ganisAI, npc_arthas_stratholme::npc_arthas_stratholmeAI, boss_captain_skarloc, boss_epoch_hunter, boss_lieutenant_drake, npc_thrall_old_hillsbrad, boss_aeonus, boss_chrono_lord_deja, boss_temporus, npc_medivh_bm, boss_celebras_the_cursed, boss_landslide, boss_noxxion, boss_princess_theradras, boss_onyxia, boss_amnennar_the_coldbringer, boss_glutton, boss_mordresh_fire_eye, boss_tuten_kash, npc_belnistrasz::npc_belnistraszAI, npc_tomb_creature::npc_tomb_creatureAI, boss_ayamiss, boss_buru, boss_kurinnaxx, boss_moam, boss_ossirian::boss_ossirianAI, boss_rajaxx, npc_andorov, boss_kri, boss_vem, boss_yauj, boss_eye_of_cthun::eye_of_cthunAI, boss_cthun::cthunAI, npc_eye_tentacle::eye_tentacleAI, npc_claw_tentacle::claw_tentacleAI, npc_giant_claw_tentacle::giant_claw_tentacleAI, npc_giant_eye_tentacle::giant_eye_tentacleAI, boss_fankriss, boss_huhuran, boss_ouro::boss_ouroAI, boss_sartura, npc_sartura_royal_guard, boss_skeram::boss_skeramAI, boss_veknilash::boss_veknilashAI, boss_veklor::boss_veklorAI, boss_viscidus::boss_viscidusAI, npc_disciple_of_naralex, npc_ruul_snowhoof::npc_ruul_snowhoofAI, npc_muglash::npc_muglashAI, npc_rizzle_sprysprocket, npc_draenei_survivor::npc_draenei_survivorAI, npc_engineer_spark_overgrind::npc_engineer_spark_overgrindAI, npc_geezle::npc_geezleAI, npc_sironas::npc_sironasAI, npc_demolitionist_legoso::npc_demolitionist_legosoAI, npc_clintar_spirit::npc_clintar_spiritAI, npc_shenthul::npc_shenthulAI, npc_thrall_warchief::npc_thrall_warchiefAI, npc_overlord_runthak_orgrimmar::npc_overlord_runthak_orgrimmarAI, npc_thrall_herald_of_war::npc_thrall_herald_of_warAI, npc_anachronos_the_ancient::npc_anachronos_the_ancientAI, npc_qiraj_war_spawn::npc_qiraj_war_spawnAI, npc_anachronos_quest_trigger::npc_anachronos_quest_triggerAI, npc_taskmaster_fizzule::npc_taskmaster_fizzuleAI, npc_twiggy_flathead::npc_twiggy_flatheadAI, npc_cairne_bloodhoof, boss_zum_rah::boss_zum_rahAI, npc_sergeant_bly::npc_sergeant_blyAI, npc_weegli_blastfuse::npc_weegli_blastfuseAI, boss_amanitar, npc_amanitar_mushrooms, boss_elder_nadox, npc_ahnkahar_nerubian, boss_volazj, npc_twisted_visage, boss_jedoga_shadowseeker, npc_twilight_volunteer, boss_prince_taldaram, npc_prince_taldaram_flame_sphere, boss_anub_arak, npc_anubarak_anub_ar_assassin, npc_anubarak_anub_ar_guardian, npc_anubarak_anub_ar_venomancer, boss_hadronox, npc_hadronox_crusherPackAI, npc_hadronox_foeAI, boss_krik_thir, npc_watcher_gashra, npc_watcher_narjil, npc_watcher_silthik, npc_anub_ar_warrior, npc_anub_ar_skirmisher, npc_anub_ar_shadowcaster, boss_sartharion, dummy_dragonAI, npc_tenebron, npc_shadron, npc_vesperon, npc_twilight_eggs, npc_flame_tsunami, npc_twilight_fissure, npc_twilight_whelp, boss_baltharus_the_warborn, npc_baltharus_the_warborn_clone, boss_general_zarithrian, npc_onyx_flamecaller, boss_halion, boss_twilight_halion, npc_halion_controller, npc_orb_carrier, npc_meteor_strike, npc_meteor_strike_flame, npc_living_inferno, boss_saviana_ragefire, npc_xerestrasza, boss_anubarak_trial, npc_swarm_scarab, npc_nerubian_burrower, npc_anubarak_spike, boss_faction_championsAI, npc_toc_druid, npc_toc_shaman, npc_toc_paladin, npc_toc_priest, npc_toc_shadow_priest, npc_toc_warlock, npc_toc_mage, npc_toc_hunter, npc_toc_boomkin, npc_toc_warrior, npc_toc_dk, npc_toc_rogue, npc_toc_enh_shaman, npc_toc_retro_paladin, npc_toc_pet_warlock, npc_toc_pet_hunter, boss_jaraxxus, npc_fel_infernal, npc_mistress_of_pain, boss_northrend_beastsAI, npc_snobold_vassal, npc_beasts_combat_stalker, boss_jormungarAI, boss_twin_baseAI, npc_unleashed_dark, npc_unleashed_light, boss_lich_king_toc, npc_tirion_toc, npc_open_portal_target_toc, npc_fizzlebang_toc, npc_garrosh_toc, npc_varian_toc, boss_king_dred, npc_drakkari_gutripper, npc_drakkari_scytheclaw, boss_novos, npc_crystal_channel_target, boss_tharon_ja, boss_trollgore, boss_bronjahm, boss_devourer_of_souls, npc_sylvanas_fos, npc_jaina_fos, boss_falric::boss_falricAI, boss_marwyn::boss_marwynAI, npc_jaina_or_sylvanas_intro_hor::npc_jaina_or_sylvanas_intro_horAI, npc_jaina_or_sylvanas_escape_hor::npc_jaina_or_sylvanas_escape_horAI, npc_the_lich_king_escape_hor::npc_the_lich_king_escape_horAI, npc_ghostly_priest::npc_ghostly_priestAI, npc_phantom_mage::npc_phantom_mageAI, npc_shadowy_mercenary::npc_shadowy_mercenaryAI, npc_spectral_footman::npc_spectral_footmanAI, npc_tortured_rifleman::npc_tortured_riflemanAI, npc_frostsworn_general::npc_frostsworn_generalAI, npc_spiritual_reflection::npc_spiritual_reflectionAI, npc_raging_ghoul::npc_raging_ghoulAI, npc_risen_witch_doctor::npc_risen_witch_doctorAI, npc_lumbering_abomination::npc_lumbering_abominationAI, npc_uther_quel_delar::npc_uther_quel_delarAI, npc_quel_delar_sword::npc_quel_delar_swordAI, boss_garfrost, boss_ick, boss_krick, boss_tyrannus, boss_rimefang, npc_ymirjar_flamebearer, npc_iceborn_protodrake, npc_geist_ambusher, boss_drakkari_colossus, boss_drakkari_elemental, npc_living_mojo, boss_moorabi, boss_slad_ran, npc_slad_ran_constrictor, npc_slad_ran_viper, boss_blood_council_controller, boss_prince_keleseth_icc, boss_prince_taldaram_icc, boss_prince_valanar_icc, npc_ball_of_flame, npc_kinetic_bomb, npc_dark_nucleus, boss_blood_queen_lana_thel, boss_deathbringer_saurfang, npc_high_overlord_saurfang_icc, npc_muradin_bronzebeard_icc, boss_festergut, npc_stinky_icc, npc_high_overlord_saurfang_igb, npc_muradin_bronzebeard_igb, npc_gunship_boarding_leader, boss_lady_deathwhisper, npc_cult_fanatic, npc_cult_adherent, npc_vengeful_shade, npc_darnavan, boss_lord_marrowgar, npc_coldflame, npc_bone_spike, boss_professor_putricide, npc_putricide_oozeAI, boss_rotface, npc_little_ooze, npc_big_ooze, npc_precious_icc, boss_sindragosa, npc_ice_tomb, npc_spinestalker, npc_rimefang_icc, npc_sindragosa_trash, boss_sister_svalna, npc_captain_arnath, npc_captain_brandon, npc_captain_grondel, npc_captain_rupert, npc_frostwing_ymirjar_vrykul, boss_the_lich_king, npc_tirion_fordring_tft, npc_shambling_horror_icc, npc_raging_spirit, npc_valkyr_shadowguard, npc_strangulate_vehicle, npc_terenas_menethil, npc_spirit_warden, boss_valithria_dreamwalker, npc_the_lich_king_controller, npc_risen_archmage, npc_blazing_skeleton, npc_suppresser, npc_gluttonous_abomination, npc_dream_cloud, npc_highlord_tirion_fordring_lh, npc_rotting_frost_giant, npc_frost_freeze_trap, npc_icc_orb_controller, DarkFallenAI, npc_vampiric_fiend, npc_icc_nerubar_broodkeeper, boss_ioc_horde_alliance, npc_ioc_gunship_captain, boss_anubrekhan, boss_faerlina, boss_four_horsemen_baseAI, boss_gluth, npc_zombie_chow, boss_gothik, npc_gothik_minion_baseAI, boss_grobbulus, npc_fallout_slime, boss_heigan, boss_kelthuzad, npc_kelthuzad_skeleton, npc_kelthuzad_banshee, npc_kelthuzad_abomination, npc_kelthuzad_guardian, npc_kelthuzad_shadow_fissure, boss_loatheb, boss_maexxna, boss_noth, boss_patchwerk, boss_razuvious, npc_dk_understudy, boss_sapphiron, npc_sapphiron_blizzard, boss_thaddius, boss_malygos, npc_nexus_lord, npc_scion_of_eternity, boss_anomalus, npc_chaotic_rift, boss_keristrasza, boss_magus_telestra, boss_ormorok, npc_crystal_spike_trigger, boss_drakos, boss_eregos, boss_urom, boss_varos, boss_general_bjarngrim, npc_bjarngrim_stormforged_lieutenant, boss_loken, boss_volkhan, npc_volkhan_molten_golem, boss_krystallus, boss_maiden_of_grief, boss_sjonnir, npc_malformed_ooze, npc_iron_sludge, npc_tribuna_controller, boss_algalon_the_observer, boss_steelbreaker::boss_steelbreakerAI, boss_runemaster_molgeim::boss_runemaster_molgeimAI, boss_stormcaller_brundir::boss_stormcaller_brundirAI, boss_auriaya, npc_sanctum_sentry, npc_feral_defender, npc_swarming_guardian, boss_flame_leviathan::boss_flame_leviathanAI, boss_flame_leviathan_defense_cannon::boss_flame_leviathan_defense_cannonAI, npc_mimirons_inferno::npc_mimirons_infernoAI, npc_freyas_ward::npc_freyas_wardAI, npc_freya_ward_summon::npc_freya_ward_summonAI, boss_freya::boss_freyaAI, boss_elder_brightleaf::boss_elder_brightleafAI, boss_elder_stonebark::boss_elder_stonebarkAI, boss_elder_ironbranch::boss_elder_ironbranchAI, npc_detonating_lasher::npc_detonating_lasherAI, npc_ancient_water_spirit::npc_ancient_water_spiritAI, npc_storm_lasher::npc_storm_lasherAI, npc_ancient_conservator::npc_ancient_conservatorAI, npc_healthy_spore::npc_healthy_sporeAI, npc_eonars_gift::npc_eonars_giftAI, npc_nature_bomb::npc_nature_bombAI, npc_unstable_sun_beam::npc_unstable_sun_beamAI, boss_general_vezax::boss_general_vezaxAI, boss_saronite_animus::boss_saronite_animusAI, npc_saronite_vapors::npc_saronite_vaporsAI, boss_hodir, CoolestFriendBaseAI, npc_icicle, npc_flash_freeze_init, npc_flash_freeze_combat, boss_ignis::boss_ignis_AI, boss_kologarn::boss_kologarnAI, boss_mimiron::boss_mimironAI, boss_leviathan_mk_ii::boss_leviathan_mk_iiAI, boss_vx_001::boss_vx_001AI, boss_aerial_command_unit::boss_aerial_command_unitAI, npc_mimiron_assault_bot::npc_mimiron_assault_botAI, npc_mimiron_emergency_fire_bot::npc_mimiron_emergency_fire_botAI, npc_mimiron_computer::npc_mimiron_computerAI, npc_mimiron_flames::npc_mimiron_flamesAI, npc_mimiron_frost_bomb::npc_mimiron_frost_bombAI, npc_mimiron_proximity_mine::npc_mimiron_proximity_mineAI, boss_razorscale, npc_expedition_commander, npc_expedition_trapper, npc_expedition_engineer, npc_razorscale_spawner, npc_darkrune_watcher, npc_darkrune_guardian, npc_darkrune_sentinel, boss_thorim::boss_thorimAI, npc_runic_colossus::npc_runic_colossusAI, npc_ancient_rune_giant::npc_ancient_rune_giantAI, npc_sif::npc_sifAI, boss_xt002, npc_scrapbot, npc_pummeller, npc_boombot, npc_life_spark, boss_voice_of_yogg_saron::boss_voice_of_yogg_saronAI, boss_sara::boss_saraAI, npc_guardian_of_yogg_saron::npc_guardian_of_yogg_saronAI, npc_corruptor_tentacle::npc_corruptor_tentacleAI, npc_crusher_tentacle::npc_crusher_tentacleAI, npc_immortal_guardian::npc_immortal_guardianAI, npc_yogg_saron_keeper::npc_yogg_saron_keeperAI, npc_yogg_saron_illusions::npc_yogg_saron_illusionsAI, npc_garona::npc_garonaAI, boss_ingvar_the_plunderer, npc_annhylde_the_caller, npc_ingvar_throw_dummy, boss_keleseth, npc_vrykul_skeleton, npc_frost_tomb, npc_enslaved_proto_drake, boss_skadi, npc_grauf, npc_skadi_trashAI, boss_svala, npc_ritual_channeler, npc_scourge_hulk, boss_archavon, boss_emalon, npc_tempest_minion, boss_koralon, boss_toravon, boss_cyanigosa, boss_erekem, npc_erekem_guard, boss_ichoron, boss_lavanthor, boss_moragg, boss_xevozz, npc_ethereal_sphere, boss_zuramat, npc_sinclari_vh, npc_azure_saboteur, npc_violet_hold_teleportation_portal_commonAI, npc_violet_hold_defense_system, npc_valiance_keep_cannoneer, npc_thassarian, npc_counselor_talbot, npc_bloodmage_laurith, npc_minigob_manabonk, npc_commander_eligor_dawnbringer, npc_amberpine_woodsman, npc_venture_co_straggler, npc_lake_frog, npc_daegarn, npc_tournament_training_dummy, npc_blessed_banner, npc_jungle_punch_target, npc_icefang, npc_brann_bronzebeard_keystone, npc_wg_queue, npc_crusade_recruit, npc_alchemist_finklestein, boss_exarch_maladaar, npc_stolen_soul, boss_shirrak_the_dead_watcher, npc_focus_fire, npc_ethereal_beacon, npc_ethereal_apprentice, npc_yor, boss_anzu, npc_brood_of_anzu, boss_blackheart_the_inciter, npc_blackheart_the_inciter_dummy, boss_grandmaster_vorpil, npc_voidwalker_summoner, npc_void_traveler, boss_murmur, npc_wrathbone_flayer, npc_angered_soul_fragment, boss_gurtogg_bloodboil, boss_illidan_stormrage, npc_akama_illidan, npc_parasitic_shadowfiend, npc_flame_of_azzinoth, npc_maiev, boss_illidari_council, boss_high_nethermancer_zerevor, boss_lady_malande, boss_reliquary_of_souls, boss_essence_of_suffering, boss_essence_of_desire, boss_essence_of_anger, npc_enslaved_soul, boss_shade_of_akama, npc_akama_shade, npc_creature_generator_akama, npc_ashtongue_sorcerer, npc_ashtongue_defender, npc_ashtongue_rogue, npc_ashtongue_elementalist, npc_ashtongue_spiritbinder, boss_teron_gorefiend, npc_shadowy_construct, boss_doom_lord_kazzak, boss_doomwalker, boss_fathomlord_karathress, FathomGuardBaseAI, npc_fathomlord_karathress_cyclone, boss_hydross_the_unstable, boss_lady_vashj, npc_enchanted_elemental, npc_tainted_elemental, boss_leotheras_the_blind, npc_shadow_of_leotheras, npc_greyheart_spellbinder, npc_inner_demon, boss_the_lurker_below, npc_coilfang_ambusher, npc_coilfang_guardian, boss_morogrim_tidewalker, npc_water_globule, npc_coilfang_waterelemental, boss_mekgineer_steamrigger, npc_steamrigger_mechanic, boss_warlord_kalithresh, npc_frozen_core, npc_ahune_bunny, npc_earthen_ring_flamecaller, npc_ahune_ice_spear_bunny, boss_mennu_the_betrayer, boss_quagmirran, boss_rokmar_the_crackler, boss_hungarfen, npc_underbog_mushroom, boss_swamplord_muselek, npc_claw, boss_the_black_stalker, boss_high_king_maulgar, OgreBaseAI, boss_broggok, BroggokPrisionerBaseAI, boss_kelidan_the_breaker, npc_shadowmoon_channeler, boss_omor_the_unscarred, boss_vazruden_the_herald, boss_vazruden, boss_watchkeeper_gargolmar, boss_magtheridon, npc_hellfire_channeler, npc_magtheridon_room, boss_grand_warlock_nethekurse, npc_fel_orc_convert, boss_warbringer_omrogg, npc_omrogg_heads, boss_warchief_kargath_bladefist, npc_warchiefs_portal, boss_shattered_executioner, npc_millhouse_manastorm, npc_warden_mellichar, boss_dalliah_the_doomsayer, boss_harbinger_skyriss, boss_harbinger_skyriss_illusion, boss_wrath_scryer_soccothrates, boss_zereketh_the_unbound, boss_commander_sarannis, boss_high_botanist_freywinn, boss_laj, boss_thorngrin_the_tender, boss_warp_splinter, boss_alar, npc_ember_of_alar, boss_high_astromancer_solarian, npc_solarium_priest, boss_kaelthas, AdvisorBaseAI, npc_kaelthas_controller, npc_phoenix_the_eye, boss_void_reaver, boss_gatewatcher_gyrokill, boss_gatewatcher_iron_hand, boss_mechano_lord_capacitus, boss_nethermancer_sepethrea, npc_raging_flames, boss_pathaleon_the_calculator, npc_nether_wraith, npc_nether_drake::npc_nether_drakeAI, npc_simon_bunny::npc_simon_bunnyAI, npc_oscillating_frequency_scanner_master_bunny::npc_oscillating_frequency_scanner_master_bunnyAI, npc_colonel_jules::npc_colonel_julesAI, npc_barada::npc_baradaAI, npc_magister_aledis::npc_magister_aledisAI, npc_watch_commander_leonus, npc_infernal_rain_hellfire, npc_fear_controller, npc_maghar_captive::npc_maghar_captiveAI, npc_kurenai_captive::npc_kurenai_captiveAI, npc_nagrand_banner::npc_nagrand_bannerAI, npc_nagrand_banner::npc_kil_sorrow_spellbinderAI, npc_commander_dawnforge::npc_commander_dawnforgeAI, npc_phase_hunter::npc_phase_hunterAI, npc_invis_infernal_caster::npc_invis_infernal_casterAI, npc_mature_netherwing_drake::npc_mature_netherwing_drakeAI, npc_enslaved_netherwing_drake::npc_enslaved_netherwing_drakeAI, npc_torloth_the_magnificent::npc_torloth_the_magnificentAI, npc_lord_illidan_stormrage::npc_lord_illidan_stormrageAI, npc_illidari_spawn::npc_illidari_spawnAI, npc_enraged_spirit::npc_enraged_spiritAI, npc_unkor_the_ruthless::npc_unkor_the_ruthlessAI, npc_pet_dk_rune_weapon, npc_pet_hunter_snake_trap, npc_pet_mage_mirror_image, npc_pet_shaman_earth_elemental, npc_pet_shaman_fire_elemental, emerald_dragonAI, npc_dream_fog::npc_dream_fogAI, boss_taerar::boss_taerarAI, npc_guard_generic, npc_guard_shattrath_faction, npc_chicken_cluck::npc_chicken_cluckAI, npc_dancing_flames, npc_torch_tossing_target_bunny_controller::npc_torch_tossing_target_bunny_controllerAI, npc_midsummer_bunny_pole::npc_midsummer_bunny_poleAI, npc_doctor::npc_doctorAI, npc_brewfest_reveler_2, npc_spring_rabbit::npc_spring_rabbitAI, npc_imp_in_a_ball::npc_imp_in_a_ballAI, npc_argent_squire_gruntling::npc_argent_squire_gruntlingAI, npc_gen_void_zone, boss_mr_smite::boss_mr_smiteAI, npc_arugal_voidwalker::npc_arugal_voidwalkerAI, npc_lord_gregor_lescovar::npc_lord_gregor_lescovarAI, npc_tyrion_spybot::npc_tyrion_spybotAI, boss_eadric::boss_eadricAI, boss_paletress::boss_paletressAI, npc_memory::npc_memoryAI, npc_argent_soldier::npc_argent_soldierAI, boss_black_knight::boss_black_knightAI, npc_risen_ghoul::npc_risen_ghoulAI, npc_black_knight_skeletal_gryphon::npc_black_knight_skeletal_gryphonAI, generic_vehicleAI_toc5::generic_vehicleAI_toc5AI, boss_warrior_toc5::boss_warrior_toc5AI, boss_mage_toc5::boss_mage_toc5AI, boss_shaman_toc5::boss_shaman_toc5AI, boss_hunter_toc5::boss_hunter_toc5AI, boss_rouge_toc5::boss_rouge_toc5AI, npc_announcer_toc5::npc_announcer_toc5AI, npc_stalagg, npc_feugen, boss_ionar, npc_spark_of_ionar, npc_scorch_ground::npc_scorch_groundAI, npc_argent_valiant, npc_earthmender_wilda::npc_earthmender_wildaAI, FollowerAI, npc_firesworn, npc_son_of_flame, boss_grubbis::boss_grubbisAI, npc_scarlet_ghoul, npc_the_lich_king_tirion_dawn::npc_the_lich_king_tirion_dawnAI, npc_felmyst_vapor, npc_felmyst_trail, boss_kalecgos_kj::boss_kalecgos_kjAI, npc_marzon_silent_blade::npc_marzon_silent_bladeAI, npc_frenzied_bloodseeker_bat, npc_hive_zara_swarmer, npc_injured_draenei::npc_injured_draeneiAI, npc_acolyte_of_shadron, npc_acolyte_of_vesperon, npc_meteor_strike_initial, npc_combustion_consumption, npc_bullet_controller, npc_escape_event_trash, npc_zafod_boombox, npc_gunship_boarding_addAI, npc_gunship_gunner, npc_gunship_rocketeer, npc_gunship_mage, npc_blistering_zombie, npc_faerlina_add, npc_gothik_trigger, npc_tesla, npc_portal_eoe, npc_power_spark, npc_arcane_overload, npc_azure_ring_captain, npc_seeping_essence_stalker, npc_pool_of_tar::npc_pool_of_tarAI, npc_colossus::npc_colossusAI, npc_thorims_hammer::npc_thorims_hammerAI, npc_hodirs_fury::npc_hodirs_furyAI, npc_snaplasher::npc_snaplasherAI, npc_iron_construct::npc_iron_constructAI, npc_constrictor_tentacle::npc_constrictor_tentacleAI, npc_observation_ring_keeper::npc_observation_ring_keeperAI, npc_laughing_skull::npc_laughing_skullAI, npc_dragonflayer_forge_master, npc_ichor_globule, npc_mageguard_dalaran, npc_mrfloppy, npc_tallhorn_stag, npc_wounded_skirmisher, npc_brunnhildar_prisoner, npc_wg_spirit_guide, npc_illidan_generic_fire, npc_reliquary_combat_trigger, npc_warp_splinter_sapling, npc_infernal_attacker::npc_infernal_attackerAI, npc_injured_patient::npc_injured_patientAI, and npc_guardian::npc_guardianAI.

Definition at line 155 of file ScriptedCreature.cpp.

References UnitAI::DoMeleeAttackIfReady(), and CreatureAI::UpdateVictim().

Referenced by npc_gothik_minion_baseAI::_UpdateAI(), npc_living_inferno::UpdateAI(), and npc_announcer_toc5::npc_announcer_toc5AI::UpdateAI().

Member Data Documentation

◆ _difficulty

Difficulty ScriptedAI::_difficulty
private

Definition at line 307 of file ScriptedCreature.h.

◆ _isCombatMovementAllowed

bool ScriptedAI::_isCombatMovementAllowed
private

Definition at line 308 of file ScriptedCreature.h.

Referenced by SetCombatMovement().

◆ _isHeroic

bool ScriptedAI::_isHeroic
private

Definition at line 309 of file ScriptedCreature.h.

◆ IsFleeing

bool ScriptedAI::IsFleeing

Definition at line 151 of file ScriptedCreature.h.


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