refactor(Scripts/UtgardeKeep): Upgrade scripts to new register method (#20795)

This commit is contained in:
Andrew
2024-11-30 20:25:27 -03:00
committed by GitHub
parent 5e4f6ac576
commit a4a278a0e7
5 changed files with 711 additions and 797 deletions
@@ -99,19 +99,9 @@ enum eEvents
EVENT_AXE_PICKUP,
};
class boss_ingvar_the_plunderer : public CreatureScript
struct boss_ingvar_the_plunderer : public ScriptedAI
{
public:
boss_ingvar_the_plunderer() : CreatureScript("boss_ingvar_the_plunderer") { }
CreatureAI* GetAI(Creature* pCreature) const override
{
return GetUtgardeKeepAI<boss_ingvar_the_plundererAI>(pCreature);
}
struct boss_ingvar_the_plundererAI : public ScriptedAI
{
boss_ingvar_the_plundererAI(Creature* c) : ScriptedAI(c), summons(me)
boss_ingvar_the_plunderer(Creature* c) : ScriptedAI(c), summons(me)
{
pInstance = c->GetInstanceScript();
}
@@ -389,9 +379,8 @@ public:
DoMeleeAttackIfReady();
}
};
};
void AddSC_boss_ingvar_the_plunderer()
{
new boss_ingvar_the_plunderer();
RegisterUtgardeKeepCreatureAI(boss_ingvar_the_plunderer);
}
@@ -58,19 +58,9 @@ enum eEvents
EVENT_SUMMON_SKELETONS,
};
class npc_frost_tomb : public CreatureScript
struct npc_frost_tomb : public NullCreatureAI
{
public:
npc_frost_tomb() : CreatureScript("npc_frost_tomb") { }
CreatureAI* GetAI(Creature* pCreature) const override
{
return GetUtgardeKeepAI<npc_frost_tombAI>(pCreature);
}
struct npc_frost_tombAI : public NullCreatureAI
{
npc_frost_tombAI(Creature* c) : NullCreatureAI(c)
npc_frost_tomb(Creature* c) : NullCreatureAI(c)
{
if (TempSummon* t = c->ToTempSummon())
if (Unit* s = t->GetSummonerUnit())
@@ -113,21 +103,10 @@ public:
}
}
};
};
class boss_keleseth : public CreatureScript
struct boss_keleseth : public ScriptedAI
{
public:
boss_keleseth() : CreatureScript("boss_keleseth") { }
CreatureAI* GetAI(Creature* pCreature) const override
{
return GetUtgardeKeepAI<boss_kelesethAI>(pCreature);
}
struct boss_kelesethAI : public ScriptedAI
{
boss_kelesethAI(Creature* c) : ScriptedAI(c)
boss_keleseth(Creature* c) : ScriptedAI(c)
{
pInstance = c->GetInstanceScript();
}
@@ -228,7 +207,6 @@ public:
DoMeleeAttackIfReady();
}
};
};
enum eSkeletonEnum
{
@@ -242,19 +220,9 @@ enum eSkeletonEnum
EVENT_RESURRECT_2,
};
class npc_vrykul_skeleton : public CreatureScript
struct npc_vrykul_skeleton : public ScriptedAI
{
public:
npc_vrykul_skeleton() : CreatureScript("npc_vrykul_skeleton") { }
CreatureAI* GetAI(Creature* pCreature) const override
{
return GetUtgardeKeepAI<npc_vrykul_skeletonAI>(pCreature);
}
struct npc_vrykul_skeletonAI : public ScriptedAI
{
npc_vrykul_skeletonAI(Creature* c) : ScriptedAI(c)
npc_vrykul_skeleton(Creature* c) : ScriptedAI(c)
{
pInstance = c->GetInstanceScript();
}
@@ -341,7 +309,6 @@ public:
DoMeleeAttackIfReady();
}
};
};
class spell_frost_tomb_aura : public AuraScript
{
@@ -368,8 +335,8 @@ class spell_frost_tomb_aura : public AuraScript
void AddSC_boss_keleseth()
{
new boss_keleseth();
new npc_frost_tomb();
new npc_vrykul_skeleton();
RegisterUtgardeKeepCreatureAI(boss_keleseth);
RegisterUtgardeKeepCreatureAI(npc_frost_tomb);
RegisterUtgardeKeepCreatureAI(npc_vrykul_skeleton);
RegisterSpellScript(spell_frost_tomb_aura);
}
@@ -66,19 +66,9 @@ enum eEvents
EVENT_MATE_DIED
};
class boss_skarvald_the_constructor : public CreatureScript
struct boss_skarvald_the_constructor : public ScriptedAI
{
public:
boss_skarvald_the_constructor() : CreatureScript("boss_skarvald_the_constructor") { }
CreatureAI* GetAI(Creature* pCreature) const override
{
return GetUtgardeKeepAI<boss_skarvald_the_constructorAI>(pCreature);
}
struct boss_skarvald_the_constructorAI : public ScriptedAI
{
boss_skarvald_the_constructorAI(Creature* c) : ScriptedAI(c)
boss_skarvald_the_constructor(Creature* c) : ScriptedAI(c)
{
pInstance = c->GetInstanceScript();
}
@@ -227,21 +217,10 @@ public:
DoMeleeAttackIfReady();
}
};
};
class boss_dalronn_the_controller : public CreatureScript
struct boss_dalronn_the_controller : public ScriptedAI
{
public:
boss_dalronn_the_controller() : CreatureScript("boss_dalronn_the_controller") { }
CreatureAI* GetAI(Creature* pCreature) const override
{
return GetUtgardeKeepAI<boss_dalronn_the_controllerAI>(pCreature);
}
struct boss_dalronn_the_controllerAI : public ScriptedAI
{
boss_dalronn_the_controllerAI(Creature* c) : ScriptedAI(c), summons(me)
boss_dalronn_the_controller(Creature* c) : ScriptedAI(c), summons(me)
{
pInstance = c->GetInstanceScript();
}
@@ -397,10 +376,9 @@ public:
DoMeleeAttackIfReady();
}
};
};
void AddSC_boss_skarvald_dalronn()
{
new boss_skarvald_the_constructor();
new boss_dalronn_the_controller();
RegisterUtgardeKeepCreatureAI(boss_skarvald_the_constructor);
RegisterUtgardeKeepCreatureAI(boss_dalronn_the_controller);
}
@@ -23,19 +23,9 @@
#include "SpellScriptLoader.h"
#include "Vehicle.h"
class npc_dragonflayer_forge_master : public CreatureScript
struct npc_dragonflayer_forge_master : public ScriptedAI
{
public:
npc_dragonflayer_forge_master() : CreatureScript("npc_dragonflayer_forge_master") { }
CreatureAI* GetAI(Creature* pCreature) const override
{
return GetUtgardeKeepAI<npc_dragonflayer_forge_masterAI>(pCreature);
}
struct npc_dragonflayer_forge_masterAI : public ScriptedAI
{
npc_dragonflayer_forge_masterAI(Creature* c) : ScriptedAI(c)
npc_dragonflayer_forge_master(Creature* c) : ScriptedAI(c)
{
pInstance = c->GetInstanceScript();
@@ -89,7 +79,6 @@ public:
me->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_ONESHOT_NONE);
}
};
};
enum EnslavedProtoDrake
{
@@ -111,14 +100,9 @@ enum EnslavedProtoDrake
const Position protodrakeCheckPos = {206.24f, -190.28f, 200.11f, 0.f};
class npc_enslaved_proto_drake : public CreatureScript
struct npc_enslaved_proto_drake : public ScriptedAI
{
public:
npc_enslaved_proto_drake() : CreatureScript("npc_enslaved_proto_drake") { }
struct npc_enslaved_proto_drakeAI : public ScriptedAI
{
npc_enslaved_proto_drakeAI(Creature* creature) : ScriptedAI(creature)
npc_enslaved_proto_drake(Creature* creature) : ScriptedAI(creature)
{
_setData = false;
}
@@ -198,12 +182,6 @@ public:
EventMap _events;
};
CreatureAI* GetAI(Creature* creature) const override
{
return GetUtgardeKeepAI<npc_enslaved_proto_drakeAI>(creature);
}
};
enum TickingTimeBomb
{
SPELL_TICKING_TIME_BOMB_EXPLODE = 59687
@@ -234,8 +212,8 @@ class spell_ticking_time_bomb_aura : public AuraScript
void AddSC_utgarde_keep()
{
new npc_dragonflayer_forge_master();
new npc_enslaved_proto_drake();
RegisterUtgardeKeepCreatureAI(npc_dragonflayer_forge_master);
RegisterUtgardeKeepCreatureAI(npc_enslaved_proto_drake);
RegisterSpellScript(spell_ticking_time_bomb_aura);
}
@@ -83,4 +83,6 @@ inline AI* GetUtgardeKeepAI(T* obj)
return GetInstanceAI<AI>(obj, UtgardeKeepScriptName);
}
#define RegisterUtgardeKeepCreatureAI(ai_name) RegisterCreatureAIWithFactory(ai_name, GetUtgardeKeepAI)
#endif