![]() |
AzerothCore 3.3.5a
OpenSource WoW Emulator
|
Public Member Functions | |
boss_aranAI (Creature *creature) | |
void | Reset () override |
void | KilledUnit (Unit *) override |
void | JustDied (Unit *) override |
void | JustEngagedWith (Unit *) override |
Called for reaction when initially engaged. | |
void | FlameWreathEffect () |
void | UpdateAI (uint32 diff) override |
void | DamageTaken (Unit *, uint32 &damage, DamageEffectType, SpellSchoolMask) override |
void | SpellHit (Unit *, SpellInfo const *Spell) override |
![]() | |
BossAI (Creature *creature, uint32 bossId) | |
~BossAI () override | |
bool | CanRespawn () override |
void | DamageTaken (Unit *attacker, uint32 &damage, DamageEffectType damagetype, SpellSchoolMask damageSchoolMask) override |
void | JustSummoned (Creature *summon) override |
void | SummonedCreatureDespawn (Creature *summon) override |
void | SummonedCreatureDespawnAll () override |
void | UpdateAI (uint32 diff) override |
void | ScheduleHealthCheckEvent (uint32 healthPct, std::function< void()> exec) |
Executes a function once the creature reaches the defined health point percent. | |
virtual void | ExecuteEvent (uint32) |
virtual void | ScheduleTasks () |
void | Reset () override |
void | JustEngagedWith (Unit *) override |
Called for reaction when initially engaged. | |
void | JustDied (Unit *) override |
void | JustReachedHome () override |
![]() | |
ScriptedAI (Creature *creature) | |
~ScriptedAI () override | |
void | AttackStartNoMove (Unit *target) |
void | DamageTaken (Unit *, uint32 &, DamageEffectType, SpellSchoolMask) override |
void | UpdateAI (uint32 diff) override |
void | JustDied (Unit *) override |
void | KilledUnit (Unit *) override |
void | JustSummoned (Creature *) override |
void | SummonedCreatureDespawn (Creature *) override |
void | SpellHit (Unit *, SpellInfo const *) override |
void | SpellHitTarget (Unit *, SpellInfo const *) override |
void | MovementInform (uint32, uint32) override |
void | OnPossess (bool) |
bool | IsInRoom (const Position *pos, Axis axis, bool above) |
void | Reset () override |
void | JustEngagedWith (Unit *) override |
Called for reaction when initially engaged. | |
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 | DoPlayMusic (uint32 soundId, bool zone) |
void | DoAddThreat (Unit *unit, float amount) |
void | DoModifyThreatByPercent (Unit *unit, int32 pct) |
void | DoResetThreat (Unit *unit) |
void | DoResetThreatList () |
float | DoGetThreat (Unit *unit) |
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) |
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, uint32 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 |
virtual bool | CheckEvadeIfOutOfCombatArea () const |
bool | IsHeroic () const |
Difficulty | GetDifficulty () const |
bool | Is25ManRaid () const |
template<class T > | |
const T & | DUNGEON_MODE (const T &normal5, const T &heroic10) const |
template<class T > | |
const T & | RAID_MODE (const T &normal10, const T &normal25) const |
template<class T > | |
const T & | RAID_MODE (const T &normal10, const T &normal25, const T &heroic10, const T &heroic25) const |
Player * | SelectTargetFromPlayerList (float maxdist, uint32 excludeAura=0, bool mustBeInLOS=false) const |
![]() | |
void | Talk (uint8 id, WorldObject const *whisperTarget=nullptr, Milliseconds delay=0s) |
Causes the creature to talk/say the text assigned to their entry in the creature_text database table. | |
void | Talk (uint8 id, Milliseconds delay) |
CreatureAI (Creature *creature) | |
~CreatureAI () override | |
void | MoveCircleChecks () |
void | MoveBackwardsChecks () |
void | MoveInLineOfSight_Safe (Unit *who) |
== Reactions At ================================= | |
void | TriggerAlert (Unit const *who) const |
virtual bool | CanRespawn () |
virtual void | EnterEvadeMode (EvadeReason why=EVADE_REASON_OTHER) |
virtual void | JustEngagedWith (Unit *) |
Called for reaction when initially engaged. | |
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 | SummonedCreatureDespawnAll () |
virtual void | SpellHit (Unit *, SpellInfo const *) |
virtual void | SpellHitTarget (Unit *, SpellInfo const *) |
virtual void | AttackedBy (Unit *) |
virtual bool | IsEscorted () |
virtual void | JustRespawned () |
virtual void | MovementInform (uint32, uint32) |
virtual void | PathEndReached (uint32) |
void | OnCharmed (bool apply) override |
virtual void | JustReachedHome () |
void | DoZoneInCombat (Creature *creature=nullptr, float maxRangeToNearestTarget=250.0f) |
virtual void | ReceiveEmote (Player *, uint32) |
virtual void | OwnerAttackedBy (Unit *) |
virtual void | OwnerAttacked (Unit *) |
virtual void | CorpseRemoved (uint32 &) |
== Triggered Actions Requested ================== | |
virtual void | PassengerBoarded (Unit *, int8, bool) |
== Fields ======================================= | |
virtual bool | BeforeSpellClick (Unit *) |
virtual void | OnSpellClick (Unit *, bool &) |
virtual bool | CanSeeAlways (WorldObject const *) |
virtual bool | CanBeSeen (Player const *) |
virtual bool | CanAlwaysBeDetectable (WorldObject const *) |
virtual void | PetStopAttack () |
virtual bool | CheckInRoom () |
CreatureBoundary const * | GetBoundary () const |
void | SetBoundary (CreatureBoundary const *boundary, bool negativeBoundaries=false) |
bool | IsInBoundary (Position const *who=nullptr) const |
virtual void | CalculateThreat (Unit *, float &, SpellInfo const *) |
virtual bool | OnTeleportUnreacheablePlayer (Player *) |
![]() | |
UnitAI (Unit *unit) | |
virtual | ~UnitAI () |
virtual bool | CanAIAttack (Unit const *) const |
virtual void | AttackStart (Unit *) |
virtual void | UpdateAI (uint32)=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 |
Unit * | SelectTarget (SelectTargetMethod targetType, uint32 position=0, float dist=0.0f, bool playerOnly=false, bool withTank=true, int32 aura=0) |
template<class PREDICATE > | |
Unit * | SelectTarget (SelectTargetMethod targetType, uint32 position, PREDICATE const &predicate) |
void | SelectTargetList (std::list< Unit * > &targetList, uint32 num, SelectTargetMethod targetType, uint32 position=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 position, PREDICATE const &predicate) |
virtual void | JustEnteredCombat (Unit *) |
Called when the unit enters combat (NOTE: Creature engage logic should NOT be here, but in JustEngagedWith, which happens once threat is established!) | |
virtual void | JustExitedCombat () |
Called when the unit leaves combat. | |
virtual void | DamageDealt (Unit *, uint32 &, DamageEffectType) |
virtual void | DamageTaken (Unit *, uint32 &, DamageEffectType, SpellSchoolMask) |
virtual void | HealReceived (Unit *, uint32 &) |
virtual void | HealDone (Unit *, uint32 &) |
void | AttackStartCaster (Unit *victim, float dist) |
SpellCastResult | DoAddAuraToAllHostilePlayers (uint32 spellid) |
SpellCastResult | DoCast (uint32 spellId) |
SpellCastResult | DoCast (Unit *victim, uint32 spellId, bool triggered=false) |
SpellCastResult | DoCastSelf (uint32 spellId, bool triggered=false) |
SpellCastResult | DoCastToAllHostilePlayers (uint32 spellid, bool triggered=false) |
SpellCastResult | DoCastVictim (uint32 spellId, bool triggered=false) |
SpellCastResult | DoCastAOE (uint32 spellId, bool triggered=false) |
SpellCastResult | DoCastRandomTarget (uint32 spellId, uint32 threatTablePosition=0, float dist=0.0f, bool playerOnly=true, bool triggered=false) |
SpellCastResult | DoCastMaxThreat (uint32 spellId, uint32 threatTablePosition=0, float dist=0.0f, bool playerOnly=true, bool triggered=false) |
Cast spell on the max threat target, which may not always be the current victim. | |
float | DoGetSpellMaxRange (uint32 spellId, bool positive=false) |
void | DoMeleeAttackIfReady () |
bool | DoSpellAttackIfReady (uint32 spell) |
void | DoSpellAttackToRandomTargetIfReady (uint32 spell, uint32 threatTablePosition=0, float dist=0.f, bool playerOnly=true) |
virtual void | SummonMovementInform (Creature *, uint32, uint32) |
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 | sQuestComplete (Player *, Quest const *) |
virtual void | sQuestReward (Player *, Quest const *, uint32) |
virtual void | sOnGameEvent (bool, uint16) |
virtual std::string | GetDebugInfo () const |
Public Attributes | |
uint32 | SecondarySpellTimer |
uint32 | NormalCastTimer |
uint32 | SuperCastTimer |
uint32 | BerserkTimer |
uint32 | CloseDoorTimer |
uint8 | LastSuperSpell |
uint32 | FlameWreathTimer |
uint32 | FlameWreathCheckTime |
ObjectGuid | FlameWreathTarget [3] |
float | FWTargPosX [3] |
float | FWTargPosY [3] |
uint32 | CurrentNormalSpell |
uint32 | ArcaneCooldown |
uint32 | FireCooldown |
uint32 | FrostCooldown |
uint32 | DrinkInterruptTimer |
bool | ElementalsSpawned |
bool | Drinking |
bool | DrinkInturrupted |
![]() | |
InstanceScript *const | instance |
![]() | |
Creature * | me |
bool | IsFleeing |
Additional Inherited Members | |
![]() | |
enum class | Axis { AXIS_X , AXIS_Y } |
![]() | |
enum | EvadeReason { EVADE_REASON_NO_HOSTILES , EVADE_REASON_BOUNDARY , EVADE_REASON_SEQUENCE_BREAK , EVADE_REASON_NO_PATH , EVADE_REASON_OTHER } |
![]() | |
static bool | IsInBounds (CreatureBoundary const &boundary, Position const *who) |
![]() | |
static void | FillAISpellInfo () |
![]() | |
static AISpellInfoType * | AISpellInfo |
![]() | |
void | _Reset () |
void | _JustEngagedWith () |
void | _JustDied () |
void | _JustReachedHome () |
bool | _ProccessHealthCheckEvent (uint8 healthPct, uint32 damage, std::function< void()> exec) const |
void | TeleportCheaters () |
![]() | |
bool | UpdateVictim () |
bool | UpdateVictimWithGaze () |
void | SetGazeOn (Unit *target) |
Creature * | DoSummon (uint32 entry, Position const &pos, uint32 despawnTime=30000, TempSummonType summonType=TEMPSUMMON_CORPSE_TIMED_DESPAWN) |
Creature * | DoSummon (uint32 entry, WorldObject *obj, float radius=5.0f, uint32 despawnTime=30000, TempSummonType summonType=TEMPSUMMON_CORPSE_TIMED_DESPAWN) |
Creature * | DoSummonFlyer (uint32 entry, WorldObject *obj, float flightZ, float radius=5.0f, uint32 despawnTime=30000, TempSummonType summonType=TEMPSUMMON_CORPSE_TIMED_DESPAWN) |
virtual void | MoveInLineOfSight (Unit *) |
bool | _EnterEvadeMode (EvadeReason why=EVADE_REASON_OTHER) |
![]() | |
EventMap | events |
SummonList | summons |
TaskScheduler | scheduler |
![]() | |
Creature *const | me |
EventMap | events |
CreatureBoundary const * | _boundary |
bool | _negateBoundary |
![]() | |
Unit *const | me |
|
inline |
|
inlineoverridevirtual |
Reimplemented from BossAI.
References Drinking, and DrinkInturrupted.
|
inline |
References UnitAI::DoCast(), FlameWreathTarget, FWTargPosX, FWTargPosY, ThreatMgr::GetThreatList(), Unit::GetThreatMgr(), Object::GetTypeId(), ObjectAccessor::GetUnit(), Unit::IsAlive(), ScriptedAI::me, SPELL_FLAME_WREATH, and TYPEID_PLAYER.
Referenced by UpdateAI().
|
inlineoverridevirtual |
Reimplemented from BossAI.
References DATA_ARAN, DATA_GO_LIBRARY_DOOR, DONE, InstanceScript::GetGuidData(), InstanceScript::HandleGameObject(), BossAI::instance, SAY_DEATH, and ZoneScript::SetData().
|
inlineoverridevirtual |
Called for reaction when initially engaged.
Reimplemented from BossAI.
References DATA_ARAN, DATA_GO_LIBRARY_DOOR, CreatureAI::DoZoneInCombat(), InstanceScript::GetGuidData(), InstanceScript::HandleGameObject(), IN_PROGRESS, BossAI::instance, SAY_AGGRO, and ZoneScript::SetData().
|
inlineoverridevirtual |
Reimplemented from ScriptedAI.
References SAY_KILL.
|
inlineoverridevirtual |
Reimplemented from BossAI.
References ArcaneCooldown, BerserkTimer, CloseDoorTimer, CurrentNormalSpell, DATA_ARAN, DATA_GO_LIBRARY_DOOR, Drinking, DrinkInterruptTimer, DrinkInturrupted, ElementalsSpawned, FireCooldown, FlameWreathCheckTime, FlameWreathTarget, FlameWreathTimer, FrostCooldown, InstanceScript::GetGuidData(), InstanceScript::HandleGameObject(), BossAI::instance, LastSuperSpell, NormalCastTimer, NOT_STARTED, SecondarySpellTimer, ZoneScript::SetData(), and SuperCastTimer.
|
inlineoverridevirtual |
Reimplemented from ScriptedAI.
References ArcaneCooldown, CurrentNormalSpell, FireCooldown, FrostCooldown, Unit::InterruptNonMeleeSpells(), Unit::IsNonMeleeSpellCast(), ScriptedAI::me, SPELL_ARCMISSLE, SPELL_EFFECT_INTERRUPT_CAST, SPELL_FIREBALL, and SPELL_FROSTBOLT.
|
inlineoverridevirtual |
Reimplemented from BossAI.
References ArcaneCooldown, BASE_VALUE, BerserkTimer, Unit::CastSpell(), ObjectGuid::Clear(), CloseDoorTimer, Unit::CombatStart(), CREATURE_ARAN_BLIZZARD, CREATURE_SHADOW_OF_ARAN, CREATURE_WATER_ELEMENTAL, CurrentNormalSpell, DATA_GO_LIBRARY_DOOR, UnitAI::DoCast(), UnitAI::DoMeleeAttackIfReady(), ScriptedAI::DoStartNoMovement(), Drinking, DrinkInterruptTimer, DrinkInturrupted, ElementalsSpawned, FireCooldown, FlameWreathCheckTime, FlameWreathEffect(), FlameWreathTarget, FlameWreathTimer, FrostCooldown, FWTargPosX, FWTargPosY, Unit::GetFaction(), Object::GetGUID(), InstanceScript::GetGuidData(), Unit::GetMaxPower(), Unit::GetPower(), ObjectAccessor::GetUnit(), Unit::GetVictim(), InstanceScript::HandleGameObject(), ScriptedAI::HealthBelowPct(), BossAI::instance, Unit::InterruptNonMeleeSpells(), Unit::IsNonMeleeSpellCast(), WorldObject::IsWithinDist2d(), LastSuperSpell, ScriptedAI::me, MOVEMENTFLAG_ROOT, NormalCastTimer, POWER_MANA, Unit::RemoveAurasDueToSpell(), SAY_BLIZZARD, SAY_DRINK, SAY_ELEMENTALS, SAY_EXPLOSION, SAY_FLAMEWREATH, SAY_TIMEOVER, SecondarySpellTimer, UnitAI::SelectTarget(), Unit::SetFaction(), Creature::SetInCombatWithZone(), Unit::SetModifierValue(), Unit::SetPower(), Unit::SetStandState(), Unit::SetUnitMovementFlags(), SPELL_AEXPLOSION, SPELL_AOE_CS, SPELL_AOE_PYROBLAST, SPELL_ARCMISSLE, SPELL_BLINK_CENTER, SPELL_CHAINSOFICE, SPELL_CIRCULAR_BLIZZARD, SPELL_CONJURE, SPELL_DRINK, SPELL_FIREBALL, SPELL_FROSTBOLT, SPELL_MASS_POLY, SPELL_MASSSLOW, SPELL_PLAYERPULL, SPELL_POTION, WorldObject::SummonCreature(), SUPER_AE, SUPER_BLIZZARD, SUPER_FLAME, SuperCastTimer, TEMPSUMMON_TIMED_DESPAWN, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, UNIT_MOD_RESISTANCE_FROST, UNIT_STAND_STATE_SIT, UNIT_STAND_STATE_STAND, CreatureAI::UpdateVictim(), and urand().
uint32 boss_shade_of_aran::boss_aranAI::ArcaneCooldown |
Referenced by Reset(), SpellHit(), and UpdateAI().
uint32 boss_shade_of_aran::boss_aranAI::BerserkTimer |
Referenced by Reset(), and UpdateAI().
uint32 boss_shade_of_aran::boss_aranAI::CloseDoorTimer |
Referenced by Reset(), and UpdateAI().
uint32 boss_shade_of_aran::boss_aranAI::CurrentNormalSpell |
Referenced by Reset(), SpellHit(), and UpdateAI().
bool boss_shade_of_aran::boss_aranAI::Drinking |
Referenced by DamageTaken(), Reset(), and UpdateAI().
uint32 boss_shade_of_aran::boss_aranAI::DrinkInterruptTimer |
Referenced by Reset(), and UpdateAI().
bool boss_shade_of_aran::boss_aranAI::DrinkInturrupted |
Referenced by DamageTaken(), Reset(), and UpdateAI().
bool boss_shade_of_aran::boss_aranAI::ElementalsSpawned |
Referenced by Reset(), and UpdateAI().
uint32 boss_shade_of_aran::boss_aranAI::FireCooldown |
Referenced by Reset(), SpellHit(), and UpdateAI().
uint32 boss_shade_of_aran::boss_aranAI::FlameWreathCheckTime |
Referenced by Reset(), and UpdateAI().
ObjectGuid boss_shade_of_aran::boss_aranAI::FlameWreathTarget[3] |
Referenced by FlameWreathEffect(), Reset(), and UpdateAI().
uint32 boss_shade_of_aran::boss_aranAI::FlameWreathTimer |
Referenced by Reset(), and UpdateAI().
uint32 boss_shade_of_aran::boss_aranAI::FrostCooldown |
Referenced by Reset(), SpellHit(), and UpdateAI().
float boss_shade_of_aran::boss_aranAI::FWTargPosX[3] |
Referenced by FlameWreathEffect(), and UpdateAI().
float boss_shade_of_aran::boss_aranAI::FWTargPosY[3] |
Referenced by FlameWreathEffect(), and UpdateAI().
uint8 boss_shade_of_aran::boss_aranAI::LastSuperSpell |
Referenced by Reset(), and UpdateAI().
uint32 boss_shade_of_aran::boss_aranAI::NormalCastTimer |
Referenced by Reset(), and UpdateAI().
uint32 boss_shade_of_aran::boss_aranAI::SecondarySpellTimer |
Referenced by Reset(), and UpdateAI().
uint32 boss_shade_of_aran::boss_aranAI::SuperCastTimer |
Referenced by Reset(), and UpdateAI().