mirror of
https://github.com/mod-playerbots/azerothcore-wotlk.git
synced 2026-02-05 03:53:48 +00:00
feat(Core/Instance): Add instance validation for creature scripts (#4596)
This commit is contained in:
@@ -5,6 +5,7 @@
|
||||
#ifndef BLACK_TEMPLE_H_
|
||||
#define BLACK_TEMPLE_H_
|
||||
|
||||
#include "CreatureAIImpl.h"
|
||||
#include "GridNotifiers.h"
|
||||
#include "PassiveAI.h"
|
||||
#include "Player.h"
|
||||
@@ -12,6 +13,8 @@
|
||||
#include "SpellAuraEffects.h"
|
||||
#include "SpellScript.h"
|
||||
|
||||
#define BlackTempleScriptName "instance_black_temple"
|
||||
|
||||
enum DataTypes
|
||||
{
|
||||
DATA_HIGH_WARLORD_NAJENTUS = 0,
|
||||
@@ -83,4 +86,10 @@ enum MiscIds
|
||||
FACTION_ASHTONGUE = 1820
|
||||
};
|
||||
|
||||
template <class AI, class T>
|
||||
inline AI* GetBlackTempleAI(T* obj)
|
||||
{
|
||||
return GetInstanceAI<AI>(obj, BlackTempleScriptName);
|
||||
}
|
||||
|
||||
#endif // BLACK_TEMPLE_H_
|
||||
|
||||
@@ -65,7 +65,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<boss_gurtogg_bloodboilAI>(creature);
|
||||
return GetBlackTempleAI<boss_gurtogg_bloodboilAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_gurtogg_bloodboilAI : public BossAI
|
||||
|
||||
@@ -696,7 +696,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<boss_illidan_stormrageAI>(creature);
|
||||
return GetBlackTempleAI<boss_illidan_stormrageAI>(creature);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -979,7 +979,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<npc_akama_illidanAI>(creature);
|
||||
return GetBlackTempleAI<npc_akama_illidanAI>(creature);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -60,7 +60,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<boss_shahrazAI>(creature);
|
||||
return GetBlackTempleAI<boss_shahrazAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_shahrazAI : public BossAI
|
||||
|
||||
@@ -124,7 +124,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<boss_reliquary_of_soulsAI>(creature);
|
||||
return GetBlackTempleAI<boss_reliquary_of_soulsAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_reliquary_of_soulsAI : public BossAI
|
||||
@@ -255,7 +255,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new boss_essence_of_sufferingAI(creature);
|
||||
return GetBlackTempleAI<boss_essence_of_sufferingAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_essence_of_sufferingAI : public ScriptedAI
|
||||
@@ -366,7 +366,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new boss_essence_of_desireAI(creature);
|
||||
return GetBlackTempleAI<boss_essence_of_desireAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_essence_of_desireAI : public ScriptedAI
|
||||
@@ -475,7 +475,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new boss_essence_of_angerAI(creature);
|
||||
return GetBlackTempleAI<boss_essence_of_angerAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_essence_of_angerAI : public ScriptedAI
|
||||
|
||||
@@ -256,7 +256,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<boss_shade_of_akamaAI>(creature);
|
||||
return GetBlackTempleAI<boss_shade_of_akamaAI>(creature);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -420,7 +420,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<npc_akamaAI>(creature);
|
||||
return GetBlackTempleAI<npc_akamaAI>(creature);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -540,7 +540,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<npc_creature_generator_akamaAI>(creature);
|
||||
return GetBlackTempleAI<npc_creature_generator_akamaAI>(creature);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -40,7 +40,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<boss_supremusAI>(creature);
|
||||
return GetBlackTempleAI<boss_supremusAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_supremusAI : public BossAI
|
||||
|
||||
@@ -64,7 +64,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<boss_teron_gorefiendAI>(creature);
|
||||
return GetBlackTempleAI<boss_teron_gorefiendAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_teron_gorefiendAI : public BossAI
|
||||
|
||||
@@ -44,7 +44,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<boss_najentusAI>(creature);
|
||||
return GetBlackTempleAI<boss_najentusAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_najentusAI : public BossAI
|
||||
|
||||
@@ -126,7 +126,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<boss_illidari_councilAI>(creature);
|
||||
return GetBlackTempleAI<boss_illidari_councilAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_illidari_councilAI : public BossAI
|
||||
@@ -269,7 +269,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<boss_gathios_the_shattererAI>(creature);
|
||||
return GetBlackTempleAI<boss_gathios_the_shattererAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_gathios_the_shattererAI : public boss_illidari_council_memberAI
|
||||
@@ -357,7 +357,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<boss_high_nethermancer_zerevorAI>(creature);
|
||||
return GetBlackTempleAI<boss_high_nethermancer_zerevorAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_high_nethermancer_zerevorAI : public boss_illidari_council_memberAI
|
||||
@@ -430,7 +430,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<boss_lady_malandeAI>(creature);
|
||||
return GetBlackTempleAI<boss_lady_malandeAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_lady_malandeAI : public boss_illidari_council_memberAI
|
||||
@@ -494,7 +494,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<boss_veras_darkshadowAI>(creature);
|
||||
return GetBlackTempleAI<boss_veras_darkshadowAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_veras_darkshadowAI : public boss_illidari_council_memberAI
|
||||
|
||||
Reference in New Issue
Block a user