diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/bindings/scripts/include/sc_creature.h | 2 | ||||
-rw-r--r-- | src/game/Creature.cpp | 2 | ||||
-rw-r--r-- | src/game/CreatureAI.h | 3 |
3 files changed, 4 insertions, 3 deletions
diff --git a/src/bindings/scripts/include/sc_creature.h b/src/bindings/scripts/include/sc_creature.h index a545d47332b..40a331b7d6b 100644 --- a/src/bindings/scripts/include/sc_creature.h +++ b/src/bindings/scripts/include/sc_creature.h @@ -98,7 +98,7 @@ struct TRINITY_DLL_DECL ScriptedAI : public CreatureAI //************* //Called at creature reset either by death or evade - virtual void Reset() = 0; + void Reset() {} //Called at creature aggro either by MoveInLOS or Attack Start virtual void Aggro(Unit*) = 0; diff --git a/src/game/Creature.cpp b/src/game/Creature.cpp index 8e1be5145c4..0681dcddd04 100644 --- a/src/game/Creature.cpp +++ b/src/game/Creature.cpp @@ -620,7 +620,7 @@ bool Creature::AIM_Initialize(CreatureAI* ai) i_motionMaster.Initialize(); i_AI = ai ? ai : FactorySelector::selectAI(this); IsAIEnabled = true; - i_AI->Reset(); + i_AI->InitializeAI(); return true; } diff --git a/src/game/CreatureAI.h b/src/game/CreatureAI.h index 275ecbeb3b4..b7a584fd36e 100644 --- a/src/game/CreatureAI.h +++ b/src/game/CreatureAI.h @@ -79,7 +79,8 @@ class TRINITY_DLL_SPEC UnitAI virtual void AttackStart(Unit *); virtual void UpdateAI(const uint32 diff) = 0; - // Initialize + virtual void InitializeAI() { Reset(); } + virtual void Reset() {}; // Called when unit is charmed |