mirror of
https://github.com/mod-playerbots/azerothcore-wotlk.git
synced 2026-01-24 14:16:31 +00:00
feat(Core/Instance): Add instance validation for creature scripts (#4596)
This commit is contained in:
@@ -36,7 +36,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<boss_anetheronAI>(creature);
|
||||
return GetHyjalAI<boss_anetheronAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_anetheronAI : public hyjal_trashAI
|
||||
@@ -170,7 +170,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<npc_towering_infernalAI>(creature);
|
||||
return GetHyjalAI<npc_towering_infernalAI>(creature);
|
||||
}
|
||||
|
||||
struct npc_towering_infernalAI : public ScriptedAI
|
||||
|
||||
@@ -93,7 +93,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<npc_ancient_wispAI>(creature);
|
||||
return GetHyjalAI<npc_ancient_wispAI>(creature);
|
||||
}
|
||||
|
||||
struct npc_ancient_wispAI : public ScriptedAI
|
||||
@@ -151,7 +151,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new npc_doomfireAI(creature);
|
||||
return GetHyjalAI<npc_doomfireAI>(creature);
|
||||
}
|
||||
|
||||
struct npc_doomfireAI : public ScriptedAI
|
||||
@@ -180,7 +180,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new npc_doomfire_targettingAI(creature);
|
||||
return GetHyjalAI<npc_doomfire_targettingAI>(creature);
|
||||
}
|
||||
|
||||
struct npc_doomfire_targettingAI : public ScriptedAI
|
||||
@@ -250,7 +250,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<boss_archimondeAI>(creature);
|
||||
return GetHyjalAI<boss_archimondeAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_archimondeAI : public BossAI
|
||||
|
||||
@@ -37,7 +37,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<boss_azgalorAI>(creature);
|
||||
return GetHyjalAI<boss_azgalorAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_azgalorAI : public hyjal_trashAI
|
||||
@@ -177,7 +177,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<npc_lesser_doomguardAI>(creature);
|
||||
return GetHyjalAI<npc_lesser_doomguardAI>(creature);
|
||||
}
|
||||
|
||||
struct npc_lesser_doomguardAI : public hyjal_trashAI
|
||||
|
||||
@@ -38,7 +38,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<boss_kazrogalAI>(creature);
|
||||
return GetHyjalAI<boss_kazrogalAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_kazrogalAI : public hyjal_trashAI
|
||||
|
||||
@@ -33,7 +33,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<boss_rage_winterchillAI>(creature);
|
||||
return GetHyjalAI<boss_rage_winterchillAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_rage_winterchillAI : public hyjal_trashAI
|
||||
|
||||
@@ -8,7 +8,9 @@
|
||||
#define DEF_HYJAL_H
|
||||
|
||||
#include "GridNotifiers.h"
|
||||
#include "CreatureAIImpl.h"
|
||||
|
||||
#define HyjalScriptName "instance_hyjal"
|
||||
#define ERROR_INST_DATA "TSCR: Instance data not set properly for Mount Hyjal. Encounters will be buggy."
|
||||
|
||||
uint32 const EncounterCount = 5;
|
||||
@@ -84,4 +86,10 @@ enum GameobjectIds
|
||||
GO_ROARING_FLAME = 182592
|
||||
};
|
||||
|
||||
template <class AI, class T>
|
||||
inline AI* GetHyjalAI(T* obj)
|
||||
{
|
||||
return GetInstanceAI<AI>(obj, HyjalScriptName);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
@@ -523,7 +523,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<npc_giant_infernalAI>(creature);
|
||||
return GetHyjalAI<npc_giant_infernalAI>(creature);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -534,7 +534,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<npc_abominationAI>(creature);
|
||||
return GetHyjalAI<npc_abominationAI>(creature);
|
||||
}
|
||||
|
||||
struct npc_abominationAI : public hyjal_trashAI
|
||||
@@ -630,7 +630,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<npc_ghoulAI>(creature);
|
||||
return GetHyjalAI<npc_ghoulAI>(creature);
|
||||
}
|
||||
|
||||
struct npc_ghoulAI : public hyjal_trashAI
|
||||
@@ -730,7 +730,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<npc_necromancerAI>(creature);
|
||||
return GetHyjalAI<npc_necromancerAI>(creature);
|
||||
}
|
||||
|
||||
struct npc_necromancerAI : public hyjal_trashAI
|
||||
@@ -855,7 +855,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<npc_bansheeAI>(creature);
|
||||
return GetHyjalAI<npc_bansheeAI>(creature);
|
||||
}
|
||||
|
||||
struct npc_bansheeAI : public hyjal_trashAI
|
||||
@@ -958,7 +958,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<npc_crypt_fiendAI>(creature);
|
||||
return GetHyjalAI<npc_crypt_fiendAI>(creature);
|
||||
}
|
||||
|
||||
struct npc_crypt_fiendAI : public hyjal_trashAI
|
||||
@@ -1045,7 +1045,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<npc_fel_stalkerAI>(creature);
|
||||
return GetHyjalAI<npc_fel_stalkerAI>(creature);
|
||||
}
|
||||
|
||||
struct npc_fel_stalkerAI : public hyjal_trashAI
|
||||
@@ -1132,7 +1132,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<npc_frost_wyrmAI>(creature);
|
||||
return GetHyjalAI<npc_frost_wyrmAI>(creature);
|
||||
}
|
||||
|
||||
struct npc_frost_wyrmAI : public hyjal_trashAI
|
||||
@@ -1250,7 +1250,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<npc_gargoyleAI>(creature);
|
||||
return GetHyjalAI<npc_gargoyleAI>(creature);
|
||||
}
|
||||
|
||||
struct npc_gargoyleAI : public hyjal_trashAI
|
||||
|
||||
@@ -43,7 +43,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new boss_epochAI (creature);
|
||||
return GetCullingOfStratholmeAI<boss_epochAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_epochAI : public ScriptedAI
|
||||
|
||||
@@ -34,7 +34,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new boss_infinite_corruptorAI(creature);
|
||||
return GetCullingOfStratholmeAI<boss_infinite_corruptorAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_infinite_corruptorAI : public ScriptedAI
|
||||
|
||||
@@ -46,7 +46,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new boss_mal_ganisAI (creature);
|
||||
return GetCullingOfStratholmeAI<boss_mal_ganisAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_mal_ganisAI : public ScriptedAI
|
||||
|
||||
@@ -37,7 +37,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new boss_meathookAI (creature);
|
||||
return GetCullingOfStratholmeAI<boss_meathookAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_meathookAI : public ScriptedAI
|
||||
|
||||
@@ -47,7 +47,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new boss_salrammAI (creature);
|
||||
return GetCullingOfStratholmeAI<boss_salrammAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_salrammAI : public ScriptedAI
|
||||
|
||||
@@ -356,7 +356,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new npc_arthasAI(creature);
|
||||
return GetCullingOfStratholmeAI<npc_arthasAI>(creature);
|
||||
}
|
||||
|
||||
struct npc_arthasAI : public npc_escortAI
|
||||
@@ -1377,7 +1377,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new npc_crate_helperAI(creature);
|
||||
return GetCullingOfStratholmeAI<npc_crate_helperAI>(creature);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -1588,7 +1588,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new npc_cos_stratholme_citizienAI(creature);
|
||||
return GetCullingOfStratholmeAI<npc_cos_stratholme_citizienAI>(creature);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -7,6 +7,10 @@
|
||||
#ifndef DEF_CULLING_OF_STRATHOLME_H
|
||||
#define DEF_CULLING_OF_STRATHOLME_H
|
||||
|
||||
#include "CreatureAIImpl.h"
|
||||
|
||||
#define CullingOfStratholmeScriptName "instance_culling_of_stratholme"
|
||||
|
||||
enum Data
|
||||
{
|
||||
DATA_ARTHAS_EVENT,
|
||||
@@ -170,4 +174,10 @@ const Position EventPos[] =
|
||||
{2298.25f, 1500.56f, 128.37f, 4.95f} // malganis final pos
|
||||
};
|
||||
|
||||
template <class AI, class T>
|
||||
inline AI* GetCullingOfStratholmeAI(T* obj)
|
||||
{
|
||||
return GetInstanceAI<AI>(obj, CullingOfStratholmeScriptName);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
@@ -46,7 +46,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<boss_captain_skarlocAI>(creature);
|
||||
return GetOldHillsbradAI<boss_captain_skarlocAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_captain_skarlocAI : public ScriptedAI
|
||||
|
||||
@@ -31,7 +31,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<boss_epoch_hunterAI>(creature);
|
||||
return GetOldHillsbradAI<boss_epoch_hunterAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_epoch_hunterAI : public ScriptedAI
|
||||
|
||||
@@ -37,7 +37,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new boss_lieutenant_drakeAI(creature);
|
||||
return GetOldHillsbradAI<boss_lieutenant_drakeAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_lieutenant_drakeAI : public ScriptedAI
|
||||
|
||||
@@ -183,7 +183,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<npc_thrall_old_hillsbradAI>(creature);
|
||||
return GetOldHillsbradAI<npc_thrall_old_hillsbradAI>(creature);
|
||||
}
|
||||
|
||||
bool OnGossipHello(Player* player, Creature* creature) override
|
||||
@@ -850,7 +850,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<npc_tarethaAI>(creature);
|
||||
return GetOldHillsbradAI<npc_tarethaAI>(creature);
|
||||
}
|
||||
|
||||
bool OnGossipHello(Player* /*player*/, Creature* /*creature*/) override
|
||||
|
||||
@@ -5,6 +5,10 @@
|
||||
#ifndef DEF_OLD_HILLSBRAD_H
|
||||
#define DEF_OLD_HILLSBRAD_H
|
||||
|
||||
#include "CreatureAIImpl.h"
|
||||
|
||||
#define OldHillsbradScriptName "instance_old_hillsbrad"
|
||||
|
||||
enum DataIds
|
||||
{
|
||||
DATA_ESCORT_PROGRESS = 0,
|
||||
@@ -74,4 +78,10 @@ enum MiscIds
|
||||
THRALL_POSITIONS_COUNT = 5
|
||||
};
|
||||
|
||||
template <class AI, class T>
|
||||
inline AI* GetOldHillsbradAI(T* obj)
|
||||
{
|
||||
return GetInstanceAI<AI>(obj, OldHillsbradScriptName);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
@@ -143,7 +143,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new boss_aeonusAI(creature);
|
||||
return GetTheBlackMorassAI<boss_aeonusAI>(creature);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -132,7 +132,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new boss_chrono_lord_dejaAI(creature);
|
||||
return GetTheBlackMorassAI<boss_chrono_lord_dejaAI>(creature);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -131,7 +131,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new boss_temporusAI(creature);
|
||||
return GetTheBlackMorassAI<boss_temporusAI>(creature);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -80,7 +80,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new npc_medivh_bmAI(creature);
|
||||
return GetTheBlackMorassAI<npc_medivh_bmAI>(creature);
|
||||
}
|
||||
|
||||
struct npc_medivh_bmAI : public ScriptedAI
|
||||
@@ -277,7 +277,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new npc_time_riftAI(creature);
|
||||
return GetTheBlackMorassAI<npc_time_riftAI>(creature);
|
||||
}
|
||||
|
||||
struct npc_time_riftAI : public NullCreatureAI
|
||||
|
||||
@@ -5,9 +5,12 @@
|
||||
#ifndef DEF_THEBLACKMORASS_H
|
||||
#define DEF_THEBLACKMORASS_H
|
||||
|
||||
#include "CreatureAIImpl.h"
|
||||
#include "PassiveAI.h"
|
||||
#include "SpellScript.h"
|
||||
|
||||
#define TheBlackMorassScriptName "instance_the_black_morass"
|
||||
|
||||
enum DataTypes
|
||||
{
|
||||
TYPE_CHRONO_LORD_DEJA = 0,
|
||||
@@ -72,4 +75,10 @@ enum Misc
|
||||
ACTION_OUTRO = 1
|
||||
};
|
||||
|
||||
template <class AI, class T>
|
||||
inline AI* GetTheBlackMorassAI(T* obj)
|
||||
{
|
||||
return GetInstanceAI<AI>(obj, TheBlackMorassScriptName);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
@@ -102,7 +102,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* pCreature) const override
|
||||
{
|
||||
return new boss_onyxiaAI (pCreature);
|
||||
return GetOnyxiasLairAI<boss_onyxiaAI>(pCreature);
|
||||
}
|
||||
|
||||
struct boss_onyxiaAI : public ScriptedAI
|
||||
@@ -532,7 +532,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* pCreature) const override
|
||||
{
|
||||
return new npc_onyxian_lair_guardAI (pCreature);
|
||||
return GetOnyxiasLairAI<npc_onyxian_lair_guardAI>(pCreature);
|
||||
}
|
||||
|
||||
struct npc_onyxian_lair_guardAI : public ScriptedAI
|
||||
@@ -601,7 +601,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* pCreature) const override
|
||||
{
|
||||
return new npc_onyxia_whelpAI (pCreature);
|
||||
return GetOnyxiasLairAI<npc_onyxia_whelpAI>(pCreature);
|
||||
}
|
||||
|
||||
struct npc_onyxia_whelpAI : public ScriptedAI
|
||||
@@ -626,7 +626,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* pCreature) const override
|
||||
{
|
||||
return new npc_onyxia_triggerAI (pCreature);
|
||||
return GetOnyxiasLairAI<npc_onyxia_triggerAI>(pCreature);
|
||||
}
|
||||
|
||||
struct npc_onyxia_triggerAI : public ScriptedAI
|
||||
|
||||
@@ -5,6 +5,10 @@
|
||||
#ifndef DEF_ONYXIAS_LAIR_H
|
||||
#define DEF_ONYXIAS_LAIR_H
|
||||
|
||||
#include "CreatureAIImpl.h"
|
||||
|
||||
#define OnyxiasLairScriptName "instance_onyxias_lair"
|
||||
|
||||
enum eInstanceData
|
||||
{
|
||||
DATA_ONYXIA = 0,
|
||||
@@ -35,4 +39,10 @@ enum eAchievementData
|
||||
ACHIEV_TIMED_START_EVENT = 6601, // Timed event for achievement 4402, 4005: More Dots! (10,25 player) 5 min kill
|
||||
};
|
||||
|
||||
template <class AI, class T>
|
||||
inline AI* GetOnyxiasLairAI(T* obj)
|
||||
{
|
||||
return GetInstanceAI<AI>(obj, OnyxiasLairScriptName);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
@@ -229,7 +229,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<npc_belnistraszAI>(creature);
|
||||
return GetRazorfenDownsAI<npc_belnistraszAI>(creature);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -261,7 +261,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<npc_idol_room_spawnerAI>(creature);
|
||||
return GetRazorfenDownsAI<npc_idol_room_spawnerAI>(creature);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -6,6 +6,9 @@
|
||||
#define DEF_RAZORFEN_DOWNS_H
|
||||
|
||||
#include "PassiveAI.h"
|
||||
#include "CreatureAIImpl.h"
|
||||
|
||||
#define RazorfenDownsScriptName "instance_razorfen_downs"
|
||||
|
||||
enum CreatureIds
|
||||
{
|
||||
@@ -26,4 +29,10 @@ enum GameObjectIds
|
||||
GO_BELNISTRASZS_BRAZIER = 152097
|
||||
};
|
||||
|
||||
template <class AI, class T>
|
||||
inline AI* GetRazorfenDownsAI(T* obj)
|
||||
{
|
||||
return GetInstanceAI<AI>(obj, RazorfenDownsScriptName);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
@@ -222,7 +222,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<boss_ayamissAI>(creature);
|
||||
return GetRuinsOfAhnQirajAI<boss_ayamissAI>(creature);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -276,7 +276,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<npc_hive_zara_larvaAI>(creature);
|
||||
return GetRuinsOfAhnQirajAI<npc_hive_zara_larvaAI>(creature);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -176,7 +176,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new boss_buruAI(creature);
|
||||
return GetRuinsOfAhnQirajAI<boss_buruAI>(creature);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -224,7 +224,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<npc_buru_eggAI>(creature);
|
||||
return GetRuinsOfAhnQirajAI<npc_buru_eggAI>(creature);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -116,7 +116,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<boss_kurinnaxxAI>(creature);
|
||||
return GetRuinsOfAhnQirajAI<boss_kurinnaxxAI>(creature);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -166,7 +166,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new boss_moamAI(creature);
|
||||
return GetRuinsOfAhnQirajAI<boss_moamAI>(creature);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -260,7 +260,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<boss_ossirianAI>(creature);
|
||||
return GetRuinsOfAhnQirajAI<boss_ossirianAI>(creature);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -110,7 +110,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new boss_rajaxxAI(creature);
|
||||
return GetRuinsOfAhnQirajAI<boss_rajaxxAI>(creature);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -7,6 +7,10 @@
|
||||
#ifndef DEF_RUINS_OF_AHNQIRAJ_H
|
||||
#define DEF_RUINS_OF_AHNQIRAJ_H
|
||||
|
||||
#include "CreatureAIImpl.h"
|
||||
|
||||
#define RuinsOfAhnQirajScriptName "instance_ruins_of_ahnqiraj"
|
||||
|
||||
enum DataTypes
|
||||
{
|
||||
DATA_KURINNAXX = 0,
|
||||
@@ -44,4 +48,10 @@ enum GameObjects
|
||||
GO_OSSIRIAN_CRYSTAL = 180619
|
||||
};
|
||||
|
||||
template <class AI, class T>
|
||||
inline AI* GetRuinsOfAhnQirajAI(T* obj)
|
||||
{
|
||||
return GetInstanceAI<AI>(obj, RuinsOfAhnQirajScriptName);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
@@ -36,7 +36,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<boss_kriAI>(creature);
|
||||
return GetTempleOfAhnQirajAI<boss_kriAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_kriAI : public ScriptedAI
|
||||
@@ -131,7 +131,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<boss_vemAI>(creature);
|
||||
return GetTempleOfAhnQirajAI<boss_vemAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_vemAI : public ScriptedAI
|
||||
@@ -222,7 +222,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<boss_yaujAI>(creature);
|
||||
return GetTempleOfAhnQirajAI<boss_yaujAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_yaujAI : public ScriptedAI
|
||||
|
||||
@@ -141,7 +141,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<eye_of_cthunAI>(creature);
|
||||
return GetTempleOfAhnQirajAI<eye_of_cthunAI>(creature);
|
||||
}
|
||||
|
||||
struct eye_of_cthunAI : public ScriptedAI
|
||||
@@ -447,7 +447,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<cthunAI>(creature);
|
||||
return GetTempleOfAhnQirajAI<cthunAI>(creature);
|
||||
}
|
||||
|
||||
struct cthunAI : public ScriptedAI
|
||||
|
||||
@@ -13,6 +13,7 @@ EndScriptData */
|
||||
|
||||
#include "ScriptedCreature.h"
|
||||
#include "ScriptMgr.h"
|
||||
#include "temple_of_ahnqiraj.h"
|
||||
|
||||
#define SOUND_SENTENCE_YOU 8588
|
||||
#define SOUND_SERVE_TO 8589
|
||||
@@ -36,7 +37,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new boss_fankrissAI(creature);
|
||||
return GetTempleOfAhnQirajAI<boss_fankrissAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_fankrissAI : public ScriptedAI
|
||||
|
||||
@@ -13,6 +13,7 @@ EndScriptData */
|
||||
|
||||
#include "ScriptedCreature.h"
|
||||
#include "ScriptMgr.h"
|
||||
#include "temple_of_ahnqiraj.h"
|
||||
|
||||
enum Huhuran
|
||||
{
|
||||
@@ -34,7 +35,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new boss_huhuranAI(creature);
|
||||
return GetTempleOfAhnQirajAI<boss_huhuranAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_huhuranAI : public ScriptedAI
|
||||
|
||||
@@ -31,7 +31,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new boss_ouroAI(creature);
|
||||
return GetTempleOfAhnQirajAI<boss_ouroAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_ouroAI : public ScriptedAI
|
||||
|
||||
@@ -13,6 +13,7 @@ EndScriptData */
|
||||
|
||||
#include "ScriptedCreature.h"
|
||||
#include "ScriptMgr.h"
|
||||
#include "temple_of_ahnqiraj.h"
|
||||
|
||||
enum Sartura
|
||||
{
|
||||
@@ -36,7 +37,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new boss_sarturaAI(creature);
|
||||
return GetTempleOfAhnQirajAI<boss_sarturaAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_sarturaAI : public ScriptedAI
|
||||
@@ -183,7 +184,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new npc_sartura_royal_guardAI(creature);
|
||||
return GetTempleOfAhnQirajAI<npc_sartura_royal_guardAI>(creature);
|
||||
}
|
||||
|
||||
struct npc_sartura_royal_guardAI : public ScriptedAI
|
||||
|
||||
@@ -179,7 +179,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new boss_skeramAI(creature);
|
||||
return GetTempleOfAhnQirajAI<boss_skeramAI>(creature);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -373,7 +373,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<boss_veknilashAI>(creature);
|
||||
return GetTempleOfAhnQirajAI<boss_veknilashAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_veknilashAI : public boss_twinemperorsAI
|
||||
@@ -461,7 +461,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<boss_veklorAI>(creature);
|
||||
return GetTempleOfAhnQirajAI<boss_veklorAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_veklorAI : public boss_twinemperorsAI
|
||||
|
||||
@@ -236,7 +236,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return new boss_viscidusAI(creature);
|
||||
return GetTempleOfAhnQirajAI<boss_viscidusAI>(creature);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -284,7 +284,7 @@ public:
|
||||
|
||||
CreatureAI* GetAI(Creature* creature) const override
|
||||
{
|
||||
return GetInstanceAI<npc_glob_of_viscidusAI>(creature);
|
||||
return GetTempleOfAhnQirajAI<npc_glob_of_viscidusAI>(creature);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -7,6 +7,10 @@
|
||||
#ifndef DEF_TEMPLE_OF_AHNQIRAJ_H
|
||||
#define DEF_TEMPLE_OF_AHNQIRAJ_H
|
||||
|
||||
#include "CreatureAIImpl.h"
|
||||
|
||||
#define TempleOfAhnQirajScriptName "instance_temple_of_ahnqiraj"
|
||||
|
||||
enum DataTypes
|
||||
{
|
||||
DATA_SKERAM = 1,
|
||||
@@ -47,4 +51,11 @@ enum Creatures
|
||||
NPC_VEKLOR = 15276,
|
||||
NPC_VEKNILASH = 15275
|
||||
};
|
||||
|
||||
template <class AI, class T>
|
||||
inline AI* GetTempleOfAhnQirajAI(T* obj)
|
||||
{
|
||||
return GetInstanceAI<AI>(obj, TempleOfAhnQirajScriptName);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user