mirror of
https://github.com/mod-playerbots/azerothcore-wotlk.git
synced 2026-01-24 22:26:22 +00:00
feat(Core/Instance): Add instance validation for creature scripts (#4596)
This commit is contained in:
@@ -51,7 +51,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* pCreature) const override
|
||||
{
|
||||
return new boss_cyanigosaAI (pCreature);
|
||||
return GetVioletHoldAI<boss_cyanigosaAI>(pCreature);
|
||||
}
|
||||
|
||||
struct boss_cyanigosaAI : public ScriptedAI
|
||||
|
||||
@@ -52,7 +52,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* pCreature) const override
|
||||
{
|
||||
return new boss_erekemAI (pCreature);
|
||||
return GetVioletHoldAI<boss_erekemAI>(pCreature);
|
||||
}
|
||||
|
||||
struct boss_erekemAI : public ScriptedAI
|
||||
@@ -226,7 +226,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* pCreature) const override
|
||||
{
|
||||
return new npc_erekem_guardAI (pCreature);
|
||||
return GetVioletHoldAI<npc_erekem_guardAI>(pCreature);
|
||||
}
|
||||
|
||||
struct npc_erekem_guardAI : public ScriptedAI
|
||||
|
||||
@@ -69,7 +69,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* pCreature) const override
|
||||
{
|
||||
return new boss_ichoronAI (pCreature);
|
||||
return GetVioletHoldAI<boss_ichoronAI>(pCreature);
|
||||
}
|
||||
|
||||
struct boss_ichoronAI : public ScriptedAI
|
||||
@@ -298,7 +298,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* pCreature) const override
|
||||
{
|
||||
return new npc_ichor_globuleAI (pCreature);
|
||||
return GetVioletHoldAI<npc_ichor_globuleAI>(pCreature);
|
||||
}
|
||||
|
||||
struct npc_ichor_globuleAI : public ScriptedAI
|
||||
|
||||
@@ -36,7 +36,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* pCreature) const override
|
||||
{
|
||||
return new boss_lavanthorAI (pCreature);
|
||||
return GetVioletHoldAI<boss_lavanthorAI>(pCreature);
|
||||
}
|
||||
|
||||
struct boss_lavanthorAI : public ScriptedAI
|
||||
|
||||
@@ -39,7 +39,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* pCreature) const override
|
||||
{
|
||||
return new boss_moraggAI (pCreature);
|
||||
return GetVioletHoldAI<boss_moraggAI>(pCreature);
|
||||
}
|
||||
|
||||
struct boss_moraggAI : public ScriptedAI
|
||||
|
||||
@@ -52,7 +52,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* pCreature) const override
|
||||
{
|
||||
return new boss_xevozzAI (pCreature);
|
||||
return GetVioletHoldAI<boss_xevozzAI>(pCreature);
|
||||
}
|
||||
|
||||
struct boss_xevozzAI : public ScriptedAI
|
||||
|
||||
@@ -48,7 +48,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* pCreature) const override
|
||||
{
|
||||
return new boss_zuramatAI (pCreature);
|
||||
return GetVioletHoldAI<boss_zuramatAI>(pCreature);
|
||||
}
|
||||
|
||||
struct boss_zuramatAI : public ScriptedAI
|
||||
@@ -175,7 +175,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* pCreature) const override
|
||||
{
|
||||
return new npc_vh_void_sentryAI (pCreature);
|
||||
return GetVioletHoldAI<npc_vh_void_sentryAI>(pCreature);
|
||||
}
|
||||
|
||||
struct npc_vh_void_sentryAI : public NullCreatureAI
|
||||
|
||||
@@ -104,7 +104,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new npc_vh_teleportation_portalAI(creature);
|
||||
return GetVioletHoldAI<npc_vh_teleportation_portalAI>(creature);
|
||||
}
|
||||
|
||||
struct npc_vh_teleportation_portalAI : public NullCreatureAI
|
||||
@@ -474,7 +474,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new npc_azure_invaderAI (creature);
|
||||
return GetVioletHoldAI<npc_azure_invaderAI>(creature);
|
||||
}
|
||||
|
||||
struct npc_azure_invaderAI : public violet_hold_trashAI
|
||||
@@ -549,7 +549,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new npc_azure_binderAI (creature);
|
||||
return GetVioletHoldAI<npc_azure_binderAI>(creature);
|
||||
}
|
||||
|
||||
struct npc_azure_binderAI : public violet_hold_trashAI
|
||||
@@ -626,7 +626,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new npc_azure_mage_slayerAI (creature);
|
||||
return GetVioletHoldAI<npc_azure_mage_slayerAI>(creature);
|
||||
}
|
||||
|
||||
struct npc_azure_mage_slayerAI : public violet_hold_trashAI
|
||||
@@ -683,7 +683,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new npc_azure_raiderAI (creature);
|
||||
return GetVioletHoldAI<npc_azure_raiderAI> (creature);
|
||||
}
|
||||
|
||||
struct npc_azure_raiderAI : public violet_hold_trashAI
|
||||
@@ -732,7 +732,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new npc_azure_stalkerAI (creature);
|
||||
return GetVioletHoldAI<npc_azure_stalkerAI>(creature);
|
||||
}
|
||||
|
||||
struct npc_azure_stalkerAI : public violet_hold_trashAI
|
||||
@@ -794,7 +794,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new npc_azure_spellbreakerAI (creature);
|
||||
return GetVioletHoldAI<npc_azure_spellbreakerAI>(creature);
|
||||
}
|
||||
|
||||
struct npc_azure_spellbreakerAI : public violet_hold_trashAI
|
||||
@@ -873,7 +873,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new npc_azure_captainAI (creature);
|
||||
return GetVioletHoldAI<npc_azure_captainAI>(creature);
|
||||
}
|
||||
|
||||
struct npc_azure_captainAI : public violet_hold_trashAI
|
||||
@@ -922,7 +922,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new npc_azure_sorcerorAI (creature);
|
||||
return GetVioletHoldAI<npc_azure_sorcerorAI>(creature);
|
||||
}
|
||||
|
||||
struct npc_azure_sorcerorAI : public violet_hold_trashAI
|
||||
@@ -987,7 +987,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new npc_azure_saboteurAI (creature);
|
||||
return GetVioletHoldAI<npc_azure_saboteurAI>(creature);
|
||||
}
|
||||
|
||||
struct npc_azure_saboteurAI : public npc_escortAI
|
||||
|
||||
@@ -7,6 +7,10 @@
|
||||
|
||||
#define MAX_ENCOUNTER 3
|
||||
|
||||
#include "CreatureAIImpl.h"
|
||||
|
||||
#define VioletHoldScriptName "instance_violet_hold"
|
||||
|
||||
enum Creatures
|
||||
{
|
||||
NPC_TELEPORTATION_PORTAL = 31011,
|
||||
@@ -282,4 +286,10 @@ const float SaboteurFinalPos6[5][3] =
|
||||
{1931.063354f, 848.468445f, 47.190434f}
|
||||
};
|
||||
|
||||
template <class AI, class T>
|
||||
inline AI* GetVioletHoldAI(T* obj)
|
||||
{
|
||||
return GetInstanceAI<AI>(obj, VioletHoldScriptName);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user