mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-15 23:20:36 +01:00
Scripts/Stratholme: Added dungeon encounter ids
This commit is contained in:
@@ -43,9 +43,9 @@ public:
|
||||
return GetMaraudonAI<celebras_the_cursedAI>(creature);
|
||||
}
|
||||
|
||||
struct celebras_the_cursedAI : public ScriptedAI
|
||||
struct celebras_the_cursedAI : public BossAI
|
||||
{
|
||||
celebras_the_cursedAI(Creature* creature) : ScriptedAI(creature)
|
||||
celebras_the_cursedAI(Creature* creature) : BossAI(creature, BOSS_CELEBRAS_THE_CURSED)
|
||||
{
|
||||
Initialize();
|
||||
}
|
||||
@@ -63,13 +63,15 @@ public:
|
||||
|
||||
void Reset() override
|
||||
{
|
||||
BossAI::Reset();
|
||||
|
||||
Initialize();
|
||||
}
|
||||
|
||||
void JustEngagedWith(Unit* /*who*/) override { }
|
||||
|
||||
void JustDied(Unit* /*killer*/) override
|
||||
void JustDied(Unit* killer) override
|
||||
{
|
||||
BossAI::JustDied(killer);
|
||||
|
||||
me->SummonCreature(13716, me->GetPositionX(), me->GetPositionY(), me->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN, 10min);
|
||||
}
|
||||
|
||||
|
||||
@@ -43,9 +43,9 @@ public:
|
||||
return GetMaraudonAI<boss_landslideAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_landslideAI : public ScriptedAI
|
||||
struct boss_landslideAI : public BossAI
|
||||
{
|
||||
boss_landslideAI(Creature* creature) : ScriptedAI(creature)
|
||||
boss_landslideAI(Creature* creature) : BossAI(creature, BOSS_LANDSLIDE)
|
||||
{
|
||||
Initialize();
|
||||
}
|
||||
@@ -63,11 +63,9 @@ public:
|
||||
|
||||
void Reset() override
|
||||
{
|
||||
Initialize();
|
||||
}
|
||||
BossAI::Reset();
|
||||
|
||||
void JustEngagedWith(Unit* /*who*/) override
|
||||
{
|
||||
Initialize();
|
||||
}
|
||||
|
||||
void UpdateAI(uint32 diff) override
|
||||
|
||||
@@ -42,9 +42,9 @@ public:
|
||||
return GetMaraudonAI<boss_noxxionAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_noxxionAI : public ScriptedAI
|
||||
struct boss_noxxionAI : public BossAI
|
||||
{
|
||||
boss_noxxionAI(Creature* creature) : ScriptedAI(creature)
|
||||
boss_noxxionAI(Creature* creature) : BossAI(creature, BOSS_NOXXION)
|
||||
{
|
||||
Initialize();
|
||||
}
|
||||
@@ -66,11 +66,11 @@ public:
|
||||
|
||||
void Reset() override
|
||||
{
|
||||
BossAI::Reset();
|
||||
|
||||
Initialize();
|
||||
}
|
||||
|
||||
void JustEngagedWith(Unit* /*who*/) override { }
|
||||
|
||||
void SummonAdds(Unit* victim)
|
||||
{
|
||||
if (Creature* Add = DoSpawnCreature(13456, float(irand(-7, 7)), float(irand(-7, 7)), 0, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 90s))
|
||||
|
||||
@@ -44,9 +44,9 @@ public:
|
||||
return GetMaraudonAI<boss_ptheradrasAI>(creature);
|
||||
}
|
||||
|
||||
struct boss_ptheradrasAI : public ScriptedAI
|
||||
struct boss_ptheradrasAI : public BossAI
|
||||
{
|
||||
boss_ptheradrasAI(Creature* creature) : ScriptedAI(creature)
|
||||
boss_ptheradrasAI(Creature* creature) : BossAI(creature, BOSS_PRINCESS_THERADRAS)
|
||||
{
|
||||
Initialize();
|
||||
}
|
||||
@@ -66,13 +66,15 @@ public:
|
||||
|
||||
void Reset() override
|
||||
{
|
||||
BossAI::Reset();
|
||||
|
||||
Initialize();
|
||||
}
|
||||
|
||||
void JustEngagedWith(Unit* /*who*/) override { }
|
||||
|
||||
void JustDied(Unit* /*killer*/) override
|
||||
void JustDied(Unit* killer) override
|
||||
{
|
||||
BossAI::JustDied(killer);
|
||||
|
||||
me->SummonCreature(12238, 28.1887f, 62.3964f, -123.161f, 4.31096f, TEMPSUMMON_TIMED_DESPAWN, 10min);
|
||||
}
|
||||
|
||||
|
||||
@@ -24,8 +24,21 @@ gets instead the deserter debuff.
|
||||
|
||||
#include "ScriptMgr.h"
|
||||
#include "InstanceScript.h"
|
||||
#include "Unit.h"
|
||||
#include "maraudon.h"
|
||||
|
||||
static constexpr DungeonEncounterData Encounters[] =
|
||||
{
|
||||
{ BOSS_NOXXION, { { 422 } } },
|
||||
{ BOSS_RAZORLASH, { { 423 } } },
|
||||
{ BOSS_TINKERER_GIZLOCK, { { 427 } } },
|
||||
{ BOSS_LORD_VYLETONGUE, { { 424 } } },
|
||||
{ BOSS_CELEBRAS_THE_CURSED, { { 425 } } },
|
||||
{ BOSS_LANDSLIDE, { { 426 } } },
|
||||
{ BOSS_ROTGRIP, { { 428 } } },
|
||||
{ BOSS_PRINCESS_THERADRAS, { { 429 } } },
|
||||
};
|
||||
|
||||
class instance_maraudon : public InstanceMapScript
|
||||
{
|
||||
public:
|
||||
@@ -38,7 +51,24 @@ public:
|
||||
|
||||
struct instance_maraudon_InstanceMapScript : public InstanceScript
|
||||
{
|
||||
instance_maraudon_InstanceMapScript(InstanceMap* map) : InstanceScript(map) { }
|
||||
instance_maraudon_InstanceMapScript(InstanceMap* map) : InstanceScript(map)
|
||||
{
|
||||
SetHeaders("Maraudon_v1");
|
||||
SetBossNumber(MAX_ENCOUNTER);
|
||||
LoadDungeonEncounterData(Encounters);
|
||||
}
|
||||
|
||||
void OnUnitDeath(Unit* unit) override
|
||||
{
|
||||
switch (unit->GetEntry())
|
||||
{
|
||||
case NPC_RAZORLASH: SetBossState(BOSS_RAZORLASH, DONE); break;
|
||||
case NPC_TINKERER_GIZLOCK: SetBossState(BOSS_TINKERER_GIZLOCK, DONE); break;
|
||||
case NPC_LORD_VYLETONGUE: SetBossState(BOSS_LORD_VYLETONGUE, DONE); break;
|
||||
case NPC_ROTGRIP: SetBossState(BOSS_ROTGRIP, DONE); break;
|
||||
default: break;
|
||||
}
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -22,6 +22,28 @@
|
||||
|
||||
#define MaraudonScriptName "instance_maraudon"
|
||||
|
||||
enum MDBossIds
|
||||
{
|
||||
BOSS_NOXXION = 0,
|
||||
BOSS_RAZORLASH = 1,
|
||||
BOSS_TINKERER_GIZLOCK = 2,
|
||||
BOSS_LORD_VYLETONGUE = 3,
|
||||
BOSS_CELEBRAS_THE_CURSED = 4,
|
||||
BOSS_LANDSLIDE = 5,
|
||||
BOSS_ROTGRIP = 6,
|
||||
BOSS_PRINCESS_THERADRAS = 7,
|
||||
|
||||
MAX_ENCOUNTER
|
||||
};
|
||||
|
||||
enum MDCreatureIds
|
||||
{
|
||||
NPC_RAZORLASH = 12258,
|
||||
NPC_TINKERER_GIZLOCK = 13601,
|
||||
NPC_LORD_VYLETONGUE = 12236,
|
||||
NPC_ROTGRIP = 13596,
|
||||
};
|
||||
|
||||
template <class AI, class T>
|
||||
inline AI* GetMaraudonAI(T* obj)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user