aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVincent_Michael <Vincent_Michael@gmx.de>2012-12-24 21:35:34 +0100
committerVincent_Michael <Vincent_Michael@gmx.de>2012-12-24 21:38:28 +0100
commitd3d9dfd7346b46eb0994ab89ac97a09d5dbde2fb (patch)
treef9c9b917632f0b97edd299aed3484d192a7f0967
parentf43b9df40068152caea39aae1f313f1ed41bc917 (diff)
Core/Script: Add some talks for Zul'Gurub
-rw-r--r--src/server/scripts/EasternKingdoms/ZulGurub/boss_jindo_the_godbreaker.cpp23
-rw-r--r--src/server/scripts/EasternKingdoms/ZulGurub/boss_kilnara.cpp21
-rw-r--r--src/server/scripts/EasternKingdoms/ZulGurub/boss_mandokir.cpp21
-rw-r--r--src/server/scripts/EasternKingdoms/ZulGurub/boss_venoxis.cpp23
-rw-r--r--src/server/scripts/EasternKingdoms/ZulGurub/boss_zanzil.cpp24
-rw-r--r--src/server/scripts/EasternKingdoms/ZulGurub/instance_zulgurub.cpp107
-rw-r--r--src/server/scripts/EasternKingdoms/ZulGurub/zulgurub.h8
7 files changed, 160 insertions, 67 deletions
diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_jindo_the_godbreaker.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_jindo_the_godbreaker.cpp
index 4677ce52e1c..bcf742fcf32 100644
--- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_jindo_the_godbreaker.cpp
+++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_jindo_the_godbreaker.cpp
@@ -22,6 +22,22 @@
enum Yells
{
+ // Jin'do the Godbreaker
+ SAY_INTRO = 0,
+ SAY_AGGRO = 1,
+ EMOTE_SHADOWS_OF_HAKKAR = 2, // ID - 97172 Shadows of Hakkar
+ SAY_JINDO_SPIRIT_PHASE = 3,
+ //SAY_PLAYER_KILL = 4, // missing data
+
+ // Spirit of Hakkar
+ SAY_SPIRIT_SPIRIT_PHASE = 0,
+ SAY_SPIRIT_DEFEATED = 1,
+
+ // Jin'do the Godbreaker - Trigger
+ SAY_JINDO_DEFEATED = 0,
+
+ // Shadow of Hakkar
+ SAY_SHADOW_DEFEATED = 0,
};
enum Spells
@@ -39,16 +55,17 @@ class boss_jindo_the_godbreaker : public CreatureScript
struct boss_jindo_the_godbreakerAI : public BossAI
{
- boss_jindo_the_godbreakerAI(Creature* creature) : BossAI(creature, DATA_JINDO)
- {
- }
+ boss_jindo_the_godbreakerAI(Creature* creature) : BossAI(creature, DATA_JINDO) { }
void Reset()
{
+ _Reset();
}
void EnterCombat(Unit* /*who*/)
{
+ _EnterCombat();
+ Talk(SAY_AGGRO);
}
void JustDied(Unit* /*killer*/)
diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_kilnara.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_kilnara.cpp
index a60eeb0c715..f582edd54db 100644
--- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_kilnara.cpp
+++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_kilnara.cpp
@@ -23,6 +23,12 @@
enum Yells
{
+ SAY_AGGRO = 0,
+ SAY_WAVE_OF_AGONY = 1, // ID - 96457 Wave of Agony
+ SAY_TRANSFROM_1 = 2,
+ SAY_TRANSFROM_2 = 3,
+ SAY_PLAYER_KILL = 4,
+ SAY_DEATH = 5
};
enum Spells
@@ -40,20 +46,29 @@ class boss_kilnara : public CreatureScript
struct boss_kilnaraAI : public BossAI
{
- boss_kilnaraAI(Creature* creature) : BossAI(creature, DATA_KILNARA)
- {
- }
+ boss_kilnaraAI(Creature* creature) : BossAI(creature, DATA_KILNARA) { }
void Reset()
{
+ _Reset();
}
void EnterCombat(Unit* /*who*/)
{
+ _EnterCombat();
+ Talk(SAY_AGGRO);
}
void JustDied(Unit* /*killer*/)
{
+ _JustDied();
+ Talk(SAY_DEATH);
+ }
+
+ void KilledUnit(Unit* victim)
+ {
+ if (victim->GetTypeId() == TYPEID_PLAYER)
+ Talk(SAY_PLAYER_KILL);
}
void UpdateAI(uint32 const diff)
diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_mandokir.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_mandokir.cpp
index 3619f0d0bc9..fde47a2ccb5 100644
--- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_mandokir.cpp
+++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_mandokir.cpp
@@ -22,6 +22,14 @@
enum Yells
{
+ SAY_AGGRO = 0,
+ SAY_PLAYER_KILL = 1,
+ SAY_DISMOUNT_OHGAN = 2,
+ EMOTE_DEVASTATING_SLAM = 3, // ID - 96739 Devastating Slam
+ SAY_REANIMATE_OHGAN = 4, // ID - 96724 Reanimate Ohgan
+ EMOTE_FRENZY = 5, // ID - 96800 Frenzy
+ SAY_FRENZY = 6, // ID - 96800 Frenzy
+ SAY_DEATH = 7
};
enum Spells
@@ -44,18 +52,25 @@ class boss_mandokir : public CreatureScript
void Reset()
{
+ _Reset();
}
- void KilledUnit(Unit* /*victim*/)
+ void EnterCombat(Unit* /*who*/)
{
+ _EnterCombat();
+ Talk(SAY_AGGRO);
}
- void EnterCombat(Unit* /*who*/)
+ void JustDied(Unit* /*killer*/)
{
+ _JustDied();
+ Talk(SAY_DEATH);
}
- void JustDied(Unit* /*killer*/)
+ void KilledUnit(Unit* victim)
{
+ if (victim->GetTypeId() == TYPEID_PLAYER)
+ Talk(SAY_PLAYER_KILL);
}
void UpdateAI(uint32 const diff)
diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_venoxis.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_venoxis.cpp
index 8980d766400..a0ca0cff73d 100644
--- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_venoxis.cpp
+++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_venoxis.cpp
@@ -24,6 +24,14 @@
enum Yells
{
+ SAY_AGGRO = 0,
+ SAY_BLOODVENOM = 1, // ID - 96842 Venomous Effusion
+ SAY_TRANSFROM = 2, // ID - 97354 Blessing of the Snake God
+ SAY_WORD_OF_HETHISS = 3, // ID - 96560 Word of Hethiss
+ EMOTE_BLOODVENOM = 4, // ID - 96842 Bloodvenom
+ EMOTE_VENOM_WITHDRAWAL = 5, // ID - 96653 Venom Withdrawal
+ SAY_PLAYER_KILL = 6,
+ SAY_DEATH = 7
};
enum Spells
@@ -41,24 +49,29 @@ class boss_venoxis : public CreatureScript
struct boss_venoxisAI : public BossAI
{
- boss_venoxisAI(Creature* creature) : BossAI(creature, DATA_VENOXIS)
- {
- }
+ boss_venoxisAI(Creature* creature) : BossAI(creature, DATA_VENOXIS) { }
void Reset()
{
+ _Reset();
}
void EnterCombat(Unit* /*who*/)
{
+ _EnterCombat();
+ Talk(SAY_AGGRO);
}
- void DamageTaken(Unit* /*attacker*/, uint32& /*damage*/)
+ void JustDied(Unit* /*killer*/)
{
+ _JustDied();
+ Talk(SAY_DEATH);
}
- void JustDied(Unit* /*killer*/)
+ void KilledUnit(Unit* victim)
{
+ if (victim->GetTypeId() == TYPEID_PLAYER)
+ Talk(SAY_PLAYER_KILL);
}
void UpdateAI(uint32 const diff)
diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_zanzil.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_zanzil.cpp
index 7466d8e47d3..00b8c8747f6 100644
--- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_zanzil.cpp
+++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_zanzil.cpp
@@ -22,6 +22,15 @@
enum Yells
{
+ SAY_AGGRO = 0,
+ EMOTE_ZANZIL_ZOMBIES = 1, // ID - 96319 Zanzil's Resurrection Elixir
+ SAY_ZANZIL_ZOMBIES = 2, // ID - 96319 Zanzil's Resurrection Elixir
+ EMOTE_ZANZIL_GRAVEYARD_GAS = 3, // ID - 96338 Zanzil's Graveyard Gas
+ SAY_ZANZIL_GRAVEYARD_GAS = 4, // ID - 96338 Zanzil's Graveyard Gas
+ EMOTE_ZANZIL_BERSEKER = 5, // ID - 96316 Zanzil's Resurrection Elixir
+ SAY_ZANZIL_BERSEKER = 6, // ID - 96316 Zanzil's Resurrection Elixir
+ SAY_PLAYER_KILL = 7,
+ SAY_DEATH = 8
};
enum Spells
@@ -39,20 +48,29 @@ class boss_zanzil : public CreatureScript
struct boss_zanzilAI : public BossAI
{
- boss_zanzilAI(Creature* creature) : BossAI(creature, DATA_ZANZIL)
- {
- }
+ boss_zanzilAI(Creature* creature) : BossAI(creature, DATA_ZANZIL) { }
void Reset()
{
+ _Reset();
}
void EnterCombat(Unit* /*who*/)
{
+ _EnterCombat();
+ Talk(SAY_AGGRO);
}
void JustDied(Unit* /*killer*/)
{
+ _JustDied();
+ Talk(SAY_DEATH);
+ }
+
+ void KilledUnit(Unit* victim)
+ {
+ if (victim->GetTypeId() == TYPEID_PLAYER)
+ Talk(SAY_PLAYER_KILL);
}
void UpdateAI(uint32 const diff)
diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/instance_zulgurub.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/instance_zulgurub.cpp
index b887755e25a..953d9f392bd 100644
--- a/src/server/scripts/EasternKingdoms/ZulGurub/instance_zulgurub.cpp
+++ b/src/server/scripts/EasternKingdoms/ZulGurub/instance_zulgurub.cpp
@@ -30,50 +30,54 @@ class instance_zulgurub : public InstanceMapScript
instance_zulgurub_InstanceMapScript(Map* map) : InstanceScript(map)
{
SetBossNumber(EncounterCount);
- venoxisGUID = 0;
- mandokirGUID = 0;
- kilnaraGUID = 0;
- zanzilGUID = 0;
- jindoGUID = 0;
- hazzarahGUID = 0;
- renatakiGUID = 0;
- wushoolayGUID = 0;
- grilekGUID = 0;
+ venoxisGUID = 0;
+ mandokirGUID = 0;
+ kilnaraGUID = 0;
+ zanzilGUID = 0;
+ jindoGUID = 0;
+ hazzarahGUID = 0;
+ renatakiGUID = 0;
+ wushoolayGUID = 0;
+ grilekGUID = 0;
+ jindoTiggerGUID = 0;
}
void OnCreatureCreate(Creature* creature)
{
switch (creature->GetEntry())
{
- case NPC_VENOXIS:
- venoxisGUID = creature->GetGUID();
- break;
- case NPC_MANDOKIR:
- mandokirGUID = creature->GetGUID();
- break;
- case NPC_KILNARA:
- kilnaraGUID = creature->GetGUID();
- break;
- case NPC_ZANZIL:
- zanzilGUID = creature->GetGUID();
- break;
- case NPC_JINDO:
- jindoGUID = creature->GetGUID();
- break;
- case NPC_HAZZARAH:
- hazzarahGUID = creature->GetGUID();
- break;
- case NPC_RENATAKI:
- renatakiGUID = creature->GetGUID();
- break;
- case NPC_WUSHOOLAY:
- wushoolayGUID = creature->GetGUID();
- break;
- case NPC_GRILEK:
- grilekGUID = creature->GetGUID();
- break;
- default:
- break;
+ case NPC_VENOXIS:
+ venoxisGUID = creature->GetGUID();
+ break;
+ case NPC_MANDOKIR:
+ mandokirGUID = creature->GetGUID();
+ break;
+ case NPC_KILNARA:
+ kilnaraGUID = creature->GetGUID();
+ break;
+ case NPC_ZANZIL:
+ zanzilGUID = creature->GetGUID();
+ break;
+ case NPC_JINDO:
+ jindoGUID = creature->GetGUID();
+ break;
+ case NPC_HAZZARAH:
+ hazzarahGUID = creature->GetGUID();
+ break;
+ case NPC_RENATAKI:
+ renatakiGUID = creature->GetGUID();
+ break;
+ case NPC_WUSHOOLAY:
+ wushoolayGUID = creature->GetGUID();
+ break;
+ case NPC_GRILEK:
+ grilekGUID = creature->GetGUID();
+ break;
+ case NPC_JINDO_TRIGGER:
+ jindoTiggerGUID = creature->GetGUID();
+ break;
+ default:
+ break;
}
}
@@ -84,18 +88,18 @@ class instance_zulgurub : public InstanceMapScript
switch (type)
{
- case DATA_VENOXIS:
- case DATA_MANDOKIR:
- case DATA_KILNARA:
- case DATA_ZANZIL:
- case DATA_JINDO:
- case DATA_HAZZARAH:
- case DATA_RENATAKI:
- case DATA_WUSHOOLAY:
- case DATA_GRILEK:
- break;
- default:
- break;
+ case DATA_VENOXIS:
+ case DATA_MANDOKIR:
+ case DATA_KILNARA:
+ case DATA_ZANZIL:
+ case DATA_JINDO:
+ case DATA_HAZZARAH:
+ case DATA_RENATAKI:
+ case DATA_WUSHOOLAY:
+ case DATA_GRILEK:
+ break;
+ default:
+ break;
}
return true;
@@ -141,6 +145,8 @@ class instance_zulgurub : public InstanceMapScript
return wushoolayGUID;
case DATA_GRILEK:
return grilekGUID;
+ case DATA_JINDOR_TRIGGER:
+ return jindoTiggerGUID;
default:
break;
}
@@ -202,6 +208,7 @@ class instance_zulgurub : public InstanceMapScript
uint64 renatakiGUID;
uint64 wushoolayGUID;
uint64 grilekGUID;
+ uint64 jindoTiggerGUID;
};
InstanceScript* GetInstanceScript(InstanceMap* map) const
diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/zulgurub.h b/src/server/scripts/EasternKingdoms/ZulGurub/zulgurub.h
index dc4db4be5c4..cdf4724dc35 100644
--- a/src/server/scripts/EasternKingdoms/ZulGurub/zulgurub.h
+++ b/src/server/scripts/EasternKingdoms/ZulGurub/zulgurub.h
@@ -36,6 +36,9 @@ enum DataTypes
DATA_RENATAKI = 6,
DATA_WUSHOOLAY = 7,
DATA_GRILEK = 8,
+
+ // Jin'do the Godbreaker
+ DATA_JINDOR_TRIGGER,
};
enum CreatureIds
@@ -51,6 +54,11 @@ enum CreatureIds
NPC_RENATAKI = 52269,
NPC_WUSHOOLAY = 52286,
NPC_GRILEK = 52258,
+
+ // Jin'do the Godbreaker
+ NPC_JINDO_TRIGGER = 52150,
+ NPC_SPIRIT_OF_HAKKAR = 52222,
+ NPC_SHADOW_OF_HAKKAR = 52650
};
template<class AI>