feat(Core/Instance): Add instance validation for creature scripts (#4596)

This commit is contained in:
Kitzunu
2021-04-05 15:34:26 +02:00
committed by GitHub
parent 60f865fce6
commit f9d708b450
371 changed files with 1315 additions and 767 deletions

View File

@@ -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_

View File

@@ -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

View File

@@ -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);
}
};

View File

@@ -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

View File

@@ -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

View File

@@ -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);
}
};

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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