aboutsummaryrefslogtreecommitdiff
path: root/src/server/scripts/EasternKingdoms
diff options
context:
space:
mode:
authorVincent-Michael <Vincent_Michael@gmx.de>2013-07-04 23:08:02 +0200
committerVincent-Michael <Vincent_Michael@gmx.de>2013-07-04 23:08:02 +0200
commit644e75487d6eb160c940ef43d9e2047b4d419730 (patch)
tree115b060bc8e6523efa28afeaac27f3fca50b4627 /src/server/scripts/EasternKingdoms
parentece52c11d251593d0ee0b8c2e23e6747fb0bfbd1 (diff)
parentb4d4e04f53b447a7b6cfba1c7161d9c987260265 (diff)
Merge branch 'master' of github.com:TrinityCore/TrinityCore into 4.3.4
Conflicts: src/server/game/Movement/MovementGenerators/IdleMovementGenerator.cpp src/server/scripts/EasternKingdoms/BlackrockSpire/boss_rend_blackhand.cpp src/server/scripts/EasternKingdoms/ZulAman/boss_akilzon.cpp src/server/scripts/EasternKingdoms/ZulAman/boss_halazzi.cpp src/server/scripts/EasternKingdoms/ZulAman/boss_hexlord.cpp src/server/scripts/EasternKingdoms/ZulAman/boss_janalai.cpp src/server/scripts/EasternKingdoms/ZulAman/boss_zuljin.cpp src/server/scripts/EasternKingdoms/ZulAman/zulaman.cpp src/server/scripts/EasternKingdoms/ZulGurub/boss_jeklik.cpp src/server/scripts/EasternKingdoms/ZulGurub/boss_jindo.cpp src/server/scripts/EasternKingdoms/ZulGurub/boss_mandokir.cpp src/server/scripts/EasternKingdoms/ZulGurub/boss_marli.cpp src/server/scripts/EasternKingdoms/ZulGurub/boss_thekal.cpp src/server/scripts/EasternKingdoms/zone_arathi_highlands.cpp src/server/scripts/Kalimdor/zone_azshara.cpp src/server/scripts/Kalimdor/zone_dustwallow_marsh.cpp src/server/scripts/Kalimdor/zone_silithus.cpp src/server/scripts/Kalimdor/zone_tanaris.cpp src/server/scripts/Northrend/FrozenHalls/ForgeOfSouls/boss_devourer_of_souls.cpp src/server/scripts/Northrend/IcecrownCitadel/boss_blood_queen_lana_thel.cpp src/server/scripts/Spells/spell_item.cpp
Diffstat (limited to 'src/server/scripts/EasternKingdoms')
-rw-r--r--src/server/scripts/EasternKingdoms/AlteracValley/alterac_valley.cpp12
-rw-r--r--src/server/scripts/EasternKingdoms/AlteracValley/boss_balinda.cpp14
-rw-r--r--src/server/scripts/EasternKingdoms/BlackrockDepths/blackrock_depths.cpp30
-rw-r--r--src/server/scripts/EasternKingdoms/BlackrockSpire/blackrock_spire.h15
-rw-r--r--src/server/scripts/EasternKingdoms/BlackrockSpire/boss_gizrul_the_slavener.cpp112
-rw-r--r--src/server/scripts/EasternKingdoms/BlackrockSpire/boss_gyth.cpp58
-rw-r--r--src/server/scripts/EasternKingdoms/BlackrockSpire/boss_halycon.cpp58
-rw-r--r--src/server/scripts/EasternKingdoms/BlackrockSpire/boss_highlord_omokk.cpp59
-rw-r--r--src/server/scripts/EasternKingdoms/BlackrockSpire/boss_pyroguard_emberseer.cpp146
-rw-r--r--src/server/scripts/EasternKingdoms/BlackrockSpire/boss_quartermaster_zigris.cpp17
-rw-r--r--src/server/scripts/EasternKingdoms/BlackrockSpire/boss_rend_blackhand.cpp308
-rw-r--r--src/server/scripts/EasternKingdoms/BlackrockSpire/boss_urok_doomhowl.cpp108
-rw-r--r--src/server/scripts/EasternKingdoms/BlackrockSpire/instance_blackrock_spire.cpp92
-rw-r--r--src/server/scripts/EasternKingdoms/BlackwingLair/boss_nefarian.cpp102
-rw-r--r--src/server/scripts/EasternKingdoms/CMakeLists.txt2
-rw-r--r--src/server/scripts/EasternKingdoms/Karazhan/boss_shade_of_aran.cpp6
-rw-r--r--src/server/scripts/EasternKingdoms/Karazhan/boss_terestian_illhoof.cpp52
-rw-r--r--src/server/scripts/EasternKingdoms/Karazhan/bosses_opera.cpp26
-rw-r--r--src/server/scripts/EasternKingdoms/Karazhan/karazhan.cpp4
-rw-r--r--src/server/scripts/EasternKingdoms/MagistersTerrace/boss_felblood_kaelthas.cpp48
-rw-r--r--src/server/scripts/EasternKingdoms/MagistersTerrace/boss_priestess_delrissa.cpp8
-rw-r--r--src/server/scripts/EasternKingdoms/MagistersTerrace/boss_selin_fireheart.cpp12
-rw-r--r--src/server/scripts/EasternKingdoms/MagistersTerrace/boss_vexallus.cpp12
-rw-r--r--src/server/scripts/EasternKingdoms/MoltenCore/boss_garr.cpp12
-rw-r--r--src/server/scripts/EasternKingdoms/MoltenCore/boss_golemagg.cpp12
-rw-r--r--src/server/scripts/EasternKingdoms/MoltenCore/boss_ragnaros.cpp12
-rw-r--r--src/server/scripts/EasternKingdoms/MoltenCore/boss_sulfuron_harbinger.cpp12
-rw-r--r--src/server/scripts/EasternKingdoms/ScarletEnclave/chapter2.cpp24
-rw-r--r--src/server/scripts/EasternKingdoms/ScarletMonastery/boss_headless_horseman.cpp53
-rw-r--r--src/server/scripts/EasternKingdoms/ScarletMonastery/boss_herod.cpp12
-rw-r--r--src/server/scripts/EasternKingdoms/Scholomance/boss_jandice_barov.cpp12
-rw-r--r--src/server/scripts/EasternKingdoms/Stratholme/stratholme.cpp48
-rw-r--r--src/server/scripts/EasternKingdoms/SunwellPlateau/boss_eredar_twins.cpp14
-rw-r--r--src/server/scripts/EasternKingdoms/SunwellPlateau/boss_felmyst.cpp44
-rw-r--r--src/server/scripts/EasternKingdoms/SunwellPlateau/boss_kalecgos.cpp2
-rw-r--r--src/server/scripts/EasternKingdoms/SunwellPlateau/boss_kiljaeden.cpp88
-rw-r--r--src/server/scripts/EasternKingdoms/SunwellPlateau/sunwell_plateau.h24
-rw-r--r--src/server/scripts/EasternKingdoms/Uldaman/boss_archaedas.cpp32
-rw-r--r--src/server/scripts/EasternKingdoms/Uldaman/uldaman.cpp18
-rw-r--r--src/server/scripts/EasternKingdoms/zone_arathi_highlands.cpp6
-rw-r--r--src/server/scripts/EasternKingdoms/zone_eastern_plaguelands.cpp14
-rw-r--r--src/server/scripts/EasternKingdoms/zone_eversong_woods.cpp18
-rw-r--r--src/server/scripts/EasternKingdoms/zone_stranglethorn_vale.cpp16
43 files changed, 1162 insertions, 612 deletions
diff --git a/src/server/scripts/EasternKingdoms/AlteracValley/alterac_valley.cpp b/src/server/scripts/EasternKingdoms/AlteracValley/alterac_valley.cpp
index 5f05f21b1de..081e717254d 100644
--- a/src/server/scripts/EasternKingdoms/AlteracValley/alterac_valley.cpp
+++ b/src/server/scripts/EasternKingdoms/AlteracValley/alterac_valley.cpp
@@ -77,14 +77,14 @@ SpellPair const _auraPairs[MAX_SPELL_PAIRS] =
{ NPC_ICEBLOOD_WARMASTER, SPELL_ICEBLOOD_WARMASTER }
};
-class mob_av_marshal_or_warmaster : public CreatureScript
+class npc_av_marshal_or_warmaster : public CreatureScript
{
public:
- mob_av_marshal_or_warmaster() : CreatureScript("mob_av_marshal_or_warmaster") { }
+ npc_av_marshal_or_warmaster() : CreatureScript("npc_av_marshal_or_warmaster") { }
- struct mob_av_marshal_or_warmasterAI : public ScriptedAI
+ struct npc_av_marshal_or_warmasterAI : public ScriptedAI
{
- mob_av_marshal_or_warmasterAI(Creature* creature) : ScriptedAI(creature) { }
+ npc_av_marshal_or_warmasterAI(Creature* creature) : ScriptedAI(creature) { }
void Reset()
{
@@ -172,11 +172,11 @@ class mob_av_marshal_or_warmaster : public CreatureScript
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_av_marshal_or_warmasterAI(creature);
+ return new npc_av_marshal_or_warmasterAI(creature);
}
};
void AddSC_alterac_valley()
{
- new mob_av_marshal_or_warmaster();
+ new npc_av_marshal_or_warmaster();
}
diff --git a/src/server/scripts/EasternKingdoms/AlteracValley/boss_balinda.cpp b/src/server/scripts/EasternKingdoms/AlteracValley/boss_balinda.cpp
index d5eafbb17a6..c8de8e163d8 100644
--- a/src/server/scripts/EasternKingdoms/AlteracValley/boss_balinda.cpp
+++ b/src/server/scripts/EasternKingdoms/AlteracValley/boss_balinda.cpp
@@ -43,14 +43,14 @@ enum WaterElementalSpells
SPELL_WATERBOLT = 46983
};
-class mob_water_elemental : public CreatureScript
+class npc_water_elemental : public CreatureScript
{
public:
- mob_water_elemental() : CreatureScript("mob_water_elemental") { }
+ npc_water_elemental() : CreatureScript("npc_water_elemental") { }
- struct mob_water_elementalAI : public ScriptedAI
+ struct npc_water_elementalAI : public ScriptedAI
{
- mob_water_elementalAI(Creature* creature) : ScriptedAI(creature) {}
+ npc_water_elementalAI(Creature* creature) : ScriptedAI(creature) {}
uint32 waterBoltTimer;
uint64 balindaGUID;
@@ -88,7 +88,7 @@ public:
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_water_elementalAI(creature);
+ return new npc_water_elementalAI(creature);
}
};
@@ -134,7 +134,7 @@ public:
void JustSummoned(Creature* summoned)
{
- CAST_AI(mob_water_elemental::mob_water_elementalAI, summoned->AI())->balindaGUID = me->GetGUID();
+ CAST_AI(npc_water_elemental::npc_water_elementalAI, summoned->AI())->balindaGUID = me->GetGUID();
summoned->AI()->AttackStart(SelectTarget(SELECT_TARGET_RANDOM, 0, 50, true));
summoned->setFaction(me->getFaction());
summons.Summon(summoned);
@@ -205,5 +205,5 @@ public:
void AddSC_boss_balinda()
{
new boss_balinda;
- new mob_water_elemental;
+ new npc_water_elemental;
};
diff --git a/src/server/scripts/EasternKingdoms/BlackrockDepths/blackrock_depths.cpp b/src/server/scripts/EasternKingdoms/BlackrockDepths/blackrock_depths.cpp
index cded76874c7..8fe2778451b 100644
--- a/src/server/scripts/EasternKingdoms/BlackrockDepths/blackrock_depths.cpp
+++ b/src/server/scripts/EasternKingdoms/BlackrockDepths/blackrock_depths.cpp
@@ -54,7 +54,7 @@ enum eGrimstone
NPC_THELDREN = 16059,
//4 or 6 in total? 1+2+1 / 2+2+2 / 3+3. Depending on this, code should be changed.
- MAX_MOB_AMOUNT = 4
+ MAX_NPC_AMOUNT = 4
};
uint32 RingMob[]=
@@ -152,7 +152,7 @@ public:
MobCount = 0;
MobDeath_Timer = 0;
- for (uint8 i = 0; i < MAX_MOB_AMOUNT; ++i)
+ for (uint8 i = 0; i < MAX_NPC_AMOUNT; ++i)
RingMobGUID[i] = 0;
RingBossGUID = 0;
@@ -168,7 +168,7 @@ public:
++MobCount;
- if (MobCount == MAX_MOB_AMOUNT)
+ if (MobCount == MAX_NPC_AMOUNT)
MobDeath_Timer = 2500;
}
@@ -246,7 +246,7 @@ public:
return;
}
- for (uint8 i = 0; i < MAX_MOB_AMOUNT; ++i)
+ for (uint8 i = 0; i < MAX_NPC_AMOUNT; ++i)
{
Creature* mob = Unit::GetCreature(*me, RingMobGUID[i]);
if (mob && !mob->IsAlive() && mob->isDead())
@@ -339,7 +339,7 @@ public:
};
};
-// mob_phalanx
+// npc_phalanx
enum PhalanxSpells
{
SPELL_THUNDERCLAP = 8732,
@@ -347,19 +347,19 @@ enum PhalanxSpells
SPELL_MIGHTYBLOW = 14099
};
-class mob_phalanx : public CreatureScript
+class npc_phalanx : public CreatureScript
{
public:
- mob_phalanx() : CreatureScript("mob_phalanx") { }
+ npc_phalanx() : CreatureScript("npc_phalanx") { }
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_phalanxAI (creature);
+ return new npc_phalanxAI (creature);
}
- struct mob_phalanxAI : public ScriptedAI
+ struct npc_phalanxAI : public ScriptedAI
{
- mob_phalanxAI(Creature* creature) : ScriptedAI(creature) {}
+ npc_phalanxAI(Creature* creature) : ScriptedAI(creature) {}
uint32 ThunderClap_Timer;
uint32 FireballVolley_Timer;
@@ -680,7 +680,7 @@ public:
#define SAY_WINDSOR_4_3 "Good work! We're almost there, $N. This way."
#define SAY_WINDSOR_6 "This is it, $N. My stuff should be in that room. Cover me, I'm going in!"
#define SAY_WINDSOR_9 "Ah, there it is!"
-#define MOB_ENTRY_REGINALD_WINDSOR 9682
+#define NPC_REGINALD_WINDSOR 9682
/*
Player* playerStart;
@@ -778,7 +778,7 @@ public:
me->SetVisible(false);
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE);
- me->SummonCreature(MOB_ENTRY_REGINALD_WINDSOR, 403.61f, -51.71f, -63.92f, 3.600434f, TEMPSUMMON_DEAD_DESPAWN, 0);
+ me->SummonCreature(NPC_REGINALD_WINDSOR, 403.61f, -51.71f, -63.92f, 3.600434f, TEMPSUMMON_DEAD_DESPAWN, 0);
instance->SetData(DATA_SUPPLY_ROOM, ENCOUNTER_STATE_ENDED);
break;
}
@@ -859,8 +859,8 @@ public:
#define SAY_REGINALD_WINDSOR_14_2 "Excellent work, $N. Let's find the exit. I think I know the way. Follow me!"
#define SAY_REGINALD_WINDSOR_20_1 "We made it!"
#define SAY_REGINALD_WINDSOR_20_2 "Meet me at Maxwell's encampment. We'll go over the next stages of the plan there and figure out a way to decode my tablets without the decryption ring."
-#define MOB_ENTRY_SHILL_DINGER 9678
-#define MOB_ENTRY_CREST_KILLER 9680
+#define NPC_SHILL_DINGER 9678
+#define NPC_CREST_KILLER 9680
/*
int wp = 0;
@@ -1328,7 +1328,7 @@ void AddSC_blackrock_depths()
new go_shadowforge_brazier();
new at_ring_of_law();
new npc_grimstone();
- new mob_phalanx();
+ new npc_phalanx();
new npc_kharan_mighthammer();
new npc_lokhtos_darkbargainer();
new npc_rocknot();
diff --git a/src/server/scripts/EasternKingdoms/BlackrockSpire/blackrock_spire.h b/src/server/scripts/EasternKingdoms/BlackrockSpire/blackrock_spire.h
index ccd96ef81d2..5c34a30912a 100644
--- a/src/server/scripts/EasternKingdoms/BlackrockSpire/blackrock_spire.h
+++ b/src/server/scripts/EasternKingdoms/BlackrockSpire/blackrock_spire.h
@@ -24,13 +24,13 @@ uint32 const EncounterCount = 22;
enum DataTypes
{
- DATA_OMOKK = 0,
+ DATA_HIGHLORD_OMOKK = 0,
DATA_SHADOW_HUNTER_VOSHGAJIN = 1,
DATA_WARMASTER_VOONE = 2,
DATA_MOTHER_SMOLDERWEB = 3,
- DATA_UROK_DOOMHOWL = 4, // not scripted
+ DATA_UROK_DOOMHOWL = 4,
DATA_QUARTERMASTER_ZIGRIS = 5,
- DATA_GIZRUL_THE_SLAVENER = 6, // not scripted
+ DATA_GIZRUL_THE_SLAVENER = 6,
DATA_HALYCON = 7,
DATA_OVERLORD_WYRMTHALAK = 8,
DATA_PYROGAURD_EMBERSEER = 9,
@@ -51,7 +51,7 @@ enum DataTypes
enum CreaturesIds
{
- NPC_OMOKK = 9196,
+ NPC_HIGHLORD_OMOKK = 9196,
NPC_SHADOW_HUNTER_VOSHGAJIN = 9236,
NPC_WARMASTER_VOONE = 9237,
NPC_MOTHER_SMOLDERWEB = 10596,
@@ -69,8 +69,7 @@ enum CreaturesIds
NPC_BLACKHAND_SUMMONER = 9818,
NPC_BLACKHAND_VETERAN = 9819,
NPC_BLACKHAND_INCARCERATOR = 10316,
- NPC_LORD_VICTOR_NEFARIUS = 10162,
- NPC_REND_BLACKHAND = 10429
+ NPC_LORD_VICTOR_NEFARIUS = 10162
};
enum AdditionalData
@@ -111,7 +110,9 @@ enum GameObjectsIds
GO_EMBERSEER_RUNE_6 = 175271,
GO_EMBERSEER_RUNE_7 = 175272,
// For Gyth event
- GO_DR_PORTCULLIS = 175185
+ GO_DR_PORTCULLIS = 175185,
+ GO_PORTCULLIS_ACTIVE = 164726,
+ GO_PORTCULLIS_TOBOSSROOMS = 175186
};
#endif
diff --git a/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_gizrul_the_slavener.cpp b/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_gizrul_the_slavener.cpp
new file mode 100644
index 00000000000..e0b4d6cab18
--- /dev/null
+++ b/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_gizrul_the_slavener.cpp
@@ -0,0 +1,112 @@
+/*
+ * Copyright (C) 2008-2013 TrinityCore <http://www.trinitycore.org/>
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation; either version 2 of the License, or (at your
+ * option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include "ScriptMgr.h"
+#include "ScriptedCreature.h"
+#include "blackrock_spire.h"
+#include "TemporarySummon.h"
+
+enum Spells
+{
+ SPELL_FATAL_BITE = 16495,
+ SPELL_INFECTED_BITE = 16128,
+ SPELL_FRENZY = 8269
+};
+
+enum Paths
+{
+ GIZRUL_PATH = 402450
+};
+
+enum Events
+{
+ EVENT_FATAL_BITE = 1,
+ EVENT_INFECTED_BITE = 2,
+ EVENT_FRENZY = 3
+};
+
+class boss_gizrul_the_slavener : public CreatureScript
+{
+public:
+ boss_gizrul_the_slavener() : CreatureScript("boss_gizrul_the_slavener") { }
+
+ struct boss_gizrul_the_slavenerAI : public BossAI
+ {
+ boss_gizrul_the_slavenerAI(Creature* creature) : BossAI(creature, DATA_GIZRUL_THE_SLAVENER) {}
+
+ void Reset()
+ {
+ _Reset();
+ }
+
+ void IsSummonedBy(Unit* /*summoner*/)
+ {
+ me->GetMotionMaster()->MovePath(GIZRUL_PATH, false);
+ }
+
+ void EnterCombat(Unit* /*who*/)
+ {
+ _EnterCombat();
+ events.ScheduleEvent(EVENT_FATAL_BITE, urand(17000,20000));
+ events.ScheduleEvent(EVENT_INFECTED_BITE, urand(10000,12000));
+ }
+
+ void JustDied(Unit* /*killer*/)
+ {
+ _JustDied();
+ }
+
+ void UpdateAI(uint32 diff)
+ {
+ if (!UpdateVictim())
+ return;
+
+ events.Update(diff);
+
+ if (me->HasUnitState(UNIT_STATE_CASTING))
+ return;
+
+ while (uint32 eventId = events.ExecuteEvent())
+ {
+ switch (eventId)
+ {
+ case EVENT_FATAL_BITE:
+ DoCastVictim(SPELL_FATAL_BITE);
+ events.ScheduleEvent(EVENT_FATAL_BITE, urand(8000,10000));
+ break;
+ case EVENT_INFECTED_BITE:
+ DoCast(me, SPELL_INFECTED_BITE);
+ events.ScheduleEvent(EVENT_FATAL_BITE, urand(8000,10000));
+ break;
+ default:
+ break;
+ }
+ }
+ DoMeleeAttackIfReady();
+ }
+ };
+
+ CreatureAI* GetAI(Creature* creature) const
+ {
+ return new boss_gizrul_the_slavenerAI(creature);
+ }
+};
+
+void AddSC_boss_gizrul_the_slavener()
+{
+ new boss_gizrul_the_slavener();
+}
diff --git a/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_gyth.cpp b/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_gyth.cpp
index 75e9ad6a140..f20798d64fb 100644
--- a/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_gyth.cpp
+++ b/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_gyth.cpp
@@ -29,13 +29,21 @@ enum Spells
SPELL_SUMMON_REND = 16328 // Summons Rend near death
};
+enum Misc
+{
+ NEFARIUS_PATH_2 = 1379671,
+ NEFARIUS_PATH_3 = 1379672,
+ GYTH_PATH_1 = 1379681,
+};
+
enum Events
{
EVENT_CORROSIVE_ACID = 1,
EVENT_FREEZE = 2,
EVENT_FLAME_BREATH = 3,
EVENT_KNOCK_AWAY = 4,
- EVENT_SUMMONED = 5,
+ EVENT_SUMMONED_1 = 5,
+ EVENT_SUMMONED_2 = 6
};
class boss_gyth : public CreatureScript
@@ -51,7 +59,6 @@ public:
void Reset()
{
- _Reset();
SummonedRend = false;
if (instance->GetBossState(DATA_GYTH) == IN_PROGRESS)
{
@@ -67,23 +74,28 @@ public:
events.ScheduleEvent(EVENT_CORROSIVE_ACID, urand(8000, 16000));
events.ScheduleEvent(EVENT_FREEZE, urand(8000, 16000));
events.ScheduleEvent(EVENT_FLAME_BREATH, urand(8000, 16000));
- events.ScheduleEvent(EVENT_FLAME_BREATH, urand(12000, 18000));
+ events.ScheduleEvent(EVENT_KNOCK_AWAY, urand(12000, 18000));
}
void JustDied(Unit* /*killer*/)
{
- _JustDied();
+ instance->SetBossState(DATA_GYTH, DONE);
}
- void IsSummonedBy(Unit* /*summoner*/)
+ void SetData(uint32 /*type*/, uint32 data)
{
- events.ScheduleEvent(EVENT_SUMMONED, 8000);
+ switch (data)
+ {
+ case 1:
+ events.ScheduleEvent(EVENT_SUMMONED_1, 1000);
+ break;
+ default:
+ break;
+ }
}
void UpdateAI(uint32 diff)
{
- if (!UpdateVictim())
- return;
if (!SummonedRend && HealthBelowPct(5))
{
@@ -92,16 +104,38 @@ public:
SummonedRend = true;
}
+ if (!UpdateVictim())
+ {
+ events.Update(diff);
+
+ while (uint32 eventId = events.ExecuteEvent())
+ {
+ switch (eventId)
+ {
+ case EVENT_SUMMONED_1:
+ me->AddAura(SPELL_REND_MOUNTS, me);
+ if (GameObject* portcullis = me->FindNearestGameObject(GO_DR_PORTCULLIS, 40.0f))
+ portcullis->UseDoorOrButton();
+ if (Creature* victor = me->FindNearestCreature(NPC_LORD_VICTOR_NEFARIUS, 75.0f, true))
+ victor->AI()->SetData(1, 1);
+ events.ScheduleEvent(EVENT_SUMMONED_2, 2000);
+ break;
+ case EVENT_SUMMONED_2:
+ me->GetMotionMaster()->MovePath(GYTH_PATH_1, false);
+ break;
+ default:
+ break;
+ }
+ }
+ return;
+ }
+
events.Update(diff);
while (uint32 eventId = events.ExecuteEvent())
{
switch (eventId)
{
- case EVENT_SUMMONED:
- DoCast(me, SPELL_REND_MOUNTS);
- // Load Path
- break;
case EVENT_CORROSIVE_ACID:
DoCast(me, SPELL_CORROSIVE_ACID);
events.ScheduleEvent(EVENT_CORROSIVE_ACID, urand(10000, 16000));
diff --git a/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_halycon.cpp b/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_halycon.cpp
index 887506bc4f9..71c3efdfda2 100644
--- a/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_halycon.cpp
+++ b/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_halycon.cpp
@@ -1,6 +1,5 @@
/*
* Copyright (C) 2008-2013 TrinityCore <http://www.trinitycore.org/>
- * Copyright (C) 2006-2009 ScriptDev2 <https://scriptdev2.svn.sourceforge.net/>
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
@@ -22,34 +21,32 @@
enum Spells
{
- SPELL_CROWDPUMMEL = 10887,
- SPELL_MIGHTYBLOW = 14099,
+ SPELL_REND = 13738,
+ SPELL_THRASH = 3391,
+};
+
+enum Says
+{
+ EMOTE_DEATH = 0
};
enum Events
{
- EVENT_CROWD_PUMMEL = 1,
- EVENT_MIGHTY_BLOW = 2,
+ EVENT_REND = 1,
+ EVENT_THRASH = 2,
};
-const Position SummonLocation = { -169.839f, -324.961f, 64.401f, 3.124f };
+const Position SummonLocation = { -167.9561f, -411.7844f, 76.23057f, 1.53589f };
class boss_halycon : public CreatureScript
{
public:
boss_halycon() : CreatureScript("boss_halycon") { }
- CreatureAI* GetAI(Creature* creature) const
- {
- return new boss_halyconAI(creature);
- }
-
struct boss_halyconAI : public BossAI
{
boss_halyconAI(Creature* creature) : BossAI(creature, DATA_HALYCON) {}
- bool Summoned;
-
void Reset()
{
_Reset();
@@ -59,13 +56,16 @@ public:
void EnterCombat(Unit* /*who*/)
{
_EnterCombat();
- events.ScheduleEvent(EVENT_CROWD_PUMMEL, 8 * IN_MILLISECONDS);
- events.ScheduleEvent(EVENT_MIGHTY_BLOW, 14 * IN_MILLISECONDS);
+ events.ScheduleEvent(EVENT_REND, urand(17000,20000));
+ events.ScheduleEvent(EVENT_THRASH, urand(10000,12000));
}
void JustDied(Unit* /*killer*/)
{
- _JustDied();
+ me->SummonCreature(NPC_GIZRUL_THE_SLAVENER, SummonLocation, TEMPSUMMON_TIMED_DESPAWN, 300000);
+ Talk(EMOTE_DEATH);
+
+ Summoned = true;
}
void UpdateAI(uint32 diff)
@@ -73,13 +73,6 @@ public:
if (!UpdateVictim())
return;
- //Summon Gizrul
- if (!Summoned && HealthBelowPct(25))
- {
- me->SummonCreature(NPC_GIZRUL_THE_SLAVENER, SummonLocation, TEMPSUMMON_TIMED_DESPAWN, 300 * IN_MILLISECONDS);
- Summoned = true;
- }
-
events.Update(diff);
if (me->HasUnitState(UNIT_STATE_CASTING))
@@ -89,20 +82,27 @@ public:
{
switch (eventId)
{
- case EVENT_CROWD_PUMMEL:
- DoCastVictim(SPELL_CROWDPUMMEL);
- events.ScheduleEvent(EVENT_CROWD_PUMMEL, 14 * IN_MILLISECONDS);
+ case EVENT_REND:
+ DoCastVictim(SPELL_REND);
+ events.ScheduleEvent(EVENT_REND, urand(8000,10000));
+ break;
+ case EVENT_THRASH:
+ DoCast(me, SPELL_THRASH);
break;
- case EVENT_MIGHTY_BLOW:
- DoCastVictim(SPELL_MIGHTYBLOW);
- events.ScheduleEvent(EVENT_MIGHTY_BLOW, 10 * IN_MILLISECONDS);
+ default:
break;
}
}
DoMeleeAttackIfReady();
}
+ private:
+ bool Summoned;
};
+ CreatureAI* GetAI(Creature* creature) const
+ {
+ return new boss_halyconAI(creature);
+ }
};
void AddSC_boss_halycon()
diff --git a/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_highlord_omokk.cpp b/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_highlord_omokk.cpp
index 4cba989d737..3bd46be1c1b 100644
--- a/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_highlord_omokk.cpp
+++ b/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_highlord_omokk.cpp
@@ -22,24 +22,14 @@
enum Spells
{
- SPELL_WARSTOMP = 24375,
- SPELL_CLEAVE = 15579,
- SPELL_STRIKE = 18368,
- SPELL_REND = 18106,
- SPELL_SUNDERARMOR = 24317,
- SPELL_KNOCKAWAY = 20686,
- SPELL_SLOW = 22356,
+ SPELL_FRENZY = 8269,
+ SPELL_KNOCK_AWAY = 10101
};
enum Events
{
- EVENT_WARSTOMP = 1,
- EVENT_CLEAVE = 2,
- EVENT_STRIKE = 3,
- EVENT_REND = 4,
- EVENT_SUNDER_ARMOR = 5,
- EVENT_KNOCK_AWAY = 6,
- EVENT_SLOW = 7,
+ EVENT_FRENZY = 1,
+ EVENT_KNOCK_AWAY = 2
};
class boss_highlord_omokk : public CreatureScript
@@ -54,7 +44,7 @@ public:
struct boss_highlordomokkAI : public BossAI
{
- boss_highlordomokkAI(Creature* creature) : BossAI(creature, DATA_OMOKK) {}
+ boss_highlordomokkAI(Creature* creature) : BossAI(creature, DATA_HIGHLORD_OMOKK) {}
void Reset()
{
@@ -64,13 +54,8 @@ public:
void EnterCombat(Unit* /*who*/)
{
_EnterCombat();
- events.ScheduleEvent(EVENT_WARSTOMP, 15 * IN_MILLISECONDS);
- events.ScheduleEvent(EVENT_CLEAVE, 6 * IN_MILLISECONDS);
- events.ScheduleEvent(EVENT_STRIKE, 10 * IN_MILLISECONDS);
- events.ScheduleEvent(EVENT_REND, 14 * IN_MILLISECONDS);
- events.ScheduleEvent(EVENT_SUNDER_ARMOR, 2 * IN_MILLISECONDS);
- events.ScheduleEvent(EVENT_KNOCK_AWAY, 18 * IN_MILLISECONDS);
- events.ScheduleEvent(EVENT_SLOW, 24 * IN_MILLISECONDS);
+ events.ScheduleEvent(EVENT_FRENZY, 20000);
+ events.ScheduleEvent(EVENT_KNOCK_AWAY, 18000);
}
void JustDied(Unit* /*killer*/)
@@ -92,33 +77,15 @@ public:
{
switch (eventId)
{
- case EVENT_WARSTOMP:
- DoCastVictim(SPELL_WARSTOMP);
- events.ScheduleEvent(EVENT_WARSTOMP, 14 * IN_MILLISECONDS);
- break;
- case EVENT_CLEAVE:
- DoCastVictim(SPELL_CLEAVE);
- events.ScheduleEvent(EVENT_CLEAVE, 8 * IN_MILLISECONDS);
- break;
- case EVENT_STRIKE:
- DoCastVictim(SPELL_STRIKE);
- events.ScheduleEvent(EVENT_STRIKE, 10 * IN_MILLISECONDS);
- break;
- case EVENT_REND:
- DoCastVictim(SPELL_REND);
- events.ScheduleEvent(EVENT_REND, 18 * IN_MILLISECONDS);
- break;
- case EVENT_SUNDER_ARMOR:
- DoCastVictim(SPELL_SUNDERARMOR);
- events.ScheduleEvent(EVENT_SUNDER_ARMOR, 25 * IN_MILLISECONDS);
+ case EVENT_FRENZY:
+ DoCastVictim(SPELL_FRENZY);
+ events.ScheduleEvent(EVENT_FRENZY, 60000);
break;
case EVENT_KNOCK_AWAY:
- DoCastVictim(SPELL_KNOCKAWAY);
- events.ScheduleEvent(EVENT_KNOCK_AWAY, 12 * IN_MILLISECONDS);
+ DoCastVictim(SPELL_KNOCK_AWAY);
+ events.ScheduleEvent(EVENT_KNOCK_AWAY, 12000);
break;
- case EVENT_SLOW:
- DoCastVictim(SPELL_SLOW);
- events.ScheduleEvent(EVENT_SLOW, 18 * IN_MILLISECONDS);
+ default:
break;
}
}
diff --git a/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_pyroguard_emberseer.cpp b/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_pyroguard_emberseer.cpp
index 24a1fbad457..fdf3f0066ba 100644
--- a/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_pyroguard_emberseer.cpp
+++ b/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_pyroguard_emberseer.cpp
@@ -85,12 +85,10 @@ public:
events.Reset();
// Apply auras on spawn and reset
// DoCast(me, SPELL_FIRE_SHIELD_TRIGGER); // Need to find this in old DBC if possible
-
- instance->SetBossState(DATA_PYROGAURD_EMBERSEER, NOT_STARTED);
me->RemoveAura(SPELL_EMBERSEER_FULL_STRENGTH);
me->RemoveAura(SPELL_EMBERSEER_GROWING);
me->RemoveAura(SPELL_EMBERSEER_GROWING_TRIGGER);
- events.ScheduleEvent(EVENT_RESPAWN, 1000);
+ events.ScheduleEvent(EVENT_RESPAWN, 5000);
// Hack for missing trigger spell
events.ScheduleEvent(EVENT_FIRE_SHIELD, 3000);
@@ -209,52 +207,56 @@ public:
void UpdateAI(uint32 diff)
{
- events.Update(diff);
-
- while (uint32 eventId = events.ExecuteEvent())
+ if (!UpdateVictim())
{
- switch (eventId)
+ events.Update(diff);
+
+ while (uint32 eventId = events.ExecuteEvent())
{
- case EVENT_RESPAWN:
+ switch (eventId)
{
- // Respawn all Blackhand Incarcerators
- std::list<Creature*> creatureList;
- GetCreatureListWithEntryInGrid(creatureList, me, NPC_BLACKHAND_INCARCERATOR, 35.0f);
- for (std::list<Creature*>::iterator itr = creatureList.begin(); itr != creatureList.end(); ++itr)
- if (Creature* creatureList = *itr)
- {
- if (!creatureList->IsAlive())
+ case EVENT_RESPAWN:
+ {
+ // Respawn all Blackhand Incarcerators
+ std::list<Creature*> creatureList;
+ GetCreatureListWithEntryInGrid(creatureList, me, NPC_BLACKHAND_INCARCERATOR, 35.0f);
+ for (std::list<Creature*>::iterator itr = creatureList.begin(); itr != creatureList.end(); ++itr)
+ if (Creature* creatureList = *itr)
{
- creatureList->Respawn();
+ if (!creatureList->IsAlive())
+ {
+ creatureList->Respawn();
+ }
+ creatureList->AI()->SetData(1, 2);
}
- creatureList->AI()->SetData(1, 2);
- }
- break;
- }
- case EVENT_PRE_FIGHT_1:
- {
- // Set data on all Blackhand Incarcerators
- std::list<Creature*> creatureList;
- GetCreatureListWithEntryInGrid(creatureList, me, NPC_BLACKHAND_INCARCERATOR, 35.0f);
- for (std::list<Creature*>::iterator itr = creatureList.begin(); itr != creatureList.end(); ++itr)
+ me->AddAura(SPELL_ENCAGED_EMBERSEER, me);
+ instance->SetBossState(DATA_PYROGAURD_EMBERSEER, NOT_STARTED);
+ break;
+ }
+ case EVENT_PRE_FIGHT_1:
{
- if (Creature* creatureList = *itr)
- creatureList->AI()->SetData(1, 1);
+ // Set data on all Blackhand Incarcerators
+ std::list<Creature*> creatureList;
+ GetCreatureListWithEntryInGrid(creatureList, me, NPC_BLACKHAND_INCARCERATOR, 35.0f);
+ for (std::list<Creature*>::iterator itr = creatureList.begin(); itr != creatureList.end(); ++itr)
+ {
+ if (Creature* creatureList = *itr)
+ creatureList->AI()->SetData(1, 1);
+ }
+ events.ScheduleEvent(EVENT_PRE_FIGHT_2, 32000);
+ break;
}
- events.ScheduleEvent(EVENT_PRE_FIGHT_2, 32000);
- break;
- }
- case EVENT_PRE_FIGHT_2:
- me->CastSpell(me, SPELL_FREEZE_ANIM);
- me->CastSpell(me, SPELL_EMBERSEER_GROWING);
- Talk(EMOTE_ONE_STACK);
- break;
- case EVENT_FIRE_SHIELD:
- // #### Spell isn't doing any damage ??? ####
- DoCast(me, SPELL_FIRE_SHIELD);
- events.ScheduleEvent(EVENT_FIRE_SHIELD, 3000);
- break;
- case EVENT_PLAYER_CHECK:
+ case EVENT_PRE_FIGHT_2:
+ me->CastSpell(me, SPELL_FREEZE_ANIM);
+ me->CastSpell(me, SPELL_EMBERSEER_GROWING);
+ Talk(EMOTE_ONE_STACK);
+ break;
+ case EVENT_FIRE_SHIELD:
+ // #### Spell isn't doing any damage ??? ####
+ DoCast(me, SPELL_FIRE_SHIELD);
+ events.ScheduleEvent(EVENT_FIRE_SHIELD, 3000);
+ break;
+ case EVENT_PLAYER_CHECK:
{
// Check to see if all players in instance have aura SPELL_EMBERSEER_START before starting event
bool _hasAura = true;
@@ -269,32 +271,40 @@ public:
events.ScheduleEvent(EVENT_PRE_FIGHT_1, 1000);
instance->SetBossState(DATA_PYROGAURD_EMBERSEER, IN_PROGRESS);
}
- break;
+ break;
}
- case EVENT_ENTER_COMBAT:
- AttackStart(me->SelectNearestPlayer(30.0f));
+ case EVENT_ENTER_COMBAT:
+ AttackStart(me->SelectNearestPlayer(30.0f));
+ break;
+ default:
+ break;
+ }
+ }
+ return;
+ }
+
+ events.Update(diff);
+
+ while (uint32 eventId = events.ExecuteEvent())
+ {
+ switch (eventId)
+ {
+ case EVENT_FIRE_SHIELD:
+ DoCast(me, SPELL_FIRE_SHIELD);
+ events.ScheduleEvent(EVENT_FIRE_SHIELD, 3000);
break;
case EVENT_FIRENOVA:
- if (UpdateVictim())
- {
- DoCast(me, SPELL_FIRENOVA);
+ DoCast(me, SPELL_FIRENOVA);
events.ScheduleEvent(EVENT_FIRENOVA, 6000);
- }
break;
case EVENT_FLAMEBUFFET:
- if (UpdateVictim())
- {
- DoCast(me, SPELL_FLAMEBUFFET);
+ DoCast(me, SPELL_FLAMEBUFFET);
events.ScheduleEvent(EVENT_FLAMEBUFFET, 14000);
- }
break;
case EVENT_PYROBLAST:
- if (UpdateVictim())
- {
- if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0, 100, true))
- DoCast(target, SPELL_PYROBLAST);
+ if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0, 100, true))
+ DoCast(target, SPELL_PYROBLAST);
events.ScheduleEvent(EVENT_PYROBLAST, 15000);
- }
break;
default:
break;
@@ -355,7 +365,7 @@ public:
if (data == 1 && value == 2)
{
- _events.ScheduleEvent(EVENT_ENCAGED_EMBERSEER, 5000);
+ _events.ScheduleEvent(EVENT_ENCAGED_EMBERSEER, 1000);
}
}
@@ -364,18 +374,28 @@ public:
// Used to close doors
if (Creature* Emberseer = me->FindNearestCreature(NPC_PYROGAURD_EMBERSEER, 30.0f, true))
Emberseer->AI()->SetData(1, 2);
- me->CallForHelp(60.0f);
+
+ // Had to do this because CallForHelp will ignore any npcs without LOS
+ std::list<Creature*> creatureList;
+ GetCreatureListWithEntryInGrid(creatureList, me, NPC_BLACKHAND_INCARCERATOR, 60.0f);
+ for (std::list<Creature*>::iterator itr = creatureList.begin(); itr != creatureList.end(); ++itr)
+ {
+ if (Creature* creatureList = *itr)
+ creatureList->SetInCombatWithZone(); // AI()->AttackStart(me->GetVictim());
+ }
+
_events.ScheduleEvent(EVENT_STRIKE, urand(8000, 16000));
_events.ScheduleEvent(EVENT_ENCAGE, urand(10000, 20000));
- me->CallForHelp(60.0f); // double call because not all are aggroing on first call.
}
void UpdateAI(uint32 diff)
{
- _events.Update(diff);
+
if (!UpdateVictim())
{
+ _events.Update(diff);
+
while (uint32 eventId = _events.ExecuteEvent())
{
switch (eventId)
@@ -391,6 +411,8 @@ public:
return;
}
+ _events.Update(diff);
+
while (uint32 eventId = _events.ExecuteEvent())
{
switch (eventId)
diff --git a/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_quartermaster_zigris.cpp b/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_quartermaster_zigris.cpp
index f735159afb6..fec82982504 100644
--- a/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_quartermaster_zigris.cpp
+++ b/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_quartermaster_zigris.cpp
@@ -1,6 +1,5 @@
/*
* Copyright (C) 2008-2013 TrinityCore <http://www.trinitycore.org/>
- * Copyright (C) 2006-2009 ScriptDev2 <https://scriptdev2.svn.sourceforge.net/>
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
@@ -39,11 +38,6 @@ class quartermaster_zigris : public CreatureScript
public:
quartermaster_zigris() : CreatureScript("quartermaster_zigris") { }
- CreatureAI* GetAI(Creature* creature) const
- {
- return new boss_quatermasterzigrisAI(creature);
- }
-
struct boss_quatermasterzigrisAI : public BossAI
{
boss_quatermasterzigrisAI(Creature* creature) : BossAI(creature, DATA_QUARTERMASTER_ZIGRIS) {}
@@ -56,8 +50,8 @@ public:
void EnterCombat(Unit* /*who*/)
{
_EnterCombat();
- events.ScheduleEvent(EVENT_SHOOT, 1 * IN_MILLISECONDS);
- events.ScheduleEvent(EVENT_STUN_BOMB, 16 * IN_MILLISECONDS);
+ events.ScheduleEvent(EVENT_SHOOT, 1000);
+ events.ScheduleEvent(EVENT_STUN_BOMB, 16000);
}
void JustDied(Unit* /*killer*/)
@@ -85,13 +79,18 @@ public:
break;
case EVENT_STUN_BOMB:
DoCastVictim(SPELL_STUNBOMB);
- events.ScheduleEvent(EVENT_STUN_BOMB, 14 * IN_MILLISECONDS);
+ events.ScheduleEvent(EVENT_STUN_BOMB, 14000);
break;
}
}
DoMeleeAttackIfReady();
}
};
+
+ CreatureAI* GetAI(Creature* creature) const
+ {
+ return new boss_quatermasterzigrisAI(creature);
+ }
};
void AddSC_boss_quatermasterzigris()
diff --git a/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_rend_blackhand.cpp b/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_rend_blackhand.cpp
index 42518988e63..eca24289945 100644
--- a/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_rend_blackhand.cpp
+++ b/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_rend_blackhand.cpp
@@ -27,7 +27,7 @@ enum Spells
SPELL_CLEAVE = 15284,
SPELL_MORTAL_STRIKE = 16856,
SPELL_FRENZY = 8269,
- SPELL_KNOCKDOWN = 13360 // On spawn during Gyth fight
+ SPELL_KNOCKDOWN = 13360 // On spawn during Gyth fight
};
enum Says
@@ -37,16 +37,16 @@ enum Says
SAY_BLACKHAND_2 = 1,
EMOTE_BLACKHAND_DISMOUNT = 2,
// Victor Nefarius
- SAY_NEFARIUS_1 = 0,
- SAY_NEFARIUS_2 = 1,
- SAY_NEFARIUS_3 = 2,
- SAY_NEFARIUS_4 = 3,
- SAY_NEFARIUS_5 = 4,
- SAY_NEFARIUS_6 = 5,
- SAY_NEFARIUS_7 = 6,
- SAY_NEFARIUS_8 = 7,
- SAY_NEFARIUS_9 = 8,
- SAY_NEFARIUS_10 = 9,
+ SAY_NEFARIUS_0 = 0,
+ SAY_NEFARIUS_1 = 1,
+ SAY_NEFARIUS_2 = 2,
+ SAY_NEFARIUS_3 = 3,
+ SAY_NEFARIUS_4 = 4,
+ SAY_NEFARIUS_5 = 5,
+ SAY_NEFARIUS_6 = 6,
+ SAY_NEFARIUS_7 = 7,
+ SAY_NEFARIUS_8 = 8,
+ SAY_NEFARIUS_9 = 9,
};
enum Adds
@@ -55,6 +55,16 @@ enum Adds
NPC_CHROMATIC_DRAGONSPAWN = 10447,
NPC_BLACKHAND_DRAGON_HANDLER = 10742
};
+
+enum Misc
+{
+ NEFARIUS_PATH_1 = 1379670,
+ NEFARIUS_PATH_2 = 1379671,
+ NEFARIUS_PATH_3 = 1379672,
+ REND_PATH_1 = 1379680,
+ REND_PATH_2 = 1379681,
+};
+
/*
struct Wave
{
@@ -106,19 +116,45 @@ static Wave Wave6[]= // 27 sec
{ 10442, 212.2642f, -430.7648f, 110.9807f, 5.934119f }
};
*/
+
+Position const GythLoc = { 211.762f, -397.5885f, 111.1817f, 4.747295f };
+Position const Teleport1Loc = { 194.2993f, -474.0814f, 121.4505f, -0.01225555f };
+Position const Teleport2Loc = { 216.485f, -434.93f, 110.888f, -0.01225555f };
+
enum Events
{
- EVENT_WHIRLWIND = 1,
- EVENT_CLEAVE = 2,
- EVENT_MORTAL_STRIKE = 3,
-
- EVENT_GYTH_1 = 5,
- EVENT_GYTH_2 = 6,
- EVENT_GYTH_3 = 7,
- EVENT_GYTH_4 = 8,
- EVENT_GYTH_5 = 9,
- EVENT_GYTH_6 = 10,
- EVENT_PORTCULLIS = 11,
+ EVENT_START_1 = 1,
+ EVENT_START_2 = 2,
+ EVENT_START_3 = 3,
+ EVENT_START_4 = 4,
+ EVENT_TURN_TO_REND = 5,
+ EVENT_TURN_TO_PLAYER = 6,
+ EVENT_TURN_TO_FACING_1 = 7,
+ EVENT_TURN_TO_FACING_2 = 8,
+ EVENT_TURN_TO_FACING_3 = 9,
+ EVENT_WAVE_1 = 10,
+ EVENT_WAVE_2 = 11,
+ EVENT_WAVE_3 = 12,
+ EVENT_WAVE_4 = 13,
+ EVENT_WAVE_5 = 14,
+ EVENT_WAVE_6 = 15,
+ EVENT_WAVES_TEXT_1 = 16,
+ EVENT_WAVES_TEXT_2 = 17,
+ EVENT_WAVES_TEXT_3 = 18,
+ EVENT_WAVES_TEXT_4 = 19,
+ EVENT_WAVES_TEXT_5 = 20,
+ EVENT_WAVES_COMPLETE_TEXT_1 = 21,
+ EVENT_WAVES_COMPLETE_TEXT_2 = 22,
+ EVENT_WAVES_COMPLETE_TEXT_3 = 23,
+ EVENT_WAVES_EMOTE_1 = 24,
+ EVENT_WAVES_EMOTE_2 = 25,
+ EVENT_PATH_REND = 26,
+ EVENT_PATH_NEFARIUS = 27,
+ EVENT_TELEPORT_1 = 28,
+ EVENT_TELEPORT_2 = 29,
+ EVENT_WHIRLWIND = 30,
+ EVENT_CLEAVE = 31,
+ EVENT_MORTAL_STRIKE = 32,
};
class boss_rend_blackhand : public CreatureScript
@@ -133,53 +169,66 @@ public:
void Reset()
{
_Reset();
- _gythEvent = false;
- _victorGUID = 0;
- _portcullisGUID = 0;
+ gythEvent = false;
+ victorGUID = 0;
}
void EnterCombat(Unit* /*who*/)
{
_EnterCombat();
- events.ScheduleEvent(EVENT_WHIRLWIND, 13000);
- events.ScheduleEvent(EVENT_CLEAVE, 15000);
- events.ScheduleEvent(EVENT_MORTAL_STRIKE, 17000);
+ events.ScheduleEvent(EVENT_WHIRLWIND, urand (13000, 15000));
+ events.ScheduleEvent(EVENT_CLEAVE, urand (15000, 17000));
+ events.ScheduleEvent(EVENT_MORTAL_STRIKE, urand (17000, 19000));
}
void JustDied(Unit* /*killer*/)
{
_JustDied();
- // Do data set on victor
+ if (Creature* victor = me->FindNearestCreature(NPC_LORD_VICTOR_NEFARIUS, 75.0f, true))
+ victor->AI()->SetData(1, 2);
}
void SetData(uint32 type, uint32 data)
{
if (instance && type == AREATRIGGER && data == AREATRIGGER_BLACKROCK_STADIUM)
{
- if (!_gythEvent)
+ if (!gythEvent)
{
- _gythEvent = true;
+ gythEvent = true;
if (Creature* victor = me->FindNearestCreature(NPC_LORD_VICTOR_NEFARIUS, 5.0f, true))
- _victorGUID = victor->GetGUID();
+ victorGUID = victor->GetGUID();
if (GameObject* portcullis = me->FindNearestGameObject(GO_DR_PORTCULLIS, 50.0f))
- _portcullisGUID = portcullis->GetGUID();
+ portcullisGUID = portcullis->GetGUID();
- if (Creature* victor = me->GetCreature(*me, _victorGUID))
- {
- if (Unit* player = victor->SelectNearestPlayer(40.0f))
- victor->SetInFront(player);
- }
+ events.ScheduleEvent(EVENT_TURN_TO_PLAYER, 0);
+ events.ScheduleEvent(EVENT_START_1, 1000);
}
+ }
+ }
- events.ScheduleEvent(EVENT_GYTH_1, 1000);
+ void MovementInform(uint32 type, uint32 id)
+ {
+ if (type == WAYPOINT_MOTION_TYPE)
+ {
+ switch (id)
+ {
+ case 5:
+ events.ScheduleEvent(EVENT_TELEPORT_1, 2000);
+ break;
+ case 11:
+ if (Creature* gyth = me->FindNearestCreature(NPC_GYTH, 10.0f, true))
+ gyth->AI()->SetData(1, 1);
+ me->DespawnOrUnsummon(1000);
+ break;
+ }
}
}
void UpdateAI(uint32 diff)
{
- if (_gythEvent)
+ if (gythEvent)
{
events.Update(diff);
@@ -187,28 +236,161 @@ public:
{
switch (eventId)
{
- case EVENT_GYTH_1:
- if (Creature* victor = me->GetCreature(*me, _victorGUID))
- victor->AI()->Talk(SAY_NEFARIUS_1);
- events.ScheduleEvent(EVENT_GYTH_2, 4000);
+ case EVENT_START_1:
+ if (Creature* victor = me->GetCreature(*me, victorGUID))
+ victor->AI()->Talk(SAY_NEFARIUS_0);
+ events.ScheduleEvent(EVENT_START_2, 4000);
break;
- case EVENT_GYTH_2:
- if (Creature* victor = me->GetCreature(*me, _victorGUID))
+ case EVENT_START_2:
+ events.ScheduleEvent(EVENT_TURN_TO_PLAYER, 0);
+ if (Creature* victor = me->GetCreature(*me, victorGUID))
victor->HandleEmoteCommand(EMOTE_ONESHOT_POINT);
- events.ScheduleEvent(EVENT_GYTH_3, 4000);
+ events.ScheduleEvent(EVENT_START_3, 4000);
+ break;
+ case EVENT_START_3:
+ if (Creature* victor = me->GetCreature(*me, victorGUID))
+ victor->AI()->Talk(SAY_NEFARIUS_1);
+ events.ScheduleEvent(EVENT_WAVE_1, 2000);
+ events.ScheduleEvent(EVENT_TURN_TO_REND, 4000);
+ events.ScheduleEvent(EVENT_WAVES_TEXT_1, 20000);
+ break;
+ case EVENT_TURN_TO_REND:
+ if (Creature* victor = me->GetCreature(*me, victorGUID))
+ {
+ victor->SetFacingToObject(me);
+ victor->HandleEmoteCommand(EMOTE_ONESHOT_TALK);
+ }
+ break;
+ case EVENT_TURN_TO_PLAYER:
+ if (Creature* victor = me->GetCreature(*me, victorGUID))
+ if (Unit* player = victor->SelectNearestPlayer(60.0f))
+ victor->SetFacingToObject(player);
+ break;
+ case EVENT_TURN_TO_FACING_1:
+ if (Creature* victor = me->GetCreature(*me, victorGUID))
+ victor->SetFacingTo(1.518436f);
+ break;
+ case EVENT_TURN_TO_FACING_2:
+ me->SetFacingTo(1.658063f);
+ break;
+ case EVENT_TURN_TO_FACING_3:
+ me->SetFacingTo(1.500983f);
+ break;
+ case EVENT_WAVES_EMOTE_1:
+ if (Creature* victor = me->GetCreature(*me, victorGUID))
+ victor->HandleEmoteCommand(EMOTE_ONESHOT_QUESTION);
+ break;
+ case EVENT_WAVES_EMOTE_2:
+ me->HandleEmoteCommand(EMOTE_ONESHOT_ROAR);
+ break;
+ case EVENT_WAVES_TEXT_1:
+ events.ScheduleEvent(EVENT_TURN_TO_PLAYER, 0);
+ if (Creature* victor = me->GetCreature(*me, victorGUID))
+ victor->AI()->Talk(SAY_NEFARIUS_2);
+ me->HandleEmoteCommand(EMOTE_ONESHOT_TALK);
+ events.ScheduleEvent(EVENT_TURN_TO_FACING_1, 4000);
+ events.ScheduleEvent(EVENT_WAVES_EMOTE_1, 5000);
+ events.ScheduleEvent(EVENT_WAVE_2, 2000);
+ events.ScheduleEvent(EVENT_WAVES_TEXT_2, 20000);
break;
- case EVENT_GYTH_3:
- if (Creature* victor = me->GetCreature(*me, _victorGUID))
- victor->AI()->Talk(SAY_NEFARIUS_2);
- events.ScheduleEvent(EVENT_PORTCULLIS, 2000);
- events.ScheduleEvent(EVENT_GYTH_4, 4000);
+ case EVENT_WAVES_TEXT_2:
+ events.ScheduleEvent(EVENT_TURN_TO_PLAYER, 0);
+ if (Creature* victor = me->GetCreature(*me, victorGUID))
+ victor->AI()->Talk(SAY_NEFARIUS_3);
+ events.ScheduleEvent(EVENT_TURN_TO_FACING_1, 4000);
+ events.ScheduleEvent(EVENT_WAVE_3, 2000);
+ events.ScheduleEvent(EVENT_WAVES_TEXT_3, 20000);
break;
- case EVENT_GYTH_4:
- if (Creature* victor = me->GetCreature(*me, _victorGUID))
- victor->SetInFront(me);
+ case EVENT_WAVES_TEXT_3:
+ events.ScheduleEvent(EVENT_TURN_TO_PLAYER, 0);
+ if (Creature* victor = me->GetCreature(*me, victorGUID))
+ victor->AI()->Talk(SAY_NEFARIUS_4);
+ events.ScheduleEvent(EVENT_TURN_TO_FACING_1, 4000);
+ events.ScheduleEvent(EVENT_WAVE_4, 2000);
+ events.ScheduleEvent(EVENT_WAVES_TEXT_4, 20000);
break;
- case EVENT_PORTCULLIS:
- if (GameObject* portcullis = me->FindNearestGameObject(GO_DR_PORTCULLIS, 50.0f))
+ case EVENT_WAVES_TEXT_4:
+ Talk(SAY_BLACKHAND_1);
+ events.ScheduleEvent(EVENT_WAVES_EMOTE_2, 4000);
+ events.ScheduleEvent(EVENT_TURN_TO_FACING_3, 8000);
+ events.ScheduleEvent(EVENT_WAVE_5, 2000);
+ events.ScheduleEvent(EVENT_WAVES_TEXT_5, 20000);
+ break;
+ case EVENT_WAVES_TEXT_5:
+ events.ScheduleEvent(EVENT_TURN_TO_PLAYER, 0);
+ if (Creature* victor = me->GetCreature(*me, victorGUID))
+ victor->AI()->Talk(SAY_NEFARIUS_5);
+ events.ScheduleEvent(EVENT_TURN_TO_FACING_1, 4000);
+ events.ScheduleEvent(EVENT_WAVE_6, 2000);
+ events.ScheduleEvent(EVENT_WAVES_COMPLETE_TEXT_1, 20000);
+ break;
+ case EVENT_WAVES_COMPLETE_TEXT_1:
+ events.ScheduleEvent(EVENT_TURN_TO_PLAYER, 0);
+ if (Creature* victor = me->GetCreature(*me, victorGUID))
+ victor->AI()->Talk(SAY_NEFARIUS_6);
+ events.ScheduleEvent(EVENT_TURN_TO_FACING_1, 4000);
+ events.ScheduleEvent(EVENT_WAVES_COMPLETE_TEXT_2, 13000);
+ break;
+ case EVENT_WAVES_COMPLETE_TEXT_2:
+ if (Creature* victor = me->GetCreature(*me, victorGUID))
+ victor->AI()->Talk(SAY_NEFARIUS_7);
+ Talk(SAY_BLACKHAND_2);
+ events.ScheduleEvent(EVENT_PATH_REND, 1000);
+ events.ScheduleEvent(EVENT_WAVES_COMPLETE_TEXT_3, 4000);
+ break;
+ case EVENT_WAVES_COMPLETE_TEXT_3:
+ if (Creature* victor = me->GetCreature(*me, victorGUID))
+ victor->AI()->Talk(SAY_NEFARIUS_8);
+ events.ScheduleEvent(EVENT_PATH_NEFARIUS, 1000);
+ events.ScheduleEvent(EVENT_PATH_REND, 1000);
+ break;
+ case EVENT_PATH_NEFARIUS:
+ if (Creature* victor = me->GetCreature(*me, victorGUID))
+ victor->GetMotionMaster()->MovePath(NEFARIUS_PATH_1, true);
+ break;
+ case EVENT_PATH_REND:
+ me->GetMotionMaster()->MovePath(REND_PATH_1, false);
+ break;
+ case EVENT_TELEPORT_1:
+ me->NearTeleportTo(194.2993f, -474.0814f, 121.4505f, -0.01225555f);
+ events.ScheduleEvent(EVENT_TELEPORT_2, 50000);
+ break;
+ case EVENT_TELEPORT_2:
+ me->NearTeleportTo(216.485f, -434.93f, 110.888f, -0.01225555f);
+ me->SummonCreature(NPC_GYTH, 211.762f, -397.5885f, 111.1817f, 4.747295f);
+ break;
+ case EVENT_WAVE_1:
+ if (GameObject* portcullis = me->GetMap()->GetGameObject(portcullisGUID))
+ portcullis->UseDoorOrButton();
+ // move wave
+ break;
+ case EVENT_WAVE_2:
+ // spawn wave
+ if (GameObject* portcullis = me->GetMap()->GetGameObject(portcullisGUID))
+ portcullis->UseDoorOrButton();
+ // move wave
+ break;
+ case EVENT_WAVE_3:
+ // spawn wave
+ if (GameObject* portcullis = me->GetMap()->GetGameObject(portcullisGUID))
+ portcullis->UseDoorOrButton();
+ // move wave
+ break;
+ case EVENT_WAVE_4:
+ // spawn wave
+ if (GameObject* portcullis = me->GetMap()->GetGameObject(portcullisGUID))
+ portcullis->UseDoorOrButton();
+ // move wave
+ break;
+ case EVENT_WAVE_5:
+ // spawn wave
+ if (GameObject* portcullis = me->GetMap()->GetGameObject(portcullisGUID))
+ portcullis->UseDoorOrButton();
+ // move wave
+ break;
+ case EVENT_WAVE_6:
+ // spawn wave
+ if (GameObject* portcullis = me->GetMap()->GetGameObject(portcullisGUID))
portcullis->UseDoorOrButton();
// move wave
break;
@@ -236,21 +418,21 @@ public:
break;
case EVENT_CLEAVE:
DoCastVictim(SPELL_CLEAVE);
- events.ScheduleEvent(EVENT_CLEAVE, 10000);
+ events.ScheduleEvent(EVENT_CLEAVE, urand(10000, 14000));
break;
case EVENT_MORTAL_STRIKE:
DoCastVictim(SPELL_MORTAL_STRIKE);
- events.ScheduleEvent(EVENT_MORTAL_STRIKE, 16000);
+ events.ScheduleEvent(EVENT_MORTAL_STRIKE, urand(14000, 16000));
break;
}
}
DoMeleeAttackIfReady();
}
- private:
- bool _gythEvent;
- uint64 _victorGUID;
- uint64 _portcullisGUID;
+ private:
+ bool gythEvent;
+ uint64 victorGUID;
+ uint64 portcullisGUID;
};
CreatureAI* GetAI(Creature* creature) const
diff --git a/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_urok_doomhowl.cpp b/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_urok_doomhowl.cpp
new file mode 100644
index 00000000000..dd21d6ebdb0
--- /dev/null
+++ b/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_urok_doomhowl.cpp
@@ -0,0 +1,108 @@
+/*
+ * Copyright (C) 2008-2013 TrinityCore <http://www.trinitycore.org/>
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation; either version 2 of the License, or (at your
+ * option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include "ScriptMgr.h"
+#include "ScriptedCreature.h"
+#include "blackrock_spire.h"
+
+enum Spells
+{
+ SPELL_REND = 16509,
+ SPELL_STRIKE = 15580,
+ SPELL_INTIMIDATING_ROAR = 16508
+};
+
+enum Says
+{
+ SAY_SUMMON = 0,
+ SAY_AGGRO = 1,
+};
+
+enum Events
+{
+ EVENT_REND = 1,
+ EVENT_STRIKE = 2,
+ EVENT_INTIMIDATING_ROAR = 3
+};
+
+class boss_urok_doomhowl : public CreatureScript
+{
+public:
+ boss_urok_doomhowl() : CreatureScript("boss_urok_doomhowl") { }
+
+ struct boss_urok_doomhowlAI : public BossAI
+ {
+ boss_urok_doomhowlAI(Creature* creature) : BossAI(creature, DATA_UROK_DOOMHOWL) {}
+
+ void Reset()
+ {
+ _Reset();
+ }
+
+ void EnterCombat(Unit* /*who*/)
+ {
+ _EnterCombat();
+ events.ScheduleEvent(SPELL_REND, urand(17000,20000));
+ events.ScheduleEvent(SPELL_STRIKE, urand(10000,12000));
+ Talk(SAY_AGGRO);
+ }
+
+ void JustDied(Unit* /*killer*/)
+ {
+ _JustDied();
+ }
+
+ void UpdateAI(uint32 diff)
+ {
+ if (!UpdateVictim())
+ return;
+
+ events.Update(diff);
+
+ if (me->HasUnitState(UNIT_STATE_CASTING))
+ return;
+
+ while (uint32 eventId = events.ExecuteEvent())
+ {
+ switch (eventId)
+ {
+ case SPELL_REND:
+ DoCastVictim(SPELL_REND);
+ events.ScheduleEvent(SPELL_REND, urand(8000,10000));
+ break;
+ case SPELL_STRIKE:
+ DoCastVictim(SPELL_STRIKE);
+ events.ScheduleEvent(SPELL_STRIKE, urand(8000,10000));
+ break;
+ default:
+ break;
+ }
+ }
+ DoMeleeAttackIfReady();
+ }
+ };
+
+ CreatureAI* GetAI(Creature* creature) const
+ {
+ return new boss_urok_doomhowlAI(creature);
+ }
+};
+
+void AddSC_boss_urok_doomhowl()
+{
+ new boss_urok_doomhowl();
+}
diff --git a/src/server/scripts/EasternKingdoms/BlackrockSpire/instance_blackrock_spire.cpp b/src/server/scripts/EasternKingdoms/BlackrockSpire/instance_blackrock_spire.cpp
index 7b80f75255a..ff0ff496b5a 100644
--- a/src/server/scripts/EasternKingdoms/BlackrockSpire/instance_blackrock_spire.cpp
+++ b/src/server/scripts/EasternKingdoms/BlackrockSpire/instance_blackrock_spire.cpp
@@ -46,31 +46,34 @@ public:
instance_blackrock_spireMapScript(InstanceMap* map) : InstanceScript(map)
{
SetBossNumber(EncounterCount);
- HighlordOmokk = 0;
- ShadowHunterVoshgajin = 0;
- WarMasterVoone = 0;
- MotherSmolderweb = 0;
- UrokDoomhowl = 0;
- QuartermasterZigris = 0;
- GizrultheSlavener = 0;
- Halycon = 0;
- OverlordWyrmthalak = 0;
- PyroguardEmberseer = 0;
- WarchiefRendBlackhand = 0;
- Gyth = 0;
- TheBeast = 0;
- GeneralDrakkisath = 0;
- go_emberseerin = 0;
- go_doors = 0;
- go_emberseerout = 0;
- go_blackrockaltar = 0;
+ HighlordOmokk = 0;
+ ShadowHunterVoshgajin = 0;
+ WarMasterVoone = 0;
+ MotherSmolderweb = 0;
+ UrokDoomhowl = 0;
+ QuartermasterZigris = 0;
+ GizrultheSlavener = 0;
+ Halycon = 0;
+ OverlordWyrmthalak = 0;
+ PyroguardEmberseer = 0;
+ WarchiefRendBlackhand = 0;
+ Gyth = 0;
+ LordVictorNefarius = 0;
+ TheBeast = 0;
+ GeneralDrakkisath = 0;
+ go_emberseerin = 0;
+ go_doors = 0;
+ go_emberseerout = 0;
+ go_blackrockaltar = 0;
+ go_portcullis_active = 0;
+ go_portcullis_tobossrooms = 0;
}
void OnCreatureCreate(Creature* creature)
{
switch (creature->GetEntry())
{
- case NPC_OMOKK:
+ case NPC_HIGHLORD_OMOKK:
HighlordOmokk = creature->GetGUID();
break;
case NPC_SHADOW_HUNTER_VOSHGAJIN:
@@ -91,19 +94,21 @@ public:
case NPC_GIZRUL_THE_SLAVENER:
GizrultheSlavener = creature->GetGUID();
break;
- case NPC_HALYCON:
+ case NPC_HALYCON:
Halycon = creature->GetGUID();
break;
- case NPC_OVERLORD_WYRMTHALAK:
+ case NPC_OVERLORD_WYRMTHALAK:
OverlordWyrmthalak = creature->GetGUID();
break;
- case NPC_PYROGAURD_EMBERSEER:
+ case NPC_PYROGAURD_EMBERSEER:
PyroguardEmberseer = creature->GetGUID();
if (GetBossState(DATA_PYROGAURD_EMBERSEER) == DONE)
creature->DisappearAndDie();
break;
- case NPC_WARCHIEF_REND_BLACKHAND:
+ case NPC_WARCHIEF_REND_BLACKHAND:
WarchiefRendBlackhand = creature->GetGUID();
+ if (GetBossState(DATA_GYTH) == DONE)
+ creature->DisappearAndDie();
break;
case NPC_GYTH:
Gyth = creature->GetGUID();
@@ -114,9 +119,10 @@ public:
case NPC_GENERAL_DRAKKISATH:
GeneralDrakkisath = creature->GetGUID();
break;
- case NPC_BLACKHAND_DREADWEAVER:
- case NPC_BLACKHAND_SUMMONER:
- case NPC_BLACKHAND_VETERAN:
+ case NPC_LORD_VICTOR_NEFARIUS:
+ LordVictorNefarius = creature->GetGUID();
+ if (GetBossState(DATA_GYTH) == DONE)
+ creature->DisappearAndDie();
break;
}
}
@@ -213,6 +219,18 @@ public:
if (GetBossState(DATA_PYROGAURD_EMBERSEER) == DONE)
HandleGameObject(0, false, go);
break;
+ case GO_PORTCULLIS_ACTIVE:
+ go_portcullis_active = go->GetGUID();
+ if (GetBossState(DATA_GYTH) == DONE)
+ HandleGameObject(0, true, go);
+ break;
+ case GO_PORTCULLIS_TOBOSSROOMS:
+ go_portcullis_tobossrooms = go->GetGUID();
+ if (GetBossState(DATA_GYTH) == DONE)
+ HandleGameObject(0, true, go);
+ break;
+ default:
+ break;
}
}
@@ -223,7 +241,7 @@ public:
switch (type)
{
- case DATA_OMOKK:
+ case DATA_HIGHLORD_OMOKK:
case DATA_SHADOW_HUNTER_VOSHGAJIN:
case DATA_WARMASTER_VOONE:
case DATA_MOTHER_SMOLDERWEB:
@@ -281,7 +299,7 @@ public:
{
switch (type)
{
- case DATA_OMOKK:
+ case DATA_HIGHLORD_OMOKK:
return HighlordOmokk;
break;
case DATA_SHADOW_HUNTER_VOSHGAJIN:
@@ -374,6 +392,12 @@ public:
case GO_EMBERSEER_RUNE_7:
return go_emberseerrunes[6];
break;
+ case GO_PORTCULLIS_ACTIVE:
+ return go_portcullis_active;
+ break;
+ case GO_PORTCULLIS_TOBOSSROOMS:
+ return go_portcullis_tobossrooms;
+ break;
}
return 0;
}
@@ -437,7 +461,10 @@ public:
{
bool _mobAlive = false;
rune = instance->GetGameObject(go_roomrunes[i]);
- if (rune && rune->GetGoState() == GO_STATE_ACTIVE)
+ if (!rune)
+ continue;
+
+ if (rune->GetGoState() == GO_STATE_ACTIVE)
{
for (uint8 ii = 0; ii < 5; ++ii)
{
@@ -551,6 +578,7 @@ public:
uint64 PyroguardEmberseer;
uint64 WarchiefRendBlackhand;
uint64 Gyth;
+ uint64 LordVictorNefarius;
uint64 TheBeast;
uint64 GeneralDrakkisath;
uint64 go_emberseerin;
@@ -559,7 +587,9 @@ public:
uint64 go_blackrockaltar;
uint64 go_roomrunes[7];
uint64 go_emberseerrunes[7];
- uint64 runecreaturelist[7] [5];
+ uint64 runecreaturelist[7][5];
+ uint64 go_portcullis_active;
+ uint64 go_portcullis_tobossrooms;
};
InstanceScript* GetInstanceScript(InstanceMap* map) const
@@ -609,7 +639,7 @@ public:
if (!instance)
return false;
- if (Creature* rend = player->FindNearestCreature(NPC_REND_BLACKHAND, 50.0f))
+ if (Creature* rend = player->FindNearestCreature(NPC_WARCHIEF_REND_BLACKHAND, 50.0f))
{
rend->AI()->SetData(AREATRIGGER, AREATRIGGER_BLACKROCK_STADIUM);
return true;
diff --git a/src/server/scripts/EasternKingdoms/BlackwingLair/boss_nefarian.cpp b/src/server/scripts/EasternKingdoms/BlackwingLair/boss_nefarian.cpp
index fde21c63840..97595e55b5e 100644
--- a/src/server/scripts/EasternKingdoms/BlackwingLair/boss_nefarian.cpp
+++ b/src/server/scripts/EasternKingdoms/BlackwingLair/boss_nefarian.cpp
@@ -34,14 +34,28 @@ enum Events
EVENT_VEILOFSHADOW = 6,
EVENT_CLEAVE = 7,
EVENT_TAILLASH = 8,
- EVENT_CLASSCALL = 9
+ EVENT_CLASSCALL = 9,
+ // UBRS
+ EVENT_CHAOS_1 = 10,
+ EVENT_CHAOS_2 = 11,
+ EVENT_PATH_2 = 12,
+ EVENT_PATH_3 = 13,
+ EVENT_SUCCESS_1 = 14,
+ EVENT_SUCCESS_2 = 15,
+ EVENT_SUCCESS_3 = 16,
};
enum Says
{
- SAY_GAMESBEGIN_1 = 11,
- SAY_GAMESBEGIN_2 = 12,
- // SAY_VAEL_INTRO = 13, Not used - when he corrupts Vaelastrasz
+ // Nefarius
+ // UBRS
+ SAY_CHAOS_SPELL = 9,
+ SAY_SUCCESS = 10,
+ SAY_FAILURE = 11,
+ // BWL
+ SAY_GAMESBEGIN_1 = 12,
+ SAY_GAMESBEGIN_2 = 13,
+ // SAY_VAEL_INTRO = 14, Not used - when he corrupts Vaelastrasz
// Nefarian
SAY_RANDOM = 0,
@@ -67,6 +81,18 @@ enum Gossip
GOSSIP_OPTION_ID = 0
};
+enum Paths
+{
+ NEFARIUS_PATH_2 = 1379671,
+ NEFARIUS_PATH_3 = 1379672
+};
+
+enum GameObjects
+{
+ GO_PORTCULLIS_ACTIVE = 164726,
+ GO_PORTCULLIS_TOBOSSROOMS = 175186
+};
+
enum Creatures
{
NPC_BRONZE_DRAKANOID = 14263,
@@ -75,7 +101,9 @@ enum Creatures
NPC_GREEN_DRAKANOID = 14262,
NPC_BLACK_DRAKANOID = 14265,
NPC_CHROMATIC_DRAKANOID = 14302,
- NPC_BONE_CONSTRUCT = 14605
+ NPC_BONE_CONSTRUCT = 14605,
+ // UBRS
+ NPC_GYTH = 10339
};
enum Spells
@@ -192,8 +220,72 @@ public:
void JustSummoned(Creature* /*summon*/) {}
+ void SetData(uint32 type, uint32 data)
+ {
+ if (instance && type == 1 && data == 1)
+ {
+ me->StopMoving();
+ events.ScheduleEvent(EVENT_PATH_2, 9000);
+ }
+
+ if (instance && type == 1 && data == 2)
+ {
+ events.ScheduleEvent(EVENT_SUCCESS_1, 5000);
+ }
+ }
+
void UpdateAI(uint32 diff)
{
+ if (!UpdateVictim())
+ {
+ events.Update(diff);
+
+ while (uint32 eventId = events.ExecuteEvent())
+ {
+ switch (eventId)
+ {
+ case EVENT_PATH_2:
+ me->GetMotionMaster()->MovePath(NEFARIUS_PATH_2, false);
+ events.ScheduleEvent(EVENT_CHAOS_1, 7000);
+ break;
+ case EVENT_CHAOS_1:
+ if (Creature* gyth = me->FindNearestCreature(NPC_GYTH, 75.0f, true))
+ {
+ me->SetFacingToObject(gyth);
+ Talk(SAY_CHAOS_SPELL);
+ }
+ events.ScheduleEvent(EVENT_CHAOS_2, 2000);
+ break;
+ case EVENT_CHAOS_2:
+ DoCast(SPELL_CHROMATIC_CHAOS);
+ me->SetFacingTo(1.570796f);
+ break;
+ case EVENT_SUCCESS_1:
+ if (Unit* player = me->SelectNearestPlayer(60.0f))
+ {
+ me->SetFacingToObject(player);
+ Talk(SAY_SUCCESS);
+ if (GameObject* portcullis1 = me->FindNearestGameObject(GO_PORTCULLIS_ACTIVE, 65.0f))
+ portcullis1->SetGoState(GO_STATE_ACTIVE);
+ if (GameObject* portcullis2 = me->FindNearestGameObject(GO_PORTCULLIS_TOBOSSROOMS, 80.0f))
+ portcullis2->SetGoState(GO_STATE_ACTIVE);
+ }
+ events.ScheduleEvent(EVENT_SUCCESS_2, 4000);
+ break;
+ case EVENT_SUCCESS_2:
+ DoCast(me, SPELL_VAELASTRASZZ_SPAWN);
+ me->DespawnOrUnsummon(1000);
+ break;
+ case EVENT_PATH_3:
+ me->GetMotionMaster()->MovePath(NEFARIUS_PATH_3, false);
+ break;
+ default:
+ break;
+ }
+ }
+ return;
+ }
+
// Only do this if we haven't spawned nefarian yet
if (UpdateVictim() && SpawnedAdds <= 42)
{
diff --git a/src/server/scripts/EasternKingdoms/CMakeLists.txt b/src/server/scripts/EasternKingdoms/CMakeLists.txt
index 37cd2359923..f4f835f5768 100644
--- a/src/server/scripts/EasternKingdoms/CMakeLists.txt
+++ b/src/server/scripts/EasternKingdoms/CMakeLists.txt
@@ -126,6 +126,8 @@ set(scripts_STAT_SRCS
EasternKingdoms/BlackrockSpire/boss_rend_blackhand.cpp
EasternKingdoms/BlackrockSpire/boss_highlord_omokk.cpp
EasternKingdoms/BlackrockSpire/boss_the_beast.cpp
+ EasternKingdoms/BlackrockSpire/boss_gizrul_the_slavener.cpp
+ EasternKingdoms/BlackrockSpire/boss_urok_doomhowl.cpp
EasternKingdoms/BlackrockSpire/blackrock_spire.h
EasternKingdoms/BlackrockSpire/instance_blackrock_spire.cpp
EasternKingdoms/SunwellPlateau/boss_eredar_twins.cpp
diff --git a/src/server/scripts/EasternKingdoms/Karazhan/boss_shade_of_aran.cpp b/src/server/scripts/EasternKingdoms/Karazhan/boss_shade_of_aran.cpp
index 998406e6d8c..c4cded87665 100644
--- a/src/server/scripts/EasternKingdoms/Karazhan/boss_shade_of_aran.cpp
+++ b/src/server/scripts/EasternKingdoms/Karazhan/boss_shade_of_aran.cpp
@@ -508,10 +508,10 @@ public:
};
};
-class mob_aran_elemental : public CreatureScript
+class npc_aran_elemental : public CreatureScript
{
public:
- mob_aran_elemental() : CreatureScript("mob_aran_elemental") { }
+ npc_aran_elemental() : CreatureScript("npc_aran_elemental") { }
CreatureAI* GetAI(Creature* creature) const
{
@@ -548,5 +548,5 @@ public:
void AddSC_boss_shade_of_aran()
{
new boss_shade_of_aran();
- new mob_aran_elemental();
+ new npc_aran_elemental();
}
diff --git a/src/server/scripts/EasternKingdoms/Karazhan/boss_terestian_illhoof.cpp b/src/server/scripts/EasternKingdoms/Karazhan/boss_terestian_illhoof.cpp
index ea2793a1463..df291c161b2 100644
--- a/src/server/scripts/EasternKingdoms/Karazhan/boss_terestian_illhoof.cpp
+++ b/src/server/scripts/EasternKingdoms/Karazhan/boss_terestian_illhoof.cpp
@@ -59,19 +59,19 @@ enum TerestianIllhoof
};
-class mob_kilrek : public CreatureScript
+class npc_kilrek : public CreatureScript
{
public:
- mob_kilrek() : CreatureScript("mob_kilrek") { }
+ npc_kilrek() : CreatureScript("npc_kilrek") { }
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_kilrekAI (creature);
+ return new npc_kilrekAI (creature);
}
- struct mob_kilrekAI : public ScriptedAI
+ struct npc_kilrekAI : public ScriptedAI
{
- mob_kilrekAI(Creature* creature) : ScriptedAI(creature)
+ npc_kilrekAI(Creature* creature) : ScriptedAI(creature)
{
instance = creature->GetInstanceScript();
}
@@ -130,19 +130,19 @@ public:
};
};
-class mob_demon_chain : public CreatureScript
+class npc_demon_chain : public CreatureScript
{
public:
- mob_demon_chain() : CreatureScript("mob_demon_chain") { }
+ npc_demon_chain() : CreatureScript("npc_demon_chain") { }
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_demon_chainAI(creature);
+ return new npc_demon_chainAI(creature);
}
- struct mob_demon_chainAI : public ScriptedAI
+ struct npc_demon_chainAI : public ScriptedAI
{
- mob_demon_chainAI(Creature* creature) : ScriptedAI(creature) {}
+ npc_demon_chainAI(Creature* creature) : ScriptedAI(creature) {}
uint64 SacrificeGUID;
@@ -167,19 +167,19 @@ public:
};
};
-class mob_fiendish_portal : public CreatureScript
+class npc_fiendish_portal : public CreatureScript
{
public:
- mob_fiendish_portal() : CreatureScript("mob_fiendish_portal") { }
+ npc_fiendish_portal() : CreatureScript("npc_fiendish_portal") { }
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_fiendish_portalAI (creature);
+ return new npc_fiendish_portalAI (creature);
}
- struct mob_fiendish_portalAI : public PassiveAI
+ struct npc_fiendish_portalAI : public PassiveAI
{
- mob_fiendish_portalAI(Creature* creature) : PassiveAI(creature), summons(me){}
+ npc_fiendish_portalAI(Creature* creature) : PassiveAI(creature), summons(me){}
SummonList summons;
@@ -203,19 +203,19 @@ public:
#define SPELL_FIREBOLT 30050 // Blasts a target for 181-209 Fire damage.
-class mob_fiendish_imp : public CreatureScript
+class npc_fiendish_imp : public CreatureScript
{
public:
- mob_fiendish_imp() : CreatureScript("mob_fiendish_imp") { }
+ npc_fiendish_imp() : CreatureScript("npc_fiendish_imp") { }
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_fiendish_impAI (creature);
+ return new npc_fiendish_impAI (creature);
}
- struct mob_fiendish_impAI : public ScriptedAI
+ struct npc_fiendish_impAI : public ScriptedAI
{
- mob_fiendish_impAI(Creature* creature) : ScriptedAI(creature) {}
+ npc_fiendish_impAI(Creature* creature) : ScriptedAI(creature) {}
uint32 FireboltTimer;
@@ -285,7 +285,7 @@ public:
{
if (Creature* pPortal = Unit::GetCreature(*me, PortalGUID[i]))
{
- CAST_AI(mob_fiendish_portal::mob_fiendish_portalAI, pPortal->AI())->DespawnAllImp();
+ CAST_AI(npc_fiendish_portal::npc_fiendish_portalAI, pPortal->AI())->DespawnAllImp();
pPortal->DespawnOrUnsummon();
}
@@ -377,7 +377,7 @@ public:
if (Creature* Chains = me->FindNearestCreature(CREATURE_DEMONCHAINS, 5000))
{
- CAST_AI(mob_demon_chain::mob_demon_chainAI, Chains->AI())->SacrificeGUID = target->GetGUID();
+ CAST_AI(npc_demon_chain::npc_demon_chainAI, Chains->AI())->SacrificeGUID = target->GetGUID();
Chains->CastSpell(Chains, SPELL_DEMON_CHAINS, true);
Talk(SAY_SACRIFICE);
SacrificeTimer = 30000;
@@ -424,8 +424,8 @@ public:
void AddSC_boss_terestian_illhoof()
{
new boss_terestian_illhoof();
- new mob_fiendish_imp();
- new mob_fiendish_portal();
- new mob_kilrek();
- new mob_demon_chain();
+ new npc_fiendish_imp();
+ new npc_fiendish_portal();
+ new npc_kilrek();
+ new npc_demon_chain();
}
diff --git a/src/server/scripts/EasternKingdoms/Karazhan/bosses_opera.cpp b/src/server/scripts/EasternKingdoms/Karazhan/bosses_opera.cpp
index c23c282f7e6..17546c66e26 100644
--- a/src/server/scripts/EasternKingdoms/Karazhan/bosses_opera.cpp
+++ b/src/server/scripts/EasternKingdoms/Karazhan/bosses_opera.cpp
@@ -225,19 +225,19 @@ public:
};
};
-class mob_tito : public CreatureScript
+class npc_tito : public CreatureScript
{
public:
- mob_tito() : CreatureScript("mob_tito") { }
+ npc_tito() : CreatureScript("npc_tito") { }
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_titoAI(creature);
+ return new npc_titoAI(creature);
}
- struct mob_titoAI : public ScriptedAI
+ struct npc_titoAI : public ScriptedAI
{
- mob_titoAI(Creature* creature) : ScriptedAI(creature) {}
+ npc_titoAI(Creature* creature) : ScriptedAI(creature) {}
uint64 DorotheeGUID;
uint32 YipTimer;
@@ -284,7 +284,7 @@ void boss_dorothee::boss_dorotheeAI::SummonTito()
if (Creature* pTito = me->SummonCreature(CREATURE_TITO, 0.0f, 0.0f, 0.0f, 0.0f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 30000))
{
Talk(SAY_DOROTHEE_SUMMON);
- CAST_AI(mob_tito::mob_titoAI, pTito->AI())->DorotheeGUID = me->GetGUID();
+ CAST_AI(npc_tito::npc_titoAI, pTito->AI())->DorotheeGUID = me->GetGUID();
pTito->AI()->AttackStart(me->GetVictim());
SummonedTito = true;
TitoDied = false;
@@ -708,19 +708,19 @@ public:
};
};
-class mob_cyclone : public CreatureScript
+class npc_cyclone : public CreatureScript
{
public:
- mob_cyclone() : CreatureScript("mob_cyclone") { }
+ npc_cyclone() : CreatureScript("npc_cyclone") { }
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_cycloneAI(creature);
+ return new npc_cycloneAI(creature);
}
- struct mob_cycloneAI : public ScriptedAI
+ struct npc_cycloneAI : public ScriptedAI
{
- mob_cycloneAI(Creature* creature) : ScriptedAI(creature) {}
+ npc_cycloneAI(Creature* creature) : ScriptedAI(creature) {}
uint32 MoveTimer;
@@ -1520,8 +1520,8 @@ void AddSC_bosses_opera()
new boss_tinhead();
new boss_roar();
new boss_crone();
- new mob_tito();
- new mob_cyclone();
+ new npc_tito();
+ new npc_cyclone();
new npc_grandmother();
new boss_bigbadwolf();
new boss_julianne();
diff --git a/src/server/scripts/EasternKingdoms/Karazhan/karazhan.cpp b/src/server/scripts/EasternKingdoms/Karazhan/karazhan.cpp
index 796eb22ae67..3c78c2daa7c 100644
--- a/src/server/scripts/EasternKingdoms/Karazhan/karazhan.cpp
+++ b/src/server/scripts/EasternKingdoms/Karazhan/karazhan.cpp
@@ -453,7 +453,7 @@ public:
#define SAY_DIALOG_ARCANAGOS_8 "What have you done, wizard? This cannot be! I'm burning from... within!"
#define SAY_DIALOG_MEDIVH_9 "He should not have angered me. I must go... recover my strength now..."
-#define MOB_ARCANAGOS 17652
+#define NPC_ARCANAGOS 17652
#define SPELL_FIRE_BALL 30967
#define SPELL_UBER_FIREBALL 30971
#define SPELL_CONFLAGRATION_BLAST 30977
@@ -523,7 +523,7 @@ public:
{
Step = 1;
EventStarted = true;
- Creature* Arcanagos = me->SummonCreature(MOB_ARCANAGOS, ArcanagosPos[0], ArcanagosPos[1], ArcanagosPos[2], 0, TEMPSUMMON_CORPSE_TIMED_DESPAWN, 20000);
+ Creature* Arcanagos = me->SummonCreature(NPC_ARCANAGOS, ArcanagosPos[0], ArcanagosPos[1], ArcanagosPos[2], 0, TEMPSUMMON_CORPSE_TIMED_DESPAWN, 20000);
if (!Arcanagos)
return;
ArcanagosGUID = Arcanagos->GetGUID();
diff --git a/src/server/scripts/EasternKingdoms/MagistersTerrace/boss_felblood_kaelthas.cpp b/src/server/scripts/EasternKingdoms/MagistersTerrace/boss_felblood_kaelthas.cpp
index dcb7acac7d6..619bc4e921c 100644
--- a/src/server/scripts/EasternKingdoms/MagistersTerrace/boss_felblood_kaelthas.cpp
+++ b/src/server/scripts/EasternKingdoms/MagistersTerrace/boss_felblood_kaelthas.cpp
@@ -432,19 +432,19 @@ public:
};
};
-class mob_felkael_flamestrike : public CreatureScript
+class npc_felkael_flamestrike : public CreatureScript
{
public:
- mob_felkael_flamestrike() : CreatureScript("mob_felkael_flamestrike") { }
+ npc_felkael_flamestrike() : CreatureScript("npc_felkael_flamestrike") { }
CreatureAI* GetAI(Creature* c) const
{
- return new mob_felkael_flamestrikeAI(c);
+ return new npc_felkael_flamestrikeAI(c);
}
- struct mob_felkael_flamestrikeAI : public ScriptedAI
+ struct npc_felkael_flamestrikeAI : public ScriptedAI
{
- mob_felkael_flamestrikeAI(Creature* creature) : ScriptedAI(creature)
+ npc_felkael_flamestrikeAI(Creature* creature) : ScriptedAI(creature)
{
}
@@ -473,19 +473,19 @@ public:
};
};
-class mob_felkael_phoenix : public CreatureScript
+class npc_felkael_phoenix : public CreatureScript
{
public:
- mob_felkael_phoenix() : CreatureScript("mob_felkael_phoenix") { }
+ npc_felkael_phoenix() : CreatureScript("npc_felkael_phoenix") { }
CreatureAI* GetAI(Creature* c) const
{
- return new mob_felkael_phoenixAI(c);
+ return new npc_felkael_phoenixAI(c);
}
- struct mob_felkael_phoenixAI : public ScriptedAI
+ struct npc_felkael_phoenixAI : public ScriptedAI
{
- mob_felkael_phoenixAI(Creature* creature) : ScriptedAI(creature)
+ npc_felkael_phoenixAI(Creature* creature) : ScriptedAI(creature)
{
instance = creature->GetInstanceScript();
}
@@ -586,19 +586,19 @@ public:
};
};
-class mob_felkael_phoenix_egg : public CreatureScript
+class npc_felkael_phoenix_egg : public CreatureScript
{
public:
- mob_felkael_phoenix_egg() : CreatureScript("mob_felkael_phoenix_egg") { }
+ npc_felkael_phoenix_egg() : CreatureScript("npc_felkael_phoenix_egg") { }
CreatureAI* GetAI(Creature* c) const
{
- return new mob_felkael_phoenix_eggAI(c);
+ return new npc_felkael_phoenix_eggAI(c);
}
- struct mob_felkael_phoenix_eggAI : public ScriptedAI
+ struct npc_felkael_phoenix_eggAI : public ScriptedAI
{
- mob_felkael_phoenix_eggAI(Creature* creature) : ScriptedAI(creature) {}
+ npc_felkael_phoenix_eggAI(Creature* creature) : ScriptedAI(creature) {}
uint32 HatchTimer;
@@ -621,19 +621,19 @@ public:
};
};
-class mob_arcane_sphere : public CreatureScript
+class npc_arcane_sphere : public CreatureScript
{
public:
- mob_arcane_sphere() : CreatureScript("mob_arcane_sphere") { }
+ npc_arcane_sphere() : CreatureScript("npc_arcane_sphere") { }
CreatureAI* GetAI(Creature* c) const
{
- return new mob_arcane_sphereAI(c);
+ return new npc_arcane_sphereAI(c);
}
- struct mob_arcane_sphereAI : public ScriptedAI
+ struct npc_arcane_sphereAI : public ScriptedAI
{
- mob_arcane_sphereAI(Creature* creature) : ScriptedAI(creature) { Reset(); }
+ npc_arcane_sphereAI(Creature* creature) : ScriptedAI(creature) { Reset(); }
uint32 DespawnTimer;
uint32 ChangeTargetTimer;
@@ -680,8 +680,8 @@ public:
void AddSC_boss_felblood_kaelthas()
{
new boss_felblood_kaelthas();
- new mob_arcane_sphere();
- new mob_felkael_phoenix();
- new mob_felkael_phoenix_egg();
- new mob_felkael_flamestrike();
+ new npc_arcane_sphere();
+ new npc_felkael_phoenix();
+ new npc_felkael_phoenix_egg();
+ new npc_felkael_flamestrike();
}
diff --git a/src/server/scripts/EasternKingdoms/MagistersTerrace/boss_priestess_delrissa.cpp b/src/server/scripts/EasternKingdoms/MagistersTerrace/boss_priestess_delrissa.cpp
index 56361e2fd54..687cc9d393c 100644
--- a/src/server/scripts/EasternKingdoms/MagistersTerrace/boss_priestess_delrissa.cpp
+++ b/src/server/scripts/EasternKingdoms/MagistersTerrace/boss_priestess_delrissa.cpp
@@ -1293,14 +1293,14 @@ public:
};
/*
-class mob_high_explosive_sheep : public CreatureScript
+class npc_high_explosive_sheep : public CreatureScript
{
public:
- mob_high_explosive_sheep() : CreatureScript("mob_high_explosive_sheep") { }
+ npc_high_explosive_sheep() : CreatureScript("npc_high_explosive_sheep") { }
//CreatureAI* GetAI(Creature* creature) const
//{
- // return new mob_high_explosive_sheepAI (creature);
+ // return new npc_high_explosive_sheepAI (creature);
//};
};
*/
@@ -1316,5 +1316,5 @@ void AddSC_boss_priestess_delrissa()
new boss_garaxxas();
new boss_apoko();
new boss_zelfan();
- // new mob_high_explosive_sheep();
+ // new npc_high_explosive_sheep();
}
diff --git a/src/server/scripts/EasternKingdoms/MagistersTerrace/boss_selin_fireheart.cpp b/src/server/scripts/EasternKingdoms/MagistersTerrace/boss_selin_fireheart.cpp
index e42582814fd..969a9abcbbf 100644
--- a/src/server/scripts/EasternKingdoms/MagistersTerrace/boss_selin_fireheart.cpp
+++ b/src/server/scripts/EasternKingdoms/MagistersTerrace/boss_selin_fireheart.cpp
@@ -320,19 +320,19 @@ public:
};
};
-class mob_fel_crystal : public CreatureScript
+class npc_fel_crystal : public CreatureScript
{
public:
- mob_fel_crystal() : CreatureScript("mob_fel_crystal") { }
+ npc_fel_crystal() : CreatureScript("npc_fel_crystal") { }
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_fel_crystalAI (creature);
+ return new npc_fel_crystalAI (creature);
};
- struct mob_fel_crystalAI : public ScriptedAI
+ struct npc_fel_crystalAI : public ScriptedAI
{
- mob_fel_crystalAI(Creature* creature) : ScriptedAI(creature) {}
+ npc_fel_crystalAI(Creature* creature) : ScriptedAI(creature) {}
void Reset() {}
void EnterCombat(Unit* /*who*/) {}
@@ -368,5 +368,5 @@ public:
void AddSC_boss_selin_fireheart()
{
new boss_selin_fireheart();
- new mob_fel_crystal();
+ new npc_fel_crystal();
}
diff --git a/src/server/scripts/EasternKingdoms/MagistersTerrace/boss_vexallus.cpp b/src/server/scripts/EasternKingdoms/MagistersTerrace/boss_vexallus.cpp
index 0872e5b9935..d9de112992b 100644
--- a/src/server/scripts/EasternKingdoms/MagistersTerrace/boss_vexallus.cpp
+++ b/src/server/scripts/EasternKingdoms/MagistersTerrace/boss_vexallus.cpp
@@ -196,19 +196,19 @@ public:
};
};
-class mob_pure_energy : public CreatureScript
+class npc_pure_energy : public CreatureScript
{
public:
- mob_pure_energy() : CreatureScript("mob_pure_energy") { }
+ npc_pure_energy() : CreatureScript("npc_pure_energy") { }
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_pure_energyAI (creature);
+ return new npc_pure_energyAI (creature);
};
- struct mob_pure_energyAI : public ScriptedAI
+ struct npc_pure_energyAI : public ScriptedAI
{
- mob_pure_energyAI(Creature* creature) : ScriptedAI(creature)
+ npc_pure_energyAI(Creature* creature) : ScriptedAI(creature)
{
me->SetDisplayId(me->GetCreatureTemplate()->Modelid2);
}
@@ -233,5 +233,5 @@ public:
void AddSC_boss_vexallus()
{
new boss_vexallus();
- new mob_pure_energy();
+ new npc_pure_energy();
}
diff --git a/src/server/scripts/EasternKingdoms/MoltenCore/boss_garr.cpp b/src/server/scripts/EasternKingdoms/MoltenCore/boss_garr.cpp
index aa563bf3180..562af075b98 100644
--- a/src/server/scripts/EasternKingdoms/MoltenCore/boss_garr.cpp
+++ b/src/server/scripts/EasternKingdoms/MoltenCore/boss_garr.cpp
@@ -101,14 +101,14 @@ class boss_garr : public CreatureScript
}
};
-class mob_firesworn : public CreatureScript
+class npc_firesworn : public CreatureScript
{
public:
- mob_firesworn() : CreatureScript("mob_firesworn") { }
+ npc_firesworn() : CreatureScript("npc_firesworn") { }
- struct mob_fireswornAI : public ScriptedAI
+ struct npc_fireswornAI : public ScriptedAI
{
- mob_fireswornAI(Creature* creature) : ScriptedAI(creature) {}
+ npc_fireswornAI(Creature* creature) : ScriptedAI(creature) {}
uint32 immolateTimer;
@@ -149,12 +149,12 @@ class mob_firesworn : public CreatureScript
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_fireswornAI(creature);
+ return new npc_fireswornAI(creature);
}
};
void AddSC_boss_garr()
{
new boss_garr();
- new mob_firesworn();
+ new npc_firesworn();
}
diff --git a/src/server/scripts/EasternKingdoms/MoltenCore/boss_golemagg.cpp b/src/server/scripts/EasternKingdoms/MoltenCore/boss_golemagg.cpp
index 8ddc7dc01bd..7e798aa815e 100644
--- a/src/server/scripts/EasternKingdoms/MoltenCore/boss_golemagg.cpp
+++ b/src/server/scripts/EasternKingdoms/MoltenCore/boss_golemagg.cpp
@@ -122,14 +122,14 @@ class boss_golemagg : public CreatureScript
}
};
-class mob_core_rager : public CreatureScript
+class npc_core_rager : public CreatureScript
{
public:
- mob_core_rager() : CreatureScript("mob_core_rager") { }
+ npc_core_rager() : CreatureScript("npc_core_rager") { }
- struct mob_core_ragerAI : public ScriptedAI
+ struct npc_core_ragerAI : public ScriptedAI
{
- mob_core_ragerAI(Creature* creature) : ScriptedAI(creature)
+ npc_core_ragerAI(Creature* creature) : ScriptedAI(creature)
{
instance = creature->GetInstanceScript();
}
@@ -179,12 +179,12 @@ class mob_core_rager : public CreatureScript
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_core_ragerAI(creature);
+ return new npc_core_ragerAI(creature);
}
};
void AddSC_boss_golemagg()
{
new boss_golemagg();
- new mob_core_rager();
+ new npc_core_rager();
}
diff --git a/src/server/scripts/EasternKingdoms/MoltenCore/boss_ragnaros.cpp b/src/server/scripts/EasternKingdoms/MoltenCore/boss_ragnaros.cpp
index 5e3ff1d4921..c67272ac068 100644
--- a/src/server/scripts/EasternKingdoms/MoltenCore/boss_ragnaros.cpp
+++ b/src/server/scripts/EasternKingdoms/MoltenCore/boss_ragnaros.cpp
@@ -310,14 +310,14 @@ class boss_ragnaros : public CreatureScript
}
};
-class mob_son_of_flame : public CreatureScript
+class npc_son_of_flame : public CreatureScript
{
public:
- mob_son_of_flame() : CreatureScript("mob_SonOfFlame") { }
+ npc_son_of_flame() : CreatureScript("npc_SonOfFlame") { }
- struct mob_son_of_flameAI : public ScriptedAI //didnt work correctly in EAI for me...
+ struct npc_son_of_flameAI : public ScriptedAI //didnt work correctly in EAI for me...
{
- mob_son_of_flameAI(Creature* creature) : ScriptedAI(creature)
+ npc_son_of_flameAI(Creature* creature) : ScriptedAI(creature)
{
instance = me->GetInstanceScript();
}
@@ -342,12 +342,12 @@ class mob_son_of_flame : public CreatureScript
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_son_of_flameAI(creature);
+ return new npc_son_of_flameAI(creature);
}
};
void AddSC_boss_ragnaros()
{
new boss_ragnaros();
- new mob_son_of_flame();
+ new npc_son_of_flame();
}
diff --git a/src/server/scripts/EasternKingdoms/MoltenCore/boss_sulfuron_harbinger.cpp b/src/server/scripts/EasternKingdoms/MoltenCore/boss_sulfuron_harbinger.cpp
index b4c2372a015..0a2ddb9c43d 100644
--- a/src/server/scripts/EasternKingdoms/MoltenCore/boss_sulfuron_harbinger.cpp
+++ b/src/server/scripts/EasternKingdoms/MoltenCore/boss_sulfuron_harbinger.cpp
@@ -133,14 +133,14 @@ class boss_sulfuron : public CreatureScript
}
};
-class mob_flamewaker_priest : public CreatureScript
+class npc_flamewaker_priest : public CreatureScript
{
public:
- mob_flamewaker_priest() : CreatureScript("mob_flamewaker_priest") { }
+ npc_flamewaker_priest() : CreatureScript("npc_flamewaker_priest") { }
- struct mob_flamewaker_priestAI : public ScriptedAI
+ struct npc_flamewaker_priestAI : public ScriptedAI
{
- mob_flamewaker_priestAI(Creature* creature) : ScriptedAI(creature)
+ npc_flamewaker_priestAI(Creature* creature) : ScriptedAI(creature)
{
}
@@ -205,12 +205,12 @@ class mob_flamewaker_priest : public CreatureScript
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_flamewaker_priestAI(creature);
+ return new npc_flamewaker_priestAI(creature);
}
};
void AddSC_boss_sulfuron()
{
new boss_sulfuron();
- new mob_flamewaker_priest();
+ new npc_flamewaker_priest();
}
diff --git a/src/server/scripts/EasternKingdoms/ScarletEnclave/chapter2.cpp b/src/server/scripts/EasternKingdoms/ScarletEnclave/chapter2.cpp
index a9374481b77..024ef01ce6d 100644
--- a/src/server/scripts/EasternKingdoms/ScarletEnclave/chapter2.cpp
+++ b/src/server/scripts/EasternKingdoms/ScarletEnclave/chapter2.cpp
@@ -363,19 +363,19 @@ enum ScarletCourierEnum
NPC_SCARLET_COURIER = 29076
};
-class mob_scarlet_courier : public CreatureScript
+class npc_scarlet_courier : public CreatureScript
{
public:
- mob_scarlet_courier() : CreatureScript("mob_scarlet_courier") { }
+ npc_scarlet_courier() : CreatureScript("npc_scarlet_courier") { }
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_scarlet_courierAI (creature);
+ return new npc_scarlet_courierAI (creature);
}
- struct mob_scarlet_courierAI : public ScriptedAI
+ struct npc_scarlet_courierAI : public ScriptedAI
{
- mob_scarlet_courierAI(Creature* creature) : ScriptedAI(creature) {}
+ npc_scarlet_courierAI(Creature* creature) : ScriptedAI(creature) {}
uint32 uiStage;
uint32 uiStage_timer;
@@ -455,19 +455,19 @@ enum valroth
SPELL_SUMMON_VALROTH_REMAINS = 52929
};
-class mob_high_inquisitor_valroth : public CreatureScript
+class npc_high_inquisitor_valroth : public CreatureScript
{
public:
- mob_high_inquisitor_valroth() : CreatureScript("mob_high_inquisitor_valroth") { }
+ npc_high_inquisitor_valroth() : CreatureScript("npc_high_inquisitor_valroth") { }
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_high_inquisitor_valrothAI (creature);
+ return new npc_high_inquisitor_valrothAI (creature);
}
- struct mob_high_inquisitor_valrothAI : public ScriptedAI
+ struct npc_high_inquisitor_valrothAI : public ScriptedAI
{
- mob_high_inquisitor_valrothAI(Creature* creature) : ScriptedAI(creature) {}
+ npc_high_inquisitor_valrothAI(Creature* creature) : ScriptedAI(creature) {}
uint32 uiRenew_timer;
uint32 uiInquisitor_Penance_timer;
@@ -1013,8 +1013,8 @@ public:
void AddSC_the_scarlet_enclave_c2()
{
new npc_crusade_persuaded();
- new mob_scarlet_courier();
+ new npc_scarlet_courier();
new npc_koltira_deathweaver();
- new mob_high_inquisitor_valroth();
+ new npc_high_inquisitor_valroth();
new npc_a_special_surprise();
}
diff --git a/src/server/scripts/EasternKingdoms/ScarletMonastery/boss_headless_horseman.cpp b/src/server/scripts/EasternKingdoms/ScarletMonastery/boss_headless_horseman.cpp
index baac9609c57..4334242641c 100644
--- a/src/server/scripts/EasternKingdoms/ScarletMonastery/boss_headless_horseman.cpp
+++ b/src/server/scripts/EasternKingdoms/ScarletMonastery/boss_headless_horseman.cpp
@@ -141,19 +141,19 @@ static char const* Text[]=
#define EMOTE_LAUGHS "Headless Horseman laughs" // needs assigned to db.
-class mob_wisp_invis : public CreatureScript
+class npc_wisp_invis : public CreatureScript
{
public:
- mob_wisp_invis() : CreatureScript("mob_wisp_invis") { }
+ npc_wisp_invis() : CreatureScript("npc_wisp_invis") { }
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_wisp_invisAI (creature);
+ return new npc_wisp_invisAI (creature);
}
- struct mob_wisp_invisAI : public ScriptedAI
+ struct npc_wisp_invisAI : public ScriptedAI
{
- mob_wisp_invisAI(Creature* creature) : ScriptedAI(creature)
+ npc_wisp_invisAI(Creature* creature) : ScriptedAI(creature)
{
Creaturetype = delay = spell = spell2 = 0;
}
@@ -220,19 +220,19 @@ public:
};
};
-class mob_head : public CreatureScript
+class npc_head : public CreatureScript
{
public:
- mob_head() : CreatureScript("mob_head") { }
+ npc_head() : CreatureScript("npc_head") { }
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_headAI (creature);
+ return new npc_headAI (creature);
}
- struct mob_headAI : public ScriptedAI
+ struct npc_headAI : public ScriptedAI
{
- mob_headAI(Creature* creature) : ScriptedAI(creature) {}
+ npc_headAI(Creature* creature) : ScriptedAI(creature) {}
uint64 bodyGUID;
@@ -435,6 +435,7 @@ public:
headGUID = 0;
}
+ me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_IMMUNE_TO_PC);
//if (instance)
// instance->SetData(DATA_HORSEMAN_EVENT, NOT_STARTED);
}
@@ -467,7 +468,7 @@ public:
case 1:
{
if (Creature* smoke = me->SummonCreature(HELPER, Spawn[1].x, Spawn[1].y, Spawn[1].z, 0, TEMPSUMMON_TIMED_DESPAWN, 20000))
- CAST_AI(mob_wisp_invis::mob_wisp_invisAI, smoke->AI())->SetType(3);
+ CAST_AI(npc_wisp_invis::npc_wisp_invisAI, smoke->AI())->SetType(3);
DoCast(me, SPELL_RHYME_BIG);
break;
}
@@ -519,7 +520,7 @@ public:
SaySound(SAY_PLAYER_DEATH);
//maybe possible when player dies from conflagration
else if (Creature* Head = Unit::GetCreature((*me), headGUID))
- CAST_AI(mob_head::mob_headAI, Head->AI())->SaySound(SAY_PLAYER_DEATH);
+ CAST_AI(npc_head::npc_headAI, Head->AI())->SaySound(SAY_PLAYER_DEATH);
}
}
@@ -571,7 +572,7 @@ public:
if (Creature* flame = DoSpawnCreature(HELPER, 0, 0, 0, 0, TEMPSUMMON_TIMED_DESPAWN, 60000))
flame->CastSpell(flame, SPELL_BODY_FLAME, false);
if (Creature* wisp = DoSpawnCreature(WISP_INVIS, 0, 0, 0, 0, TEMPSUMMON_TIMED_DESPAWN, 60000))
- CAST_AI(mob_wisp_invis::mob_wisp_invisAI, wisp->AI())->SetType(4);
+ CAST_AI(npc_wisp_invis::npc_wisp_invisAI, wisp->AI())->SetType(4);
if (instance)
instance->SetData(DATA_HORSEMAN_EVENT, DONE);
@@ -692,7 +693,7 @@ public:
if (burn <= diff)
{
if (Creature* flame = me->SummonCreature(HELPER, Spawn[0].x, Spawn[0].y, Spawn[0].z, 0, TEMPSUMMON_TIMED_DESPAWN, 17000))
- CAST_AI(mob_wisp_invis::mob_wisp_invisAI, flame->AI())->SetType(2);
+ CAST_AI(npc_wisp_invis::npc_wisp_invisAI, flame->AI())->SetType(2);
burned = true;
}
else burn -= diff;
@@ -751,8 +752,8 @@ public:
Creature* Head = Unit::GetCreature((*me), headGUID);
if (Head && Head->IsAlive())
{
- CAST_AI(mob_head::mob_headAI, Head->AI())->Phase = Phase;
- CAST_AI(mob_head::mob_headAI, Head->AI())->Disappear();
+ CAST_AI(npc_head::npc_headAI, Head->AI())->Phase = Phase;
+ CAST_AI(npc_head::npc_headAI, Head->AI())->Disappear();
}
return;
}
@@ -777,19 +778,19 @@ public:
};
};
-class mob_pulsing_pumpkin : public CreatureScript
+class npc_pulsing_pumpkin : public CreatureScript
{
public:
- mob_pulsing_pumpkin() : CreatureScript("mob_pulsing_pumpkin") { }
+ npc_pulsing_pumpkin() : CreatureScript("npc_pulsing_pumpkin") { }
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_pulsing_pumpkinAI (creature);
+ return new npc_pulsing_pumpkinAI (creature);
}
- struct mob_pulsing_pumpkinAI : public ScriptedAI
+ struct npc_pulsing_pumpkinAI : public ScriptedAI
{
- mob_pulsing_pumpkinAI(Creature* creature) : ScriptedAI(creature) {}
+ npc_pulsing_pumpkinAI(Creature* creature) : ScriptedAI(creature) {}
bool sprouted;
uint64 debuffGUID;
@@ -805,7 +806,7 @@ public:
{
debuff->SetDisplayId(me->GetDisplayId());
debuff->CastSpell(debuff, SPELL_PUMPKIN_AURA_GREEN, false);
- CAST_AI(mob_wisp_invis::mob_wisp_invisAI, debuff->AI())->SetType(1);
+ CAST_AI(npc_wisp_invis::npc_wisp_invisAI, debuff->AI())->SetType(1);
debuffGUID = debuff->GetGUID();
}
sprouted = false;
@@ -898,7 +899,7 @@ public:
}
};
-void mob_head::mob_headAI::Disappear()
+void npc_head::npc_headAI::Disappear()
{
if (withbody)
return;
@@ -924,8 +925,8 @@ void mob_head::mob_headAI::Disappear()
void AddSC_boss_headless_horseman()
{
new boss_headless_horseman();
- new mob_head();
- new mob_pulsing_pumpkin();
- new mob_wisp_invis();
+ new npc_head();
+ new npc_pulsing_pumpkin();
+ new npc_wisp_invis();
new go_loosely_turned_soil();
}
diff --git a/src/server/scripts/EasternKingdoms/ScarletMonastery/boss_herod.cpp b/src/server/scripts/EasternKingdoms/ScarletMonastery/boss_herod.cpp
index 491cbf6ea11..ff0bc877686 100644
--- a/src/server/scripts/EasternKingdoms/ScarletMonastery/boss_herod.cpp
+++ b/src/server/scripts/EasternKingdoms/ScarletMonastery/boss_herod.cpp
@@ -129,19 +129,19 @@ public:
};
};
-class mob_scarlet_trainee : public CreatureScript
+class npc_scarlet_trainee : public CreatureScript
{
public:
- mob_scarlet_trainee() : CreatureScript("mob_scarlet_trainee") { }
+ npc_scarlet_trainee() : CreatureScript("npc_scarlet_trainee") { }
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_scarlet_traineeAI(creature);
+ return new npc_scarlet_traineeAI(creature);
}
- struct mob_scarlet_traineeAI : public npc_escortAI
+ struct npc_scarlet_traineeAI : public npc_escortAI
{
- mob_scarlet_traineeAI(Creature* creature) : npc_escortAI(creature)
+ npc_scarlet_traineeAI(Creature* creature) : npc_escortAI(creature)
{
Start_Timer = urand(1000, 6000);
}
@@ -171,5 +171,5 @@ public:
void AddSC_boss_herod()
{
new boss_herod();
- new mob_scarlet_trainee();
+ new npc_scarlet_trainee();
}
diff --git a/src/server/scripts/EasternKingdoms/Scholomance/boss_jandice_barov.cpp b/src/server/scripts/EasternKingdoms/Scholomance/boss_jandice_barov.cpp
index 7a46483a897..d233b09bed2 100644
--- a/src/server/scripts/EasternKingdoms/Scholomance/boss_jandice_barov.cpp
+++ b/src/server/scripts/EasternKingdoms/Scholomance/boss_jandice_barov.cpp
@@ -154,19 +154,19 @@ public:
// Illusion of Jandice Barov Script
-class mob_illusionofjandicebarov : public CreatureScript
+class npc_illusionofjandicebarov : public CreatureScript
{
public:
- mob_illusionofjandicebarov() : CreatureScript("mob_illusionofjandicebarov") { }
+ npc_illusionofjandicebarov() : CreatureScript("npc_illusionofjandicebarov") { }
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_illusionofjandicebarovAI (creature);
+ return new npc_illusionofjandicebarovAI (creature);
}
- struct mob_illusionofjandicebarovAI : public ScriptedAI
+ struct npc_illusionofjandicebarovAI : public ScriptedAI
{
- mob_illusionofjandicebarovAI(Creature* creature) : ScriptedAI(creature) {}
+ npc_illusionofjandicebarovAI(Creature* creature) : ScriptedAI(creature) {}
uint32 Cleave_Timer;
@@ -205,5 +205,5 @@ public:
void AddSC_boss_jandicebarov()
{
new boss_jandice_barov();
- new mob_illusionofjandicebarov();
+ new npc_illusionofjandicebarov();
}
diff --git a/src/server/scripts/EasternKingdoms/Stratholme/stratholme.cpp b/src/server/scripts/EasternKingdoms/Stratholme/stratholme.cpp
index 396efc4bc7e..a8b981dc44f 100644
--- a/src/server/scripts/EasternKingdoms/Stratholme/stratholme.cpp
+++ b/src/server/scripts/EasternKingdoms/Stratholme/stratholme.cpp
@@ -25,9 +25,9 @@ EndScriptData */
/* ContentData
go_gauntlet_gate
-mob_freed_soul
-mob_restless_soul
-mobs_spectral_ghostly_citizen
+npc_freed_soul
+npc_restless_soul
+npc_spectral_ghostly_citizen
EndContentData */
#include "ScriptMgr.h"
@@ -81,26 +81,26 @@ public:
};
/*######
-## mob_freed_soul
+## npc_freed_soul
######*/
enum FreedSoul
{
SAY_ZAPPED = 0
};
-class mob_freed_soul : public CreatureScript
+class npc_freed_soul : public CreatureScript
{
public:
- mob_freed_soul() : CreatureScript("mob_freed_soul") { }
+ npc_freed_soul() : CreatureScript("npc_freed_soul") { }
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_freed_soulAI (creature);
+ return new npc_freed_soulAI (creature);
}
- struct mob_freed_soulAI : public ScriptedAI
+ struct npc_freed_soulAI : public ScriptedAI
{
- mob_freed_soulAI(Creature* creature) : ScriptedAI(creature) {}
+ npc_freed_soulAI(Creature* creature) : ScriptedAI(creature) {}
void Reset()
{
@@ -113,7 +113,7 @@ public:
};
/*######
-## mob_restless_soul
+## npc_restless_soul
######*/
#define SPELL_EGAN_BLASTER 17368
@@ -122,19 +122,19 @@ public:
#define ENTRY_RESTLESS 11122
#define ENTRY_FREED 11136
-class mob_restless_soul : public CreatureScript
+class npc_restless_soul : public CreatureScript
{
public:
- mob_restless_soul() : CreatureScript("mob_restless_soul") { }
+ npc_restless_soul() : CreatureScript("npc_restless_soul") { }
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_restless_soulAI (creature);
+ return new npc_restless_soulAI (creature);
}
- struct mob_restless_soulAI : public ScriptedAI
+ struct npc_restless_soulAI : public ScriptedAI
{
- mob_restless_soulAI(Creature* creature) : ScriptedAI(creature) {}
+ npc_restless_soulAI(Creature* creature) : ScriptedAI(creature) {}
uint64 Tagger;
uint32 Die_Timer;
@@ -195,7 +195,7 @@ public:
};
/*######
-## mobs_spectral_ghostly_citizen
+## npc_spectral_ghostly_citizen
######*/
enum eGhostlyCitizenSpells
@@ -204,19 +204,19 @@ enum eGhostlyCitizenSpells
SPELL_SLAP = 6754
};
-class mobs_spectral_ghostly_citizen : public CreatureScript
+class npc_spectral_ghostly_citizen : public CreatureScript
{
public:
- mobs_spectral_ghostly_citizen() : CreatureScript("mobs_spectral_ghostly_citizen") { }
+ npc_spectral_ghostly_citizen() : CreatureScript("npc_spectral_ghostly_citizen") { }
CreatureAI* GetAI(Creature* creature) const
{
- return new mobs_spectral_ghostly_citizenAI (creature);
+ return new npc_spectral_ghostly_citizenAI (creature);
}
- struct mobs_spectral_ghostly_citizenAI : public ScriptedAI
+ struct npc_spectral_ghostly_citizenAI : public ScriptedAI
{
- mobs_spectral_ghostly_citizenAI(Creature* creature) : ScriptedAI(creature) {}
+ npc_spectral_ghostly_citizenAI(Creature* creature) : ScriptedAI(creature) {}
uint32 Die_Timer;
bool Tagged;
@@ -294,7 +294,7 @@ public:
void AddSC_stratholme()
{
new go_gauntlet_gate();
- new mob_freed_soul();
- new mob_restless_soul();
- new mobs_spectral_ghostly_citizen();
+ new npc_freed_soul();
+ new npc_restless_soul();
+ new npc_spectral_ghostly_citizen();
}
diff --git a/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_eredar_twins.cpp b/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_eredar_twins.cpp
index b9aef826738..31f93d70e00 100644
--- a/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_eredar_twins.cpp
+++ b/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_eredar_twins.cpp
@@ -294,7 +294,7 @@ public:
for (uint8 i = 0; i<3; ++i)
{
target = SelectTarget(SELECT_TARGET_RANDOM, 0);
- temp = DoSpawnCreature(MOB_SHADOW_IMAGE, 0, 0, 0, 0, TEMPSUMMON_CORPSE_DESPAWN, 10000);
+ temp = DoSpawnCreature(NPC_SHADOW_IMAGE, 0, 0, 0, 0, TEMPSUMMON_CORPSE_DESPAWN, 10000);
if (temp && target)
{
temp->AddThreat(target, 1000000);//don't change target(healers)
@@ -661,19 +661,19 @@ public:
};
};
-class mob_shadow_image : public CreatureScript
+class npc_shadow_image : public CreatureScript
{
public:
- mob_shadow_image() : CreatureScript("mob_shadow_image") { }
+ npc_shadow_image() : CreatureScript("npc_shadow_image") { }
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_shadow_imageAI (creature);
+ return new npc_shadow_imageAI (creature);
};
- struct mob_shadow_imageAI : public ScriptedAI
+ struct npc_shadow_imageAI : public ScriptedAI
{
- mob_shadow_imageAI(Creature* creature) : ScriptedAI(creature) {}
+ npc_shadow_imageAI(Creature* creature) : ScriptedAI(creature) {}
uint32 ShadowfuryTimer;
uint32 KillTimer;
@@ -745,5 +745,5 @@ void AddSC_boss_eredar_twins()
{
new boss_sacrolash();
new boss_alythess();
- new mob_shadow_image();
+ new npc_shadow_image();
}
diff --git a/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_felmyst.cpp b/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_felmyst.cpp
index 7db85b79d20..e7bc4d18a95 100644
--- a/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_felmyst.cpp
+++ b/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_felmyst.cpp
@@ -145,7 +145,7 @@ public:
me->SetFloatValue(UNIT_FIELD_BOUNDINGRADIUS, 10);
me->SetFloatValue(UNIT_FIELD_COMBATREACH, 10);
- DespawnSummons(MOB_VAPOR_TRAIL);
+ DespawnSummons(NPC_VAPOR_TRAIL);
me->setActive(false);
if (instance)
@@ -208,7 +208,7 @@ public:
{
float x, y, z;
caster->GetPosition(x, y, z);
- if (Unit* summon = me->SummonCreature(MOB_DEAD, x, y, z, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000))
+ if (Unit* summon = me->SummonCreature(NPC_DEAD, x, y, z, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000))
{
summon->SetMaxHealth(caster->GetMaxHealth());
summon->SetHealth(caster->GetMaxHealth());
@@ -221,7 +221,7 @@ public:
void JustSummoned(Creature* summon)
{
- if (summon->GetEntry() == MOB_DEAD)
+ if (summon->GetEntry() == NPC_DEAD)
{
summon->AI()->AttackStart(SelectTarget(SELECT_TARGET_RANDOM));
DoZoneInCombat(summon);
@@ -296,7 +296,7 @@ public:
return;
}
- Creature* Vapor = me->SummonCreature(MOB_VAPOR, target->GetPositionX()-5+rand()%10, target->GetPositionY()-5+rand()%10, target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN, 9000);
+ Creature* Vapor = me->SummonCreature(NPC_VAPOR, target->GetPositionX()-5+rand()%10, target->GetPositionY()-5+rand()%10, target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN, 9000);
if (Vapor)
{
Vapor->AI()->AttackStart(target);
@@ -310,7 +310,7 @@ public:
}
case 3:
{
- DespawnSummons(MOB_VAPOR_TRAIL);
+ DespawnSummons(NPC_VAPOR_TRAIL);
//DoCast(me, SPELL_VAPOR_SELECT); need core support
Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 0, 150, true);
@@ -324,7 +324,7 @@ public:
}
//target->CastSpell(target, SPELL_VAPOR_SUMMON, true); need core support
- Creature* pVapor = me->SummonCreature(MOB_VAPOR, target->GetPositionX()-5+rand()%10, target->GetPositionY()-5+rand()%10, target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN, 9000);
+ Creature* pVapor = me->SummonCreature(NPC_VAPOR, target->GetPositionX()-5+rand()%10, target->GetPositionY()-5+rand()%10, target->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN, 9000);
if (pVapor)
{
if (pVapor->AI())
@@ -338,7 +338,7 @@ public:
break;
}
case 4:
- DespawnSummons(MOB_VAPOR_TRAIL);
+ DespawnSummons(NPC_VAPOR_TRAIL);
events.ScheduleEvent(EVENT_FLIGHT_SEQUENCE, 1);
break;
case 5:
@@ -469,7 +469,7 @@ public:
float x, y, z;
me->GetPosition(x, y, z);
me->UpdateGroundPositionZ(x, y, z);
- if (Creature* Fog = me->SummonCreature(MOB_VAPOR_TRAIL, x, y, z, 0, TEMPSUMMON_TIMED_DESPAWN, 10000))
+ if (Creature* Fog = me->SummonCreature(NPC_VAPOR_TRAIL, x, y, z, 0, TEMPSUMMON_TIMED_DESPAWN, 10000))
{
Fog->RemoveAurasDueToSpell(SPELL_TRAIL_TRIGGER);
Fog->CastSpell(Fog, SPELL_FOG_TRIGGER, true);
@@ -499,10 +499,10 @@ public:
for (std::list<Creature*>::const_iterator i = templist.begin(); i != templist.end(); ++i)
{
- if (entry == MOB_VAPOR_TRAIL && phase == PHASE_FLIGHT)
+ if (entry == NPC_VAPOR_TRAIL && phase == PHASE_FLIGHT)
{
(*i)->GetPosition(x, y, z);
- me->SummonCreature(MOB_DEAD, x, y, z, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000);
+ me->SummonCreature(NPC_DEAD, x, y, z, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000);
}
(*i)->SetVisible(false);
(*i)->setDeathState(JUST_DIED);
@@ -513,19 +513,19 @@ public:
};
};
-class mob_felmyst_vapor : public CreatureScript
+class npc_felmyst_vapor : public CreatureScript
{
public:
- mob_felmyst_vapor() : CreatureScript("mob_felmyst_vapor") { }
+ npc_felmyst_vapor() : CreatureScript("npc_felmyst_vapor") { }
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_felmyst_vaporAI(creature);
+ return new npc_felmyst_vaporAI(creature);
}
- struct mob_felmyst_vaporAI : public ScriptedAI
+ struct npc_felmyst_vaporAI : public ScriptedAI
{
- mob_felmyst_vaporAI(Creature* creature) : ScriptedAI(creature)
+ npc_felmyst_vaporAI(Creature* creature) : ScriptedAI(creature)
{
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
me->SetSpeed(MOVE_RUN, 0.8f);
@@ -545,19 +545,19 @@ public:
};
};
-class mob_felmyst_trail : public CreatureScript
+class npc_felmyst_trail : public CreatureScript
{
public:
- mob_felmyst_trail() : CreatureScript("mob_felmyst_trail") { }
+ npc_felmyst_trail() : CreatureScript("npc_felmyst_trail") { }
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_felmyst_trailAI(creature);
+ return new npc_felmyst_trailAI(creature);
}
- struct mob_felmyst_trailAI : public ScriptedAI
+ struct npc_felmyst_trailAI : public ScriptedAI
{
- mob_felmyst_trailAI(Creature* creature) : ScriptedAI(creature)
+ npc_felmyst_trailAI(Creature* creature) : ScriptedAI(creature)
{
me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
DoCast(me, SPELL_TRAIL_TRIGGER, true);
@@ -575,6 +575,6 @@ public:
void AddSC_boss_felmyst()
{
new boss_felmyst();
- new mob_felmyst_vapor();
- new mob_felmyst_trail();
+ new npc_felmyst_vapor();
+ new npc_felmyst_trail();
}
diff --git a/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_kalecgos.cpp b/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_kalecgos.cpp
index c24e5864fae..cce84e3714a 100644
--- a/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_kalecgos.cpp
+++ b/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_kalecgos.cpp
@@ -627,7 +627,7 @@ public:
void EnterCombat(Unit* /*who*/)
{
- if (Creature* Kalec = me->SummonCreature(MOB_KALEC, me->GetPositionX() + 10, me->GetPositionY() + 5, me->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 0))
+ if (Creature* Kalec = me->SummonCreature(NPC_KALEC, me->GetPositionX() + 10, me->GetPositionY() + 5, me->GetPositionZ(), 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 0))
{
KalecGUID = Kalec->GetGUID();
me->CombatStart(Kalec);
diff --git a/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_kiljaeden.cpp b/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_kiljaeden.cpp
index c0d7bb19b9d..9f4e8edc8cc 100644
--- a/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_kiljaeden.cpp
+++ b/src/server/scripts/EasternKingdoms/SunwellPlateau/boss_kiljaeden.cpp
@@ -382,19 +382,19 @@ public:
};
//AI for Kil'jaeden Event Controller
-class mob_kiljaeden_controller : public CreatureScript
+class npc_kiljaeden_controller : public CreatureScript
{
public:
- mob_kiljaeden_controller() : CreatureScript("mob_kiljaeden_controller") { }
+ npc_kiljaeden_controller() : CreatureScript("npc_kiljaeden_controller") { }
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_kiljaeden_controllerAI (creature);
+ return new npc_kiljaeden_controllerAI (creature);
}
- struct mob_kiljaeden_controllerAI : public ScriptedAI
+ struct npc_kiljaeden_controllerAI : public ScriptedAI
{
- mob_kiljaeden_controllerAI(Creature* creature) : ScriptedAI(creature), summons(me)
+ npc_kiljaeden_controllerAI(Creature* creature) : ScriptedAI(creature), summons(me)
{
instance = creature->GetInstanceScript();
@@ -627,7 +627,7 @@ public:
if (instance)
{
if (Creature* pControl = Unit::GetCreature(*me, instance->GetData64(DATA_KILJAEDEN_CONTROLLER)))
- CAST_AI(mob_kiljaeden_controller::mob_kiljaeden_controllerAI, pControl->AI())->Reset();
+ CAST_AI(npc_kiljaeden_controller::npc_kiljaeden_controllerAI, pControl->AI())->Reset();
}
}
@@ -894,19 +894,19 @@ public:
};
//AI for Hand of the Deceiver
-class mob_hand_of_the_deceiver : public CreatureScript
+class npc_hand_of_the_deceiver : public CreatureScript
{
public:
- mob_hand_of_the_deceiver() : CreatureScript("mob_hand_of_the_deceiver") { }
+ npc_hand_of_the_deceiver() : CreatureScript("npc_hand_of_the_deceiver") { }
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_hand_of_the_deceiverAI (creature);
+ return new npc_hand_of_the_deceiverAI (creature);
}
- struct mob_hand_of_the_deceiverAI : public ScriptedAI
+ struct npc_hand_of_the_deceiverAI : public ScriptedAI
{
- mob_hand_of_the_deceiverAI(Creature* creature) : ScriptedAI(creature)
+ npc_hand_of_the_deceiverAI(Creature* creature) : ScriptedAI(creature)
{
instance = creature->GetInstanceScript();
}
@@ -948,7 +948,7 @@ public:
return;
if (Creature* pControl = Unit::GetCreature(*me, instance->GetData64(DATA_KILJAEDEN_CONTROLLER)))
- ++(CAST_AI(mob_kiljaeden_controller::mob_kiljaeden_controllerAI, pControl->AI())->deceiverDeathCount);
+ ++(CAST_AI(npc_kiljaeden_controller::npc_kiljaeden_controllerAI, pControl->AI())->deceiverDeathCount);
}
void UpdateAI(uint32 diff)
@@ -994,19 +994,19 @@ public:
};
//AI for Felfire Portal
-class mob_felfire_portal : public CreatureScript
+class npc_felfire_portal : public CreatureScript
{
public:
- mob_felfire_portal() : CreatureScript("mob_felfire_portal") { }
+ npc_felfire_portal() : CreatureScript("npc_felfire_portal") { }
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_felfire_portalAI (creature);
+ return new npc_felfire_portalAI (creature);
}
- struct mob_felfire_portalAI : public ScriptedAI
+ struct npc_felfire_portalAI : public ScriptedAI
{
- mob_felfire_portalAI(Creature* creature) : ScriptedAI(creature)
+ npc_felfire_portalAI(Creature* creature) : ScriptedAI(creature)
{
SetCombatMovement(false);
}
@@ -1041,19 +1041,19 @@ public:
};
//AI for Felfire Fiend
-class mob_volatile_felfire_fiend : public CreatureScript
+class npc_volatile_felfire_fiend : public CreatureScript
{
public:
- mob_volatile_felfire_fiend() : CreatureScript("mob_volatile_felfire_fiend") { }
+ npc_volatile_felfire_fiend() : CreatureScript("npc_volatile_felfire_fiend") { }
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_volatile_felfire_fiendAI (creature);
+ return new npc_volatile_felfire_fiendAI (creature);
}
- struct mob_volatile_felfire_fiendAI : public ScriptedAI
+ struct npc_volatile_felfire_fiendAI : public ScriptedAI
{
- mob_volatile_felfire_fiendAI(Creature* creature) : ScriptedAI(creature) {}
+ npc_volatile_felfire_fiendAI(Creature* creature) : ScriptedAI(creature) {}
uint32 uiExplodeTimer;
@@ -1098,19 +1098,19 @@ public:
};
//AI for Armageddon target
-class mob_armageddon : public CreatureScript
+class npc_armageddon : public CreatureScript
{
public:
- mob_armageddon() : CreatureScript("mob_armageddon") { }
+ npc_armageddon() : CreatureScript("npc_armageddon") { }
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_armageddonAI (creature);
+ return new npc_armageddonAI (creature);
}
- struct mob_armageddonAI : public ScriptedAI
+ struct npc_armageddonAI : public ScriptedAI
{
- mob_armageddonAI(Creature* creature) : ScriptedAI(creature)
+ npc_armageddonAI(Creature* creature) : ScriptedAI(creature)
{
SetCombatMovement(false);
}
@@ -1155,19 +1155,19 @@ public:
};
//AI for Shield Orbs
-class mob_shield_orb : public CreatureScript
+class npc_shield_orb : public CreatureScript
{
public:
- mob_shield_orb() : CreatureScript("mob_shield_orb") { }
+ npc_shield_orb() : CreatureScript("npc_shield_orb") { }
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_shield_orbAI (creature);
+ return new npc_shield_orbAI (creature);
}
- struct mob_shield_orbAI : public ScriptedAI
+ struct npc_shield_orbAI : public ScriptedAI
{
- mob_shield_orbAI(Creature* creature) : ScriptedAI(creature)
+ npc_shield_orbAI(Creature* creature) : ScriptedAI(creature)
{
instance = creature->GetInstanceScript();
}
@@ -1242,19 +1242,19 @@ public:
};
//AI for Sinister Reflection
-class mob_sinster_reflection : public CreatureScript
+class npc_sinster_reflection : public CreatureScript
{
public:
- mob_sinster_reflection() : CreatureScript("mob_sinster_reflection") { }
+ npc_sinster_reflection() : CreatureScript("npc_sinster_reflection") { }
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_sinster_reflectionAI (creature);
+ return new npc_sinster_reflectionAI (creature);
}
- struct mob_sinster_reflectionAI : public ScriptedAI
+ struct npc_sinster_reflectionAI : public ScriptedAI
{
- mob_sinster_reflectionAI(Creature* creature) : ScriptedAI(creature) {}
+ npc_sinster_reflectionAI(Creature* creature) : ScriptedAI(creature) {}
uint8 victimClass;
uint32 uiTimer[3];
@@ -1416,11 +1416,11 @@ void AddSC_boss_kiljaeden()
new go_orb_of_the_blue_flight();
new boss_kalecgos_kj();
new boss_kiljaeden();
- new mob_kiljaeden_controller();
- new mob_hand_of_the_deceiver();
- new mob_felfire_portal();
- new mob_volatile_felfire_fiend();
- new mob_armageddon();
- new mob_shield_orb();
- new mob_sinster_reflection();
+ new npc_kiljaeden_controller();
+ new npc_hand_of_the_deceiver();
+ new npc_felfire_portal();
+ new npc_volatile_felfire_fiend();
+ new npc_armageddon();
+ new npc_shield_orb();
+ new npc_sinster_reflection();
}
diff --git a/src/server/scripts/EasternKingdoms/SunwellPlateau/sunwell_plateau.h b/src/server/scripts/EasternKingdoms/SunwellPlateau/sunwell_plateau.h
index 2efffc816c0..343720dbdb1 100644
--- a/src/server/scripts/EasternKingdoms/SunwellPlateau/sunwell_plateau.h
+++ b/src/server/scripts/EasternKingdoms/SunwellPlateau/sunwell_plateau.h
@@ -62,20 +62,20 @@ enum Creatures
{
BOSS_MURU = 25741,
BOSS_ENTROPIUS = 25840,
- MOB_KALECGOS = 24850,
- MOB_KALEC = 24891,
- MOB_SATHROVARR = 24892,
+ NPC_KALECGOS = 24850,
+ NPC_KALEC = 24891,
+ NPC_SATHROVARR = 24892,
- MOB_DEAD = 25268,
- MOB_FLIGHT_LEFT = 25357,
- MOB_FLIGHT_RIGHT = 25358,
- MOB_DEATH_CLOUD = 25703,
- MOB_VAPOR = 25265,
- MOB_VAPOR_TRAIL = 25267,
+ NPC_DEAD = 25268,
+ NPC_FLIGHT_LEFT = 25357,
+ NPC_FLIGHT_RIGHT = 25358,
+ NPC_DEATH_CLOUD = 25703,
+ NPC_VAPOR = 25265,
+ NPC_VAPOR_TRAIL = 25267,
- MOB_GRAND_WARLOCK_ALYTHESS = 25166,
- MOB_SHADOW_IMAGE = 25214,
- MOB_LADY_SACROLASH = 25165,
+ NPC_GRAND_WARLOCK_ALYTHESS = 25166,
+ NPC_SHADOW_IMAGE = 25214,
+ NPC_LADY_SACROLASH = 25165,
CREATURE_ANVEENA = 26046, // Embodiment of the Sunwell
CREATURE_KALECGOS = 25319, // Helps the raid throughout the fight
diff --git a/src/server/scripts/EasternKingdoms/Uldaman/boss_archaedas.cpp b/src/server/scripts/EasternKingdoms/Uldaman/boss_archaedas.cpp
index f7f2dbfa6f7..ed7332510fc 100644
--- a/src/server/scripts/EasternKingdoms/Uldaman/boss_archaedas.cpp
+++ b/src/server/scripts/EasternKingdoms/Uldaman/boss_archaedas.cpp
@@ -211,24 +211,24 @@ class boss_archaedas : public CreatureScript
};
/* ScriptData
-SDName: mob_archaedas_minions
+SDName: npc_archaedas_minions
SD%Complete: 100
SDComment: These mobs are initially frozen until Archaedas awakens them
one at a time.
EndScriptData */
-class mob_archaedas_minions : public CreatureScript
+class npc_archaedas_minions : public CreatureScript
{
public:
- mob_archaedas_minions()
- : CreatureScript("mob_archaedas_minions")
+ npc_archaedas_minions()
+ : CreatureScript("npc_archaedas_minions")
{
}
- struct mob_archaedas_minionsAI : public ScriptedAI
+ struct npc_archaedas_minionsAI : public ScriptedAI
{
- mob_archaedas_minionsAI(Creature* creature) : ScriptedAI(creature)
+ npc_archaedas_minionsAI(Creature* creature) : ScriptedAI(creature)
{
instance = me->GetInstanceScript();
}
@@ -303,29 +303,29 @@ class mob_archaedas_minions : public CreatureScript
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_archaedas_minionsAI(creature);
+ return new npc_archaedas_minionsAI(creature);
}
};
/* ScriptData
-SDName: mob_stonekeepers
+SDName: npc_stonekeepers
SD%Complete: 100
SDComment: After activating the altar of the keepers, the stone keepers will
wake up one by one.
EndScriptData */
-class mob_stonekeepers : public CreatureScript
+class npc_stonekeepers : public CreatureScript
{
public:
- mob_stonekeepers()
- : CreatureScript("mob_stonekeepers")
+ npc_stonekeepers()
+ : CreatureScript("npc_stonekeepers")
{
}
- struct mob_stonekeepersAI : public ScriptedAI
+ struct npc_stonekeepersAI : public ScriptedAI
{
- mob_stonekeepersAI(Creature* creature) : ScriptedAI(creature)
+ npc_stonekeepersAI(Creature* creature) : ScriptedAI(creature)
{
instance = me->GetInstanceScript();
}
@@ -366,7 +366,7 @@ class mob_stonekeepers : public CreatureScript
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_stonekeepersAI(creature);
+ return new npc_stonekeepersAI(creature);
}
};
@@ -404,8 +404,8 @@ class go_altar_of_archaedas : public GameObjectScript
void AddSC_boss_archaedas()
{
new boss_archaedas();
- new mob_archaedas_minions();
- new mob_stonekeepers();
+ new npc_archaedas_minions();
+ new npc_stonekeepers();
new go_altar_of_archaedas();
}
diff --git a/src/server/scripts/EasternKingdoms/Uldaman/uldaman.cpp b/src/server/scripts/EasternKingdoms/Uldaman/uldaman.cpp
index 3a84c79afdc..5f9577e12fa 100644
--- a/src/server/scripts/EasternKingdoms/Uldaman/uldaman.cpp
+++ b/src/server/scripts/EasternKingdoms/Uldaman/uldaman.cpp
@@ -24,7 +24,7 @@ SDCategory: Uldaman
EndScriptData */
/* ContentData
-mob_jadespine_basilisk
+npc_jadespine_basilisk
go_keystone_chamber
at_map_chamber
EndContentData */
@@ -35,7 +35,7 @@ EndContentData */
#include "Player.h"
/*######
-## mob_jadespine_basilisk
+## npc_jadespine_basilisk
######*/
enum eSpells
@@ -43,18 +43,18 @@ enum eSpells
SPELL_CRYSTALLINE_SLUMBER = 3636,
};
-class mob_jadespine_basilisk : public CreatureScript
+class npc_jadespine_basilisk : public CreatureScript
{
public:
- mob_jadespine_basilisk()
- : CreatureScript("mob_jadespine_basilisk")
+ npc_jadespine_basilisk()
+ : CreatureScript("npc_jadespine_basilisk")
{
}
- struct mob_jadespine_basiliskAI : public ScriptedAI
+ struct npc_jadespine_basiliskAI : public ScriptedAI
{
- mob_jadespine_basiliskAI(Creature* creature) : ScriptedAI(creature) {}
+ npc_jadespine_basiliskAI(Creature* creature) : ScriptedAI(creature) {}
uint32 uiCslumberTimer;
@@ -98,7 +98,7 @@ class mob_jadespine_basilisk : public CreatureScript
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_jadespine_basiliskAI(creature);
+ return new npc_jadespine_basiliskAI(creature);
}
};
@@ -146,7 +146,7 @@ class AreaTrigger_at_map_chamber : public AreaTriggerScript
void AddSC_uldaman()
{
- new mob_jadespine_basilisk();
+ new npc_jadespine_basilisk();
new go_keystone_chamber();
new AreaTrigger_at_map_chamber();
}
diff --git a/src/server/scripts/EasternKingdoms/zone_arathi_highlands.cpp b/src/server/scripts/EasternKingdoms/zone_arathi_highlands.cpp
index 7465bbc3f17..091eb5e3d93 100644
--- a/src/server/scripts/EasternKingdoms/zone_arathi_highlands.cpp
+++ b/src/server/scripts/EasternKingdoms/zone_arathi_highlands.cpp
@@ -54,7 +54,7 @@ enum eEnums
EVENT_SAY_8 = 3,
QUEST_GOGGLE_BOGGLE = 26050,
- MOB_VENGEFUL_SURGE = 2776
+ NPC_VENGEFUL_SURGE = 2776
};
class npc_professor_phizzlethorpe : public CreatureScript
@@ -84,8 +84,8 @@ class npc_professor_phizzlethorpe : public CreatureScript
break;
case 8:
Talk(EMOTE_PROGRESS_4);
- me->SummonCreature(MOB_VENGEFUL_SURGE, -2065.505f, -2136.88f, 22.20362f, 1.0f, TEMPSUMMON_CORPSE_DESPAWN, 0);
- me->SummonCreature(MOB_VENGEFUL_SURGE, -2059.249f, -2134.88f, 21.51582f, 1.0f, TEMPSUMMON_CORPSE_DESPAWN, 0);
+ me->SummonCreature(NPC_VENGEFUL_SURGE, -2065.505f, -2136.88f, 22.20362f, 1.0f, TEMPSUMMON_CORPSE_DESPAWN, 0);
+ me->SummonCreature(NPC_VENGEFUL_SURGE, -2059.249f, -2134.88f, 21.51582f, 1.0f, TEMPSUMMON_CORPSE_DESPAWN, 0);
break;
case 11:
Talk(SAY_PROGRESS_5, player->GetGUID());
diff --git a/src/server/scripts/EasternKingdoms/zone_eastern_plaguelands.cpp b/src/server/scripts/EasternKingdoms/zone_eastern_plaguelands.cpp
index 4e04307d154..0a68ade7e6b 100644
--- a/src/server/scripts/EasternKingdoms/zone_eastern_plaguelands.cpp
+++ b/src/server/scripts/EasternKingdoms/zone_eastern_plaguelands.cpp
@@ -24,7 +24,7 @@ SDCategory: Eastern Plaguelands
EndScriptData */
/* ContentData
-mobs_ghoul_flayer
+npc_ghoul_flayer
npc_augustus_the_touched
npc_darrowshire_spirit
npc_tirion_fordring
@@ -36,14 +36,14 @@ EndContentData */
#include "Player.h"
#include "WorldSession.h"
-class mobs_ghoul_flayer : public CreatureScript
+class npc_ghoul_flayer : public CreatureScript
{
public:
- mobs_ghoul_flayer() : CreatureScript("mobs_ghoul_flayer") { }
+ npc_ghoul_flayer() : CreatureScript("npc_ghoul_flayer") { }
- struct mobs_ghoul_flayerAI : public ScriptedAI
+ struct npc_ghoul_flayerAI : public ScriptedAI
{
- mobs_ghoul_flayerAI(Creature* creature) : ScriptedAI(creature) { }
+ npc_ghoul_flayerAI(Creature* creature) : ScriptedAI(creature) { }
void Reset() {}
@@ -58,7 +58,7 @@ public:
CreatureAI* GetAI(Creature* creature) const
{
- return new mobs_ghoul_flayerAI (creature);
+ return new npc_ghoul_flayerAI (creature);
}
};
@@ -185,7 +185,7 @@ public:
void AddSC_eastern_plaguelands()
{
- new mobs_ghoul_flayer();
+ new npc_ghoul_flayer();
new npc_augustus_the_touched();
new npc_darrowshire_spirit();
new npc_tirion_fordring();
diff --git a/src/server/scripts/EasternKingdoms/zone_eversong_woods.cpp b/src/server/scripts/EasternKingdoms/zone_eversong_woods.cpp
index c148d485e1a..be0f4b47fed 100644
--- a/src/server/scripts/EasternKingdoms/zone_eversong_woods.cpp
+++ b/src/server/scripts/EasternKingdoms/zone_eversong_woods.cpp
@@ -435,8 +435,8 @@ public:
######*/
#define QUEST_UNEXPECTED_RESULT 8488
-#define MOB_GHARZUL 15958
-#define MOB_ANGERSHADE 15656
+#define NPC_GHARZUL 15958
+#define NPC_ANGERSHADE 15656
class npc_apprentice_mirveda : public CreatureScript
{
@@ -504,9 +504,9 @@ public:
if (Summon)
{
- me->SummonCreature(MOB_GHARZUL, 8745, -7134.32f, 35.22f, 0, TEMPSUMMON_CORPSE_DESPAWN, 4000);
- me->SummonCreature(MOB_ANGERSHADE, 8745, -7134.32f, 35.22f, 0, TEMPSUMMON_CORPSE_DESPAWN, 4000);
- me->SummonCreature(MOB_ANGERSHADE, 8745, -7134.32f, 35.22f, 0, TEMPSUMMON_CORPSE_DESPAWN, 4000);
+ me->SummonCreature(NPC_GHARZUL, 8745, -7134.32f, 35.22f, 0, TEMPSUMMON_CORPSE_DESPAWN, 4000);
+ me->SummonCreature(NPC_ANGERSHADE, 8745, -7134.32f, 35.22f, 0, TEMPSUMMON_CORPSE_DESPAWN, 4000);
+ me->SummonCreature(NPC_ANGERSHADE, 8745, -7134.32f, 35.22f, 0, TEMPSUMMON_CORPSE_DESPAWN, 4000);
Summon = false;
}
}
@@ -519,7 +519,7 @@ public:
enum InfusedCrystal
{
- MOB_ENRAGED_WRAITH = 17086,
+ NPC_ENRAGED_WRAITH = 17086,
EMOTE = 0,
QUEST_POWERING_OUR_DEFENSES = 8490
};
@@ -618,9 +618,9 @@ public:
uint32 ran1 = rand()%8;
uint32 ran2 = rand()%8;
uint32 ran3 = rand()%8;
- me->SummonCreature(MOB_ENRAGED_WRAITH, SpawnLocations[ran1].x, SpawnLocations[ran1].y, SpawnLocations[ran1].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 10000);
- me->SummonCreature(MOB_ENRAGED_WRAITH, SpawnLocations[ran2].x, SpawnLocations[ran2].y, SpawnLocations[ran2].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 10000);
- me->SummonCreature(MOB_ENRAGED_WRAITH, SpawnLocations[ran3].x, SpawnLocations[ran3].y, SpawnLocations[ran3].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 10000);
+ me->SummonCreature(NPC_ENRAGED_WRAITH, SpawnLocations[ran1].x, SpawnLocations[ran1].y, SpawnLocations[ran1].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 10000);
+ me->SummonCreature(NPC_ENRAGED_WRAITH, SpawnLocations[ran2].x, SpawnLocations[ran2].y, SpawnLocations[ran2].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 10000);
+ me->SummonCreature(NPC_ENRAGED_WRAITH, SpawnLocations[ran3].x, SpawnLocations[ran3].y, SpawnLocations[ran3].z, 0, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 10000);
WaveTimer = 30000;
} else WaveTimer -= diff;
}
diff --git a/src/server/scripts/EasternKingdoms/zone_stranglethorn_vale.cpp b/src/server/scripts/EasternKingdoms/zone_stranglethorn_vale.cpp
index 5a67f0d053a..45b651872ac 100644
--- a/src/server/scripts/EasternKingdoms/zone_stranglethorn_vale.cpp
+++ b/src/server/scripts/EasternKingdoms/zone_stranglethorn_vale.cpp
@@ -24,7 +24,7 @@ SDCategory: Stranglethorn Vale
EndScriptData */
/* ContentData
-mob_yenniku
+npc_yenniku
EndContentData */
#include "ScriptMgr.h"
@@ -33,22 +33,22 @@ EndContentData */
#include "SpellInfo.h"
/*######
-## mob_yenniku
+## npc_yenniku
######*/
-class mob_yenniku : public CreatureScript
+class npc_yenniku : public CreatureScript
{
public:
- mob_yenniku() : CreatureScript("mob_yenniku") { }
+ npc_yenniku() : CreatureScript("npc_yenniku") { }
CreatureAI* GetAI(Creature* creature) const
{
- return new mob_yennikuAI (creature);
+ return new npc_yennikuAI (creature);
}
- struct mob_yennikuAI : public ScriptedAI
+ struct npc_yennikuAI : public ScriptedAI
{
- mob_yennikuAI(Creature* creature) : ScriptedAI(creature)
+ npc_yennikuAI(Creature* creature) : ScriptedAI(creature)
{
bReset = false;
}
@@ -126,5 +126,5 @@ public:
void AddSC_stranglethorn_vale()
{
- new mob_yenniku();
+ new npc_yenniku();
}