diff options
4 files changed, 66 insertions, 10 deletions
diff --git a/sql/updates/world/2012_12_04_04_world_creature_text.sql b/sql/updates/world/2012_12_04_04_world_creature_text.sql new file mode 100644 index 00000000000..1cf52a1417f --- /dev/null +++ b/sql/updates/world/2012_12_04_04_world_creature_text.sql @@ -0,0 +1,25 @@ +-- Slad'ran +DELETE FROM `creature_text` WHERE `entry`=29304 AND `groupid`=5; +INSERT INTO `creature_text` (`entry`, `groupid`, `id`, `text`, `type`, `language`, `probability`, `emote`, `duration`, `sound`, `comment`) VALUES +(29304, 5, 0, '%s begins to cast Poison Nova!', 41, 0, 100, 0, 0, 0, 'Slad''ran - EMOTE_NOVA'); + +-- Mage-Lord Urom +DELETE FROM `creature_text` WHERE `entry`=27655; +INSERT INTO `creature_text` (`entry`, `groupid`, `id`, `text`, `type`, `language`, `probability`, `emote`, `duration`, `sound`, `comment`) VALUES +(27655, 0, 0, 'What do we have here... those that would defy the Spell-Weaver? Those without foresight or understanding. How can I make you see? Malygos is saving the world from itself! Bah! You are hardly worth my time!', 14, 0, 100, 1, 0, 13635, 'Mage-Lord Urom - SAY_SUMMON_1'), +(27655, 1, 0, 'Clearly my pets failed. Perhaps another demonstration is in order.', 14, 0, 100, 1, 0, 13636, 'Mage-Lord Urom - SAY_SUMMON_2'), +(27655, 2, 0, 'Still you fight. Still you cling to misguided principles. If you survive, you''ll find me in the center ring.', 14, 0, 100, 1, 0, 13637, 'Mage-Lord Urom - SAY_SUMMON_3'), +(27655, 3, 0, 'Poor blind fools!', 14, 0, 100, 0, 0, 13638, 'Mage-Lord Urom - SAY_AGGRO'), +(27655, 4, 0, '%s begins to cast Empowered Arcane Explosion!', 41, 0, 100, 0, 0, 0, 'Mage-Lord Urom - EMOTE_ARCANE_EXPLOSION'), +(27655, 5, 0, 'A taste... just a small taste... of the Spell-Weaver''s power!', 14, 0, 100, 0, 0, 13639, 'Mage-Lord Urom - SAY_ARCANE_EXPLOSION'), +(27655, 5, 1, 'So much unstable energy... but worth the risk to destroy you!', 14, 0, 100, 0, 0, 13640, 'Mage-Lord Urom - SAY_ARCANE_EXPLOSION'), +(27655, 6, 0, 'Everything I have done... has been for Azeroth....', 14, 0, 100, 0, 0, 13644, 'Mage-Lord Urom - SAY_DEATH'), +(27655, 7, 0, 'If only you understood!', 14, 0, 100, 0, 0, 13641, 'Mage-Lord Urom - SAY_PLAYER_KILL'), +(27655, 7, 1, 'Now do you see? Do you?!', 14, 0, 100, 0, 0, 13642, 'Mage-Lord Urom - SAY_PLAYER_KILL'), +(27655, 7, 2, 'Everything I\'ve done... has been for Azeroth...', 14, 0, 100, 0, 0, 13643, 'Mage-Lord Urom - SAY_PLAYER_KILL'); + +-- Shadron / Vesperon +DELETE FROM `creature_text` WHERE `entry`IN (30451,30449) AND `groupid`=7; +INSERT INTO `creature_text` (`entry`, `groupid`, `id`, `text`, `type`, `language`, `probability`, `emote`, `duration`, `sound`, `comment`) VALUES +(30451, 7, 0, 'A Shadron Disciple appears in the Twilight!', 41, 0, 100, 0, 0, 0, 'Shadron - WHISPER_SHADRON_DICIPLE'), +(30449, 7, 0, 'A Vesperon Disciple appears in the Twilight!', 41, 0, 100, 0, 0, 0, 'Vesperon - WHISPER_SHADRON_DICIPLE'); diff --git a/src/server/scripts/Northrend/ChamberOfAspects/ObsidianSanctum/boss_sartharion.cpp b/src/server/scripts/Northrend/ChamberOfAspects/ObsidianSanctum/boss_sartharion.cpp index d4040d9a331..6d4b4bc9379 100644 --- a/src/server/scripts/Northrend/ChamberOfAspects/ObsidianSanctum/boss_sartharion.cpp +++ b/src/server/scripts/Northrend/ChamberOfAspects/ObsidianSanctum/boss_sartharion.cpp @@ -23,7 +23,7 @@ #include "CellImpl.h" #include "obsidian_sanctum.h" -enum eEnums +enum Enums { //Sartharion Yell SAY_SARTHARION_AGGRO = 0, @@ -40,6 +40,9 @@ enum eEnums WHISPER_HATCH_EGGS = 6, WHISPER_OPEN_PORTAL = 6, // whisper, shared by two dragons + WHISPER_SHADRON_DICIPLE = 7, + WHISPER_VESPERON_DICIPLE = 7, + //Sartharion Spells SPELL_BERSERK = 61632, // Increases the caster's attack speed by 150% and all damage it deals by 500% for 5 min. SPELL_CLEAVE = 56909, // Inflicts 35% weapon damage to an enemy and its nearest allies, affecting up to 10 targets. diff --git a/src/server/scripts/Northrend/Gundrak/boss_slad_ran.cpp b/src/server/scripts/Northrend/Gundrak/boss_slad_ran.cpp index 39bb7a3699d..cdbce68e337 100644 --- a/src/server/scripts/Northrend/Gundrak/boss_slad_ran.cpp +++ b/src/server/scripts/Northrend/Gundrak/boss_slad_ran.cpp @@ -39,7 +39,8 @@ enum Yells SAY_SLAY = 1, SAY_DEATH = 2, SAY_SUMMON_SNAKES = 3, - SAY_SUMMON_CONSTRICTORS = 4 + SAY_SUMMON_CONSTRICTORS = 4, + EMOTE_NOVA = 5 }; //Creatures @@ -130,6 +131,7 @@ public: if (uiPoisonNovaTimer <= diff) { DoCast(me->getVictim(), SPELL_POISON_NOVA); + Talk(EMOTE_NOVA); uiPoisonNovaTimer = 15*IN_MILLISECONDS; } else uiPoisonNovaTimer -= diff; diff --git a/src/server/scripts/Northrend/Nexus/Oculus/boss_urom.cpp b/src/server/scripts/Northrend/Nexus/Oculus/boss_urom.cpp index 44e2628e778..ffd5e53e787 100644 --- a/src/server/scripts/Northrend/Nexus/Oculus/boss_urom.cpp +++ b/src/server/scripts/Northrend/Nexus/Oculus/boss_urom.cpp @@ -45,11 +45,14 @@ enum Spells enum Yells { - SAY_AGGRO_1 = 0, - SAY_AGGRO_2 = 1, - SAY_AGGRO_3 = 2, - SAY_AGGRO_4 = 3, - SAY_TELEPORT = 1 + SAY_SUMMON_1 = 0, + SAY_SUMMON_2 = 1, + SAY_SUMMON_3 = 2, + SAY_AGGRO = 3, + EMOTE_ARCANE_EXPLOSION = 4, + SAY_ARCANE_EXPLOSION = 5, + SAY_DEATH = 6, + SAY_PLAYER_KILL = 7 }; enum eCreature @@ -148,7 +151,7 @@ public: { if (me->Attack(who, true)) { - Talk(RAND(SAY_AGGRO_1, SAY_AGGRO_2, SAY_AGGRO_3, SAY_AGGRO_4)); + Talk(SAY_AGGRO); me->SetInCombatWith(who); who->SetInCombatWith(me); @@ -204,6 +207,22 @@ public: { SetPosition(i); me->SummonCreature(Group[group[instance->GetData(DATA_UROM_PLATAFORM)]].entry[i], x, y, me->GetPositionZ(), me->GetOrientation()); + + // teleport to next platform and spawn adds + switch (instance->GetData(DATA_UROM_PLATAFORM)) + { + case 1: + Talk(SAY_SUMMON_1); + break; + case 2: + Talk(SAY_SUMMON_2); + break; + case 3: + Talk(SAY_SUMMON_3); + break; + default: + break; + } } } @@ -216,9 +235,13 @@ public: DoCast(TeleportSpells[instance->GetData(DATA_UROM_PLATAFORM)]); } + void KilledUnit(Unit* /*victim*/) + { + Talk(SAY_PLAYER_KILL); + } + void UpdateAI(const uint32 uiDiff) { - //Return since we have no target if (!UpdateVictim()) return; @@ -228,7 +251,6 @@ public: if (teleportTimer <= uiDiff) { me->InterruptNonMeleeSpells(false); - Talk(SAY_TELEPORT); me->GetMotionMaster()->MoveIdle(); DoCast(SPELL_TELEPORT); teleportTimer = urand(30000, 35000); @@ -257,6 +279,9 @@ public: me->GetMotionMaster()->MoveChase(me->getVictim(), 0, 0); me->SetUnitMovementFlags(MOVEMENTFLAG_WALKING); + Talk(EMOTE_ARCANE_EXPLOSION); + Talk(SAY_ARCANE_EXPLOSION); + canCast = false; canGoBack = false; arcaneExplosionTimer = 9000; @@ -286,6 +311,7 @@ public: void JustDied(Unit* /*killer*/) { _JustDied(); + Talk(SAY_DEATH); DoCast(me, SPELL_DEATH_SPELL, true); // we cast the spell as triggered or the summon effect does not occur } |