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

@@ -6,6 +6,9 @@
#define DEF_BLOOD_FURNACE_H
#include "Player.h"
#include "CreatureAIImpl.h"
#define BloodFurnaceScriptName "instance_blood_furnace"
enum bloodFurnace
{
@@ -39,4 +42,10 @@ enum bloodFurnaceNPC
NPC_CHANNELER = 17653
};
template <class AI, class T>
inline AI* GetBloodFurnaceAI(T* obj)
{
return GetInstanceAI<AI>(obj, BloodFurnaceScriptName);
}
#endif

View File

@@ -126,7 +126,7 @@ public:
CreatureAI* GetAI(Creature* creature) const override
{
return new boss_broggokAI(creature);
return GetBloodFurnaceAI<boss_broggokAI>(creature);
}
};

View File

@@ -265,7 +265,7 @@ public:
CreatureAI* GetAI(Creature* creature) const override
{
return new boss_kelidan_the_breakerAI(creature);
return GetBloodFurnaceAI<boss_kelidan_the_breakerAI>(creature);
}
};
@@ -336,7 +336,7 @@ public:
CreatureAI* GetAI(Creature* creature) const override
{
return new npc_shadowmoon_channelerAI(creature);
return GetBloodFurnaceAI<npc_shadowmoon_channelerAI>(creature);
}
};

View File

@@ -120,7 +120,7 @@ public:
CreatureAI* GetAI(Creature* creature) const override
{
return new boss_the_makerAI(creature);
return GetBloodFurnaceAI<boss_the_makerAI>(creature);
}
};

View File

@@ -165,7 +165,7 @@ public:
CreatureAI* GetAI(Creature* creature) const override
{
return GetInstanceAI<boss_omor_the_unscarredAI>(creature);
return GetHellfireRampartsAI<boss_omor_the_unscarredAI>(creature);
}
};

View File

@@ -128,7 +128,7 @@ public:
CreatureAI* GetAI(Creature* creature) const override
{
return new boss_vazruden_the_heraldAI(creature);
return GetHellfireRampartsAI<boss_vazruden_the_heraldAI>(creature);
}
};
@@ -236,7 +236,7 @@ public:
CreatureAI* GetAI(Creature* creature) const override
{
return new boss_nazanAI(creature);
return GetHellfireRampartsAI<boss_nazanAI>(creature);
}
};
@@ -307,7 +307,7 @@ public:
CreatureAI* GetAI(Creature* creature) const override
{
return new boss_vazrudenAI(creature);
return GetHellfireRampartsAI<boss_vazrudenAI>(creature);
}
};

View File

@@ -143,7 +143,7 @@ public:
CreatureAI* GetAI(Creature* creature) const override
{
return new boss_watchkeeper_gargolmarAI(creature);
return GetHellfireRampartsAI<boss_watchkeeper_gargolmarAI>(creature);
}
};

View File

@@ -6,6 +6,9 @@
#define DEF_RAMPARTS_H
#include "SpellScript.h"
#include "CreatureAIImpl.h"
#define HellfireRampartsScriptName "instance_hellfire_ramparts"
enum DataTypes
{
@@ -29,4 +32,10 @@ enum GameobjectIds
GO_FEL_IRON_CHECT_HEROIC = 185169
};
template <class AI, class T>
inline AI* GetHellfireRampartsAI(T* obj)
{
return GetInstanceAI<AI>(obj, HellfireRampartsScriptName);
}
#endif

View File

@@ -246,7 +246,7 @@ public:
CreatureAI* GetAI(Creature* creature) const override
{
return GetInstanceAI<boss_magtheridonAI>(creature);
return GetMagtheridonsLairAI<boss_magtheridonAI>(creature);
}
};

View File

@@ -6,6 +6,9 @@
#define DEF_MAGTHERIDONS_LAIR_H
#include "SpellScript.h"
#include "CreatureAIImpl.h"
#define MagtheridonsLairScriptName "instance_magtheridons_lair"
enum DataTypes
{
@@ -38,4 +41,10 @@ enum GoIds
GO_MAGTHERIDON_COLUMN5 = 184639
};
template <class AI, class T>
inline AI* GetMagtheridonsLairAI(T* obj)
{
return GetInstanceAI<AI>(obj, MagtheridonsLairScriptName);
}
#endif

View File

@@ -240,7 +240,7 @@ public:
CreatureAI* GetAI(Creature* creature) const override
{
return GetInstanceAI<boss_grand_warlock_nethekurseAI>(creature);
return GetShatteredHallsAI<boss_grand_warlock_nethekurseAI>(creature);
}
};

View File

@@ -211,7 +211,7 @@ public:
CreatureAI* GetAI(Creature* creature) const override
{
return GetInstanceAI<boss_warbringer_omroggAI>(creature);
return GetShatteredHallsAI<boss_warbringer_omroggAI>(creature);
}
};
@@ -248,7 +248,7 @@ public:
CreatureAI* GetAI(Creature* creature) const override
{
return GetInstanceAI<npc_omrogg_headsAI>(creature);
return GetShatteredHallsAI<npc_omrogg_headsAI>(creature);
}
};

View File

@@ -167,7 +167,7 @@ public:
CreatureAI* GetAI(Creature* creature) const override
{
return GetInstanceAI<boss_warchief_kargath_bladefistAI>(creature);
return GetShatteredHallsAI<boss_warchief_kargath_bladefistAI>(creature);
}
};

View File

@@ -5,9 +5,12 @@
#ifndef DEF_SHATTERED_H
#define DEF_SHATTERED_H
#include "CreatureAIImpl.h"
#include "PassiveAI.h"
#include "SpellScript.h"
#define ShatteredHallsLairScriptName "instance_shattered_halls"
enum DataTypes
{
DATA_NETHEKURSE = 0,
@@ -51,4 +54,10 @@ enum SpellIds
SPELL_KARGATHS_EXECUTIONER_3 = 39290
};
template <class AI, class T>
inline AI* GetShatteredHallsAI(T* obj)
{
return GetInstanceAI<AI>(obj, ShatteredHallsLairScriptName);
}
#endif