From 8fbec4156b887690e6724bc11f9dda5546d32f39 Mon Sep 17 00:00:00 2001 From: Gacko Date: Fri, 7 Dec 2012 10:04:40 +0100 Subject: Core/DB: Creature text for 22 script files --- .../Northrend/VioletHold/instance_violet_hold.cpp | 1 + .../ShatteredHalls/boss_warbringer_omrogg.cpp | 100 ++++++------- .../boss_warchief_kargath_bladefist.cpp | 15 +- .../Outland/TempestKeep/Eye/boss_astromancer.cpp | 30 ++-- .../Outland/TempestKeep/Eye/boss_kaelthas.cpp | 97 ++++++------- .../Outland/TempestKeep/Eye/boss_void_reaver.cpp | 19 ++- .../Mechanar/boss_gatewatcher_ironhand.cpp | 24 ++-- .../Mechanar/boss_nethermancer_sepethrea.cpp | 22 ++- .../Mechanar/boss_pathaleon_the_calculator.cpp | 26 ++-- .../arcatraz/boss_harbinger_skyriss.cpp | 31 ++-- .../botanica/boss_high_botanist_freywinn.cpp | 18 ++- .../Outland/TempestKeep/botanica/boss_laj.cpp | 4 +- .../TempestKeep/botanica/boss_warp_splinter.cpp | 18 ++- src/server/scripts/Outland/hellfire_peninsula.cpp | 51 +++---- src/server/scripts/Outland/nagrand.cpp | 40 +++--- src/server/scripts/Outland/netherstorm.cpp | 101 +++++++------ src/server/scripts/Outland/shadowmoon_valley.cpp | 159 ++++++++++----------- src/server/scripts/Outland/shattrath_city.cpp | 127 ++++++++-------- src/server/scripts/Outland/terokkar_forest.cpp | 36 ++--- src/server/scripts/Outland/zangarmarsh.cpp | 89 +++++++----- src/server/scripts/World/guards.cpp | 6 +- src/server/scripts/World/npcs_special.cpp | 80 +++++------ 22 files changed, 538 insertions(+), 556 deletions(-) (limited to 'src') diff --git a/src/server/scripts/Northrend/VioletHold/instance_violet_hold.cpp b/src/server/scripts/Northrend/VioletHold/instance_violet_hold.cpp index e971ecdcac2..c1c93c789de 100644 --- a/src/server/scripts/Northrend/VioletHold/instance_violet_hold.cpp +++ b/src/server/scripts/Northrend/VioletHold/instance_violet_hold.cpp @@ -16,6 +16,7 @@ */ #include "ScriptMgr.h" +#include "ScriptedCreature.h" #include "InstanceScript.h" #include "violet_hold.h" #include "Player.h" diff --git a/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/boss_warbringer_omrogg.cpp b/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/boss_warbringer_omrogg.cpp index 3d2d39e9817..5d3ff2abcc5 100644 --- a/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/boss_warbringer_omrogg.cpp +++ b/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/boss_warbringer_omrogg.cpp @@ -34,9 +34,9 @@ EndContentData */ enum eEnums { - YELL_DIE_L = -1540039, - YELL_DIE_R = -1540040, - EMOTE_ENRAGE = -1540041, + YELL_DIE_L = 0, + YELL_DIE_R = 1, + EMOTE_ENRAGE = 2, SPELL_BLAST_WAVE = 30600, SPELL_FEAR = 30584, @@ -57,49 +57,49 @@ struct Yell static Yell GoCombat[]= { - {-1540018, NPC_LEFT_HEAD}, - {-1540019, NPC_LEFT_HEAD}, - {-1540020, NPC_LEFT_HEAD}, + {0, NPC_LEFT_HEAD}, + {1, NPC_LEFT_HEAD}, + {2, NPC_LEFT_HEAD}, }; static Yell GoCombatDelay[]= { - {-1540021, NPC_RIGHT_HEAD}, - {-1540022, NPC_RIGHT_HEAD}, - {-1540023, NPC_RIGHT_HEAD}, + {0, NPC_RIGHT_HEAD}, + {1, NPC_RIGHT_HEAD}, + {2, NPC_RIGHT_HEAD}, }; static Yell Threat[]= { - {-1540024, NPC_LEFT_HEAD}, - {-1540025, NPC_RIGHT_HEAD}, - {-1540026, NPC_LEFT_HEAD}, - {-1540027, NPC_LEFT_HEAD}, + {3, NPC_LEFT_HEAD}, + {3, NPC_RIGHT_HEAD}, + {4, NPC_LEFT_HEAD}, + {5, NPC_LEFT_HEAD}, }; static Yell ThreatDelay1[]= { - {-1540028, NPC_RIGHT_HEAD}, - {-1540029, NPC_LEFT_HEAD}, - {-1540030, NPC_RIGHT_HEAD}, - {-1540031, NPC_RIGHT_HEAD}, + {4, NPC_RIGHT_HEAD}, + {6, NPC_LEFT_HEAD}, + {5, NPC_RIGHT_HEAD}, + {6, NPC_RIGHT_HEAD}, }; static Yell ThreatDelay2[]= { - {-1540032, NPC_LEFT_HEAD}, - {-1540033, NPC_RIGHT_HEAD}, - {-1540034, NPC_LEFT_HEAD}, - {-1540035, NPC_LEFT_HEAD}, + {7, NPC_LEFT_HEAD}, + {7, NPC_RIGHT_HEAD}, + {8, NPC_LEFT_HEAD}, + {9, NPC_LEFT_HEAD}, }; static Yell Killing[]= { - {-1540036, NPC_LEFT_HEAD}, - {-1540037, NPC_RIGHT_HEAD}, + {10, NPC_LEFT_HEAD}, + {8, NPC_RIGHT_HEAD}, }; static Yell KillingDelay[]= { - {-1540038, NPC_RIGHT_HEAD}, - {-1000000, NPC_LEFT_HEAD}, + {9, NPC_RIGHT_HEAD}, + {11, NPC_LEFT_HEAD}, }; class mob_omrogg_heads : public CreatureScript @@ -137,7 +137,7 @@ class mob_omrogg_heads : public CreatureScript if (Death_Timer <= diff) { - DoScriptText(YELL_DIE_R, me); + Talk(YELL_DIE_R); Death_Timer = false; me->setDeathState(JUST_DIED); } else Death_Timer -= diff; @@ -222,17 +222,17 @@ class boss_warbringer_omrogg : public CreatureScript void DoYellForThreat() { - Unit* pLeftHead = Unit::GetUnit(*me, LeftHeadGUID); - Unit* pRightHead = Unit::GetUnit(*me, RightHeadGUID); + Creature* pLeftHead = Creature::GetCreature(*me, LeftHeadGUID); + Creature* pRightHead = Unit::GetCreature(*me, RightHeadGUID); if (!pLeftHead || !pRightHead) return; ithreat = rand()%4; - Unit* source = (pLeftHead->GetEntry() == Threat[ithreat].creature ? pLeftHead : pRightHead); + Creature* source = (pLeftHead->GetEntry() == Threat[ithreat].creature ? pLeftHead : pRightHead); - DoScriptText(Threat[ithreat].id, source); + source->AI()->Talk(Threat[ithreat].id); Delay_Timer = 3500; ThreatYell = true; @@ -243,11 +243,11 @@ class boss_warbringer_omrogg : public CreatureScript me->SummonCreature(NPC_LEFT_HEAD, 0.0f, 0.0f, 0.0f, 0.0f, TEMPSUMMON_DEAD_DESPAWN, 0); me->SummonCreature(NPC_RIGHT_HEAD, 0.0f, 0.0f, 0.0f, 0.0f, TEMPSUMMON_DEAD_DESPAWN, 0); - if (Unit* pLeftHead = Unit::GetUnit(*me, LeftHeadGUID)) + if (Creature* pLeftHead = Creature::GetCreature(*me, LeftHeadGUID)) { iaggro = rand()%3; - DoScriptText(GoCombat[iaggro].id, pLeftHead); + pLeftHead->AI()->Talk(GoCombat[iaggro].id); Delay_Timer = 3500; AggroYell = true; @@ -272,25 +272,25 @@ class boss_warbringer_omrogg : public CreatureScript void KilledUnit(Unit* /*victim*/) { - Unit* pLeftHead = Unit::GetUnit(*me, LeftHeadGUID); - Unit* pRightHead = Unit::GetUnit(*me, RightHeadGUID); + Creature* pLeftHead = Creature::GetCreature(*me, LeftHeadGUID); + Creature* pRightHead = Creature::GetCreature(*me, RightHeadGUID); if (!pLeftHead || !pRightHead) return; ikilling = rand()%2; - Unit* source = (pLeftHead->GetEntry() == Killing[ikilling].creature ? pLeftHead : pRightHead); + Creature* source = (pLeftHead->GetEntry() == Killing[ikilling].creature ? pLeftHead : pRightHead); switch (ikilling) { case 0: - DoScriptText(Killing[ikilling].id, source); + source->AI()->Talk(Killing[ikilling].id); Delay_Timer = 3500; KillingYell = true; break; case 1: - DoScriptText(Killing[ikilling].id, source); + source->AI()->Talk(Killing[ikilling].id); KillingYell = false; break; } @@ -298,13 +298,13 @@ class boss_warbringer_omrogg : public CreatureScript void JustDied(Unit* /*killer*/) { - Unit* pLeftHead = Unit::GetUnit(*me, LeftHeadGUID); - Unit* pRightHead = Unit::GetUnit(*me, RightHeadGUID); + Creature* pLeftHead = Creature::GetCreature(*me, LeftHeadGUID); + Creature* pRightHead = Creature::GetCreature(*me, RightHeadGUID); if (!pLeftHead || !pRightHead) return; - DoScriptText(YELL_DIE_L, pLeftHead); + pLeftHead->AI()->Talk(YELL_DIE_L); CAST_AI(mob_omrogg_heads::mob_omrogg_headsAI, CAST_CRE(pRightHead)->AI())->DoDeathYell(); @@ -318,40 +318,40 @@ class boss_warbringer_omrogg : public CreatureScript { Delay_Timer = 3500; - Unit* pLeftHead = Unit::GetUnit(*me, LeftHeadGUID); - Unit* pRightHead = Unit::GetUnit(*me, RightHeadGUID); + Creature* pLeftHead = Creature::GetCreature(*me, LeftHeadGUID); + Creature* pRightHead = Creature::GetCreature(*me, RightHeadGUID); if (!pLeftHead || !pRightHead) return; if (AggroYell) { - DoScriptText(GoCombatDelay[iaggro].id, pRightHead); + pRightHead->AI()->Talk(GoCombatDelay[iaggro].id); AggroYell = false; } if (ThreatYell2) { - Unit* source = (pLeftHead->GetEntry() == ThreatDelay2[ithreat].creature ? pLeftHead : pRightHead); + Creature* source = (pLeftHead->GetEntry() == ThreatDelay2[ithreat].creature ? pLeftHead : pRightHead); - DoScriptText(ThreatDelay2[ithreat].id, source); + source->AI()->Talk(ThreatDelay2[ithreat].id); ThreatYell2 = false; } if (ThreatYell) { - Unit* source = (pLeftHead->GetEntry() == ThreatDelay1[ithreat].creature ? pLeftHead : pRightHead); + Creature* source = (pLeftHead->GetEntry() == ThreatDelay1[ithreat].creature ? pLeftHead : pRightHead); - DoScriptText(ThreatDelay1[ithreat].id, source); + source->AI()->Talk(ThreatDelay1[ithreat].id); ThreatYell = false; ThreatYell2 = true; } if (KillingYell) { - Unit* source = (pLeftHead->GetEntry() == KillingDelay[ikilling].creature ? pLeftHead : pRightHead); + Creature* source = (pLeftHead->GetEntry() == KillingDelay[ikilling].creature ? pLeftHead : pRightHead); - DoScriptText(KillingDelay[ikilling].id, source); + source->AI()->Talk(KillingDelay[ikilling].id); KillingYell = false; } } else Delay_Timer -= diff; @@ -373,7 +373,7 @@ class boss_warbringer_omrogg : public CreatureScript if (BurningMaul_Timer <= diff) { - DoScriptText(EMOTE_ENRAGE, me); + Talk(EMOTE_ENRAGE); DoCast(me, SPELL_BURNING_MAUL); BurningMaul_Timer = 40000; BlastWave_Timer = 16000; diff --git a/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/boss_warchief_kargath_bladefist.cpp b/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/boss_warchief_kargath_bladefist.cpp index 99f7c69aff2..37cd5666f73 100644 --- a/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/boss_warchief_kargath_bladefist.cpp +++ b/src/server/scripts/Outland/HellfireCitadel/ShatteredHalls/boss_warchief_kargath_bladefist.cpp @@ -32,12 +32,9 @@ EndContentData */ enum eSays { - SAY_AGGRO1 = -1540042, - SAY_AGGRO2 = -1540043, - SAY_AGGRO3 = -1540044, - SAY_SLAY1 = -1540045, - SAY_SLAY2 = -1540046, - SAY_DEATH = -1540047, + SAY_AGGRO = 0, + SAY_SLAY = 1, + SAY_DEATH = 2 }; enum eSpells @@ -111,7 +108,7 @@ class boss_warchief_kargath_bladefist : public CreatureScript void EnterCombat(Unit* /*who*/) { - DoScriptText(RAND(SAY_AGGRO1, SAY_AGGRO2, SAY_AGGRO3), me); + Talk(SAY_AGGRO); } void JustSummoned(Creature* summoned) @@ -134,13 +131,13 @@ class boss_warchief_kargath_bladefist : public CreatureScript { if (victim->GetTypeId() == TYPEID_PLAYER) { - DoScriptText(RAND(SAY_SLAY1, SAY_SLAY2), me); + Talk(SAY_SLAY); } } void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); removeAdds(); } diff --git a/src/server/scripts/Outland/TempestKeep/Eye/boss_astromancer.cpp b/src/server/scripts/Outland/TempestKeep/Eye/boss_astromancer.cpp index 5b5c3ff2326..91ff608a6c7 100644 --- a/src/server/scripts/Outland/TempestKeep/Eye/boss_astromancer.cpp +++ b/src/server/scripts/Outland/TempestKeep/Eye/boss_astromancer.cpp @@ -32,15 +32,13 @@ EndScriptData */ enum eEnums { - SAY_AGGRO = -1550007, - SAY_SUMMON1 = -1550008, - SAY_SUMMON2 = -1550009, - SAY_KILL1 = -1550010, - SAY_KILL2 = -1550011, - SAY_KILL3 = -1550012, - SAY_DEATH = -1550013, - SAY_VOIDA = -1550014, - SAY_VOIDB = -1550015, + SAY_AGGRO = 0, + SAY_SUMMON1 = 1, + SAY_SUMMON2 = 2, + SAY_KILL = 3, + SAY_DEATH = 4, + SAY_VOIDA = 5, + SAY_VOIDB = 6, SPELL_ARCANE_MISSILES = 33031, SPELL_WRATH_OF_THE_ASTROMANCER = 42783, @@ -149,21 +147,21 @@ class boss_high_astromancer_solarian : public CreatureScript void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(SAY_KILL1, SAY_KILL2, SAY_KILL3), me); + Talk(SAY_KILL); } void JustDied(Unit* /*killer*/) { me->SetObjectScale(defaultsize); me->SetDisplayId(MODEL_HUMAN); - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); if (instance) instance->SetData(DATA_HIGHASTROMANCERSOLARIANEVENT, DONE); } void EnterCombat(Unit* /*who*/) { - DoScriptText(SAY_AGGRO, me); + Talk(SAY_AGGRO); DoZoneInCombat(); if (instance) @@ -333,7 +331,7 @@ class boss_high_astromancer_solarian : public CreatureScript for (int j=1; j <= 4; j++) SummonMinion(NPC_SOLARIUM_AGENT, Portals[i][0], Portals[i][1], Portals[i][2]); - DoScriptText(SAY_SUMMON1, me); + Talk(SAY_SUMMON1); Phase2_Timer = 10000; } else @@ -360,7 +358,7 @@ class boss_high_astromancer_solarian : public CreatureScript me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); me->SetVisible(true); - DoScriptText(SAY_SUMMON2, me); + Talk(SAY_SUMMON2); AppearDelay = true; Phase3_Timer = 15000; } @@ -394,8 +392,8 @@ class boss_high_astromancer_solarian : public CreatureScript //To make sure she wont be invisible or not selecatble me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); me->SetVisible(true); - DoScriptText(SAY_VOIDA, me); - DoScriptText(SAY_VOIDB, me); + Talk(SAY_VOIDA); + Talk(SAY_VOIDB); me->SetArmor(WV_ARMOR); me->SetDisplayId(MODEL_VOIDWALKER); me->SetObjectScale(defaultsize*2.5f); diff --git a/src/server/scripts/Outland/TempestKeep/Eye/boss_kaelthas.cpp b/src/server/scripts/Outland/TempestKeep/Eye/boss_kaelthas.cpp index 2dbfb7b46c5..e87009737f1 100644 --- a/src/server/scripts/Outland/TempestKeep/Eye/boss_kaelthas.cpp +++ b/src/server/scripts/Outland/TempestKeep/Eye/boss_kaelthas.cpp @@ -32,42 +32,37 @@ EndScriptData */ enum eEnums { //kael'thas Speech - SAY_INTRO = -1550016, - SAY_INTRO_CAPERNIAN = -1550017, - SAY_INTRO_TELONICUS = -1550018, - SAY_INTRO_THALADRED = -1550019, - SAY_INTRO_SANGUINAR = -1550020, - SAY_PHASE2_WEAPON = -1550021, - SAY_PHASE3_ADVANCE = -1550022, - SAY_PHASE4_INTRO2 = -1550023, - SAY_PHASE5_NUTS = -1550024, - SAY_SLAY1 = -1550025, - SAY_SLAY2 = -1550026, - SAY_SLAY3 = -1550027, - SAY_MINDCONTROL1 = -1550028, - SAY_MINDCONTROL2 = -1550029, - SAY_GRAVITYLAPSE1 = -1550030, - SAY_GRAVITYLAPSE2 = -1550031, - SAY_SUMMON_PHOENIX1 = -1550032, - SAY_SUMMON_PHOENIX2 = -1550033, - SAY_DEATH = -1550034, + SAY_INTRO = 0, + SAY_INTRO_CAPERNIAN = 1, + SAY_INTRO_TELONICUS = 2, + SAY_INTRO_THALADRED = 3, + SAY_INTRO_SANGUINAR = 4, + SAY_PHASE2_WEAPON = 5, + SAY_PHASE3_ADVANCE = 6, + SAY_PHASE4_INTRO2 = 7, + SAY_PHASE5_NUTS = 8, + SAY_SLAY = 9, + SAY_MINDCONTROL = 10, + SAY_GRAVITYLAPSE = 11, + SAY_SUMMON_PHOENIX = 12, + SAY_DEATH = 13, //Thaladred the Darkener speech - SAY_THALADRED_AGGRO = -1550035, - SAY_THALADRED_DEATH = -1550036, - EMOTE_THALADRED_GAZE = -1550037, + SAY_THALADRED_AGGRO = 0, + SAY_THALADRED_DEATH = 1, + EMOTE_THALADRED_GAZE = 2, //Lord Sanguinar speech - SAY_SANGUINAR_AGGRO = -1550038, - SAY_SANGUINAR_DEATH = -1550039, + SAY_SANGUINAR_AGGRO = 0, + SAY_SANGUINAR_DEATH = 1, //Grand Astromancer Capernian speech - SAY_CAPERNIAN_AGGRO = -1550040, - SAY_CAPERNIAN_DEATH = -1550041, + SAY_CAPERNIAN_AGGRO = 0, + SAY_CAPERNIAN_DEATH = 1, //Master Engineer Telonicus speech - SAY_TELONICUS_AGGRO = -1550042, - SAY_TELONICUS_DEATH = -1550043, + SAY_TELONICUS_AGGRO = 0, + SAY_TELONICUS_DEATH = 1, //Phase 2 spells SPELL_SUMMON_WEAPONS = 36976, @@ -369,7 +364,7 @@ class boss_kaelthas : public CreatureScript { sLog->outError(LOG_FILTER_TSCR, "Kael'Thas One or more advisors missing, Skipping Phases 1-3"); - DoScriptText(SAY_PHASE4_INTRO2, me); + Talk(SAY_PHASE4_INTRO2); Phase = 4; @@ -385,7 +380,7 @@ class boss_kaelthas : public CreatureScript { PrepareAdvisors(); - DoScriptText(SAY_INTRO, me); + Talk(SAY_INTRO); instance->SetData(DATA_KAELTHASEVENT, 1); me->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE); @@ -431,7 +426,7 @@ class boss_kaelthas : public CreatureScript void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(SAY_SLAY1, SAY_SLAY2, SAY_SLAY3), me); + Talk(SAY_SLAY); } void JustSummoned(Creature* summoned) @@ -456,7 +451,7 @@ class boss_kaelthas : public CreatureScript me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE); me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE); - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); summons.DespawnAll(); @@ -487,7 +482,7 @@ class boss_kaelthas : public CreatureScript case 0: if (Phase_Timer <= diff) { - DoScriptText(SAY_INTRO_THALADRED, me); + Talk(SAY_INTRO_THALADRED); //start advisor within 7 seconds Phase_Timer = 7000; @@ -521,7 +516,7 @@ class boss_kaelthas : public CreatureScript if (Advisor && (Advisor->getStandState() == UNIT_STAND_STATE_DEAD)) { - DoScriptText(SAY_INTRO_SANGUINAR, me); + Talk(SAY_INTRO_SANGUINAR); //start advisor within 12.5 seconds Phase_Timer = 12500; @@ -555,7 +550,7 @@ class boss_kaelthas : public CreatureScript if (Advisor && (Advisor->getStandState() == UNIT_STAND_STATE_DEAD)) { - DoScriptText(SAY_INTRO_CAPERNIAN, me); + Talk(SAY_INTRO_CAPERNIAN); //start advisor within 7 seconds Phase_Timer = 7000; @@ -589,7 +584,7 @@ class boss_kaelthas : public CreatureScript if (Advisor && (Advisor->getStandState() == UNIT_STAND_STATE_DEAD)) { - DoScriptText(SAY_INTRO_TELONICUS, me); + Talk(SAY_INTRO_TELONICUS); //start advisor within 8.4 seconds Phase_Timer = 8400; @@ -628,7 +623,7 @@ class boss_kaelthas : public CreatureScript if (instance) instance->SetData(DATA_KAELTHASEVENT, 2); - DoScriptText(SAY_PHASE2_WEAPON, me); + Talk(SAY_PHASE2_WEAPON); PhaseSubphase = 0; Phase_Timer = 3500; @@ -669,7 +664,7 @@ class boss_kaelthas : public CreatureScript { if (Phase_Timer <= diff) { - DoScriptText(SAY_PHASE3_ADVANCE, me); + Talk(SAY_PHASE3_ADVANCE); if (instance) instance->SetData(DATA_KAELTHASEVENT, 3); Phase = 3; @@ -705,7 +700,7 @@ class boss_kaelthas : public CreatureScript if (Phase_Timer <= diff) { - DoScriptText(SAY_PHASE4_INTRO2, me); + Talk(SAY_PHASE4_INTRO2); Phase = 4; if (instance) @@ -801,7 +796,7 @@ class boss_kaelthas : public CreatureScript if (Phoenix_Timer <= diff) { DoCast(me, SPELL_PHOENIX_ANIMATION); - DoScriptText(RAND(SAY_SUMMON_PHOENIX1, SAY_SUMMON_PHOENIX2), me); + Talk(SAY_SUMMON_PHOENIX); Phoenix_Timer = 60000; } @@ -818,7 +813,7 @@ class boss_kaelthas : public CreatureScript Phase = 5; Phase_Timer = 10000; - DoScriptText(SAY_PHASE5_NUTS, me); + Talk(SAY_PHASE5_NUTS); me->StopMoving(); me->GetMotionMaster()->Clear(); @@ -913,7 +908,7 @@ class boss_kaelthas : public CreatureScript break; case 1: - DoScriptText(RAND(SAY_GRAVITYLAPSE1, SAY_GRAVITYLAPSE2), me); + Talk(SAY_GRAVITYLAPSE); // 2) At that point he will put a Gravity Lapse debuff on everyone for (i = threatlist.begin(); i != threatlist.end(); ++i) @@ -1041,14 +1036,14 @@ class boss_thaladred_the_darkener : public CreatureScript if (!who || FakeDeath) return; - DoScriptText(SAY_THALADRED_AGGRO, me); + Talk(SAY_THALADRED_AGGRO); me->AddThreat(who, 5000000.0f); } void JustDied(Unit* /*killer*/) { if (instance && instance->GetData(DATA_KAELTHASEVENT) == 3) - DoScriptText(SAY_THALADRED_DEATH, me); + Talk(SAY_THALADRED_DEATH); } void UpdateAI(const uint32 diff) @@ -1070,7 +1065,7 @@ class boss_thaladred_the_darkener : public CreatureScript { DoResetThreat(); me->AddThreat(target, 5000000.0f); - DoScriptText(EMOTE_THALADRED_GAZE, me, target); + Talk(EMOTE_THALADRED_GAZE, target->GetGUID()); Gaze_Timer = 8500; } } @@ -1134,13 +1129,13 @@ class boss_lord_sanguinar : public CreatureScript if (!who || FakeDeath) return; - DoScriptText(SAY_SANGUINAR_AGGRO, me); + Talk(SAY_SANGUINAR_AGGRO); } void JustDied(Unit* /*killer*/) { if (instance && instance->GetData(DATA_KAELTHASEVENT) == 3) - DoScriptText(SAY_SANGUINAR_DEATH, me); + Talk(SAY_SANGUINAR_DEATH); } void UpdateAI(const uint32 diff) @@ -1205,7 +1200,7 @@ class boss_grand_astromancer_capernian : public CreatureScript void JustDied(Unit* /*killer*/) { if (instance && instance->GetData(DATA_KAELTHASEVENT) == 3) - DoScriptText(SAY_CAPERNIAN_DEATH, me); + Talk(SAY_CAPERNIAN_DEATH); } void AttackStart(Unit* who) @@ -1249,7 +1244,7 @@ class boss_grand_astromancer_capernian : public CreatureScript { if (Yell_Timer <= diff) { - DoScriptText(SAY_CAPERNIAN_AGGRO, me); + Talk(SAY_CAPERNIAN_AGGRO); Yell = true; } else @@ -1344,7 +1339,7 @@ class boss_master_engineer_telonicus : public CreatureScript void JustDied(Unit* /*killer*/) { if (instance && instance->GetData(DATA_KAELTHASEVENT) == 3) - DoScriptText(SAY_TELONICUS_DEATH, me); + Talk(SAY_TELONICUS_DEATH); } void EnterCombat(Unit* who) @@ -1355,7 +1350,7 @@ class boss_master_engineer_telonicus : public CreatureScript if (!who || FakeDeath) return; - DoScriptText(SAY_TELONICUS_AGGRO, me); + Talk(SAY_TELONICUS_AGGRO); } void UpdateAI(const uint32 diff) diff --git a/src/server/scripts/Outland/TempestKeep/Eye/boss_void_reaver.cpp b/src/server/scripts/Outland/TempestKeep/Eye/boss_void_reaver.cpp index 2c778485131..14895f1d898 100644 --- a/src/server/scripts/Outland/TempestKeep/Eye/boss_void_reaver.cpp +++ b/src/server/scripts/Outland/TempestKeep/Eye/boss_void_reaver.cpp @@ -29,13 +29,10 @@ EndScriptData */ enum eEnums { - SAY_AGGRO = -1550000, - SAY_SLAY1 = -1550001, - SAY_SLAY2 = -1550002, - SAY_SLAY3 = -1550003, - SAY_DEATH = -1550004, - SAY_POUNDING1 = -1550005, - SAY_POUNDING2 = -1550006, + SAY_AGGRO = 0, + SAY_SLAY = 1, + SAY_DEATH = 2, + SAY_POUNDING = 3, SPELL_POUNDING = 34162, SPELL_ARCANE_ORB = 34172, @@ -83,12 +80,12 @@ class boss_void_reaver : public CreatureScript void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(SAY_SLAY1, SAY_SLAY2, SAY_SLAY3), me); + Talk(SAY_SLAY); } void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); DoZoneInCombat(); if (instance) @@ -97,7 +94,7 @@ class boss_void_reaver : public CreatureScript void EnterCombat(Unit* /*who*/) { - DoScriptText(SAY_AGGRO, me); + Talk(SAY_AGGRO); if (instance) instance->SetData(DATA_VOIDREAVEREVENT, IN_PROGRESS); @@ -111,7 +108,7 @@ class boss_void_reaver : public CreatureScript if (Pounding_Timer <= diff) { DoCast(me->getVictim(), SPELL_POUNDING); - DoScriptText(RAND(SAY_POUNDING1, SAY_POUNDING2), me); + Talk(SAY_POUNDING); Pounding_Timer = 15000; //cast time(3000) + cooldown time(12000) } else diff --git a/src/server/scripts/Outland/TempestKeep/Mechanar/boss_gatewatcher_ironhand.cpp b/src/server/scripts/Outland/TempestKeep/Mechanar/boss_gatewatcher_ironhand.cpp index 83acc1258be..15241e35a4a 100644 --- a/src/server/scripts/Outland/TempestKeep/Mechanar/boss_gatewatcher_ironhand.cpp +++ b/src/server/scripts/Outland/TempestKeep/Mechanar/boss_gatewatcher_ironhand.cpp @@ -28,13 +28,11 @@ EndScriptData */ enum eSays { - SAY_AGGRO_1 = -1554006, - SAY_HAMMER_1 = -1554007, - SAY_HAMMER_2 = -1554008, - SAY_SLAY_1 = -1554009, - SAY_SLAY_2 = -1554010, - SAY_DEATH_1 = -1554011, - EMOTE_HAMMER = -1554012, + SAY_AGGRO = 0, + SAY_HAMMER = 1, + SAY_SLAY = 2, + SAY_DEATH = 3, + EMOTE_HAMMER = 4 }; enum eSpells @@ -76,7 +74,7 @@ class boss_gatewatcher_iron_hand : public CreatureScript } void EnterCombat(Unit* /*who*/) { - DoScriptText(SAY_AGGRO_1, me); + Talk(SAY_AGGRO); } void KilledUnit(Unit* /*victim*/) @@ -84,12 +82,12 @@ class boss_gatewatcher_iron_hand : public CreatureScript if (rand()%2) return; - DoScriptText(RAND(SAY_SLAY_1, SAY_SLAY_2), me); + Talk(SAY_SLAY); } void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH_1, me); + Talk(SAY_DEATH); //TODO: Add door check/open code } @@ -112,14 +110,14 @@ class boss_gatewatcher_iron_hand : public CreatureScript if (Jackhammer_Timer <= diff) { //TODO: expect cast this about 5 times in a row (?), announce it by emote only once - DoScriptText(EMOTE_HAMMER, me); + Talk(EMOTE_HAMMER); DoCast(me->getVictim(), SPELL_JACKHAMMER); //chance to yell, but not same time as emote (after spell in fact casted) if (rand()%2) - return; + return; - DoScriptText(RAND(SAY_HAMMER_1, SAY_HAMMER_2), me); + Talk(SAY_HAMMER); Jackhammer_Timer = 30000; } else diff --git a/src/server/scripts/Outland/TempestKeep/Mechanar/boss_nethermancer_sepethrea.cpp b/src/server/scripts/Outland/TempestKeep/Mechanar/boss_nethermancer_sepethrea.cpp index 02be844711d..1602ea56d93 100644 --- a/src/server/scripts/Outland/TempestKeep/Mechanar/boss_nethermancer_sepethrea.cpp +++ b/src/server/scripts/Outland/TempestKeep/Mechanar/boss_nethermancer_sepethrea.cpp @@ -29,13 +29,11 @@ EndScriptData */ enum eSays { - SAY_AGGRO = -1554013, - SAY_SUMMON = -1554014, - SAY_DRAGONS_BREATH_1 = -1554015, - SAY_DRAGONS_BREATH_2 = -1554016, - SAY_SLAY1 = -1554017, - SAY_SLAY2 = -1554018, - SAY_DEATH = -1554019, + SAY_AGGRO = 0, + SAY_SUMMON = 1, + SAY_DRAGONS_BREATH = 2, + SAY_SLAY = 3, + SAY_DEATH = 4 }; enum eSpells @@ -92,19 +90,19 @@ class boss_nethermancer_sepethrea : public CreatureScript if (instance) instance->SetData(DATA_NETHERMANCER_EVENT, IN_PROGRESS); - DoScriptText(SAY_AGGRO, me); + Talk(SAY_AGGRO); DoCast(who, SPELL_SUMMON_RAGIN_FLAMES); - DoScriptText(SAY_SUMMON, me); + Talk(SAY_SUMMON); } void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(SAY_SLAY1, SAY_SLAY2), me); + Talk(SAY_SLAY); } void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); if (instance) instance->SetData(DATA_NETHERMANCER_EVENT, DONE); } @@ -140,7 +138,7 @@ class boss_nethermancer_sepethrea : public CreatureScript { if (rand()%2) return; - DoScriptText(RAND(SAY_DRAGONS_BREATH_1, SAY_DRAGONS_BREATH_2), me); + Talk(SAY_DRAGONS_BREATH); } dragons_breath_Timer = urand(12000, 22000); } diff --git a/src/server/scripts/Outland/TempestKeep/Mechanar/boss_pathaleon_the_calculator.cpp b/src/server/scripts/Outland/TempestKeep/Mechanar/boss_pathaleon_the_calculator.cpp index 622e6e6d7e6..adf1aac0639 100644 --- a/src/server/scripts/Outland/TempestKeep/Mechanar/boss_pathaleon_the_calculator.cpp +++ b/src/server/scripts/Outland/TempestKeep/Mechanar/boss_pathaleon_the_calculator.cpp @@ -28,14 +28,12 @@ EndScriptData */ enum eSays { - SAY_AGGRO = -1554020, - SAY_DOMINATION_1 = -1554021, - SAY_DOMINATION_2 = -1554022, - SAY_SUMMON = -1554023, - SAY_ENRAGE = -1554024, - SAY_SLAY_1 = -1554025, - SAY_SLAY_2 = -1554026, - SAY_DEATH = -1554027, + SAY_AGGRO = 0, + SAY_DOMINATION = 1, + SAY_SUMMON = 2, + SAY_ENRAGE = 3, + SAY_SLAY = 4, + SAY_DEATH = 5 }; // Spells to be casted enum eSpells @@ -96,17 +94,17 @@ class boss_pathaleon_the_calculator : public CreatureScript } void EnterCombat(Unit* /*who*/) { - DoScriptText(SAY_AGGRO, me); + Talk(SAY_AGGRO); } void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(SAY_SLAY_1, SAY_SLAY_2), me); + Talk(SAY_SLAY); } void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); summons.DespawnAll(); } @@ -135,7 +133,7 @@ class boss_pathaleon_the_calculator : public CreatureScript if (target && Wraith) Wraith->AI()->AttackStart(target); } - DoScriptText(SAY_SUMMON, me); + Talk(SAY_SUMMON); Summon_Timer = urand(30000, 45000); } else @@ -161,7 +159,7 @@ class boss_pathaleon_the_calculator : public CreatureScript { if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 1)) { - DoScriptText(RAND(SAY_DOMINATION_1, SAY_DOMINATION_2), me); + Talk(SAY_DOMINATION); DoCast(target, SPELL_DOMINATION); } Domination_Timer = urand(25000, 30000); @@ -184,7 +182,7 @@ class boss_pathaleon_the_calculator : public CreatureScript if (!Enraged && HealthBelowPct(21)) { DoCast(me, SPELL_FRENZY); - DoScriptText(SAY_ENRAGE, me); + Talk(SAY_ENRAGE); Enraged = true; } diff --git a/src/server/scripts/Outland/TempestKeep/arcatraz/boss_harbinger_skyriss.cpp b/src/server/scripts/Outland/TempestKeep/arcatraz/boss_harbinger_skyriss.cpp index 730bab7e626..8a107090a28 100644 --- a/src/server/scripts/Outland/TempestKeep/arcatraz/boss_harbinger_skyriss.cpp +++ b/src/server/scripts/Outland/TempestKeep/arcatraz/boss_harbinger_skyriss.cpp @@ -34,16 +34,13 @@ EndContentData */ enum eSays { - SAY_INTRO = -1552000, - SAY_AGGRO = -1552001, - SAY_KILL_1 = -1552002, - SAY_KILL_2 = -1552003, - SAY_MIND_1 = -1552004, - SAY_MIND_2 = -1552005, - SAY_FEAR_1 = -1552006, - SAY_FEAR_2 = -1552007, - SAY_IMAGE = -1552008, - SAY_DEATH = -1552009, + SAY_INTRO = 0, + SAY_AGGRO = 1, + SAY_KILL = 2, + SAY_MIND = 3, + SAY_FEAR = 4, + SAY_IMAGE = 5, + SAY_DEATH = 6 }; enum eSpells @@ -115,7 +112,7 @@ class boss_harbinger_skyriss : public CreatureScript void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); if (instance) instance->SetData(TYPE_HARBINGERSKYRISS, DONE); } @@ -139,7 +136,7 @@ class boss_harbinger_skyriss : public CreatureScript if (victim->GetEntry() == 21436) return; - DoScriptText(RAND(SAY_KILL_1, SAY_KILL_2), me); + Talk(SAY_KILL); } void DoSplit(uint32 val) @@ -147,7 +144,7 @@ class boss_harbinger_skyriss : public CreatureScript if (me->IsNonMeleeSpellCasted(false)) me->InterruptNonMeleeSpells(false); - DoScriptText(SAY_IMAGE, me); + Talk(SAY_IMAGE); if (val == 66) DoCast(me, SPELL_66_ILLUSION); @@ -167,13 +164,13 @@ class boss_harbinger_skyriss : public CreatureScript switch (Intro_Phase) { case 1: - DoScriptText(SAY_INTRO, me); + Talk(SAY_INTRO); instance->HandleGameObject(instance->GetData64(DATA_SPHERE_SHIELD), true); ++Intro_Phase; Intro_Timer = 25000; break; case 2: - DoScriptText(SAY_AGGRO, me); + Talk(SAY_AGGRO); if (Unit* mellic = Unit::GetUnit(*me, instance->GetData64(DATA_MELLICHAR))) { //should have a better way to do this. possibly spell exist. @@ -224,7 +221,7 @@ class boss_harbinger_skyriss : public CreatureScript if (me->IsNonMeleeSpellCasted(false)) return; - DoScriptText(RAND(SAY_FEAR_1, SAY_FEAR_2), me); + Talk(SAY_FEAR); if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 1)) DoCast(target, SPELL_FEAR); @@ -241,7 +238,7 @@ class boss_harbinger_skyriss : public CreatureScript if (me->IsNonMeleeSpellCasted(false)) return; - DoScriptText(RAND(SAY_MIND_1, SAY_MIND_2), me); + Talk(SAY_MIND); if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 1)) DoCast(target, SPELL_DOMINATION); diff --git a/src/server/scripts/Outland/TempestKeep/botanica/boss_high_botanist_freywinn.cpp b/src/server/scripts/Outland/TempestKeep/botanica/boss_high_botanist_freywinn.cpp index a53f62c96f4..4288061860e 100644 --- a/src/server/scripts/Outland/TempestKeep/botanica/boss_high_botanist_freywinn.cpp +++ b/src/server/scripts/Outland/TempestKeep/botanica/boss_high_botanist_freywinn.cpp @@ -28,12 +28,10 @@ EndScriptData */ enum eSays { - SAY_AGGRO = -1553000, - SAY_KILL_1 = -1553001, - SAY_KILL_2 = -1553002, - SAY_TREE_1 = -1553003, - SAY_TREE_2 = -1553004, - SAY_DEATH = -1553005, + SAY_AGGRO = 0, + SAY_KILL = 1, + SAY_TREE = 2, + SAY_DEATH = 3 }; enum eSpells @@ -83,7 +81,7 @@ class boss_high_botanist_freywinn : public CreatureScript void EnterCombat(Unit* /*who*/) { - DoScriptText(SAY_AGGRO, me); + Talk(SAY_AGGRO); } void JustSummoned(Creature* summoned) @@ -105,12 +103,12 @@ class boss_high_botanist_freywinn : public CreatureScript void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(SAY_KILL_1, SAY_KILL_2), me); + Talk(SAY_KILL); } void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); } void UpdateAI(const uint32 diff) @@ -120,7 +118,7 @@ class boss_high_botanist_freywinn : public CreatureScript if (TreeForm_Timer <= diff) { - DoScriptText(RAND(SAY_TREE_1, SAY_TREE_2), me); + Talk(SAY_TREE); if (me->IsNonMeleeSpellCasted(false)) me->InterruptNonMeleeSpells(true); diff --git a/src/server/scripts/Outland/TempestKeep/botanica/boss_laj.cpp b/src/server/scripts/Outland/TempestKeep/botanica/boss_laj.cpp index ed04c42edc7..3bda920fdeb 100644 --- a/src/server/scripts/Outland/TempestKeep/botanica/boss_laj.cpp +++ b/src/server/scripts/Outland/TempestKeep/botanica/boss_laj.cpp @@ -42,7 +42,7 @@ enum eSpells }; enum eOthers { - EMOTE_SUMMON = -1553006, + EMOTE_SUMMON = 0, MODEL_DEFAULT = 13109, MODEL_ARCANE = 14213, MODEL_FIRE = 13110, @@ -175,7 +175,7 @@ class boss_laj : public CreatureScript { if (Summon_Timer <= diff) { - DoScriptText(EMOTE_SUMMON, me); + Talk(EMOTE_SUMMON); DoSummons(); Summon_Timer = 2500; } diff --git a/src/server/scripts/Outland/TempestKeep/botanica/boss_warp_splinter.cpp b/src/server/scripts/Outland/TempestKeep/botanica/boss_warp_splinter.cpp index 2937a5b9987..74f10f97754 100644 --- a/src/server/scripts/Outland/TempestKeep/botanica/boss_warp_splinter.cpp +++ b/src/server/scripts/Outland/TempestKeep/botanica/boss_warp_splinter.cpp @@ -28,12 +28,10 @@ EndScriptData */ enum eSays { - SAY_AGGRO = -1553007, - SAY_SLAY_1 = -1553008, - SAY_SLAY_2 = -1553009, - SAY_SUMMON_1 = -1553010, - SAY_SUMMON_2 = -1553011, - SAY_DEATH = -1553012, + SAY_AGGRO = 0, + SAY_SLAY = 1, + SAY_SUMMON = 2, + SAY_DEATH = 3 }; enum eSpells @@ -162,17 +160,17 @@ class boss_warp_splinter : public CreatureScript void EnterCombat(Unit* /*who*/) { - DoScriptText(SAY_AGGRO, me); + Talk(SAY_AGGRO); } void KilledUnit(Unit* /*victim*/) { - DoScriptText(RAND(SAY_SLAY_1, SAY_SLAY_2), me); + Talk(SAY_SLAY); } void JustDied(Unit* /*killer*/) { - DoScriptText(SAY_DEATH, me); + Talk(SAY_DEATH); } void SummonTreants() @@ -188,7 +186,7 @@ class boss_warp_splinter : public CreatureScript if (Creature* pTreant = me->SummonCreature(CREATURE_TREANT, treant_pos[i][0], treant_pos[i][1], treant_pos[i][2], O, TEMPSUMMON_TIMED_OR_CORPSE_DESPAWN, 25000)) CAST_AI(mob_warp_splinter_treant::mob_warp_splinter_treantAI, pTreant->AI())->WarpGuid = me->GetGUID(); } - DoScriptText(RAND(SAY_SUMMON_1, SAY_SUMMON_2), me); + Talk(SAY_SUMMON); } void UpdateAI(const uint32 diff) diff --git a/src/server/scripts/Outland/hellfire_peninsula.cpp b/src/server/scripts/Outland/hellfire_peninsula.cpp index 4da98281eb2..7ac90320347 100644 --- a/src/server/scripts/Outland/hellfire_peninsula.cpp +++ b/src/server/scripts/Outland/hellfire_peninsula.cpp @@ -46,8 +46,8 @@ EndContentData */ enum eAeranas { - SAY_SUMMON = -1000138, - SAY_FREE = -1000139, + SAY_SUMMON = 0, + SAY_FREE = 1, FACTION_HOSTILE = 16, FACTION_FRIENDLY = 35, @@ -85,7 +85,7 @@ public: me->RemoveFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_QUESTGIVER); me->setFaction(FACTION_FRIENDLY); - DoScriptText(SAY_SUMMON, me); + Talk(SAY_SUMMON); } void UpdateAI(const uint32 diff) @@ -109,7 +109,7 @@ public: me->RemoveAllAuras(); me->DeleteThreatList(); me->CombatStop(true); - DoScriptText(SAY_FREE, me); + Talk(SAY_FREE); return; } @@ -136,9 +136,9 @@ public: enum eAncestralWolf { - EMOTE_WOLF_LIFT_HEAD = -1000496, - EMOTE_WOLF_HOWL = -1000497, - SAY_WOLF_WELCOME = -1000498, + EMOTE_WOLF_LIFT_HEAD = 0, + EMOTE_WOLF_HOWL = 1, + SAY_WOLF_WELCOME = 2, SPELL_ANCESTRAL_WOLF_BUFF = 29981, @@ -168,7 +168,7 @@ public: Reset(); } - Unit* pRyga; + Creature* pRyga; void Reset() { @@ -178,8 +178,9 @@ public: void MoveInLineOfSight(Unit* who) { - if (!pRyga && who->GetTypeId() == TYPEID_UNIT && who->GetEntry() == NPC_RYGA && me->IsWithinDistInMap(who, 15.0f)) - pRyga = who; + if (!pRyga && who->GetEntry() == NPC_RYGA && me->IsWithinDistInMap(who, 15.0f)) + if (Creature* temp = who->ToCreature()) + pRyga = temp; npc_escortAI::MoveInLineOfSight(who); } @@ -189,14 +190,14 @@ public: switch (waypointId) { case 0: - DoScriptText(EMOTE_WOLF_LIFT_HEAD, me); + Talk(EMOTE_WOLF_LIFT_HEAD); break; case 2: - DoScriptText(EMOTE_WOLF_HOWL, me); + Talk(EMOTE_WOLF_HOWL); break; case 50: if (pRyga && pRyga->isAlive() && !pRyga->isInCombat()) - DoScriptText(SAY_WOLF_WELCOME, pRyga); + pRyga->AI()->Talk(SAY_WOLF_WELCOME); break; } } @@ -368,12 +369,12 @@ public: enum eWoundedBloodElf { - SAY_ELF_START = -1000117, - SAY_ELF_SUMMON1 = -1000118, - SAY_ELF_RESTING = -1000119, - SAY_ELF_SUMMON2 = -1000120, - SAY_ELF_COMPLETE = -1000121, - SAY_ELF_AGGRO = -1000122, + SAY_ELF_START = 0, + SAY_ELF_SUMMON1 = 1, + SAY_ELF_RESTING = 2, + SAY_ELF_SUMMON2 = 3, + SAY_ELF_COMPLETE = 4, + SAY_ELF_AGGRO = 5, QUEST_ROAD_TO_FALCON_WATCH = 9375 }; @@ -415,25 +416,25 @@ public: switch (waypointId) { case 0: - DoScriptText(SAY_ELF_START, me, player); + Talk(SAY_ELF_START, player->GetGUID()); break; case 9: - DoScriptText(SAY_ELF_SUMMON1, me, player); + Talk(SAY_ELF_SUMMON1, player->GetGUID()); // Spawn two Haal'eshi Talonguard DoSpawnCreature(16967, -15, -15, 0, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000); DoSpawnCreature(16967, -17, -17, 0, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000); break; case 13: - DoScriptText(SAY_ELF_RESTING, me, player); + Talk(SAY_ELF_RESTING, player->GetGUID()); break; case 14: - DoScriptText(SAY_ELF_SUMMON2, me, player); + Talk(SAY_ELF_SUMMON2, player->GetGUID()); // Spawn two Haal'eshi Windwalker DoSpawnCreature(16966, -15, -15, 0, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000); DoSpawnCreature(16966, -17, -17, 0, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 5000); break; case 27: - DoScriptText(SAY_ELF_COMPLETE, me, player); + Talk(SAY_ELF_COMPLETE, player->GetGUID()); // Award quest credit player->GroupEventHappens(QUEST_ROAD_TO_FALCON_WATCH, me); break; @@ -445,7 +446,7 @@ public: void EnterCombat(Unit* /*who*/) { if (HasEscortState(STATE_ESCORT_ESCORTING)) - DoScriptText(SAY_ELF_AGGRO, me); + Talk(SAY_ELF_AGGRO); } void JustSummoned(Creature* summoned) diff --git a/src/server/scripts/Outland/nagrand.cpp b/src/server/scripts/Outland/nagrand.cpp index 0c9a60603f5..54565553e94 100644 --- a/src/server/scripts/Outland/nagrand.cpp +++ b/src/server/scripts/Outland/nagrand.cpp @@ -149,13 +149,13 @@ public: enum eMagharCaptive { - SAY_MAG_START = -1000482, - SAY_MAG_NO_ESCAPE = -1000483, - SAY_MAG_MORE = -1000484, - SAY_MAG_MORE_REPLY = -1000485, - SAY_MAG_LIGHTNING = -1000486, - SAY_MAG_SHOCK = -1000487, - SAY_MAG_COMPLETE = -1000488, + SAY_MAG_START = 0, + SAY_MAG_NO_ESCAPE = 0, + SAY_MAG_MORE = 1, + SAY_MAG_MORE_REPLY = 0, + SAY_MAG_LIGHTNING = 2, + SAY_MAG_SHOCK = 3, + SAY_MAG_COMPLETE = 4, SPELL_CHAIN_LIGHTNING = 16006, SPELL_EARTHBIND_TOTEM = 15786, @@ -189,7 +189,7 @@ public: pEscortAI->Start(true, false, player->GetGUID(), quest); - DoScriptText(SAY_MAG_START, creature); + creature->AI()->Talk(SAY_MAG_START); creature->SummonCreature(NPC_MURK_RAIDER, m_afAmbushA[0]+2.5f, m_afAmbushA[1]-2.5f, m_afAmbushA[2], 0.0f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 25000); creature->SummonCreature(NPC_MURK_PUTRIFIER, m_afAmbushA[0]-2.5f, m_afAmbushA[1]+2.5f, m_afAmbushA[2], 0.0f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 25000); @@ -229,17 +229,17 @@ public: switch (waypointId) { case 7: - DoScriptText(SAY_MAG_MORE, me); + Talk(SAY_MAG_MORE); if (Creature* temp = me->SummonCreature(NPC_MURK_PUTRIFIER, m_afAmbushB[0], m_afAmbushB[1], m_afAmbushB[2], 0.0f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 25000)) - DoScriptText(SAY_MAG_MORE_REPLY, temp); + temp->AI()->Talk(SAY_MAG_MORE_REPLY); me->SummonCreature(NPC_MURK_PUTRIFIER, m_afAmbushB[0]-2.5f, m_afAmbushB[1]-2.5f, m_afAmbushB[2], 0.0f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 25000); me->SummonCreature(NPC_MURK_SCAVENGER, m_afAmbushB[0]+2.5f, m_afAmbushB[1]+2.5f, m_afAmbushB[2], 0.0f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 25000); me->SummonCreature(NPC_MURK_SCAVENGER, m_afAmbushB[0]+2.5f, m_afAmbushB[1]-2.5f, m_afAmbushB[2], 0.0f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 25000); break; case 16: - DoScriptText(SAY_MAG_COMPLETE, me); + Talk(SAY_MAG_COMPLETE); if (Player* player = GetPlayerForEscort()) player->GroupEventHappens(QUEST_TOTEM_KARDASH_H, me); @@ -252,7 +252,7 @@ public: void JustSummoned(Creature* summoned) { if (summoned->GetEntry() == NPC_MURK_BRUTE) - DoScriptText(SAY_MAG_NO_ESCAPE, summoned); + summoned->AI()->Talk(SAY_MAG_NO_ESCAPE); if (summoned->isTotem()) return; @@ -270,7 +270,7 @@ public: if (rand()%10) return; - DoScriptText(SAY_MAG_LIGHTNING, me); + Talk(SAY_MAG_LIGHTNING); } } @@ -367,18 +367,18 @@ enum CorkiData NPC_CORKI = 18445, NPC_CORKI_CREDIT_1 = 18369, GO_CORKIS_PRISON = 182349, - CORKI_SAY_THANKS = -1800071, + CORKI_SAY_THANKS = 0, // 2nd quest QUEST_CORKIS_GONE_MISSING_AGAIN = 9924, NPC_CORKI_2 = 20812, GO_CORKIS_PRISON_2 = 182350, - CORKI_SAY_PROMISE = -1800072, + CORKI_SAY_PROMISE = 0, // 3rd quest QUEST_CHOWAR_THE_PILLAGER = 9955, NPC_CORKI_3 = 18369, NPC_CORKI_CREDIT_3 = 18444, GO_CORKIS_PRISON_3 = 182521, - CORKI_SAY_LAST = -1800073 + CORKI_SAY_LAST = 0 }; class go_corkis_prison : public GameObjectScript @@ -468,11 +468,11 @@ public: Say_Timer = 5000; ReleasedFromCage = true; if (me->GetEntry() == NPC_CORKI) - DoScriptText(CORKI_SAY_THANKS, me); + Talk(CORKI_SAY_THANKS); if (me->GetEntry() == NPC_CORKI_2) - DoScriptText(CORKI_SAY_PROMISE, me); + Talk(CORKI_SAY_PROMISE); if (me->GetEntry() == NPC_CORKI_3) - DoScriptText(CORKI_SAY_LAST, me); + Talk(CORKI_SAY_LAST); } }; }; @@ -521,7 +521,7 @@ public: { creature->SetStandState(UNIT_STAND_STATE_STAND); EscortAI->Start(true, false, player->GetGUID(), quest); - DoScriptText(SAY_KUR_START, creature); + creature->AI()->Talk(SAY_KUR_START); creature->SummonCreature(NPC_KUR_MURK_RAIDER, kurenaiAmbushA[0]+2.5f, kurenaiAmbushA[1]-2.5f, kurenaiAmbushA[2], 0.0f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 25000); creature->SummonCreature(NPC_KUR_MURK_BRUTE, kurenaiAmbushA[0]-2.5f, kurenaiAmbushA[1]+2.5f, kurenaiAmbushA[2], 0.0f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 25000); diff --git a/src/server/scripts/Outland/netherstorm.cpp b/src/server/scripts/Outland/netherstorm.cpp index eaea4960712..96f707b06f1 100644 --- a/src/server/scripts/Outland/netherstorm.cpp +++ b/src/server/scripts/Outland/netherstorm.cpp @@ -45,12 +45,12 @@ EndContentData */ //used by 20209, 20417, 20418, 20440, signed for 20209 enum eManaforgeConsoleData { - EMOTE_START = -1000211, - EMOTE_60 = -1000212, - EMOTE_30 = -1000213, - EMOTE_10 = -1000214, - EMOTE_COMPLETE = -1000215, - EMOTE_ABORT = -1000216, + EMOTE_START = 0, + EMOTE_60 = 1, + EMOTE_30 = 2, + EMOTE_10 = 3, + EMOTE_COMPLETE = 4, + EMOTE_ABORT = 5, ENTRY_BNAAR_C_CONSOLE = 20209, ENTRY_CORUU_C_CONSOLE = 20417, @@ -114,7 +114,7 @@ public: void JustDied(Unit* /*killer*/) { - DoScriptText(EMOTE_ABORT, me); + Talk(EMOTE_ABORT); if (someplayer) { @@ -247,31 +247,32 @@ public: if (someplayer) { Unit* u = Unit::GetUnit(*me, someplayer); - if (u && u->GetTypeId() == TYPEID_PLAYER) DoScriptText(EMOTE_START, me, u); + if (u && u->GetTypeId() == TYPEID_PLAYER) + Talk(EMOTE_START, u->GetGUID()); } Event_Timer = 60000; Wave = true; ++Phase; break; case 2: - DoScriptText(EMOTE_60, me); + Talk(EMOTE_60); Event_Timer = 30000; ++Phase; break; case 3: - DoScriptText(EMOTE_30, me); + Talk(EMOTE_30); Event_Timer = 20000; DoFinalSpawnForCreature(me); ++Phase; break; case 4: - DoScriptText(EMOTE_10, me); + Talk(EMOTE_10); Event_Timer = 10000; Wave = false; ++Phase; break; case 5: - DoScriptText(EMOTE_COMPLETE, me); + Talk(EMOTE_COMPLETE); if (someplayer) { Unit* u = Unit::GetUnit(*me, someplayer); @@ -361,18 +362,20 @@ public: // The Speech of Dawnforge, Ardonis & Pathaleon enum eCommanderDawnforgeData { - SAY_COMMANDER_DAWNFORGE_1 = -1000128, - SAY_ARCANIST_ARDONIS_1 = -1000129, - SAY_COMMANDER_DAWNFORGE_2 = -1000130, - SAY_PATHALEON_CULATOR_IMAGE_1 = -1000131, - SAY_COMMANDER_DAWNFORGE_3 = -1000132, - SAY_PATHALEON_CULATOR_IMAGE_2 = -1000133, - SAY_PATHALEON_CULATOR_IMAGE_2_1 = -1000134, - SAY_PATHALEON_CULATOR_IMAGE_2_2 = -1000135, - SAY_COMMANDER_DAWNFORGE_4 = -1000136, - SAY_ARCANIST_ARDONIS_2 = -1000136, - SAY_COMMANDER_DAWNFORGE_5 = -1000137, - + SAY_COMMANDER_DAWNFORGE_1 = 0, + SAY_COMMANDER_DAWNFORGE_2 = 1, + SAY_COMMANDER_DAWNFORGE_3 = 2, + SAY_COMMANDER_DAWNFORGE_4 = 3, + SAY_COMMANDER_DAWNFORGE_5 = 4, + + SAY_ARCANIST_ARDONIS_1 = 0, + SAY_ARCANIST_ARDONIS_2 = 1, + + SAY_PATHALEON_CULATOR_IMAGE_1 = 0, + SAY_PATHALEON_CULATOR_IMAGE_2 = 1, + SAY_PATHALEON_CULATOR_IMAGE_2_1 = 2, + SAY_PATHALEON_CULATOR_IMAGE_2_2 = 3, + QUEST_INFO_GATHERING = 10198, SPELL_SUNFURY_DISGUISE = 34603, }; @@ -516,8 +519,8 @@ public: return; } - Unit* ardonis = Unit::GetUnit(*me, ardonisGUID); - Unit* pathaleon = Unit::GetUnit(*me, pathaleonGUID); + Creature* ardonis = Creature::GetCreature(*me, ardonisGUID); + Creature* pathaleon = Creature::GetCreature(*me, pathaleonGUID); Player* player = Unit::GetPlayer(*me, PlayerGUID); if (!ardonis || !player) @@ -536,19 +539,19 @@ public: switch (Phase) { case 1: - DoScriptText(SAY_COMMANDER_DAWNFORGE_1, me); + Talk(SAY_COMMANDER_DAWNFORGE_1); ++Phase; Phase_Timer = 16000; break; //Phase 2 Ardonis say case 2: - DoScriptText(SAY_ARCANIST_ARDONIS_1, ardonis); + ardonis->AI()->Talk(SAY_ARCANIST_ARDONIS_1); ++Phase; Phase_Timer = 16000; break; //Phase 3 Dawnforge say case 3: - DoScriptText(SAY_COMMANDER_DAWNFORGE_2, me); + Talk(SAY_COMMANDER_DAWNFORGE_2); ++Phase; Phase_Timer = 16000; break; @@ -561,7 +564,7 @@ public: break; //Phase 5 Pathaleon say case 5: - DoScriptText(SAY_PATHALEON_CULATOR_IMAGE_1, pathaleon); + pathaleon->AI()->Talk(SAY_PATHALEON_CULATOR_IMAGE_1); ++Phase; Phase_Timer = 6000; break; @@ -577,7 +580,7 @@ public: break; //Subphase 2 Dawnforge say case 1: - DoScriptText(SAY_COMMANDER_DAWNFORGE_3, me); + Talk(SAY_COMMANDER_DAWNFORGE_3); PhaseSubphase = 0; ++Phase; Phase_Timer = 8000; @@ -590,19 +593,19 @@ public: { //Subphase 1 case 0: - DoScriptText(SAY_PATHALEON_CULATOR_IMAGE_2, pathaleon); + pathaleon->AI()->Talk(SAY_PATHALEON_CULATOR_IMAGE_2); ++PhaseSubphase; Phase_Timer = 12000; break; //Subphase 2 case 1: - DoScriptText(SAY_PATHALEON_CULATOR_IMAGE_2_1, pathaleon); + pathaleon->AI()->Talk(SAY_PATHALEON_CULATOR_IMAGE_2_1); ++PhaseSubphase; Phase_Timer = 16000; break; //Subphase 3 case 2: - DoScriptText(SAY_PATHALEON_CULATOR_IMAGE_2_2, pathaleon); + pathaleon->AI()->Talk(SAY_PATHALEON_CULATOR_IMAGE_2_2); PhaseSubphase = 0; ++Phase; Phase_Timer = 10000; @@ -611,8 +614,8 @@ public: break; //Phase 8 Dawnforge & Ardonis say case 8: - DoScriptText(SAY_COMMANDER_DAWNFORGE_4, me); - DoScriptText(SAY_ARCANIST_ARDONIS_2, ardonis); + Talk(SAY_COMMANDER_DAWNFORGE_4); + ardonis->AI()->Talk(SAY_ARCANIST_ARDONIS_2); ++Phase; Phase_Timer = 4000; break; @@ -627,7 +630,7 @@ public: break; //Phase 10 Dawnforge say case 10: - DoScriptText(SAY_COMMANDER_DAWNFORGE_5, me); + Talk(SAY_COMMANDER_DAWNFORGE_5); player->AreaExploredOrEventHappens(QUEST_INFO_GATHERING); Reset(); break; @@ -667,7 +670,7 @@ enum eProfessorDabiriData { SPELL_PHASE_DISTRUPTOR = 35780, - WHISPER_DABIRI = -1000522, + //WHISPER_DABIRI = 0, not existing in database QUEST_DIMENSIUS = 10439, QUEST_ON_NETHERY_WINGS = 10438, @@ -680,13 +683,9 @@ class npc_professor_dabiri : public CreatureScript public: npc_professor_dabiri() : CreatureScript("npc_professor_dabiri") { } - bool OnQuestAccept(Player* player, Creature* creature, Quest const* quest) - { - if (quest->GetQuestId() == QUEST_DIMENSIUS) - DoScriptText(WHISPER_DABIRI, creature, player); - - return true; - } + //OnQuestAccept: + //if (quest->GetQuestId() == QUEST_DIMENSIUS) + //creature->AI()->Talk(WHISPER_DABIRI, player->GetGUID()); bool OnGossipSelect(Player* player, Creature* creature, uint32 /*sender*/, uint32 action) { @@ -725,7 +724,7 @@ enum ePhaseHunterData NPC_PHASE_HUNTER_ENTRY = 18879, NPC_DRAINED_PHASE_HUNTER_ENTRY = 19595, - EMOTE_WEAK = -1000303, + EMOTE_WEAK = 0, // Spells SPELL_RECHARGING_BATTERY = 34219, @@ -827,7 +826,7 @@ public: if (!Weak && HealthBelowPct(WeakPercent) && player->GetQuestStatus(QUEST_RECHARGING_THE_BATTERIES) == QUEST_STATUS_INCOMPLETE) { - DoScriptText(EMOTE_WEAK, me); + Talk(EMOTE_WEAK); Weak = true; } if (Weak && !Drained && me->HasAura(SPELL_RECHARGING_BATTERY)) @@ -857,8 +856,8 @@ enum eBessyData N_THADELL = 20464, SPAWN_FIRST = 20512, SPAWN_SECOND = 19881, - SAY_THADELL_1 = -1000524, - SAY_THADELL_2 = -1000525, + SAY_THADELL_1 = 0, + SAY_THADELL_2 = 1, }; class npc_bessy : public CreatureScript @@ -912,11 +911,11 @@ public: case 12: player->GroupEventHappens(Q_ALMABTRIEB, me); if (me->FindNearestCreature(N_THADELL, 30)) - DoScriptText(SAY_THADELL_1, me); + Talk(SAY_THADELL_1); break; case 13: if (me->FindNearestCreature(N_THADELL, 30)) - DoScriptText(SAY_THADELL_2, me, player); + Talk(SAY_THADELL_2, player->GetGUID()); break; } } diff --git a/src/server/scripts/Outland/shadowmoon_valley.cpp b/src/server/scripts/Outland/shadowmoon_valley.cpp index dc91fb2c14f..55fce0c4a8d 100644 --- a/src/server/scripts/Outland/shadowmoon_valley.cpp +++ b/src/server/scripts/Outland/shadowmoon_valley.cpp @@ -55,7 +55,7 @@ EndContentData */ enum eMatureNetherwing { - SAY_JUST_EATEN = -1000175, + SAY_JUST_EATEN = 0, SPELL_PLACE_CARCASS = 38439, SPELL_JUST_EATEN = 38502, @@ -152,7 +152,7 @@ public: else if (bIsEating) { DoCast(me, SPELL_JUST_EATEN); - DoScriptText(SAY_JUST_EATEN, me); + Talk(SAY_JUST_EATEN); if (Player* pPlr = Unit::GetPlayer(*me, uiPlayerGUID)) { @@ -674,25 +674,25 @@ enum eOverlordData SPELL_THREE = 40216, // Dragonaw Faction SPELL_FOUR = 42016, // Dragonaw Trasform - OVERLORD_SAY_1 = -1000606, - OVERLORD_SAY_2 = -1000607, - OVERLORD_SAY_3 = -1000608, //signed for 28315 - OVERLORD_SAY_4 = -1000609, - OVERLORD_SAY_5 = -1000610, - OVERLORD_SAY_6 = -1000611, - - OVERLORD_YELL_1 = -1000612, - OVERLORD_YELL_2 = -1000613, - - LORD_ILLIDAN_SAY_1 = -1000614, - LORD_ILLIDAN_SAY_2 = -1000615, - LORD_ILLIDAN_SAY_3 = -1000616, - LORD_ILLIDAN_SAY_4 = -1000617, - LORD_ILLIDAN_SAY_5 = -1000618, - LORD_ILLIDAN_SAY_6 = -1000619, - LORD_ILLIDAN_SAY_7 = -1000620, - - YARZILL_THE_MERC_SAY = -1000621, + OVERLORD_SAY_1 = 0, + OVERLORD_SAY_2 = 1, + //OVERLORD_SAY_3 = 2, + OVERLORD_SAY_4 = 3, + OVERLORD_SAY_5 = 4, + OVERLORD_SAY_6 = 5, + + OVERLORD_YELL_1 = 6, + OVERLORD_YELL_2 = 7, + + LORD_ILLIDAN_SAY_1 = 0, + LORD_ILLIDAN_SAY_2 = 1, + LORD_ILLIDAN_SAY_3 = 2, + LORD_ILLIDAN_SAY_4 = 3, + LORD_ILLIDAN_SAY_5 = 4, + LORD_ILLIDAN_SAY_6 = 5, + LORD_ILLIDAN_SAY_7 = 6, + + YARZILL_THE_MERC_SAY = 0 }; class npc_overlord_morghor : public CreatureScript @@ -754,7 +754,7 @@ public: { Player* player = Unit::GetPlayer(*me, PlayerGUID); if (player) - DoScriptText(OVERLORD_SAY_1, me, player); + Talk(OVERLORD_SAY_1, player->GetGUID()); } ConversationTimer = 4200; Step = 0; @@ -764,7 +764,7 @@ public: uint32 NextStep(uint32 Step) { Player* player = Unit::GetPlayer(*me, PlayerGUID); - Unit* Illi = Unit::GetUnit(*me, IllidanGUID); + Creature* Illi = Creature::GetCreature(*me, IllidanGUID); if (!player || !Illi) { @@ -782,7 +782,7 @@ public: return 9000; break; case 2: - DoScriptText(OVERLORD_YELL_1, me, player); + Talk(OVERLORD_YELL_1, player->GetGUID()); return 4500; break; case 3: @@ -790,7 +790,7 @@ public: return 3200; break; case 4: - DoScriptText(OVERLORD_SAY_2, me, player); + Talk(OVERLORD_SAY_2, player->GetGUID()); return 2000; break; case 5: @@ -805,31 +805,27 @@ public: return 2000; break; case 7: - DoScriptText(OVERLORD_YELL_2, me); + Talk(OVERLORD_YELL_2); return 4500; break; case 8: me->SetUInt32Value(UNIT_FIELD_BYTES_1, 8); - return 2500; - break; - case 9: - DoScriptText(OVERLORD_SAY_3, me); - return 6500; + return 9000; break; case 10: - DoScriptText(LORD_ILLIDAN_SAY_1, Illi); + Illi->AI()->Talk(LORD_ILLIDAN_SAY_1); return 5000; break; case 11: - DoScriptText(OVERLORD_SAY_4, me, player); + Talk(OVERLORD_SAY_4, player->GetGUID()); return 6000; break; case 12: - DoScriptText(LORD_ILLIDAN_SAY_2, Illi); + Illi->AI()->Talk(LORD_ILLIDAN_SAY_2); return 5500; break; case 13: - DoScriptText(LORD_ILLIDAN_SAY_3, Illi); + Illi->AI()->Talk(LORD_ILLIDAN_SAY_3); return 4000; break; case 14: @@ -837,7 +833,7 @@ public: return 1500; break; case 15: - DoScriptText(LORD_ILLIDAN_SAY_4, Illi); + Illi->AI()->Talk(LORD_ILLIDAN_SAY_4); return 1500; break; case 16: @@ -847,15 +843,15 @@ public: return 5000; break; case 17: - DoScriptText(LORD_ILLIDAN_SAY_5, Illi); + Illi->AI()->Talk(LORD_ILLIDAN_SAY_5); return 5000; break; case 18: - DoScriptText(LORD_ILLIDAN_SAY_6, Illi); + Illi->AI()->Talk(LORD_ILLIDAN_SAY_6); return 5000; break; case 19: - DoScriptText(LORD_ILLIDAN_SAY_7, Illi); + Illi->AI()->Talk(LORD_ILLIDAN_SAY_7); return 5000; break; case 20: @@ -864,7 +860,7 @@ public: return 500; break; case 21: - DoScriptText(OVERLORD_SAY_5, me); + Talk(OVERLORD_SAY_5); return 500; break; case 22: @@ -881,7 +877,7 @@ public: return 5000; break; case 25: - DoScriptText(OVERLORD_SAY_6, me); + Talk(OVERLORD_SAY_6); return 2000; break; case 26: @@ -905,24 +901,21 @@ public: break; case 29: { - Unit* Yarzill = me->FindNearestCreature(C_YARZILL, 50); - if (Yarzill) - DoScriptText(YARZILL_THE_MERC_SAY, Yarzill, player); + if (Creature* Yarzill = me->FindNearestCreature(C_YARZILL, 50.0f)) + Yarzill->AI()->Talk(YARZILL_THE_MERC_SAY, player->GetGUID()); return 5000; } break; case 30: { - Unit* Yarzill = me->FindNearestCreature(C_YARZILL, 50); - if (Yarzill) + if (Creature* Yarzill = me->FindNearestCreature(C_YARZILL, 50.0f)) Yarzill->SetTarget(0); return 5000; } break; case 31: { - Unit* Yarzill = me->FindNearestCreature(C_YARZILL, 50); - if (Yarzill) + if (Creature* Yarzill = me->FindNearestCreature(C_YARZILL, 50.0f)) Yarzill->CastSpell(player, 41540, true); return 1000; } @@ -960,16 +953,13 @@ public: enum eEarthmender { - SAY_WIL_START = -1000381, - SAY_WIL_AGGRO1 = -1000382, - SAY_WIL_AGGRO2 = -1000383, - SAY_WIL_PROGRESS1 = -1000384, - SAY_WIL_PROGRESS2 = -1000385, - SAY_WIL_FIND_EXIT = -1000386, - SAY_WIL_PROGRESS4 = -1000387, - SAY_WIL_PROGRESS5 = -1000388, - SAY_WIL_JUST_AHEAD = -1000389, - SAY_WIL_END = -1000390, + SAY_WIL_START = 0, + SAY_WIL_AGGRO = 1, + SAY_WIL_PROGRESS1 = 2, + SAY_WIL_PROGRESS2 = 3, + SAY_WIL_FIND_EXIT = 4, + SAY_WIL_JUST_AHEAD = 5, + SAY_WIL_END = 6, SPELL_CHAIN_LIGHTNING = 16006, SPELL_EARTHBING_TOTEM = 15786, @@ -990,7 +980,7 @@ public: { if (quest->GetQuestId() == QUEST_ESCAPE_COILSCAR) { - DoScriptText(SAY_WIL_START, creature, player); + creature->AI()->Talk(SAY_WIL_START, player->GetGUID()); creature->setFaction(FACTION_EARTHEN); if (npc_earthmender_wildaAI* pEscortAI = CAST_AI(npc_earthmender_wilda::npc_earthmender_wildaAI, creature->AI())) @@ -1024,14 +1014,14 @@ public: switch (waypointId) { case 13: - DoScriptText(SAY_WIL_PROGRESS1, me, player); + Talk(SAY_WIL_PROGRESS1, player->GetGUID()); DoSpawnAssassin(); break; case 14: DoSpawnAssassin(); break; case 15: - DoScriptText(SAY_WIL_FIND_EXIT, me, player); + Talk(SAY_WIL_FIND_EXIT, player->GetGUID()); break; case 19: DoRandomSay(); @@ -1058,7 +1048,7 @@ public: DoSpawnAssassin(); break; case 39: - DoScriptText(SAY_WIL_JUST_AHEAD, me, player); + Talk(SAY_WIL_JUST_AHEAD, player->GetGUID()); break; case 43: DoRandomSay(); @@ -1067,7 +1057,7 @@ public: DoSpawnAssassin(); break; case 50: - DoScriptText(SAY_WIL_END, me, player); + Talk(SAY_WIL_END, player->GetGUID()); player->GroupEventHappens(QUEST_ESCAPE_COILSCAR, me); break; } @@ -1082,7 +1072,7 @@ public: //this is very unclear, random say without no real relevance to script/event void DoRandomSay() { - DoScriptText(RAND(SAY_WIL_PROGRESS2, SAY_WIL_PROGRESS4, SAY_WIL_PROGRESS5), me); + Talk(SAY_WIL_PROGRESS2); } void DoSpawnAssassin() @@ -1102,7 +1092,7 @@ public: { //appears to be random if (urand(0, 1)) - DoScriptText(RAND(SAY_WIL_AGGRO1, SAY_WIL_AGGRO2), who); + Talk(SAY_WIL_AGGRO); } } @@ -1140,28 +1130,25 @@ npc_lord_illidan_stormrage : Creature that controls the event. go_crystal_prison : GameObject that begins the event and hands out quest EndContentData */ -#define END_TEXT -1000366 //signed for 10646 - #define QUEST_BATTLE_OF_THE_CRIMSON_WATCH 10781 #define EVENT_AREA_RADIUS 65 //65yds #define EVENT_COOLDOWN 30000 //in ms. appear after event completed or failed (should be = Adds despawn time) struct TorlothCinematic { - int32 TextId; uint32 creature, Timer; }; // Creature 0 - Torloth, 1 - Illidan static TorlothCinematic TorlothAnim[]= { - {-1000367, 0, 2000}, - {-1000368, 1, 7000}, - {-1000369, 0, 3000}, - {0, 0, 2000}, // Torloth stand - {-1000370, 0, 1000}, - {0, 0, 3000}, - {0, 0, 0} + {0, 2000}, + {1, 7000}, + {0, 3000}, + {0, 2000}, // Torloth stand + {0, 1000}, + {0, 3000}, + {0, 0} }; struct Location @@ -1195,15 +1182,14 @@ struct WaveData { uint8 SpawnCount, UsedSpawnPoint; uint32 CreatureId, SpawnTimer, YellTimer; - int32 WaveTextId; }; static WaveData WavesInfo[]= { - {9, 0, 22075, 10000, 7000, -1000371}, //Illidari Soldier - {2, 9, 22074, 10000, 7000, -1000372}, //Illidari Mind Breaker - {4, 11, 19797, 10000, 7000, -1000373}, //Illidari Highlord - {1, 15, 22076, 10000, 7000, -1000374} //Torloth The Magnificent + {9, 0, 22075, 10000, 7000}, //Illidari Soldier + {2, 9, 22074, 10000, 7000}, //Illidari Mind Breaker + {4, 11, 19797, 10000, 7000}, //Illidari Highlord + {1, 15, 22076, 10000, 7000} //Torloth The Magnificent }; struct SpawnSpells @@ -1278,9 +1264,6 @@ public: return; } - if (TorlothAnim[AnimationCount].TextId) - DoScriptText(TorlothAnim[AnimationCount].TextId, creature); - AnimationTimer = TorlothAnim[AnimationCount].Timer; switch (AnimationCount) @@ -1377,7 +1360,6 @@ public: if (Creature* LordIllidan = (Unit::GetCreature(*me, LordIllidanGUID))) { - DoScriptText(END_TEXT, LordIllidan, killer); LordIllidan->AI()->EnterEvadeMode(); } } @@ -1512,14 +1494,17 @@ public: { if (!Announced && AnnounceTimer <= diff) { - DoScriptText(WavesInfo[WaveCount].WaveTextId, me); Announced = true; - } else AnnounceTimer -= diff; + } + else + AnnounceTimer -= diff; if (WaveTimer <= diff) { SummonNextWave(); - } else WaveTimer -= diff; + } + else + WaveTimer -= diff; } CheckEventFail(); diff --git a/src/server/scripts/Outland/shattrath_city.cpp b/src/server/scripts/Outland/shattrath_city.cpp index 76cffa9e1fe..c45ad519d39 100644 --- a/src/server/scripts/Outland/shattrath_city.cpp +++ b/src/server/scripts/Outland/shattrath_city.cpp @@ -286,28 +286,32 @@ public: # npc_kservant ######*/ -#define SAY1 -1000234 -#define WHISP1 -1000235 -#define WHISP2 -1000236 -#define WHISP3 -1000237 -#define WHISP4 -1000238 -#define WHISP5 -1000239 -#define WHISP6 -1000240 -#define WHISP7 -1000241 -#define WHISP8 -1000242 -#define WHISP9 -1000243 -#define WHISP10 -1000244 -#define WHISP11 -1000245 -#define WHISP12 -1000246 -#define WHISP13 -1000247 -#define WHISP14 -1000248 -#define WHISP15 -1000249 -#define WHISP16 -1000250 -#define WHISP17 -1000251 -#define WHISP18 -1000252 -#define WHISP19 -1000253 -#define WHISP20 -1000254 -#define WHISP21 -1000255 +enum KServant +{ + SAY1 = 0, + WHISP1 = 1, + WHISP2 = 2, + WHISP3 = 3, + WHISP4 = 4, + WHISP5 = 5, + WHISP6 = 6, + WHISP7 = 7, + WHISP8 = 8, + WHISP9 = 9, + WHISP10 = 10, + WHISP11 = 11, + WHISP12 = 12, + WHISP13 = 13, + WHISP14 = 14, + WHISP15 = 15, + WHISP16 = 16, + WHISP17 = 17, + WHISP18 = 18, + WHISP19 = 19, + WHISP20 = 20, + WHISP21 = 21 +}; + class npc_kservant : public CreatureScript { public: @@ -332,70 +336,70 @@ public: switch (waypointId) { case 0: - DoScriptText(SAY1, me, player); + Talk(SAY1, player->GetGUID()); break; case 4: - DoScriptText(WHISP1, me, player); + Talk(WHISP1, player->GetGUID()); break; case 6: - DoScriptText(WHISP2, me, player); + Talk(WHISP2, player->GetGUID()); break; case 7: - DoScriptText(WHISP3, me, player); + Talk(WHISP3, player->GetGUID()); break; case 8: - DoScriptText(WHISP4, me, player); + Talk(WHISP4, player->GetGUID()); break; case 17: - DoScriptText(WHISP5, me, player); + Talk(WHISP5, player->GetGUID()); break; case 18: - DoScriptText(WHISP6, me, player); + Talk(WHISP6, player->GetGUID()); break; case 19: - DoScriptText(WHISP7, me, player); + Talk(WHISP7, player->GetGUID()); break; case 33: - DoScriptText(WHISP8, me, player); + Talk(WHISP8, player->GetGUID()); break; case 34: - DoScriptText(WHISP9, me, player); + Talk(WHISP9, player->GetGUID()); break; case 35: - DoScriptText(WHISP10, me, player); + Talk(WHISP10, player->GetGUID()); break; case 36: - DoScriptText(WHISP11, me, player); + Talk(WHISP11, player->GetGUID()); break; case 43: - DoScriptText(WHISP12, me, player); + Talk(WHISP12, player->GetGUID()); break; case 44: - DoScriptText(WHISP13, me, player); + Talk(WHISP13, player->GetGUID()); break; case 49: - DoScriptText(WHISP14, me, player); + Talk(WHISP14, player->GetGUID()); break; case 50: - DoScriptText(WHISP15, me, player); + Talk(WHISP15, player->GetGUID()); break; case 51: - DoScriptText(WHISP16, me, player); + Talk(WHISP16, player->GetGUID()); break; case 52: - DoScriptText(WHISP17, me, player); + Talk(WHISP17, player->GetGUID()); break; case 53: - DoScriptText(WHISP18, me, player); + Talk(WHISP18, player->GetGUID()); break; case 54: - DoScriptText(WHISP19, me, player); + Talk(WHISP19, player->GetGUID()); break; case 55: - DoScriptText(WHISP20, me, player); + Talk(WHISP20, player->GetGUID()); break; case 56: - DoScriptText(WHISP21, me, player); + Talk(WHISP21, player->GetGUID()); player->GroupEventHappens(10211, me); break; } @@ -429,16 +433,19 @@ public: #define GOSSIP_BOOK "Ezekiel said that you might have a certain book..." -#define SAY_1 -1000274 -#define SAY_2 -1000275 -#define SAY_3 -1000276 -#define SAY_4 -1000277 -#define SAY_5 -1000278 -#define SAY_GIVEUP -1000279 - -#define QUEST_WBI 10231 -#define NPC_CREEPJACK 19726 -#define NPC_MALONE 19725 +enum DirtyLarry +{ + SAY_1 = 0, + SAY_2 = 1, + SAY_3 = 2, + SAY_4 = 3, + SAY_5 = 4, + SAY_GIVEUP = 5, + + QUEST_WBI = 10231, + NPC_CREEPJACK = 19726, + NPC_MALONE = 19725 +}; class npc_dirty_larry : public CreatureScript { @@ -500,11 +507,11 @@ public: if (Malone) Malone->SetUInt32Value(UNIT_FIELD_BYTES_1, 0); me->RemoveFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_GOSSIP); }return 2000; - case 1: DoScriptText(SAY_1, me, player); return 3000; - case 2: DoScriptText(SAY_2, me, player); return 5000; - case 3: DoScriptText(SAY_3, me, player); return 2000; - case 4: DoScriptText(SAY_4, me, player); return 2000; - case 5: DoScriptText(SAY_5, me, player); return 2000; + case 1: Talk(SAY_1, player->GetGUID()); return 3000; + case 2: Talk(SAY_2, player->GetGUID()); return 5000; + case 3: Talk(SAY_3, player->GetGUID()); return 2000; + case 4: Talk(SAY_4, player->GetGUID()); return 2000; + case 5: Talk(SAY_5, player->GetGUID()); return 2000; case 6: Attack = true; return 2000; default: return 0; } @@ -572,7 +579,7 @@ public: } me->setFaction(1194); Done = true; - DoScriptText(SAY_GIVEUP, me, NULL); + Talk(SAY_GIVEUP); me->DeleteThreatList(); me->CombatStop(); me->GetMotionMaster()->MoveTargetedHome(); diff --git a/src/server/scripts/Outland/terokkar_forest.cpp b/src/server/scripts/Outland/terokkar_forest.cpp index 2298f676692..d1f37dd5bfc 100644 --- a/src/server/scripts/Outland/terokkar_forest.cpp +++ b/src/server/scripts/Outland/terokkar_forest.cpp @@ -45,14 +45,16 @@ EndContentData */ ## mob_unkor_the_ruthless ######*/ -#define SAY_SUBMIT -1000194 +enum UnkorTheRuthless +{ + SAY_SUBMIT = 0, -#define FACTION_HOSTILE 45 -#define FACTION_FRIENDLY 35 -#define QUEST_DONTKILLTHEFATONE 9889 + FACTION_HOSTILE = 45, + FACTION_FRIENDLY = 35, + QUEST_DONTKILLTHEFATONE = 9889, -#define SPELL_PULVERIZE 2676 -//#define SPELL_QUID9889 32174 + SPELL_PULVERIZE = 2676 +}; class mob_unkor_the_ruthless : public CreatureScript { @@ -85,7 +87,7 @@ public: void DoNice() { - DoScriptText(SAY_SUBMIT, me); + Talk(SAY_SUBMIT); me->setFaction(FACTION_FRIENDLY); me->SetStandState(UNIT_STAND_STATE_SIT); me->RemoveAllAuras(); @@ -344,7 +346,7 @@ public: enum eFloon { - SAY_FLOON_ATTACK = -1000195, + SAY_FLOON_ATTACK = 0, SPELL_SILENCE = 6726, SPELL_FROSTBOLT = 9672, @@ -371,7 +373,7 @@ public: { player->CLOSE_GOSSIP_MENU(); creature->setFaction(FACTION_HOSTILE_FL); - DoScriptText(SAY_FLOON_ATTACK, creature, player); + creature->AI()->Talk(SAY_FLOON_ATTACK, player->GetGUID()); creature->AI()->AttackStart(player); } return true; @@ -447,10 +449,10 @@ public: ######*/ enum eIslaStarmaneData { - SAY_PROGRESS_1 = -1000571, - SAY_PROGRESS_2 = -1000572, - SAY_PROGRESS_3 = -1000573, - SAY_PROGRESS_4 = -1000574, + SAY_PROGRESS_1 = 0, + SAY_PROGRESS_2 = 1, + SAY_PROGRESS_3 = 2, + SAY_PROGRESS_4 = 3, QUEST_EFTW_H = 10052, QUEST_EFTW_A = 10051, @@ -480,16 +482,16 @@ public: Cage->SetGoState(GO_STATE_ACTIVE); break; case 2: - DoScriptText(SAY_PROGRESS_1, me, player); + Talk(SAY_PROGRESS_1, player->GetGUID()); break; case 5: - DoScriptText(SAY_PROGRESS_2, me, player); + Talk(SAY_PROGRESS_2, player->GetGUID()); break; case 6: - DoScriptText(SAY_PROGRESS_3, me, player); + Talk(SAY_PROGRESS_3, player->GetGUID()); break; case 29: - DoScriptText(SAY_PROGRESS_4, me, player); + Talk(SAY_PROGRESS_4, player->GetGUID()); if (player->GetTeam() == ALLIANCE) player->GroupEventHappens(QUEST_EFTW_A, me); else if (player->GetTeam() == HORDE) diff --git a/src/server/scripts/Outland/zangarmarsh.cpp b/src/server/scripts/Outland/zangarmarsh.cpp index 03e40b8d7dc..1fbb8a48324 100644 --- a/src/server/scripts/Outland/zangarmarsh.cpp +++ b/src/server/scripts/Outland/zangarmarsh.cpp @@ -45,9 +45,24 @@ EndContentData */ #define GOSSIP_ITEM_BLESS_ASH "Grant me your mark, wise ancient." #define GOSSIP_ITEM_BLESS_KEL "Grant me your mark, mighty ancient." -//signed for 17900 but used by 17900, 17901 -#define GOSSIP_REWARD_BLESS -1000359 -//#define TEXT_BLESSINGS "" + +enum AshyenAndKeleth +{ + GOSSIP_REWARD_BLESS = 0, + + NPC_ASHYEN = 17900, + NPC_KELETH = 17901, + + SPELL_BLESS_ASH_EXA = 31815, + SPELL_BLESS_ASH_REV = 31811, + SPELL_BLESS_ASH_HON = 31810, + SPELL_BLESS_ASH_FRI = 31808, + + SPELL_BLESS_KEL_EXA = 31814, + SPELL_BLESS_KEL_REV = 31813, + SPELL_BLESS_KEL_HON = 31812, + SPELL_BLESS_KEL_FRI = 31807 +}; class npcs_ashyen_and_keleth : public CreatureScript { @@ -58,10 +73,10 @@ public: { if (player->GetReputationRank(942) > REP_NEUTRAL) { - if (creature->GetEntry() == 17900) + if (creature->GetEntry() == NPC_ASHYEN) player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ITEM_BLESS_ASH, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1); - if (creature->GetEntry() == 17901) + if (creature->GetEntry() == NPC_KELETH) player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_ITEM_BLESS_KEL, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1); } player->SEND_GOSSIP_MENU(player->GetGossipTextId(creature), creature->GetGUID()); @@ -78,54 +93,60 @@ public: creature->SetMaxPower(POWER_MANA, 200); //set a "fake" mana value, we can't depend on database doing it in this case creature->SetPower(POWER_MANA, 200); - if (creature->GetEntry() == 17900) //check which Creature we are dealing with + if (creature->GetEntry() == NPC_ASHYEN) //check which Creature we are dealing with { + uint32 spell = 0; switch (player->GetReputationRank(942)) { //mark of lore case REP_FRIENDLY: - creature->CastSpell(player, 31808, true); - DoScriptText(GOSSIP_REWARD_BLESS, creature); + spell = SPELL_BLESS_ASH_FRI; break; case REP_HONORED: - creature->CastSpell(player, 31810, true); - DoScriptText(GOSSIP_REWARD_BLESS, creature); + spell = SPELL_BLESS_ASH_HON; break; case REP_REVERED: - creature->CastSpell(player, 31811, true); - DoScriptText(GOSSIP_REWARD_BLESS, creature); + spell = SPELL_BLESS_ASH_REV; break; case REP_EXALTED: - creature->CastSpell(player, 31815, true); - DoScriptText(GOSSIP_REWARD_BLESS, creature); + spell = SPELL_BLESS_ASH_EXA; break; default: break; } + + if (spell) + { + creature->CastSpell(player, spell, true); + creature->AI()->Talk(GOSSIP_REWARD_BLESS); + } } - if (creature->GetEntry() == 17901) + if (creature->GetEntry() == NPC_KELETH) { + uint32 spell = 0; switch (player->GetReputationRank(942)) //mark of war { case REP_FRIENDLY: - creature->CastSpell(player, 31807, true); - DoScriptText(GOSSIP_REWARD_BLESS, creature); + spell = SPELL_BLESS_KEL_FRI; break; case REP_HONORED: - creature->CastSpell(player, 31812, true); - DoScriptText(GOSSIP_REWARD_BLESS, creature); + spell = SPELL_BLESS_KEL_HON; break; case REP_REVERED: - creature->CastSpell(player, 31813, true); - DoScriptText(GOSSIP_REWARD_BLESS, creature); + spell = SPELL_BLESS_KEL_REV; break; case REP_EXALTED: - creature->CastSpell(player, 31814, true); - DoScriptText(GOSSIP_REWARD_BLESS, creature); + spell = SPELL_BLESS_KEL_EXA; break; default: break; } + + if (spell) + { + creature->CastSpell(player, spell, true); + creature->AI()->Talk(GOSSIP_REWARD_BLESS); + } } player->CLOSE_GOSSIP_MENU(); player->TalkedToCreature(creature->GetEntry(), creature->GetGUID()); @@ -304,12 +325,11 @@ public: enum eKayra { - SAY_START = -1000343, - SAY_AMBUSH1 = -1000344, - SAY_PROGRESS = -1000345, - SAY_AMBUSH2 = -1000346, - SAY_NEAR_END = -1000347, - SAY_END = -1000348, //this is signed for 10646 + SAY_START = 0, + SAY_AMBUSH1 = 1, + SAY_PROGRESS = 2, + SAY_AMBUSH2 = 3, + SAY_END = 4, QUEST_ESCAPE_FROM = 9752, NPC_SLAVEBINDER = 18042 @@ -335,25 +355,24 @@ public: switch (waypointId) { case 4: - DoScriptText(SAY_AMBUSH1, me, player); + Talk(SAY_AMBUSH1, player->GetGUID()); DoSpawnCreature(NPC_SLAVEBINDER, -10.0f, -5.0f, 0.0f, 0.0f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 30000); DoSpawnCreature(NPC_SLAVEBINDER, -8.0f, 5.0f, 0.0f, 0.0f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 30000); break; case 5: - DoScriptText(SAY_PROGRESS, me, player); + Talk(SAY_PROGRESS, player->GetGUID()); SetRun(); break; case 16: - DoScriptText(SAY_AMBUSH2, me, player); + Talk(SAY_AMBUSH2, player->GetGUID()); DoSpawnCreature(NPC_SLAVEBINDER, -10.0f, -5.0f, 0.0f, 0.0f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 30000); DoSpawnCreature(NPC_SLAVEBINDER, -8.0f, 5.0f, 0.0f, 0.0f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 30000); break; case 17: SetRun(false); - DoScriptText(SAY_NEAR_END, me, player); break; case 25: - DoScriptText(SAY_END, me, player); + Talk(SAY_END, player->GetGUID()); player->GroupEventHappens(QUEST_ESCAPE_FROM, me); break; } @@ -364,7 +383,7 @@ public: { if (quest->GetQuestId() == QUEST_ESCAPE_FROM) { - DoScriptText(SAY_START, creature, player); + creature->AI()->Talk(SAY_START, player->GetGUID()); if (npc_escortAI* pEscortAI = CAST_AI(npc_kayra_longmane::npc_kayra_longmaneAI, creature->AI())) pEscortAI->Start(false, false, player->GetGUID()); diff --git a/src/server/scripts/World/guards.cpp b/src/server/scripts/World/guards.cpp index 951c0ed9688..8fc63a1eacf 100644 --- a/src/server/scripts/World/guards.cpp +++ b/src/server/scripts/World/guards.cpp @@ -39,9 +39,7 @@ enum GuardGeneric { GENERIC_CREATURE_COOLDOWN = 5000, - SAY_GUARD_SIL_AGGRO1 = -1070001, - SAY_GUARD_SIL_AGGRO2 = -1070002, - SAY_GUARD_SIL_AGGRO3 = -1070003, + SAY_GUARD_SIL_AGGRO = 0, NPC_CENARION_HOLD_INFANTRY = 15184, NPC_STORMWIND_CITY_GUARD = 68, @@ -67,7 +65,7 @@ public: void EnterCombat(Unit* who) { if (me->GetEntry() == NPC_CENARION_HOLD_INFANTRY) - DoScriptText(RAND(SAY_GUARD_SIL_AGGRO1, SAY_GUARD_SIL_AGGRO2, SAY_GUARD_SIL_AGGRO3), me, who); + Talk(SAY_GUARD_SIL_AGGRO, who->GetGUID()); if (SpellInfo const* spell = me->reachWithSpellAttack(who)) DoCast(who, spell->Id); } diff --git a/src/server/scripts/World/npcs_special.cpp b/src/server/scripts/World/npcs_special.cpp index 5ed799bbec1..367a119c9a3 100644 --- a/src/server/scripts/World/npcs_special.cpp +++ b/src/server/scripts/World/npcs_special.cpp @@ -313,12 +313,16 @@ public: # npc_chicken_cluck #########*/ -#define EMOTE_HELLO -1070004 -#define EMOTE_CLUCK_TEXT -1070006 +enum ChickenCluck +{ + EMOTE_HELLO_A = 0, + EMOTE_HELLO_H = 1, + EMOTE_CLUCK_TEXT = 2, -#define QUEST_CLUCK 3861 -#define FACTION_FRIENDLY 35 -#define FACTION_CHICKEN 31 + QUEST_CLUCK = 3861, + FACTION_FRIENDLY = 35, + FACTION_CHICKEN = 31 +}; class npc_chicken_cluck : public CreatureScript { @@ -367,7 +371,7 @@ public: { me->SetFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_QUESTGIVER); me->setFaction(FACTION_FRIENDLY); - DoScriptText(EMOTE_HELLO, me); + Talk(player->GetTeam() == HORDE ? EMOTE_HELLO_H : EMOTE_HELLO_A); } break; case TEXT_EMOTE_CHEER: @@ -375,7 +379,7 @@ public: { me->SetFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_QUESTGIVER); me->setFaction(FACTION_FRIENDLY); - DoScriptText(EMOTE_CLUCK_TEXT, me); + Talk(EMOTE_CLUCK_TEXT); } break; } @@ -500,15 +504,15 @@ public: ## Triage quest ######*/ -//signed for 9623 -#define SAY_DOC1 -1000201 -#define SAY_DOC2 -1000202 -#define SAY_DOC3 -1000203 +enum Doctor +{ + SAY_DOC = 0, -#define DOCTOR_ALLIANCE 12939 -#define DOCTOR_HORDE 12920 -#define ALLIANCE_COORDS 7 -#define HORDE_COORDS 6 + DOCTOR_ALLIANCE = 12939, + DOCTOR_HORDE = 12920, + ALLIANCE_COORDS = 7, + HORDE_COORDS = 6 +}; struct Location { @@ -773,7 +777,7 @@ public: //stand up me->SetUInt32Value(UNIT_FIELD_BYTES_1, UNIT_STAND_STATE_STAND); - DoScriptText(RAND(SAY_DOC1, SAY_DOC2, SAY_DOC3), me); + Talk(SAY_DOC); uint32 mobId = me->GetEntry(); me->SetWalk(false); @@ -897,17 +901,9 @@ enum eGarments ENTRY_DG_KEL = 12428, //used by 12429, 12423, 12427, 12430, 12428, but signed for 12429 - SAY_COMMON_HEALED = -1000164, - SAY_DG_KEL_THANKS = -1000165, - SAY_DG_KEL_GOODBYE = -1000166, - SAY_ROBERTS_THANKS = -1000167, - SAY_ROBERTS_GOODBYE = -1000168, - SAY_KORJA_THANKS = -1000169, - SAY_KORJA_GOODBYE = -1000170, - SAY_DOLF_THANKS = -1000171, - SAY_DOLF_GOODBYE = -1000172, - SAY_SHAYA_THANKS = -1000173, - SAY_SHAYA_GOODBYE = -1000174, //signed for 21469 + //SAY_HEALED = 0, + //SAY_THANKS = 1, + //SAY_GOODBYE = 2 }; class npc_garments_of_quests : public CreatureScript @@ -963,14 +959,14 @@ public: { if (IsHealed && !CanRun && Spell->Id == SPELL_FORTITUDE_R1) { - DoScriptText(SAY_SHAYA_THANKS, me, caster); + //Talk(SAY_THANKS, caster->GetGUID()); CanRun = true; } else if (!IsHealed && Spell->Id == SPELL_LESSER_HEAL_R2) { CasterGUID = caster->GetGUID(); me->SetStandState(UNIT_STAND_STATE_STAND); - DoScriptText(SAY_COMMON_HEALED, me, caster); + //Talk(SAY_HEALED, caster->GetGUID()); IsHealed = true; } } @@ -980,14 +976,14 @@ public: { if (IsHealed && !CanRun && Spell->Id == SPELL_FORTITUDE_R1) { - DoScriptText(SAY_ROBERTS_THANKS, me, caster); + //Talk(SAY_THANKS, caster->GetGUID()); CanRun = true; } else if (!IsHealed && Spell->Id == SPELL_LESSER_HEAL_R2) { CasterGUID = caster->GetGUID(); me->SetStandState(UNIT_STAND_STATE_STAND); - DoScriptText(SAY_COMMON_HEALED, me, caster); + //Talk(SAY_HEALED, caster->GetGUID()); IsHealed = true; } } @@ -997,14 +993,14 @@ public: { if (IsHealed && !CanRun && Spell->Id == SPELL_FORTITUDE_R1) { - DoScriptText(SAY_DOLF_THANKS, me, caster); + //Talk(SAY_THANKS, caster->GetGUID()); CanRun = true; } else if (!IsHealed && Spell->Id == SPELL_LESSER_HEAL_R2) { CasterGUID = caster->GetGUID(); me->SetStandState(UNIT_STAND_STATE_STAND); - DoScriptText(SAY_COMMON_HEALED, me, caster); + //Talk(SAY_HEALED, caster->GetGUID()); IsHealed = true; } } @@ -1014,14 +1010,14 @@ public: { if (IsHealed && !CanRun && Spell->Id == SPELL_FORTITUDE_R1) { - DoScriptText(SAY_KORJA_THANKS, me, caster); + //Talk(SAY_THANKS, caster->GetGUID()); CanRun = true; } else if (!IsHealed && Spell->Id == SPELL_LESSER_HEAL_R2) { CasterGUID = caster->GetGUID(); me->SetStandState(UNIT_STAND_STATE_STAND); - DoScriptText(SAY_COMMON_HEALED, me, caster); + //Talk(SAY_HEALED, caster->GetGUID()); IsHealed = true; } } @@ -1031,14 +1027,14 @@ public: { if (IsHealed && !CanRun && Spell->Id == SPELL_FORTITUDE_R1) { - DoScriptText(SAY_DG_KEL_THANKS, me, caster); + //Talk(SAY_THANKS, caster->GetGUID()); CanRun = true; } else if (!IsHealed && Spell->Id == SPELL_LESSER_HEAL_R2) { CasterGUID = caster->GetGUID(); me->SetStandState(UNIT_STAND_STATE_STAND); - DoScriptText(SAY_COMMON_HEALED, me, caster); + //Talk(SAY_HEALED, caster->GetGUID()); IsHealed = true; } } @@ -1068,19 +1064,19 @@ public: switch (me->GetEntry()) { case ENTRY_SHAYA: - DoScriptText(SAY_SHAYA_GOODBYE, me, unit); + //Talk(SAY_GOODBYE, unit->GetGUID()); break; case ENTRY_ROBERTS: - DoScriptText(SAY_ROBERTS_GOODBYE, me, unit); + //Talk(SAY_GOODBYE, unit->GetGUID()); break; case ENTRY_DOLF: - DoScriptText(SAY_DOLF_GOODBYE, me, unit); + //Talk(SAY_GOODBYE, unit->GetGUID()); break; case ENTRY_KORJA: - DoScriptText(SAY_KORJA_GOODBYE, me, unit); + //Talk(SAY_GOODBYE, unit->GetGUID()); break; case ENTRY_DG_KEL: - DoScriptText(SAY_DG_KEL_GOODBYE, me, unit); + //Talk(SAY_GOODBYE, unit->GetGUID()); break; } -- cgit v1.2.3 From 5c3431337ac994accd0a8c467485df03f60e35e4 Mon Sep 17 00:00:00 2001 From: PitCrawler Date: Fri, 7 Dec 2012 16:08:29 +0100 Subject: DB/Various Fixes: Add SAI support for Quests 11984, 12255, 12259 Closes #4787 Fix quest Seeking the Windserpent Godess, Setting the Stage Closes #8577 Fix quest Quest I Sense a Disturbance Closes #8515 --- .../world/2012_12_07_02_Tracker_Pitcrawler.sql | 596 +++++++++++++++++++++ src/server/game/Spells/SpellMgr.cpp | 3 + 2 files changed, 599 insertions(+) create mode 100644 sql/updates/world/2012_12_07_02_Tracker_Pitcrawler.sql (limited to 'src') diff --git a/sql/updates/world/2012_12_07_02_Tracker_Pitcrawler.sql b/sql/updates/world/2012_12_07_02_Tracker_Pitcrawler.sql new file mode 100644 index 00000000000..345a61cb7f5 --- /dev/null +++ b/sql/updates/world/2012_12_07_02_Tracker_Pitcrawler.sql @@ -0,0 +1,596 @@ +-- --------------------------------------------------------------------------------------------------------------------------------------------------- +-- Issue 4787: Quests 11984, 12255, 12259 +SET @NPC_BUDD := 26422; +SET @NPC_FLAMEBRINGER := 27292; +SET @NPC_FLAMEBRINGERS_CHAIN := 27297; +SET @NPC_THANE_TORVALD := 27377; +SET @NPC_BUDD_PET := 32663; +SET @GUID := 43489; -- Need 2 +-- Creature Spawns +UPDATE `creature` SET `spawndist`=0, `MovementType`=0 WHERE `id`=27377; -- Thane Torvald +DELETE FROM `creature` WHERE `id`=@NPC_FLAMEBRINGERS_CHAIN; +INSERT INTO `creature` (`guid`,`id`,`map`,`spawnMask`,`phaseMask`,`modelid`,`equipment_id`,`position_x`,`position_y`,`position_z`,`orientation`,`spawntimesecs`,`spawndist`,`currentwaypoint`,`curhealth`,`curmana`,`MovementType`,`npcflag`,`unit_flags`,`dynamicflags`) VALUES +(@GUID+0,@NPC_FLAMEBRINGERS_CHAIN,571,1,1,17188,0,2786.589,-2483.958,49.05502,4.171337,120,0,0,42,0,0,0,33555200,8), +(@GUID+1,@NPC_FLAMEBRINGERS_CHAIN,571,1,1,17188,0,2802.708,-2520.483,52.75195,2.443461,120,0,0,42,0,0,0,33555200,8); +-- Creature Templates +UPDATE `creature_template` SET `InhabitType`=`InhabitType`|4, `spell1`=48619, `spell2`=48620, `spell3`=52812 WHERE `entry`=@NPC_FLAMEBRINGER; +UPDATE `creature_template` SET `spell1`=47031 WHERE `entry`=@NPC_BUDD_PET; +UPDATE `creature_template` SET `AIName`='SmartAI' WHERE `entry` IN (@NPC_BUDD,@NPC_FLAMEBRINGER,@NPC_FLAMEBRINGERS_CHAIN,@NPC_BUDD_PET); +UPDATE `creature_template` SET `InhabitType`=4 WHERE `entry`=@NPC_FLAMEBRINGERS_CHAIN; +-- Modelinfo +UPDATE `creature_model_info` SET `combat_reach`=1.95 WHERE `modelid`=134; +UPDATE `creature_model_info` SET `bounding_radius`=0.62, `combat_reach`=4 WHERE `modelid`=22657; +-- SmartScripts for them +UPDATE `smart_scripts` SET `event_param1`=9615 WHERE `entryorguid`=26423; -- Drakuru correct gossip_menu from sniff +DELETE FROM `smart_scripts` WHERE `entryorguid` IN (@NPC_BUDD,@NPC_FLAMEBRINGER,@NPC_FLAMEBRINGERS_CHAIN,@NPC_BUDD_PET) AND `source_type`=0; +INSERT INTO `smart_scripts` (`entryorguid`,`source_type`,`id`,`link`,`event_type`,`event_phase_mask`,`event_chance`,`event_flags`,`event_param1`,`event_param2`,`event_param3`,`event_param4`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`action_param4`,`action_param5`,`action_param6`,`target_type`,`target_param1`,`target_param2`,`target_param3`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`) VALUES +(@NPC_BUDD,0,0,1,62,0,100,0,9301,0,0,0,11,61545,0,0,0,0,0,7,0,0,0,0,0,0,0,'Budd - On gossip select - Spellcast'), +(@NPC_BUDD,0,1,0,61,0,100,0,0,0,0,0,72,0,0,0,0,0,0,7,0,0,0,0,0,0,0,'Budd - On gossip select - Close gossip'), +(@NPC_FLAMEBRINGER,0,0,1,62,0,100,0,9512,0,0,0,11,48606,0,0,0,0,0,7,0,0,0,0,0,0,0,'Flamebringer - On gossip select - Spellcast'), +(@NPC_FLAMEBRINGER,0,1,0,61,0,100,0,0,0,0,0,72,0,0,0,0,0,0,7,0,0,0,0,0,0,0,'Flamebringer - On gossip select - Close gossip'), +(@NPC_FLAMEBRINGER,0,2,3,54,0,100,0,0,0,0,0,83,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Flamebringer - On summon - Remove npcflag'), +(@NPC_FLAMEBRINGER,0,3,4,61,0,100,0,0,0,0,0,11,48602,0,0,0,0,0,1,0,0,0,0,0,0,0,'Flamebringer - On summon - Spellcast'), +(@NPC_FLAMEBRINGER,0,4,0,61,0,100,0,0,0,0,0,85,46598,0,0,0,0,0,1,0,0,0,0,0,0,0,'Flamebringer - On summon - Spellcast'), -- actually cast 48598 on invoker but the linked spell 48600 doesn't work maybe because of effect 1: Dummy (4207) which means this spell works in area Voldrune only and will be removed if the area is left +(@NPC_FLAMEBRINGER,0,5,0,28,0,100,0,0,0,0,0,41,500,0,0,0,0,0,1,0,0,0,0,0,0,0,'Flamebringer - On passenger removed - Despawn'), -- not working +(@NPC_FLAMEBRINGERS_CHAIN,0,0,0,11,0,100,0,0,0,0,0,11,48293,0,30,0,0,0,10,110538,0,0,0,0,0,0,'Flamebringer''s Chain - On update - Spellcast'), +(@NPC_BUDD_PET,0,0,1,54,0,100,0,0,0,0,0,11,47014,0,0,0,0,0,7,0,0,0,0,0,0,0,'Budd pet - On summon - Spellcast'), +(@NPC_BUDD_PET,0,1,2,61,0,100,0,0,0,0,0,11,47025,0,0,0,0,0,1,0,0,0,0,0,0,0,'Budd pet - On summon - Spellcast'), +(@NPC_BUDD_PET,0,2,3,61,0,100,0,0,0,0,0,8,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Budd pet - On summon - Set react defensive'), +(@NPC_BUDD_PET,0,3,0,61,0,100,0,0,0,0,0,29,0,0,0,0,0,0,7,0,0,0,0,0,0,0,'Budd pet - On summon - Follow'), +(@NPC_BUDD_PET,0,4,0,60,0,100,0,5000,5000,15000,15000,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,'Budd pet - Frequently - Say random line'); +-- Insert creature_text from sniff +DELETE FROM `creature_text` WHERE `entry`=@NPC_BUDD_PET; +INSERT INTO `creature_text` (`entry`,`groupid`,`id`,`text`,`type`,`language`,`probability`,`emote`,`duration`,`sound`,`comment`) VALUES +(@NPC_BUDD_PET,0,0,'You sure we be goin'' da right way, mon?',12,0,10,0,0,0,'Budd'), +(@NPC_BUDD_PET,0,1,'Nuttin'' says luvin'' like a little tap on da noggin.',12,0,10,0,0,0,'Budd'), +(@NPC_BUDD_PET,0,2,'You be it now, brudda!',12,0,10,0,0,0,'Budd'), +(@NPC_BUDD_PET,0,3,'Hee hee hee! Dis gunna be some fun, mon!',12,0,10,0,0,0,'Budd'), +(@NPC_BUDD_PET,0,4,'My troll bruddas be in for some real fun today, mon!',12,0,10,0,0,0,'Budd'), +(@NPC_BUDD_PET,0,5,'Time to play some troll tag, mon!',12,0,10,0,0,0,'Budd'), +(@NPC_BUDD_PET,0,6,' I can smell ''em, mon.',12,0,10,0,0,0,'Budd'), +(@NPC_BUDD_PET,0,7,'No, no, mon. Dere be no trolls here....',12,0,10,0,0,0,'Budd'), +(@NPC_BUDD_PET,0,8,'Ok, mon. Tell me when we be close to mah troll bruddas.',12,0,10,0,0,0,'Budd'), +(@NPC_BUDD_PET,0,9,'Ey, mon! Take me to mah troll bruddas!',12,0,10,0,0,0, 'Budd'); +-- Conditions +DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=13 AND `SourceEntry`=48293; +DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=17 AND `SourceEntry`=47042; +INSERT INTO `conditions` (`SourceTypeOrReferenceId`,`SourceGroup`,`SourceEntry`,`SourceId`,`ElseGroup`,`ConditionTypeOrReference`,`ConditionTarget`,`ConditionValue1`,`ConditionValue2`,`ConditionValue3`,`NegativeCondition`,`ErrorTextId`,`ScriptName`,`Comment`) VALUES +(13,1,48293,0,0,31,0,3,27292,0,0,0,'','Spell Flamebringer''s Chain targets Flamebringer'), +(17,0,47042,0,0,31,1,3,26425,0,0,0,'','Spell Assemble Cage can only be cast on Drakkari Warrior'), +(17,0,47042,0,1,31,1,3,26447,0,0,0,'','Spell Assemble Cage can only be cast on Drakkari Shaman'); +-- --------------------------------------------------------------------------------------------------------------------------------------------------- +-- Issue 8577: Quests: Seeking the Windserpent Godess, Setting the Stage +SET @GUID := 136095; -- need 83 set by TDB team +SET @OGUID := 71445; -- need 51 set by TDB team +SET @NPC_MATERIAL_YOU := 28473; +SET @NPC_QUETZLUN := 28030; +SET @NPC_SOUL_FONT_VOID_ZONE := 28719; +SET @NPC_SOUL_FONT_BUNNY := 28724; +SET @NPC_QUTEZLUN_WORSHIPPER := 28747; +SET @NPC_SERPENTTOUCHED_BERSERKER := 28748; +SET @NPC_HIGH_PRIEST_MUFUNU := 28752; +SET @NPC_HIGH_PRIESTESS_TUATUA := 28754; +SET @NPC_HIGH_PRIEST_HAWINNI := 28756; +SET @SPELL_GHOSTLY := 51671; +SET @SPELL_MATERIAL_YOU_MIRROR_IMAGE := 51719; +SET @SPELL_QUETZLUN_JUDGMENT := 53096; +-- Creature Spawns +UPDATE `creature` SET `phaseMask`=3 WHERE `guid`=101830; +DELETE FROM `creature` WHERE `guid` BETWEEN @GUID+0 AND @GUID+82; +INSERT INTO `creature` (`guid`,`id`,`map`,`spawnMask`,`phaseMask`,`modelid`,`position_x`,`position_y`,`position_z`,`orientation`,`spawntimesecs`,`spawndist`,`MovementType`) VALUES +(@GUID+0,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5636.122,-4146.7,351.608,3.089233,300,0,0), +(@GUID+1,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5664.044,-4147.331,352.7899,1.553343,300,0,0), +(@GUID+2,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5664.018,-4147.648,351.4565,2.548181,300,0,0), +(@GUID+3,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5675.395,-4137.262,351.502,3.787364,300,0,0), +(@GUID+4,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5664.217,-4085.715,353.6724,4.764749,300,0,0), +(@GUID+5,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5635.908,-4084.476,352.2891,3.228859,300,0,0), +(@GUID+6,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5613.329,-4115.911,353.2454,3.089233,300,0,0), +(@GUID+7,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5674.509,-4074.528,354.1718,3.944444,300,0,0), +(@GUID+8,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5664.241,-4085.23,352.2626,3.647738,300,0,0), +(@GUID+9,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5639.341,-4053.244,353.2463,2.876765,300,0,0), +(@GUID+10,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5622.78,-4115.903,353.1671,3.138673,300,0,2), +(@GUID+11,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5716.746,-4227.831,362.8311,3.769911,300,0,0), +(@GUID+12,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5716.862,-4227.003,363.9283,1.448623,300,0,0), +(@GUID+13,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5675.243,-4215.884,362.8769,2.487047,300,10,1), +(@GUID+14,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5672.002,-4169.415,353.3519,1.175808,300,10,1), +(@GUID+15,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5629.758,-4220.245,363.0638,0.003776325,300,0,2), +(@GUID+16,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5769.077,-4148.809,352.1679,1.239184,300,0,0), +(@GUID+17,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5769.101,-4148.125,353.5637,1.570796,300,0,0), +(@GUID+18,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5754.831,-4147.796,352.168,6.248279,300,0,0), +(@GUID+19,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5736.187,-4221.563,362.641,3.203449,300,0,2), +(@GUID+20,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5754.225,-4091.116,352.1982,0.3839724,300,0,0), +(@GUID+21,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5689.841,-4294.694,375.4998,4.625123,300,0,0), +(@GUID+22,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5689.859,-4293.607,374.0815,2.96706,300,0,0), +(@GUID+23,@NPC_HIGH_PRIESTESS_TUATUA,571,1,2,0,5645.158,-4272.998,375.6752,5.8294,300,0,0), +(@GUID+24,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5688.647,-4271.216,375.4739,1.64061,300,0,0), +(@GUID+25,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5665.319,-4285.886,374.0784,1.797689,300,0,0), +(@GUID+26,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5606.6504,-4317.5366,373.995,6.254433,300,0,2), +(@GUID+27,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5742.73,-4293.231,375.2595,4.625123,300,0,0), +(@GUID+28,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5742.742,-4292.647,374.0793,3.630285,300,0,0), +(@GUID+29,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5745.571,-4271.291,375.4861,1.570796,300,0,0), +(@GUID+30,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5820.372,-4211.103,363.6525,4.660029,300,0,0), +(@GUID+31,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5778.949,-4177.473,354.4064,5.271958,300,10,1), +(@GUID+32,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5820.291,-4210.607,362.4237,3.124139,300,0,0), +(@GUID+33,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5777.957,-4234.875,360.5455,5.426627,300,10,1), +(@GUID+34,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5812.099,-4175.637,353.3968,6.254186,300,0,2), +(@GUID+35,@NPC_QUETZLUN,571,1,2,0,5717.112,-4364.71,385.8849,1.570796,300,0,0), +(@GUID+36,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5650.962,-4311.059,374.12,0.1213555,300,10,1), +(@GUID+37,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5689.269,-4377.144,385.8853,0.3490658,300,0,0), +(@GUID+38,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5672.371,-4325.267,374.9322,4.607669,300,0,0), +(@GUID+39,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5826.438,-4297.896,374.0838,5.026548,300,0,0), +(@GUID+40,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5826.199,-4297.682,375.6247,3.211406,300,0,0), +(@GUID+41,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5813.962,-4295.513,374.6385,6.126106,300,0,0), +(@GUID+42,@NPC_HIGH_PRIEST_MUFUNU,571,1,2,0,5757.949,-4321.796,374.0786,1.762783,300,0,0), +(@GUID+43,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5717.151,-4417.467,390.0197,1.553343,300,0,0), +(@GUID+44,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5717.597,-4465.906,394.4915,4.8708,300,10,1), +(@GUID+45,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5784.318,-4450.26,387.2599,1.58825,300,0,0), +(@GUID+46,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5784.426,-4450.768,385.8849,6.073746,300,0,0), +(@GUID+47,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5789.287,-4409.731,386.4334,1.280781,300,10,1), +(@GUID+48,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5647.668,-4377.963,386.065,3.499769,300,0,2), +(@GUID+49,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5649.861,-4449.003,385.8849,3.124139,300,0,0), +(@GUID+50,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5642.891,-4441.074,385.8849,5.462881,300,0,0), +(@GUID+51,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5649.906,-4448.593,387.246,1.570796,300,0,0), +(@GUID+52,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5591.124,-4345.021,374.4803,1.396263,300,0,0), +(@GUID+53,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5616.43,-4299.668,374.1321,1.832596,300,0,0), +(@GUID+54,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5581.104,-4435.173,374.0819,1.553343,300,0,0), +(@GUID+55,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5581.708,-4435.312,375.6412,6.265732,300,0,0), +(@GUID+56,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5591.341,-4395.804,374.0577,1.312582,300,0,2), +(@GUID+57,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5595.193,-4432.799,374.0784,3.316126,300,0,0), +(@GUID+58,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5643.719,-4486.458,385.8680,3.330791,300,10,1), +(@GUID+59,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5613.822,-4286.389,375.3737,5.044002,300,0,0), +(@GUID+60,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5613.496,-4285.685,374.0294,5.986479,300,0,0), +(@GUID+61,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5616.248,-4237.393,363.7526,0.1919862,300,0,0), +(@GUID+62,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5616.471,-4223.491,363.7719,4.694936,300,0,0), +(@GUID+63,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5616.134,-4236.797,365.063,1.58825,300,0,0), +(@GUID+64,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5746.81,-4376.404,386.2263,2.949606,300,0,0), +(@GUID+65,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5819.418,-4267.652,370.2367,5.992916,300,10,1), +(@GUID+66,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5840.336,-4347.718,374.0784,1.623156,300,0,0), +(@GUID+67,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5827.608,-4221.192,362.5218,2.216568,300,0,0), +(@GUID+68,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5798.308,-4147.533,352.1857,6.230825,300,0,0), +(@GUID+69,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5818.01,-4117.077,353.2626,0.01745329,300,0,0), +(@GUID+70,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5769.03,-4084.954,352.1702,3.560472,300,0,0), +(@GUID+71,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5769.066,-4085.207,353.5035,4.764749,300,0,0), +(@GUID+72,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5798.5,-4085.708,352.4719,0.03490658,300,0,0), +(@GUID+73,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5779.8,-4054.32,353.9052,0.0102175,300,10,1), +(@GUID+74,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5831.308,-4381.716,374.6486,1.259763,300,10,1), +(@GUID+75,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5848.862,-4433.827,375.502,3.159046,300,0,0), +(@GUID+76,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5849.88,-4433.882,374.0784,1.466077,300,0,0), +(@GUID+77,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5842.898,-4440.752,374.0784,0.8377581,300,0,0), +(@GUID+78,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5795.062,-4456.038,385.8848,2.6529,300,0,0), +(@GUID+79,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5831.405,-4489.442,376.4616,2.929957,300,10,1), +(@GUID+80,@NPC_HIGH_PRIEST_HAWINNI,571,1,2,0,5841.862,-4383.027,374.0503,1.571773,300,0,2), +(@GUID+81,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5793.181,-4386.617,387.4278,2.263534,300,0,2), +(@GUID+82,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5784.907,-4313.739,374.0784,0.9090425,300,10,1); +-- Gameobject Spawns +UPDATE `gameobject_template` SET `flags`=4 WHERE `entry` IN (190717,190718,190719); +DELETE FROM `gameobject` WHERE `guid` BETWEEN @OGUID+0 AND @OGUID+50; +INSERT INTO `gameobject` (`guid`,`id`,`map`,`spawnMask`,`phaseMask`,`position_x`,`position_y`,`position_z`, `orientation`, `rotation0`, `rotation1`,`rotation2`,`rotation3`,`spawntimesecs`,`animprogress`,`state`) VALUES +(@OGUID+0,190719,571,1,2,5597.872,-4155.729,362.6012,0.8726639,0,0,0,1,300,100,1), +(@OGUID+1,190719,571,1,2,5632.151,-4150.096,352.3025,4.380776,0,0,0,1,300,100,1), +(@OGUID+2,190717,571,1,2,5707.645,-4061.914,354.3174,3.001947,0,0,0,1,300,100,1), +(@OGUID+3,190719,571,1,2,5610.382,-4115.927,353.4982,1.06465,0,0,0,1,300,100,1), +(@OGUID+4,190717,571,1,2,5742.388,-4150.106,352.4384,1.134463,0,0,0,1,300,100,1), +(@OGUID+5,190719,571,1,2,5726.853,-4062.069,354.3002,1.431168,0,0,0,1,300,100,1), +(@OGUID+6,190719,571,1,2,5768.683,-4106.524,352.6742,5.148723,0,0,0,1,300,100,1), +(@OGUID+7,190719,571,1,2,5797.803,-4286.921,378.6772,4.171338,0,0,0,1,300,100,1), +(@OGUID+8,190718,571,1,2,5680.476,-4381.055,386.0848,4.886924,0,0,0,1,300,100,1), +(@OGUID+9,190718,571,1,2,5676.559,-4325.772,375.9498,3.560473,0,0,0,1,300,100,1), +(@OGUID+10,190717,571,1,2,5706.948,-4324.307,376.862,5.026549,0,0,0,1,300,100,1), +(@OGUID+11,190719,571,1,2,5636.998,-4287.619,378.2026,5.794494,0,0,0,1,300,100,1), +(@OGUID+12,190717,571,1,2,5755.16,-4375.944,386.6035,5.759588,0,0,0,1,300,100,1), +(@OGUID+13,190717,571,1,2,5669.412,-4445.692,385.9232,4.66003,0,0,0,1,300,100,1), +(@OGUID+14,190719,571,1,2,5765.822,-4451.795,386.1481,3.403396,0,0,0,1,300,100,1), +(@OGUID+15,190719,571,1,2,5800.226,-4396.256,388.1242,5.148723,0,0,0,1,300,100,1), +(@OGUID+16,190719,571,1,2,5598.75,-4345.661,377.5887,4.939284,0,0,0,1,300,100,1), +(@OGUID+17,190718,571,1,2,5591.678,-4510.597,377.5719,3.717554,0,0,0,1,300,100,1), +(@OGUID+18,190719,571,1,2,5644.191,-4501.064,387.4688,3.717554,0,0,0,1,300,100,1), +(@OGUID+19,190717,571,1,2,5583.782,-4344.892,377.9865,4.677484,0,0,0,1,300,100,1), +(@OGUID+20,190718,571,1,2,5850.167,-4351.829,374.0035,2.513274,0,0,0,1,300,100,1), +(@OGUID+21,190718,571,1,2,5787.077,-4166.182,352.4897,2.652894,0,0,0,1,300,100,1), +(@OGUID+22,190719,571,1,2,5706.358,-4183.55,353.0656,5.550147,0,0,0,1,300,100,1), +(@OGUID+23,190717,571,1,2,5820.999,-4117.51,353.2778,2.216565,0,0,0,1,300,100,1), +(@OGUID+24,190717,571,1,2,5725.525,-4183.616,356.4301,3.490667,0,0,0,1,300,100,1), +(@OGUID+25,190717,571,1,2,5801.518,-4081.54,352.9559,0.4712385,0,0,0,1,300,100,1), +(@OGUID+26,190718,571,1,2,5783.599,-4199.378,363.9255,1.361356,0,0,0,1,300,100,1), +(@OGUID+27,190718,571,1,2,5788.463,-4028.865,364.6118,3.316144,0,0,0,1,300,100,1), +(@OGUID+28,190718,571,1,2,5679.798,-4084.759,354.015,2.164206,0,0,0,1,300,100,1), +(@OGUID+29,190717,571,1,2,5742.388,-4150.106,352.4384,1.134463,0,0,0,1,300,100,1), +(@OGUID+30,190717,571,1,2,5726.853,-4062.069,354.3002,1.431168,0,0,0,1,300,100,1), +(@OGUID+31,190719,571,1,2,5596.239,-4084.587,362.3596,1.151916,0,0,0,1,300,100,1), +(@OGUID+32,190718,571,1,2,5631.854,-4079.604,352.2866,3.089183,0,0,0,1,300,100,1), +(@OGUID+33,190718,571,1,2,5647.27,-4029.999,365.4366,1.570796,0,0,0,1,300,100,1), +(@OGUID+34,190717,571,1,2,5860.241,-4433.489,375.8128,5.654869,0,0,0,1,300,100,1), +(@OGUID+35,190718,571,1,2,5843.092,-4513.476,376.2388,1.989672,0,0,0,1,300,100,1), +(@OGUID+36,190707,571,1,2,5664.056,-4146.634,351.3731,1.570796,0,0,0,1,300,255,1), +(@OGUID+37,190707,571,1,2,5664.211,-4086.191,352.1793,4.747296,0,0,0,1,300,255,1), +(@OGUID+38,190707,571,1,2,5716.826,-4226.646,362.7477,1.570796,0,0,0,1,300,255,1), +(@OGUID+39,190707,571,1,2,5769.083,-4147.873,352.0845,1.553341,0,0,0,1,300,255,1), +(@OGUID+40,190707,571,1,2,5689.842,-4294.94,373.995,4.677484,0,0,0,1,300,255,1), +(@OGUID+41,190707,571,1,2,5742.686,-4293.651,373.9954,4.729844,0,0,0,1,300,255,1), +(@OGUID+42,190707,571,1,2,5820.354,-4211.717,362.248,4.694937,0,0,0,1,300,255,1), +(@OGUID+43,190707,571,1,2,5825.472,-4297.784,374.0092,3.194002,0,0,0,1,300,255,1), +(@OGUID+44,190707,571,1,2,5784.287,-4449.718,385.8015,1.605702,0,0,0,1,300,255,1), +(@OGUID+45,190707,571,1,2,5649.908,-4447.956,385.8015,1.553341,0,0,0,1,300,255,1), +(@OGUID+46,190707,571,1,2,5582.351,-4435.273,373.9958,6.265733,0,0,0,1,300,255,1), +(@OGUID+47,190707,571,1,2,5613.975,-4286.599,373.9606,5.375615,0,0,0,1,300,255,1), +(@OGUID+48,190707,571,1,2,5616.112,-4236.369,363.7091,1.605702,0,0,0,1,300,255,1), +(@OGUID+49,190707,571,1,2,5769.052,-4085.8,352.0868,4.694937,0,0,0,1,300,255,1), +(@OGUID+50,190707,571,1,2,5848.813,-4433.848,373.995,3.141593,0,0,0,1,300,255,1); +-- Addon data +DELETE FROM `creature_addon` WHERE `guid` IN (@GUID+0,@GUID+3,@GUID+5,@GUID+6,@GUID+7,@GUID+10,@GUID+13,@GUID+14,@GUID+15,@GUID+18,@GUID+19,@GUID+20,@GUID+24,@GUID+25,@GUID+26,@GUID+29,@GUID+31,@GUID+33,@GUID+34,@GUID+36,@GUID+37,@GUID+38,@GUID+41,@GUID+43,@GUID+44,@GUID+47,@GUID+48,@GUID+50,@GUID+53,@GUID+56,@GUID+57,@GUID+58,@GUID+62,@GUID+64,@GUID+65,@GUID+67,@GUID+68,@GUID+69,@GUID+72,@GUID+73,@GUID+74,@GUID+77,@GUID+78,@GUID+79,@GUID+80,@GUID+81,@GUID+82); +INSERT INTO `creature_addon` (`guid`,`path_id`,`mount`,`bytes1`,`bytes2`,`emote`,`auras`) VALUES +(@GUID+0,0,0,8,1,0,''), +(@GUID+3,0,0,0,1,431,''), +(@GUID+5,0,0,8,1,0,''), +(@GUID+6,0,0,8,1,0,''), +(@GUID+7,0,0,0,1,431,''), +(@GUID+10,(@GUID+10)*10,0,0,1,0,''), +(@GUID+13,0,0,0,1,0,'52385'), +(@GUID+14,0,0,0,1,0,'52385'), +(@GUID+15,(@GUID+15)*10,0,0,1,0,''), +(@GUID+18,0,0,0,1,431,''), +(@GUID+19,(@GUID+19)*10,0,0,1,0,''), +(@GUID+20,0,0,0,1,431,''), +(@GUID+24,0,0,8,1,0,''), +(@GUID+25,0,0,0,1,431,''), +(@GUID+26,(@GUID+26)*10,0,0,1,0,''), +(@GUID+29,0,0,8,1,0,''), +(@GUID+31,0,0,0,1,0,'52385'), +(@GUID+33,0,0,0,1,0,'52385'), +(@GUID+34,(@GUID+34)*10,0,0,1,0,''), +(@GUID+36,0,0,0,1,0,'52385'), +(@GUID+37,0,0,0,1,431,''), +(@GUID+38,0,0,8,1,0,''), +(@GUID+41,0,0,0,1,431,''), +(@GUID+43,0,0,0,1,431,''), +(@GUID+44,0,0,0,1,0,'52385'), +(@GUID+47,0,0,0,1,0,'52385'), +(@GUID+48,(@GUID+48)*10,0,0,1,0,''), +(@GUID+50,0,0,0,1,431,''), +(@GUID+53,0,0,0,1,431,''), +(@GUID+56,(@GUID+56)*10,0,0,1,0,''), +(@GUID+57,0,0,0,1,431,''), +(@GUID+58,0,0,0,1,0,'52385'), +(@GUID+62,0,0,0,1,431,''), +(@GUID+64,0,0,0,1,431,''), +(@GUID+65,0,0,0,1,0,'52385'), +(@GUID+67,0,0,0,1,431,''), +(@GUID+68,0,0,8,1,0,''), +(@GUID+69,0,0,8,1,0,''), +(@GUID+72,0,0,8,1,0,''), +(@GUID+73,0,0,0,1,0,'52385'), +(@GUID+74,0,0,0,1,0,'52385'), +(@GUID+77,0,0,0,1,431,''), +(@GUID+78,0,0,0,1,431,''), +(@GUID+79,0,0,0,1,0,'52385'), +(@GUID+80,(@GUID+80)*10,0,0,1,0,''), +(@GUID+81,(@GUID+81)*10,0,0,1,0,''), +(@GUID+82,0,0,0,1,0,'52385'); +DELETE FROM `creature_template_addon` WHERE `entry` IN (@NPC_QUETZLUN,@NPC_SOUL_FONT_VOID_ZONE); +INSERT INTO `creature_template_addon` (`entry`,`path_id`,`mount`,`bytes1`,`bytes2`,`emote`,`auras`) VALUES +(@NPC_QUETZLUN,0,0,0,1,0,'51126 41408'), +(@NPC_SOUL_FONT_VOID_ZONE,0,0,0,1,0,'52222'); +-- Creature_updates +UPDATE `creature_template` SET `unit_flags`=33555200, `AIName`='SmartAI' WHERE `entry`=@NPC_MATERIAL_YOU; +UPDATE `creature_template` SET `faction_A`=190, `faction_H`=190, `npcflag`=3, `gossip_menu_id`=9734, `unit_flags`=33536, `AIName`='SmartAI' WHERE `entry`=@NPC_QUETZLUN; +UPDATE `creature_template` SET `minlevel`=77, `maxlevel`=77, `faction_A`=2073, `faction_H`=2073, `unit_flags`=33554432, `flags_extra`=2 WHERE `entry`=@NPC_SOUL_FONT_VOID_ZONE; +UPDATE `creature_template` SET `minlevel`=77, `maxlevel`=77, `unit_flags`=33554432, `unit_flags2`=2080, `InhabitType`=4 WHERE `entry`=@NPC_SOUL_FONT_BUNNY; +UPDATE `creature_template` SET `faction_A`=2069, `faction_H`=2069, `unit_flags`=32768, `equipment_id`=2482, `AIName`='SmartAI' WHERE `entry`=@NPC_QUTEZLUN_WORSHIPPER; +UPDATE `creature_template` SET `speed_walk`=0.6666666, `faction_A`=2069, `faction_H`=2069, `unit_flags`=32768, `AIName`='SmartAI' WHERE `entry` IN (@NPC_SERPENTTOUCHED_BERSERKER,@NPC_HIGH_PRIEST_HAWINNI); +UPDATE `creature_template` SET `faction_A`=2069, `faction_H`=2069, `unit_flags`=32768, `AIName`='SmartAI', `equipment_id`=2483 WHERE `entry`=@NPC_HIGH_PRIEST_MUFUNU; +UPDATE `creature_template` SET `faction_A`=2069, `faction_H`=2069, `unit_flags`=32768, `AIName`='SmartAI', `equipment_id`=2484 WHERE `entry`=@NPC_HIGH_PRIESTESS_TUATUA; +UPDATE `creature_model_info` SET `bounding_radius`=2.38, `combat_reach`=10.5 WHERE `modelid`=25634; +UPDATE `creature_model_info` SET `bounding_radius`=0.3672, `combat_reach`=1.8, `gender`=0, `modelid_other_gender`=25661 WHERE `modelid`=25660; +UPDATE `creature_model_info` SET `bounding_radius`=0.3672, `combat_reach`=1.8, `gender`=1, `modelid_other_gender`=25660 WHERE `modelid`=25661; +UPDATE `creature_model_info` SET `bounding_radius`=2.625, `combat_reach`=2.625 WHERE `modelid`=25662; +UPDATE `creature_model_info` SET `bounding_radius`=3, `combat_reach`=3 WHERE `modelid`=25663; +UPDATE `creature_model_info` SET `bounding_radius`=0.5355, `combat_reach`=2.625 WHERE `modelid`=25666; +UPDATE `creature_model_info` SET `bounding_radius`=4.5, `combat_reach`=4.5 WHERE `modelid`=25667; +UPDATE `creature_model_info` SET `bounding_radius`=0.6076385, `combat_reach`=2.625 WHERE `modelid`=27858; +-- Equipments +DELETE FROM `creature_equip_template` WHERE `entry` IN (2482,2483,2484); +INSERT INTO `creature_equip_template` (`entry`,`itemEntry1`,`itemEntry2`,`itemEntry3`) VALUES +(2482,28678,0,0), +(2483,13622,0,0), +(2484,28739,0,0); +-- Gossips +DELETE FROM `gossip_menu` WHERE `entry`=9734; +INSERT INTO `gossip_menu` (`entry`,`text_id`) VALUES +(9734,13331); +-- SAI for involved creatures +DELETE FROM `smart_scripts` WHERE `entryorguid` IN (@NPC_QUETZLUN,@NPC_MATERIAL_YOU,@NPC_QUTEZLUN_WORSHIPPER,@NPC_SERPENTTOUCHED_BERSERKER,@NPC_HIGH_PRIEST_MUFUNU,@NPC_HIGH_PRIESTESS_TUATUA,@NPC_HIGH_PRIEST_HAWINNI) AND `source_type`=0; +INSERT INTO `smart_scripts` (`entryorguid`,`source_type`,`id`,`link`,`event_type`,`event_phase_mask`,`event_chance`,`event_flags`,`event_param1`,`event_param2`,`event_param3`,`event_param4`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`action_param4`,`action_param5`,`action_param6`,`target_type`,`target_param1`,`target_param2`,`target_param3`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`) VALUES +(@NPC_QUETZLUN,0,0,0,1,0,100,0,30000,60000,180000,300000,11,@SPELL_QUETZLUN_JUDGMENT,0,0,0,0,0,19,@NPC_QUTEZLUN_WORSHIPPER,30,0,0,0,0,0,'Quetz''lun - On update OOC - Spellcast Quetz''lun''s Judgment'), +(@NPC_MATERIAL_YOU,0,0,1,54,0,100,0,0,0,0,0,1,0,0,0,0,0,0,7,0,0,0,0,0,0,0,'Material You - Just summoned - Say line'), +(@NPC_MATERIAL_YOU,0,1,2,61,0,100,0,0,0,0,0,85,@SPELL_MATERIAL_YOU_MIRROR_IMAGE,0,0,0,0,0,1,0,0,0,0,0,0,0,'Material You - Just summoned - Invoker spellcast Altar of Quetz''lun: Material You''s Mirror Image Aura'), +(@NPC_MATERIAL_YOU,0,2,3,61,0,100,0,0,0,0,0,85,41055,0,0,0,0,0,1,0,0,0,0,0,0,0,'Material You - Just summoned - Invoker spellcast Copy Weapon'), +(@NPC_MATERIAL_YOU,0,3,0,61,0,100,0,0,0,0,0,85,45206,0,0,0,0,0,1,0,0,0,0,0,0,0,'Material You - Just summoned - Invoker spellcast Copy Off-hand Weapon'), +(@NPC_QUTEZLUN_WORSHIPPER,0,0,0,4,0,100,0,0,0,0,0,11,54594,0,0,0,0,0,7,0,0,0,0,0,0,0,'Quetz''lun Worshipper - On aggro - Spellcast Serpent Strike'), +(@NPC_QUTEZLUN_WORSHIPPER,0,1,0,2,0,100,0,0,50,30000,40000,11,54601,0,0,0,0,0,1,0,0,0,0,0,0,0,'Quetz''lun Worshipper - On health below 50% - Spellcast Serpent Form'), +(@NPC_SERPENTTOUCHED_BERSERKER,0,0,0,4,0,100,0,0,0,0,0,11,54594,0,0,0,0,0,7,0,0,0,0,0,0,0,'Serpent-Touched Berserker - On aggro - Spellcast Serpent Strike'), +(@NPC_HIGH_PRIEST_MUFUNU,0,0,2,11,0,100,0,0,0,0,0,11,51733,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Mu''funu - On spawn - Spellcast Shadow Channelling'), +(@NPC_HIGH_PRIEST_MUFUNU,0,1,2,21,0,100,0,0,0,0,0,11,51733,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Mu''funu - On homeposition reached - Spellcast Shadow Channelling'), +(@NPC_HIGH_PRIEST_MUFUNU,0,2,3,61,0,100,0,0,0,0,0,21,0,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Mu''funu - On homeposition reached - Disable combat movement'), +(@NPC_HIGH_PRIEST_MUFUNU,0,3,0,61,0,100,0,0,0,0,0,22,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Mu''funu - On homeposition reached - Set event phase 1'), +(@NPC_HIGH_PRIEST_MUFUNU,0,4,5,9,0,100,0,40,80,0,0,21,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Mu''funu - On target range more than 40y - Enable combat movement'), +(@NPC_HIGH_PRIEST_MUFUNU,0,5,0,61,0,100,0,0,0,0,0,22,2,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Mu''funu - On target range more than 40y - Set event phase 2'), +(@NPC_HIGH_PRIEST_MUFUNU,0,6,3,9,0,100,0,0,20,0,0,21,0,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Mu''funu - On target range below 20y - Disable combat movement'), +(@NPC_HIGH_PRIEST_MUFUNU,0,7,0,0,1,100,0,0,0,2500,2500,11,20820,0,0,0,0,0,2,0,0,0,0,0,0,0,'High Priest Mu''funu - On update IC (phase 1) - Spellcast Holy Smite'), +(@NPC_HIGH_PRIEST_MUFUNU,0,8,0,2,0,100,0,0,30,0,0,22,4,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Mu''funu - On health below 30% - Set event phase 4'), +(@NPC_HIGH_PRIEST_MUFUNU,0,9,0,0,4,100,0,0,0,30000,30000,11,11974,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Mu''funu - On update IC (phase 4) - Spellcast Power Word: Shield'), +(@NPC_HIGH_PRIEST_MUFUNU,0,10,0,0,4,100,0,50,50,15000,20000,11,11640,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Mu''funu - On update IC (phase 4) - Spellcast Renew'), +(@NPC_HIGH_PRIESTESS_TUATUA,0,0,1,11,0,100,0,0,0,0,0,11,51733,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priestess Tua-Tua - On spawn - Spellcast Shadow Channelling'), +(@NPC_HIGH_PRIESTESS_TUATUA,0,1,0,61,0,100,0,0,0,0,0,28,29406,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priestess Tua-Tua - On homeposition reached - Remove aura Shadowform'), +(@NPC_HIGH_PRIESTESS_TUATUA,0,2,1,21,0,100,0,0,0,0,0,11,51733,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priestess Tua-Tua - On homeposition reached - Spellcast Shadow Channelling'), +(@NPC_HIGH_PRIESTESS_TUATUA,0,3,0,4,0,100,0,0,0,0,0,11,29406,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priestess Tua-Tua - On aggro - Spellcast Shadowform'), +(@NPC_HIGH_PRIESTESS_TUATUA,0,4,0,0,0,100,0,2000,3000,15000,20000,11,51818,0,0,0,0,0,2,0,0,0,0,0,0,0,'High Priestess Tua-Tua - On update IC - Spellcast Shadow Word: Death'), +(@NPC_HIGH_PRIESTESS_TUATUA,0,5,0,0,0,100,0,4000,5000,3000,5000,11,13860,0,0,0,0,0,2,0,0,0,0,0,0,0,'High Priestess Tua-Tua - On update IC - Spellcast Mind Blast'), +(@NPC_HIGH_PRIEST_HAWINNI,0,0,0,0,0,100,0,2000,3000,10000,15000,11,54603,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Hawinni - On update IC - Spellcast Serpent''s Agility'), +(@NPC_HIGH_PRIEST_HAWINNI,0,1,2,2,0,100,1,0,40,0,0,11,50420,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Hawinni - On health below 40% - Spellcast Enrage'), +(@NPC_HIGH_PRIEST_HAWINNI,0,2,0,61,0,100,0,0,0,0,0,1,0,0,0,0,0,0,7,0,0,0,0,0,0,0,'High Priest Hawinni - On health below 40% - Say line'), +(@NPC_HIGH_PRIEST_HAWINNI,0,3,0,7,0,100,0,0,0,0,0,28,50420,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Hawinni - On evade - Remove aura Enrage'); +-- Waypoints +DELETE FROM `waypoint_data` WHERE `id` IN ((@GUID+10)*10,(@GUID+15)*10,(@GUID+19)*10,(@GUID+26)*10,(@GUID+34)*10,(@GUID+48)*10,(@GUID+56)*10,(@GUID+80)*10,(@GUID+81)*10); +INSERT INTO `waypoint_data` (`id`,`point`,`position_x`,`position_y`,`position_z`,`orientation`,`delay`,`move_flag`,`action`,`action_chance`,`wpguid`) VALUES +((@GUID+10)*10,1,5622.78,-4115.903,353.1671,0,0,0,0,100,0), +((@GUID+10)*10,2,5700.014,-4116.477,353.2688,0,0,0,0,100,0), +((@GUID+15)*10,1,5629.758,-4220.245,363.0638,0,0,0,0,100,0), +((@GUID+15)*10,2,5698.905,-4220.559,362.8123,0,0,0,0,100,0), +((@GUID+19)*10,1,5736.187,-4221.563,362.641,0,0,0,0,100,0), +((@GUID+19)*10,2,5765.859,-4221.353,361.5846,0,0,0,0,100,0), +((@GUID+19)*10,3,5781.38,-4231.069,359.3161,0,0,0,0,100,0), +((@GUID+19)*10,4,5799.918,-4242.83,362.6221,0,0,0,0,100,0), +((@GUID+19)*10,5,5817.34,-4242.409,363.7439,0,0,0,0,100,0), +((@GUID+19)*10,6,5844.105,-4244.604,362.7979,0,0,0,0,100,0), +((@GUID+19)*10,7,5817.34,-4242.409,363.7439,0,0,0,0,100,0), +((@GUID+19)*10,8,5799.918,-4242.83,362.6221,0,0,0,0,100,0), +((@GUID+19)*10,9,5781.38,-4231.069,359.3161,0,0,0,0,100,0), +((@GUID+19)*10,10,5765.859,-4221.353,361.5846,0,0,0,0,100,0), +((@GUID+26)*10,1,5606.6504,-4317.5366,373.995,0,0,0,0,100,0), +((@GUID+26)*10,2,5625.5952,-4303.0625,373.995,0,0,0,0,100,0), +((@GUID+26)*10,3,5782.809,-4302.274,374.12,0,0,0,0,100,0), +((@GUID+26)*10,4,5802.482,-4309.014,374.0114,0,0,0,0,100,0), +((@GUID+34)*10,1,5812.099,-4175.637,353.3968,0,0,0,0,100,0), +((@GUID+34)*10,2,5821.506,-4165.563,353.5313,0,0,0,0,100,0), +((@GUID+34)*10,3,5818.826,-4129.878,353.8851,0,0,0,0,100,0), +((@GUID+34)*10,4,5810.663,-4117.67,353.2181,0,0,0,0,100,0), +((@GUID+34)*10,5,5792.259,-4117.242,353.2197,0,0,0,0,100,0), +((@GUID+34)*10,6,5755.833,-4119.403,353.3149,0,0,0,0,100,0), +((@GUID+34)*10,7,5754.487,-4121.689,353.3535,0,0,0,0,100,0), +((@GUID+34)*10,8,5747.097,-4163.901,352.5367,0,0,0,0,100,0), +((@GUID+34)*10,9,5754.965,-4174.736,353.418,0,0,0,0,100,0), +((@GUID+48)*10,1,5647.668,-4377.963,386.065,0,0,0,0,100,0), +((@GUID+48)*10,2,5647.648,-4439.329,385.8019,0,0,0,0,100,0), +((@GUID+56)*10,1,5591.341,-4395.804,374.0577,0,0,0,0,100,0), +((@GUID+56)*10,2,5589.711,-4473.008,373.9948,0,0,0,0,100,0), +((@GUID+80)*10,1,5841.862,-4383.027,374.0503,0,0,0,0,100,0), +((@GUID+80)*10,2,5841.261,-4481.065,376.1894,0,0,0,0,100,0), +((@GUID+81)*10,1,5794.948,-4488.715,387.3983,0,0,0,0,100,0), +((@GUID+81)*10,2,5793.181,-4386.617,387.4278,0,0,0,0,100,0); +-- Spell data +DELETE FROM `spell_area` WHERE `spell`=@SPELL_GHOSTLY AND `area`=4325; +INSERT INTO `spell_area` (`spell`,`area`,`quest_start`,`quest_end`,`aura_spell`,`racemask`,`gender`,`autocast`,`quest_start_status`) VALUES +(@SPELL_GHOSTLY,4325,12667,12675,0,0,2,1,2|64); +-- Spell Linking +DELETE FROM `spell_linked_spell` WHERE `spell_trigger`=@SPELL_GHOSTLY; +INSERT INTO `spell_linked_spell` (`spell_trigger`,`spell_effect`,`type`,`comment`) VALUES +(@SPELL_GHOSTLY,51717,1,'On Ghostly - Spellcast Altar of Quetz''lun: Summon Material You'); +-- Conditions +DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=13 AND `SourceEntry` IN (@SPELL_MATERIAL_YOU_MIRROR_IMAGE,@SPELL_QUETZLUN_JUDGMENT); +INSERT INTO `conditions` (`SourceTypeOrReferenceId`,`SourceGroup`,`SourceEntry`,`SourceId`,`ElseGroup`,`ConditionTypeOrReference`,`ConditionTarget`,`ConditionValue1`,`ConditionValue2`,`ConditionValue3`,`NegativeCondition`,`ErrorTextId`,`ScriptName`,`Comment`) VALUES +(13,1,@SPELL_MATERIAL_YOU_MIRROR_IMAGE,0,0,31,0,3,@NPC_MATERIAL_YOU,0,0,0,'','Spell Altar of Quetz''lun: Material You''s Mirror Image Aura targets Material You'), +(13,2,@SPELL_MATERIAL_YOU_MIRROR_IMAGE,0,0,31,0,3,@NPC_MATERIAL_YOU,0,0,0,'','Spell Altar of Quetz''lun: Material You''s Mirror Image Aura targets Material You'), +(13,4,@SPELL_MATERIAL_YOU_MIRROR_IMAGE,0,0,31,0,3,@NPC_MATERIAL_YOU,0,0,0,'','Spell Altar of Quetz''lun: Material You''s Mirror Image Aura targets Material You'), +(13,1,@SPELL_QUETZLUN_JUDGMENT,0,0,31,0,3,@NPC_QUTEZLUN_WORSHIPPER,0,0,0,'','Spell Quetz''lun''s Judgment targets Quetz''lun Worshipper'); +-- Creature Texts +DELETE FROM `creature_text` WHERE `entry` IN (@NPC_MATERIAL_YOU,@NPC_HIGH_PRIEST_HAWINNI); +INSERT INTO `creature_text` (`entry`,`groupid`,`id`,`text`,`type`,`language`,`probability`,`emote`,`duration`,`sound`,`comment`) VALUES +(@NPC_MATERIAL_YOU,0,0,'You leave your material body behind!',42,0,100,0,0,0,'Material You'), +(@NPC_HIGH_PRIEST_HAWINNI,0,0,'%s becomes enraged!',16,0,100,0,0,0,'Hawinni'); +-- --------------------------------------------------------------------------------------------------------------------------------------------------- +-- Issue 8515: Quest I Sense a Disturbance +SET @GUID := 88701; -- need 34 set by TDB +SET @GOSSIP := 9687; +SET @QUEST := 12665; +SET @NPC_ELM_BUNNY := 26298; +SET @NPC_HARKOA := 28401; +SET @NPC_CLAW_OF_HARKOA := 28402; +SET @NPC_HARKOA_SUBDUER := 28403; +SET @NPC_CURSED_OFFSPRING := 28404; +SET @NPC_HARKOA_KITTEN := 28665; +SET @NPC_QUETZLUN := 28671; +SET @SPELL_RIDING_HARKOA_KITTEN := 25673; +SET @SPELL_SPEED := 39870; +SET @SPELL_SUMMON_HARKOA_KITTEN := 52187; +SET @SPELL_STEALTH := 52188; +-- Spawns +DELETE FROM `creature` WHERE `guid` BETWEEN @GUID+0 AND @GUID+33; +INSERT INTO `creature` (`guid`,`id`,`map`,`spawnMask`,`phaseMask`,`modelid`,`equipment_id`,`position_x`,`position_y`,`position_z`,`orientation`,`spawntimesecs`,`spawndist`,`currentwaypoint`,`curhealth`,`curmana`,`MovementType`,`npcflag`,`unit_flags`,`dynamicflags`) VALUES +(@GUID+0,@NPC_ELM_BUNNY,571,1,1,21999,0,5309.635,-3772.253,372.5037,5.707227,300,0,0,42,0,0,0,0,0), +(@GUID+1,@NPC_ELM_BUNNY,571,1,1,21999,0,5333.049,-3796.974,372.489,2.356194,300,0,0,42,0,0,0,0,0), +(@GUID+2,@NPC_ELM_BUNNY,571,1,1,21999,0,5309.46,-3772.571,372.4755,5.358161,300,0,0,42,0,0,0,0,0), +(@GUID+3,@NPC_ELM_BUNNY,571,1,1,21999,0,5332.838,-3797.16,372.4756,2.321288,300,0,0,42,0,0,0,0,0), +(@GUID+4,@NPC_CLAW_OF_HARKOA,571,1,1,0,0,5375.799,-3758.142,360.5291,0.7330383,300,0,0,0,0,0,0,0,0), +(@GUID+5,@NPC_CURSED_OFFSPRING,571,1,1,0,0,5497.146,-3791.354,359.6451,3.033307,300,5,0,0,0,1,0,0,0), +(@GUID+6,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5323.46,-3813,371.9776,1.553343,300,0,0,0,0,0,0,0,0), +(@GUID+7,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5291.728,-3780.95,371.6594,6.248279,300,0,0,0,0,0,0,0,0), +(@GUID+8,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5316.537,-3755.717,371.5298,5.009095,300,0,0,0,0,0,0,0,0), +(@GUID+9,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5422.518,-3822.243,363.2307,0.01745329,300,0,0,0,0,0,0,0,0), +(@GUID+10,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5335.817,-3846.023,370.8626,3.926991,300,0,0,0,0,0,0,0,0), +(@GUID+11,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5382.776,-3799.292,372.6979,0.7853982,300,0,0,0,0,0,0,0,0), +(@GUID+12,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5347.82,-3790.36,371.4579,2.80998,300,0,0,0,0,0,0,0,0), +(@GUID+13,@NPC_CURSED_OFFSPRING,571,1,1,0,0,5385.085,-3821.307,373.1991,4.390826,300,5,0,0,0,1,0,0,0), +(@GUID+14,@NPC_CLAW_OF_HARKOA,571,1,1,0,0,5368.791,-3862.889,373.6328,5.51524,300,0,0,0,0,0,0,0,0), +(@GUID+15,@NPC_CLAW_OF_HARKOA,571,1,1,0,0,5263.502,-3717.983,373.0725,2.356194,300,0,0,0,0,0,0,0,0), +(@GUID+16,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5394.254,-3702.963,362.089,0.1570796,300,0,0,0,0,0,0,0,0), +(@GUID+17,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5410.39,-3718.896,362.0468,1.518436,300,0,0,0,0,0,0,0,0), +(@GUID+18,@NPC_CURSED_OFFSPRING,571,1,1,0,0,5395.654,-3862.894,362.4349,4.355803,300,5,0,0,0,1,0,0,0), +(@GUID+19,@NPC_CURSED_OFFSPRING,571,1,1,0,0,5434.535,-3731.848,362.0858,2.675762,300,5,0,0,0,1,0,0,0), +(@GUID+20,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5477.654,-3878.015,361.0569,0.7679449,300,0,0,0,0,0,0,0,0), +(@GUID+21,@NPC_CLAW_OF_HARKOA,571,1,1,0,0,5553.428,-3829.976,372.5273,5.654867,300,0,0,0,0,0,0,0,0), +(@GUID+22,@NPC_CLAW_OF_HARKOA,571,1,1,0,0,5585.777,-3799.415,366.2234,6.143559,300,0,0,0,0,0,0,0,0), +(@GUID+23,@NPC_CLAW_OF_HARKOA,571,1,1,0,0,5537.25,-3846.529,372.089,5.375614,300,0,0,0,0,0,0,0,0), +(@GUID+24,@NPC_CURSED_OFFSPRING,571,1,1,0,0,5510.545,-3926.729,362.0851,5.462688,300,5,0,0,0,1,0,0,0), +(@GUID+25,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5322.316,-3572.04,363.3229,4.834562,300,0,0,0,0,0,0,0,0), +(@GUID+26,@NPC_CLAW_OF_HARKOA,571,1,1,0,0,5367.774,-3541.64,364.2363,0.7853982,300,0,0,0,0,0,0,0,0), +(@GUID+27,@NPC_CLAW_OF_HARKOA,571,1,1,0,0,5459.911,-3643.151,362.3447,0.9424778,300,0,0,0,0,0,0,0,0), +(@GUID+28,@NPC_CLAW_OF_HARKOA,571,1,1,0,0,5323.396,-3644.5,362.0438,5.707227,300,0,0,0,0,0,0,0,0), +(@GUID+29,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5330.009,-3913.493,365.8797,4.694936,300,0,0,0,0,0,0,0,0), +(@GUID+30,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5434.8,-3919.141,361.1612,3.944444,300,0,0,0,0,0,0,0,0), +(@GUID+31,@NPC_CLAW_OF_HARKOA,571,1,1,0,0,5407.908,-3925.006,362.0776,4.746883,300,5,0,0,0,1,0,0,0), +(@GUID+32,@NPC_CURSED_OFFSPRING,571,1,1,0,0,5347.841,-3946.389,362.553,0.7498215,300,5,0,0,0,1,0,0,0), +(@GUID+33,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5277.245,-3619.667,363.3282,6.213372,300,0,0,0,0,0,0,0,0); +-- some corrections to previous spawns +UPDATE `creature` SET `position_x`=5349.371, `position_y`=-3615.906, `position_z`=363.8878, `orientation`=5.462881 WHERE `guid`=118735; +UPDATE `creature` SET `spawndist`=5, `movementType`=1 WHERE `guid` IN (118714,118722,118729,118731,118732,118733); +UPDATE `gameobject_template` SET `flags`=4 WHERE `entry`=190633; +UPDATE `creature_template` SET `gossip_menu_id`=@GOSSIP, `AIName`='SmartAI' WHERE `entry`=28401; +UPDATE `creature_template` SET `speed_run`=2.571429, `unit_flags`=33288, `AIName`='SmartAI' WHERE `entry`=28665; +UPDATE `creature_template` SET `AIName`='SmartAI' WHERE `entry`=@NPC_HARKOA_SUBDUER; +DELETE FROM `creature_template_addon` WHERE `entry`=@NPC_CLAW_OF_HARKOA; +INSERT INTO `creature_template_addon` (`entry`,`path_id`,`mount`,`bytes1`,`bytes2`,`emote`,`auras`) VALUES +(@NPC_CLAW_OF_HARKOA,0,0,0,1,0,'54608'); +DELETE FROM `creature_addon` WHERE `guid` IN (@GUID+0,@GUID+1,@GUID+2,@GUID+3,118591); +INSERT INTO `creature_addon` (`guid`,`path_id`,`mount`,`bytes1`,`bytes2`,`emote`,`auras`) VALUES +(@GUID+0,0,0,0,1,0,'52485 51666'), +(@GUID+1,0,0,0,1,0,'52485 51666'), +(@GUID+2,0,0,0,1,0,'52485 51666'), +(@GUID+3,0,0,0,1,0,'52485 51666'), +(118591,0,0,0,1,0,'52485 51666'); +-- SAI info +DELETE FROM `creature_ai_scripts` WHERE `creature_id`=@NPC_HARKOA_SUBDUER; +DELETE FROM `smart_scripts` WHERE `entryorguid` IN (@NPC_HARKOA_SUBDUER,-(@GUID+0),-(@GUID+1),-(@GUID+2),-(@GUID+3)) AND `source_type`=0; +DELETE FROM `smart_scripts` WHERE `entryorguid`=@NPC_HARKOA_SUBDUER*100 AND `source_type`=9; +INSERT INTO `smart_scripts` (`entryorguid`,`source_type`,`id`,`link`,`event_type`,`event_phase_mask`,`event_chance`,`event_flags`,`event_param1`,`event_param2`,`event_param3`,`event_param4`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`action_param4`,`action_param5`,`action_param6`,`target_type`,`target_param1`,`target_param2`,`target_param3`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`) VALUES +(@NPC_HARKOA_SUBDUER,0,0,0,11,0,100,0,0,0,0,0,21,0,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On spawn - Disable combatmovement'), +(@NPC_HARKOA_SUBDUER,0,1,0,1,0,100,0,2000,20000,40000,60000,80,@NPC_HARKOA_SUBDUER*100,2,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On update OOC - Run script'), +(@NPC_HARKOA_SUBDUER,0,2,0,4,0,100,0,0,0,0,0,22,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On aggro - Set eventphase 1'), +(@NPC_HARKOA_SUBDUER,0,3,0,0,1,100,0,0,0,2800,3500,11,20822,0,0,0,0,0,2,0,0,0,0,0,0,0,'Har''koa Subduer - On update IC (phase 1) - Spellcast Frostbolt'), +(@NPC_HARKOA_SUBDUER,0,4,0,9,1,100,0,35,80,0,0,21,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On range more than 35y (phase 1) - Enable combatmovement'), +(@NPC_HARKOA_SUBDUER,0,6,0,9,1,100,0,5,15,0,0,21,0,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On range less than 15y (phase 1) - Disable combatmovement'), +(@NPC_HARKOA_SUBDUER,0,7,0,9,1,100,0,0,5,0,0,21,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On range less than 5y (phase 1) - Enable combatmovement'), +(@NPC_HARKOA_SUBDUER,0,8,9,3,1,100,0,0,15,0,0,21,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On mana below 15% (phase 1) - Set eventphase 2'), +(@NPC_HARKOA_SUBDUER,0,9,0,61,0,100,0,0,0,0,0,22,2,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On mana below 15% - Enable combatmovement'), +(@NPC_HARKOA_SUBDUER,0,10,0,3,2,100,0,30,100,0,0,22,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On mana over 30% (phase 2) - Set eventphase 1'), +(@NPC_HARKOA_SUBDUER,0,11,12,2,0,100,0,0,15,0,0,22,4,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On health below 15% - Set eventphase 3'), +(@NPC_HARKOA_SUBDUER,0,12,13,61,0,100,0,0,0,0,0,21,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On health below 15% - Enable combat movement'), +(@NPC_HARKOA_SUBDUER,0,13,0,61,0,100,1,0,0,0,0,25,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On health below 15% - Flee'), +(@NPC_HARKOA_SUBDUER,0,14,0,7,0,100,0,0,0,0,0,22,0,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On evade - Reset event phase'), +(@NPC_HARKOA_SUBDUER,0,15,0,21,0,100,0,0,0,0,0,21,0,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On homeposition reached - Disable combatmovement'), +(-(@GUID+0),0,0,0,11,0,100,0,0,0,0,0,11,51579,0,0,0,0,0,11,28401,10,0,0,0,0,0,'ELM General Purpose Bunny - On spawn - Spellcast Har''koa''s Chains'), +(-(@GUID+1),0,0,0,11,0,100,0,0,0,0,0,11,51577,0,0,0,0,0,11,28401,10,0,0,0,0,0,'ELM General Purpose Bunny - On spawn - Spellcast Har''koa''s Chains'), +(-(@GUID+2),0,0,0,11,0,100,0,0,0,0,0,11,45808,0,0,0,0,0,11,28401,10,0,0,0,0,0,'ELM General Purpose Bunny - On spawn - Spellcast Har''koa''s Chains'), +(-(@GUID+3),0,0,0,11,0,100,0,0,0,0,0,11,45808,0,0,0,0,0,11,28401,10,0,0,0,0,0,'ELM General Purpose Bunny - On spawn - Spellcast Har''koa''s Chains'), +(@NPC_HARKOA_SUBDUER*100,9,0,0,0,0,100,0,0,0,0,0,11,45846,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer script - Spellcast Frost Channelling'), +(@NPC_HARKOA_SUBDUER*100,9,1,0,0,0,100,0,10000,20000,0,0,92,0,45846,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer script - Set unit_field_bytes1 (kneel)'), +(@NPC_HARKOA_SUBDUER*100,9,2,0,0,0,100,0,0,0,0,0,90,8,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer script - Set unit_field_bytes1 (kneel)'); +-- Gossip info +DELETE FROM `gossip_menu` WHERE `entry`=@GOSSIP; +INSERT INTO `gossip_menu` (`entry`,`text_id`) VALUES +(@GOSSIP,13139); +DELETE FROM `gossip_menu_option` WHERE `menu_id`=@GOSSIP AND `id`=0; +INSERT INTO `gossip_menu_option` (`menu_id`,`id`,`option_icon`,`option_text`,`option_id`,`npc_option_npcflag`,`action_menu_id`,`action_poi_id`,`box_coded`,`box_money`,`box_text`) VALUES +(@GOSSIP,0,0,'Great and powerful Har''koa, please call for one of your children that it might stealthily carry me into the Altar of Quetz''lun.',1,1,0,0,0,0,NULL); +-- Conditions +DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=13 AND `SourceEntry` IN (45808,51577,51579); +DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=15 AND `SourceGroup`=@GOSSIP; +INSERT INTO `conditions` (`SourceTypeOrReferenceId`,`SourceGroup`,`SourceEntry`,`SourceId`,`ElseGroup`,`ConditionTypeOrReference`,`ConditionTarget`,`ConditionValue1`,`ConditionValue2`,`ConditionValue3`,`NegativeCondition`,`ErrorTextId`,`ScriptName`,`Comment`) VALUES +(13,1,45808,0,0,31,0,3,28401,0,0,0,'','Spell Har''koa''s Chains targets Har''koa'), +(13,1,51577,0,0,31,0,3,28401,0,0,0,'','Spell Har''koa''s Chains targets Har''koa'), +(13,1,51579,0,0,31,0,3,28401,0,0,0,'','Spell Har''koa''s Chains targets Har''koa'), +(15,@GOSSIP,0,0,0,9,0,@QUEST,0,0,0,0,'','Show gossip option if player has taken quest 12655'); + +DELETE FROM `smart_scripts` WHERE `entryorguid` IN (@NPC_HARKOA,@NPC_HARKOA_KITTEN) AND `source_type`=0; +DELETE FROM `smart_scripts` WHERE `entryorguid`=@NPC_HARKOA_KITTEN*100 AND `source_type`=9; +INSERT INTO `smart_scripts` (`entryorguid`,`source_type`,`id`,`link`,`event_type`,`event_phase_mask`,`event_chance`,`event_flags`,`event_param1`,`event_param2`,`event_param3`,`event_param4`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`action_param4`,`action_param5`,`action_param6`,`target_type`,`target_param1`,`target_param2`,`target_param3`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`) VALUES +-- Har'koa script +(@NPC_HARKOA,0,0,1,62,0,100,0,@GOSSIP,0,0,0,11,@SPELL_SUMMON_HARKOA_KITTEN,0,0,0,0,0,7,0,0,0,0,0,0,0,'Har''koa - On gossip option select - force player to summon Har''koa''s Kitten'), +(@NPC_HARKOA,0,1,0,61,0,100,0,0,0,0,0,72,0,0,0,0,0,0,7,0,0,0,0,0,0,0,'Har''koa - On gossip option select - close gossip'), +-- Har'koa's Kitten script +(@NPC_HARKOA_KITTEN,0,0,1,54,0,100,0,0,0,0,0,75,@SPELL_STEALTH,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On spawn - Apply Stealth'), +(@NPC_HARKOA_KITTEN,0,1,0,61,0,100,0,0,0,0,0,53,1,@NPC_HARKOA_KITTEN,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On spawn - Start WP movement'), +(@NPC_HARKOA_KITTEN,0,2,0,40,0,100,0,1,@NPC_HARKOA_KITTEN,0,0,1,0,0,0,0,0,0,23,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 1 reached - Say line'), +(@NPC_HARKOA_KITTEN,0,3,4,40,0,100,0,10,@NPC_HARKOA_KITTEN,0,0,54,1000,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 10 reached - Pause WP movement'), +(@NPC_HARKOA_KITTEN,0,4,0,61,0,100,0,0,0,0,0,1,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On waypoint 10 reached - Say line'), +(@NPC_HARKOA_KITTEN,0,5,6,40,0,100,0,18,@NPC_HARKOA_KITTEN,0,0,54,1000,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 18 reached - Pause WP movement'), +(@NPC_HARKOA_KITTEN,0,6,7,61,0,100,0,0,0,0,0,59,0,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 18 reached - Disable run'), +(@NPC_HARKOA_KITTEN,0,7,0,61,0,100,0,0,0,0,0,1,2,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 18 reached - Say line'), +(@NPC_HARKOA_KITTEN,0,9,0,40,0,100,0,21,@NPC_HARKOA_KITTEN,0,0,84,0,0,0,0,0,0,19,@NPC_QUETZLUN,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 21 reached - Set data 0 1 for Prophet of Quetz''lun'), +(@NPC_HARKOA_KITTEN,0,10,11,40,0,100,0,22,@NPC_HARKOA_KITTEN,0,0,59,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 22 reached - Enable run'), +(@NPC_HARKOA_KITTEN,0,11,0,61,0,100,0,0,0,0,0,1,3,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 22 reached - Say line'), +(@NPC_HARKOA_KITTEN,0,12,0,40,0,100,0,31,@NPC_HARKOA_KITTEN,0,0,11,@SPELL_SPEED,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 31 reached - Spellcast Speed Burst'), +(@NPC_HARKOA_KITTEN,0,13,14,40,0,100,0,34,@NPC_HARKOA_KITTEN,0,0,28,@SPELL_SPEED,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 34 reached - Remove aura Speed Burst'), +(@NPC_HARKOA_KITTEN,0,14,15,61,0,100,0,0,0,0,0,97,30,10,0,0,0,0,8,0,0,0,5651.193,-3790.460,361.974,0,'Har''koa''s Kitten - On WP 34 reached - Jump'), +(@NPC_HARKOA_KITTEN,0,15,0,61,0,100,0,0,0,0,0,80,@NPC_HARKOA_KITTEN*100,2,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 34 reached - Run script'), +(@NPC_HARKOA_KITTEN,0,16,17,40,0,100,0,11,@NPC_HARKOA_KITTEN*10,0,0,1,5,0,0,0,0,0,23,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 11 reached - Say line'), +(@NPC_HARKOA_KITTEN,0,17,18,61,0,100,0,0,0,0,0,28,@SPELL_RIDING_HARKOA_KITTEN,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 10 reached - Remove aura Riding Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,0,18,0,61,0,100,0,0,0,0,0,41,500,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 10 reached - Despawn'), +(@NPC_HARKOA_KITTEN*100,9,0,0,0,0,100,0,2000,2000,0,0,1,4,0,0,0,0,0,23,0,0,0,0,0,0,0,'Har''koa''s Kitten script - Say line'), +(@NPC_HARKOA_KITTEN*100,9,1,0,0,0,100,0,500,500,0,0,53,1,@NPC_HARKOA_KITTEN*10,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten script - Start WP movement'); +-- Waypoints +DELETE FROM `waypoints` WHERE `entry` IN (@NPC_HARKOA_KITTEN,@NPC_HARKOA_KITTEN*10); +INSERT INTO `waypoints` (`entry`,`pointid`,`position_x`,`position_y`,`position_z`,`point_comment`) VALUES +(@NPC_HARKOA_KITTEN, 1,5343.219,-3763.973,373.093,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN, 2,5365.389,-3750.708,360.531,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN, 3,5386.707,-3755.923,360.458,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN, 4,5421.301,-3779.266,361.966,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN, 5,5464.585,-3784.811,362.422,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN, 6,5472.514,-3787.657,359.862,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN, 7,5523.643,-3823.486,360.533,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN, 8,5539.182,-3838.393,372.141,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN, 9,5714.259,-3895.436,371.987,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,10,5714.515,-3944.740,371.987,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,11,5715.673,-4019.310,372.152,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,12,5716.523,-4054.907,353.671,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,13,5716.630,-4188.195,354.075,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,14,5716.644,-4205.305,362.825,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,15,5724.548,-4238.222,362.746,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,16,5724.905,-4258.611,374.355,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,17,5720.831,-4331.177,374.023,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,18,5722.675,-4351.540,385.496,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,19,5728.693,-4374.917,386.492,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,20,5717.937,-4385.863,386.191,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,21,5705.368,-4379.375,385.803,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,22,5705.883,-4371.388,385.803,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,23,5714.739,-4352.132,385.560,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,24,5720.831,-4331.177,374.023,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,25,5724.905,-4258.611,374.355,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,26,5724.548,-4238.222,362.746,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,27,5716.644,-4205.305,362.825,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,28,5716.630,-4188.195,354.075,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,29,5716.523,-4054.907,353.671,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,30,5715.673,-4019.310,372.152,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,31,5714.515,-3944.740,371.987,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,32,5714.259,-3895.436,371.987,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,33,5709.297,-3844.293,372.012,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,34,5672.465,-3815.550,373.647,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN*10, 1,5605.440,-3790.634,362.713,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN*10, 2,5579.467,-3789.876,365.829,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN*10, 3,5552.734,-3794.191,362.082,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN*10, 4,5535.410,-3792.923,362.071,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN*10, 5,5472.514,-3787.657,359.862,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN*10, 6,5464.585,-3784.811,362.422,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN*10, 7,5421.301,-3779.266,361.966,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN*10, 8,5386.707,-3755.923,360.458,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN*10, 9,5365.389,-3750.708,360.531,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN*10,10,5344.119,-3764.440,373.096,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN*10,11,5331.768,-3774.679,371.341,'Har''koa''s Kitten'); +-- Areatrigger info +DELETE FROM `areatrigger_involvedrelation` WHERE `quest`=@QUEST; +INSERT INTO `areatrigger_involvedrelation` (`id`,`quest`) VALUES +(5052,@QUEST); +-- Spell Data +DELETE FROM `spell_area` WHERE `spell`=52485 AND `area`=4322; +INSERT INTO `spell_area` (`spell`,`area`,`quest_start`,`quest_end`,`aura_spell`,`racemask`,`gender`,`autocast`) VALUES +(52485,4322,0,12685,0,0,2,1); +-- Creature Texts +DELETE FROM `creature_text` WHERE `entry` IN (@NPC_HARKOA_KITTEN,@NPC_QUETZLUN); +INSERT INTO `creature_text` (`entry`,`groupid`,`id`,`text`,`type`,`language`,`probability`,`emote`,`duration`,`sound`,`comment`) VALUES +(@NPC_HARKOA_KITTEN,0,0,'Thank you for saving me, $N. This is the least that I could do to return the favor. Hold on tight. Here we go.',15,0,100,0,0,0,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,1,0,'This doesn''t look good. Whatever you do, don''t fall off. There''s a ton of nasty things in there!',15,0,100,0,0,0,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,2,0,'Oh no... Quetz''lun is dead! Stay still. We''ll sneak past the prophet.',15,0,100,0,0,0,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,3,0,'We''re spotted! Hang on. We have to get out of here!',15,0,100,0,0,0,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,4,0,'I think we''re safe now. Let''s get back!',15,0,100,0,0,0,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,5,0,'We made it! Take care, $N, and thanks again!',15,0,100,0,0,0,'Har''koa''s Kitten'), +(@NPC_QUETZLUN,0,0,'What was that? I sense an intruder. Find and kill them!',14,0,100,0,0,0,'Quetz''lun'); +-- --------------------------------------------------------------------------------------------------------------------------------------------------- diff --git a/src/server/game/Spells/SpellMgr.cpp b/src/server/game/Spells/SpellMgr.cpp index ecab3712af1..f0c0a3a494e 100644 --- a/src/server/game/Spells/SpellMgr.cpp +++ b/src/server/game/Spells/SpellMgr.cpp @@ -2978,6 +2978,9 @@ void SpellMgr::LoadDbcDataCorrections() switch (spellInfo->Id) { + case 53096: // Quetz'lun's Judgment + spellInfo->MaxAffectedTargets = 1; + break; case 42730: spellInfo->EffectTriggerSpell[EFFECT_1] = 42739; break; -- cgit v1.2.3 From d96f80cc5d10ae63575a95c05dd31d1b8b29a55f Mon Sep 17 00:00:00 2001 From: Vincent_Michael Date: Fri, 7 Dec 2012 17:36:20 +0100 Subject: Core/Scripts: Fix crash (need convert in sai) --- src/server/scripts/Northrend/sholazar_basin.cpp | 26 ++++++++++++++++++++----- 1 file changed, 21 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/server/scripts/Northrend/sholazar_basin.cpp b/src/server/scripts/Northrend/sholazar_basin.cpp index a6d6cda11b1..c0635f897d9 100644 --- a/src/server/scripts/Northrend/sholazar_basin.cpp +++ b/src/server/scripts/Northrend/sholazar_basin.cpp @@ -722,10 +722,17 @@ class npc_adventurous_dwarf : public CreatureScript public: npc_adventurous_dwarf() : CreatureScript("npc_adventurous_dwarf") { } + struct npc_adventurous_dwarfAI : public ScriptedAI + { + npc_adventurous_dwarfAI(Creature* creature) : ScriptedAI(creature) + { + Talk(SAY_DWARF_OUCH); + } + }; + CreatureAI* GetAI(Creature* creature) const { - creature->AI()->Talk(SAY_DWARF_OUCH); - return NULL; + return new npc_adventurous_dwarfAI(creature); } bool OnGossipHello(Player* player, Creature* creature) @@ -750,14 +757,23 @@ public: { player->PlayerTalkClass->ClearMenus(); uint32 spellId = 0; + switch (action) { - case GOSSIP_ACTION_INFO_DEF + 1: spellId = SPELL_ADD_ORANGE; break; - case GOSSIP_ACTION_INFO_DEF + 2: spellId = SPELL_ADD_BANANAS; break; - case GOSSIP_ACTION_INFO_DEF + 3: spellId = SPELL_ADD_PAPAYA; break; + case GOSSIP_ACTION_INFO_DEF + 1: + spellId = SPELL_ADD_ORANGE; + break; + case GOSSIP_ACTION_INFO_DEF + 2: + spellId = SPELL_ADD_BANANAS; + break; + case GOSSIP_ACTION_INFO_DEF + 3: + spellId = SPELL_ADD_PAPAYA; + break; } + if (spellId) player->CastSpell(player, spellId, true); + creature->AI()->Talk(SAY_DWARF_HELP); creature->DespawnOrUnsummon(); return true; -- cgit v1.2.3 From 3199c9d56391fd8cdaa0aebceea29292fdf0ee03 Mon Sep 17 00:00:00 2001 From: Vincent_Michael Date: Fri, 7 Dec 2012 18:10:20 +0100 Subject: SQL: - Fix startup errors - Rename SQLs in correct name --- .../world/2012_12_07_02_Tracker_Pitcrawler.sql | 596 --------------------- .../2012_12_07_02_world_tracker_pitcrawler.sql | 596 +++++++++++++++++++++ sql/updates/world/2012_12_07_03_Tracker_Trista.sql | 218 -------- .../world/2012_12_07_03_world_tracker_trista.sql | 218 ++++++++ sql/updates/world/2012_12_07_04_world_misc.sql | 5 + src/server/game/Spells/SpellMgr.cpp | 2 +- 6 files changed, 820 insertions(+), 815 deletions(-) delete mode 100644 sql/updates/world/2012_12_07_02_Tracker_Pitcrawler.sql create mode 100644 sql/updates/world/2012_12_07_02_world_tracker_pitcrawler.sql delete mode 100644 sql/updates/world/2012_12_07_03_Tracker_Trista.sql create mode 100644 sql/updates/world/2012_12_07_03_world_tracker_trista.sql create mode 100644 sql/updates/world/2012_12_07_04_world_misc.sql (limited to 'src') diff --git a/sql/updates/world/2012_12_07_02_Tracker_Pitcrawler.sql b/sql/updates/world/2012_12_07_02_Tracker_Pitcrawler.sql deleted file mode 100644 index 345a61cb7f5..00000000000 --- a/sql/updates/world/2012_12_07_02_Tracker_Pitcrawler.sql +++ /dev/null @@ -1,596 +0,0 @@ --- --------------------------------------------------------------------------------------------------------------------------------------------------- --- Issue 4787: Quests 11984, 12255, 12259 -SET @NPC_BUDD := 26422; -SET @NPC_FLAMEBRINGER := 27292; -SET @NPC_FLAMEBRINGERS_CHAIN := 27297; -SET @NPC_THANE_TORVALD := 27377; -SET @NPC_BUDD_PET := 32663; -SET @GUID := 43489; -- Need 2 --- Creature Spawns -UPDATE `creature` SET `spawndist`=0, `MovementType`=0 WHERE `id`=27377; -- Thane Torvald -DELETE FROM `creature` WHERE `id`=@NPC_FLAMEBRINGERS_CHAIN; -INSERT INTO `creature` (`guid`,`id`,`map`,`spawnMask`,`phaseMask`,`modelid`,`equipment_id`,`position_x`,`position_y`,`position_z`,`orientation`,`spawntimesecs`,`spawndist`,`currentwaypoint`,`curhealth`,`curmana`,`MovementType`,`npcflag`,`unit_flags`,`dynamicflags`) VALUES -(@GUID+0,@NPC_FLAMEBRINGERS_CHAIN,571,1,1,17188,0,2786.589,-2483.958,49.05502,4.171337,120,0,0,42,0,0,0,33555200,8), -(@GUID+1,@NPC_FLAMEBRINGERS_CHAIN,571,1,1,17188,0,2802.708,-2520.483,52.75195,2.443461,120,0,0,42,0,0,0,33555200,8); --- Creature Templates -UPDATE `creature_template` SET `InhabitType`=`InhabitType`|4, `spell1`=48619, `spell2`=48620, `spell3`=52812 WHERE `entry`=@NPC_FLAMEBRINGER; -UPDATE `creature_template` SET `spell1`=47031 WHERE `entry`=@NPC_BUDD_PET; -UPDATE `creature_template` SET `AIName`='SmartAI' WHERE `entry` IN (@NPC_BUDD,@NPC_FLAMEBRINGER,@NPC_FLAMEBRINGERS_CHAIN,@NPC_BUDD_PET); -UPDATE `creature_template` SET `InhabitType`=4 WHERE `entry`=@NPC_FLAMEBRINGERS_CHAIN; --- Modelinfo -UPDATE `creature_model_info` SET `combat_reach`=1.95 WHERE `modelid`=134; -UPDATE `creature_model_info` SET `bounding_radius`=0.62, `combat_reach`=4 WHERE `modelid`=22657; --- SmartScripts for them -UPDATE `smart_scripts` SET `event_param1`=9615 WHERE `entryorguid`=26423; -- Drakuru correct gossip_menu from sniff -DELETE FROM `smart_scripts` WHERE `entryorguid` IN (@NPC_BUDD,@NPC_FLAMEBRINGER,@NPC_FLAMEBRINGERS_CHAIN,@NPC_BUDD_PET) AND `source_type`=0; -INSERT INTO `smart_scripts` (`entryorguid`,`source_type`,`id`,`link`,`event_type`,`event_phase_mask`,`event_chance`,`event_flags`,`event_param1`,`event_param2`,`event_param3`,`event_param4`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`action_param4`,`action_param5`,`action_param6`,`target_type`,`target_param1`,`target_param2`,`target_param3`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`) VALUES -(@NPC_BUDD,0,0,1,62,0,100,0,9301,0,0,0,11,61545,0,0,0,0,0,7,0,0,0,0,0,0,0,'Budd - On gossip select - Spellcast'), -(@NPC_BUDD,0,1,0,61,0,100,0,0,0,0,0,72,0,0,0,0,0,0,7,0,0,0,0,0,0,0,'Budd - On gossip select - Close gossip'), -(@NPC_FLAMEBRINGER,0,0,1,62,0,100,0,9512,0,0,0,11,48606,0,0,0,0,0,7,0,0,0,0,0,0,0,'Flamebringer - On gossip select - Spellcast'), -(@NPC_FLAMEBRINGER,0,1,0,61,0,100,0,0,0,0,0,72,0,0,0,0,0,0,7,0,0,0,0,0,0,0,'Flamebringer - On gossip select - Close gossip'), -(@NPC_FLAMEBRINGER,0,2,3,54,0,100,0,0,0,0,0,83,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Flamebringer - On summon - Remove npcflag'), -(@NPC_FLAMEBRINGER,0,3,4,61,0,100,0,0,0,0,0,11,48602,0,0,0,0,0,1,0,0,0,0,0,0,0,'Flamebringer - On summon - Spellcast'), -(@NPC_FLAMEBRINGER,0,4,0,61,0,100,0,0,0,0,0,85,46598,0,0,0,0,0,1,0,0,0,0,0,0,0,'Flamebringer - On summon - Spellcast'), -- actually cast 48598 on invoker but the linked spell 48600 doesn't work maybe because of effect 1: Dummy (4207) which means this spell works in area Voldrune only and will be removed if the area is left -(@NPC_FLAMEBRINGER,0,5,0,28,0,100,0,0,0,0,0,41,500,0,0,0,0,0,1,0,0,0,0,0,0,0,'Flamebringer - On passenger removed - Despawn'), -- not working -(@NPC_FLAMEBRINGERS_CHAIN,0,0,0,11,0,100,0,0,0,0,0,11,48293,0,30,0,0,0,10,110538,0,0,0,0,0,0,'Flamebringer''s Chain - On update - Spellcast'), -(@NPC_BUDD_PET,0,0,1,54,0,100,0,0,0,0,0,11,47014,0,0,0,0,0,7,0,0,0,0,0,0,0,'Budd pet - On summon - Spellcast'), -(@NPC_BUDD_PET,0,1,2,61,0,100,0,0,0,0,0,11,47025,0,0,0,0,0,1,0,0,0,0,0,0,0,'Budd pet - On summon - Spellcast'), -(@NPC_BUDD_PET,0,2,3,61,0,100,0,0,0,0,0,8,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Budd pet - On summon - Set react defensive'), -(@NPC_BUDD_PET,0,3,0,61,0,100,0,0,0,0,0,29,0,0,0,0,0,0,7,0,0,0,0,0,0,0,'Budd pet - On summon - Follow'), -(@NPC_BUDD_PET,0,4,0,60,0,100,0,5000,5000,15000,15000,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,'Budd pet - Frequently - Say random line'); --- Insert creature_text from sniff -DELETE FROM `creature_text` WHERE `entry`=@NPC_BUDD_PET; -INSERT INTO `creature_text` (`entry`,`groupid`,`id`,`text`,`type`,`language`,`probability`,`emote`,`duration`,`sound`,`comment`) VALUES -(@NPC_BUDD_PET,0,0,'You sure we be goin'' da right way, mon?',12,0,10,0,0,0,'Budd'), -(@NPC_BUDD_PET,0,1,'Nuttin'' says luvin'' like a little tap on da noggin.',12,0,10,0,0,0,'Budd'), -(@NPC_BUDD_PET,0,2,'You be it now, brudda!',12,0,10,0,0,0,'Budd'), -(@NPC_BUDD_PET,0,3,'Hee hee hee! Dis gunna be some fun, mon!',12,0,10,0,0,0,'Budd'), -(@NPC_BUDD_PET,0,4,'My troll bruddas be in for some real fun today, mon!',12,0,10,0,0,0,'Budd'), -(@NPC_BUDD_PET,0,5,'Time to play some troll tag, mon!',12,0,10,0,0,0,'Budd'), -(@NPC_BUDD_PET,0,6,' I can smell ''em, mon.',12,0,10,0,0,0,'Budd'), -(@NPC_BUDD_PET,0,7,'No, no, mon. Dere be no trolls here....',12,0,10,0,0,0,'Budd'), -(@NPC_BUDD_PET,0,8,'Ok, mon. Tell me when we be close to mah troll bruddas.',12,0,10,0,0,0,'Budd'), -(@NPC_BUDD_PET,0,9,'Ey, mon! Take me to mah troll bruddas!',12,0,10,0,0,0, 'Budd'); --- Conditions -DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=13 AND `SourceEntry`=48293; -DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=17 AND `SourceEntry`=47042; -INSERT INTO `conditions` (`SourceTypeOrReferenceId`,`SourceGroup`,`SourceEntry`,`SourceId`,`ElseGroup`,`ConditionTypeOrReference`,`ConditionTarget`,`ConditionValue1`,`ConditionValue2`,`ConditionValue3`,`NegativeCondition`,`ErrorTextId`,`ScriptName`,`Comment`) VALUES -(13,1,48293,0,0,31,0,3,27292,0,0,0,'','Spell Flamebringer''s Chain targets Flamebringer'), -(17,0,47042,0,0,31,1,3,26425,0,0,0,'','Spell Assemble Cage can only be cast on Drakkari Warrior'), -(17,0,47042,0,1,31,1,3,26447,0,0,0,'','Spell Assemble Cage can only be cast on Drakkari Shaman'); --- --------------------------------------------------------------------------------------------------------------------------------------------------- --- Issue 8577: Quests: Seeking the Windserpent Godess, Setting the Stage -SET @GUID := 136095; -- need 83 set by TDB team -SET @OGUID := 71445; -- need 51 set by TDB team -SET @NPC_MATERIAL_YOU := 28473; -SET @NPC_QUETZLUN := 28030; -SET @NPC_SOUL_FONT_VOID_ZONE := 28719; -SET @NPC_SOUL_FONT_BUNNY := 28724; -SET @NPC_QUTEZLUN_WORSHIPPER := 28747; -SET @NPC_SERPENTTOUCHED_BERSERKER := 28748; -SET @NPC_HIGH_PRIEST_MUFUNU := 28752; -SET @NPC_HIGH_PRIESTESS_TUATUA := 28754; -SET @NPC_HIGH_PRIEST_HAWINNI := 28756; -SET @SPELL_GHOSTLY := 51671; -SET @SPELL_MATERIAL_YOU_MIRROR_IMAGE := 51719; -SET @SPELL_QUETZLUN_JUDGMENT := 53096; --- Creature Spawns -UPDATE `creature` SET `phaseMask`=3 WHERE `guid`=101830; -DELETE FROM `creature` WHERE `guid` BETWEEN @GUID+0 AND @GUID+82; -INSERT INTO `creature` (`guid`,`id`,`map`,`spawnMask`,`phaseMask`,`modelid`,`position_x`,`position_y`,`position_z`,`orientation`,`spawntimesecs`,`spawndist`,`MovementType`) VALUES -(@GUID+0,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5636.122,-4146.7,351.608,3.089233,300,0,0), -(@GUID+1,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5664.044,-4147.331,352.7899,1.553343,300,0,0), -(@GUID+2,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5664.018,-4147.648,351.4565,2.548181,300,0,0), -(@GUID+3,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5675.395,-4137.262,351.502,3.787364,300,0,0), -(@GUID+4,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5664.217,-4085.715,353.6724,4.764749,300,0,0), -(@GUID+5,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5635.908,-4084.476,352.2891,3.228859,300,0,0), -(@GUID+6,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5613.329,-4115.911,353.2454,3.089233,300,0,0), -(@GUID+7,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5674.509,-4074.528,354.1718,3.944444,300,0,0), -(@GUID+8,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5664.241,-4085.23,352.2626,3.647738,300,0,0), -(@GUID+9,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5639.341,-4053.244,353.2463,2.876765,300,0,0), -(@GUID+10,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5622.78,-4115.903,353.1671,3.138673,300,0,2), -(@GUID+11,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5716.746,-4227.831,362.8311,3.769911,300,0,0), -(@GUID+12,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5716.862,-4227.003,363.9283,1.448623,300,0,0), -(@GUID+13,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5675.243,-4215.884,362.8769,2.487047,300,10,1), -(@GUID+14,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5672.002,-4169.415,353.3519,1.175808,300,10,1), -(@GUID+15,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5629.758,-4220.245,363.0638,0.003776325,300,0,2), -(@GUID+16,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5769.077,-4148.809,352.1679,1.239184,300,0,0), -(@GUID+17,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5769.101,-4148.125,353.5637,1.570796,300,0,0), -(@GUID+18,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5754.831,-4147.796,352.168,6.248279,300,0,0), -(@GUID+19,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5736.187,-4221.563,362.641,3.203449,300,0,2), -(@GUID+20,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5754.225,-4091.116,352.1982,0.3839724,300,0,0), -(@GUID+21,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5689.841,-4294.694,375.4998,4.625123,300,0,0), -(@GUID+22,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5689.859,-4293.607,374.0815,2.96706,300,0,0), -(@GUID+23,@NPC_HIGH_PRIESTESS_TUATUA,571,1,2,0,5645.158,-4272.998,375.6752,5.8294,300,0,0), -(@GUID+24,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5688.647,-4271.216,375.4739,1.64061,300,0,0), -(@GUID+25,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5665.319,-4285.886,374.0784,1.797689,300,0,0), -(@GUID+26,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5606.6504,-4317.5366,373.995,6.254433,300,0,2), -(@GUID+27,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5742.73,-4293.231,375.2595,4.625123,300,0,0), -(@GUID+28,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5742.742,-4292.647,374.0793,3.630285,300,0,0), -(@GUID+29,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5745.571,-4271.291,375.4861,1.570796,300,0,0), -(@GUID+30,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5820.372,-4211.103,363.6525,4.660029,300,0,0), -(@GUID+31,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5778.949,-4177.473,354.4064,5.271958,300,10,1), -(@GUID+32,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5820.291,-4210.607,362.4237,3.124139,300,0,0), -(@GUID+33,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5777.957,-4234.875,360.5455,5.426627,300,10,1), -(@GUID+34,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5812.099,-4175.637,353.3968,6.254186,300,0,2), -(@GUID+35,@NPC_QUETZLUN,571,1,2,0,5717.112,-4364.71,385.8849,1.570796,300,0,0), -(@GUID+36,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5650.962,-4311.059,374.12,0.1213555,300,10,1), -(@GUID+37,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5689.269,-4377.144,385.8853,0.3490658,300,0,0), -(@GUID+38,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5672.371,-4325.267,374.9322,4.607669,300,0,0), -(@GUID+39,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5826.438,-4297.896,374.0838,5.026548,300,0,0), -(@GUID+40,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5826.199,-4297.682,375.6247,3.211406,300,0,0), -(@GUID+41,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5813.962,-4295.513,374.6385,6.126106,300,0,0), -(@GUID+42,@NPC_HIGH_PRIEST_MUFUNU,571,1,2,0,5757.949,-4321.796,374.0786,1.762783,300,0,0), -(@GUID+43,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5717.151,-4417.467,390.0197,1.553343,300,0,0), -(@GUID+44,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5717.597,-4465.906,394.4915,4.8708,300,10,1), -(@GUID+45,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5784.318,-4450.26,387.2599,1.58825,300,0,0), -(@GUID+46,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5784.426,-4450.768,385.8849,6.073746,300,0,0), -(@GUID+47,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5789.287,-4409.731,386.4334,1.280781,300,10,1), -(@GUID+48,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5647.668,-4377.963,386.065,3.499769,300,0,2), -(@GUID+49,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5649.861,-4449.003,385.8849,3.124139,300,0,0), -(@GUID+50,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5642.891,-4441.074,385.8849,5.462881,300,0,0), -(@GUID+51,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5649.906,-4448.593,387.246,1.570796,300,0,0), -(@GUID+52,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5591.124,-4345.021,374.4803,1.396263,300,0,0), -(@GUID+53,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5616.43,-4299.668,374.1321,1.832596,300,0,0), -(@GUID+54,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5581.104,-4435.173,374.0819,1.553343,300,0,0), -(@GUID+55,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5581.708,-4435.312,375.6412,6.265732,300,0,0), -(@GUID+56,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5591.341,-4395.804,374.0577,1.312582,300,0,2), -(@GUID+57,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5595.193,-4432.799,374.0784,3.316126,300,0,0), -(@GUID+58,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5643.719,-4486.458,385.8680,3.330791,300,10,1), -(@GUID+59,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5613.822,-4286.389,375.3737,5.044002,300,0,0), -(@GUID+60,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5613.496,-4285.685,374.0294,5.986479,300,0,0), -(@GUID+61,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5616.248,-4237.393,363.7526,0.1919862,300,0,0), -(@GUID+62,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5616.471,-4223.491,363.7719,4.694936,300,0,0), -(@GUID+63,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5616.134,-4236.797,365.063,1.58825,300,0,0), -(@GUID+64,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5746.81,-4376.404,386.2263,2.949606,300,0,0), -(@GUID+65,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5819.418,-4267.652,370.2367,5.992916,300,10,1), -(@GUID+66,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5840.336,-4347.718,374.0784,1.623156,300,0,0), -(@GUID+67,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5827.608,-4221.192,362.5218,2.216568,300,0,0), -(@GUID+68,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5798.308,-4147.533,352.1857,6.230825,300,0,0), -(@GUID+69,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5818.01,-4117.077,353.2626,0.01745329,300,0,0), -(@GUID+70,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5769.03,-4084.954,352.1702,3.560472,300,0,0), -(@GUID+71,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5769.066,-4085.207,353.5035,4.764749,300,0,0), -(@GUID+72,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5798.5,-4085.708,352.4719,0.03490658,300,0,0), -(@GUID+73,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5779.8,-4054.32,353.9052,0.0102175,300,10,1), -(@GUID+74,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5831.308,-4381.716,374.6486,1.259763,300,10,1), -(@GUID+75,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5848.862,-4433.827,375.502,3.159046,300,0,0), -(@GUID+76,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5849.88,-4433.882,374.0784,1.466077,300,0,0), -(@GUID+77,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5842.898,-4440.752,374.0784,0.8377581,300,0,0), -(@GUID+78,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5795.062,-4456.038,385.8848,2.6529,300,0,0), -(@GUID+79,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5831.405,-4489.442,376.4616,2.929957,300,10,1), -(@GUID+80,@NPC_HIGH_PRIEST_HAWINNI,571,1,2,0,5841.862,-4383.027,374.0503,1.571773,300,0,2), -(@GUID+81,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5793.181,-4386.617,387.4278,2.263534,300,0,2), -(@GUID+82,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5784.907,-4313.739,374.0784,0.9090425,300,10,1); --- Gameobject Spawns -UPDATE `gameobject_template` SET `flags`=4 WHERE `entry` IN (190717,190718,190719); -DELETE FROM `gameobject` WHERE `guid` BETWEEN @OGUID+0 AND @OGUID+50; -INSERT INTO `gameobject` (`guid`,`id`,`map`,`spawnMask`,`phaseMask`,`position_x`,`position_y`,`position_z`, `orientation`, `rotation0`, `rotation1`,`rotation2`,`rotation3`,`spawntimesecs`,`animprogress`,`state`) VALUES -(@OGUID+0,190719,571,1,2,5597.872,-4155.729,362.6012,0.8726639,0,0,0,1,300,100,1), -(@OGUID+1,190719,571,1,2,5632.151,-4150.096,352.3025,4.380776,0,0,0,1,300,100,1), -(@OGUID+2,190717,571,1,2,5707.645,-4061.914,354.3174,3.001947,0,0,0,1,300,100,1), -(@OGUID+3,190719,571,1,2,5610.382,-4115.927,353.4982,1.06465,0,0,0,1,300,100,1), -(@OGUID+4,190717,571,1,2,5742.388,-4150.106,352.4384,1.134463,0,0,0,1,300,100,1), -(@OGUID+5,190719,571,1,2,5726.853,-4062.069,354.3002,1.431168,0,0,0,1,300,100,1), -(@OGUID+6,190719,571,1,2,5768.683,-4106.524,352.6742,5.148723,0,0,0,1,300,100,1), -(@OGUID+7,190719,571,1,2,5797.803,-4286.921,378.6772,4.171338,0,0,0,1,300,100,1), -(@OGUID+8,190718,571,1,2,5680.476,-4381.055,386.0848,4.886924,0,0,0,1,300,100,1), -(@OGUID+9,190718,571,1,2,5676.559,-4325.772,375.9498,3.560473,0,0,0,1,300,100,1), -(@OGUID+10,190717,571,1,2,5706.948,-4324.307,376.862,5.026549,0,0,0,1,300,100,1), -(@OGUID+11,190719,571,1,2,5636.998,-4287.619,378.2026,5.794494,0,0,0,1,300,100,1), -(@OGUID+12,190717,571,1,2,5755.16,-4375.944,386.6035,5.759588,0,0,0,1,300,100,1), -(@OGUID+13,190717,571,1,2,5669.412,-4445.692,385.9232,4.66003,0,0,0,1,300,100,1), -(@OGUID+14,190719,571,1,2,5765.822,-4451.795,386.1481,3.403396,0,0,0,1,300,100,1), -(@OGUID+15,190719,571,1,2,5800.226,-4396.256,388.1242,5.148723,0,0,0,1,300,100,1), -(@OGUID+16,190719,571,1,2,5598.75,-4345.661,377.5887,4.939284,0,0,0,1,300,100,1), -(@OGUID+17,190718,571,1,2,5591.678,-4510.597,377.5719,3.717554,0,0,0,1,300,100,1), -(@OGUID+18,190719,571,1,2,5644.191,-4501.064,387.4688,3.717554,0,0,0,1,300,100,1), -(@OGUID+19,190717,571,1,2,5583.782,-4344.892,377.9865,4.677484,0,0,0,1,300,100,1), -(@OGUID+20,190718,571,1,2,5850.167,-4351.829,374.0035,2.513274,0,0,0,1,300,100,1), -(@OGUID+21,190718,571,1,2,5787.077,-4166.182,352.4897,2.652894,0,0,0,1,300,100,1), -(@OGUID+22,190719,571,1,2,5706.358,-4183.55,353.0656,5.550147,0,0,0,1,300,100,1), -(@OGUID+23,190717,571,1,2,5820.999,-4117.51,353.2778,2.216565,0,0,0,1,300,100,1), -(@OGUID+24,190717,571,1,2,5725.525,-4183.616,356.4301,3.490667,0,0,0,1,300,100,1), -(@OGUID+25,190717,571,1,2,5801.518,-4081.54,352.9559,0.4712385,0,0,0,1,300,100,1), -(@OGUID+26,190718,571,1,2,5783.599,-4199.378,363.9255,1.361356,0,0,0,1,300,100,1), -(@OGUID+27,190718,571,1,2,5788.463,-4028.865,364.6118,3.316144,0,0,0,1,300,100,1), -(@OGUID+28,190718,571,1,2,5679.798,-4084.759,354.015,2.164206,0,0,0,1,300,100,1), -(@OGUID+29,190717,571,1,2,5742.388,-4150.106,352.4384,1.134463,0,0,0,1,300,100,1), -(@OGUID+30,190717,571,1,2,5726.853,-4062.069,354.3002,1.431168,0,0,0,1,300,100,1), -(@OGUID+31,190719,571,1,2,5596.239,-4084.587,362.3596,1.151916,0,0,0,1,300,100,1), -(@OGUID+32,190718,571,1,2,5631.854,-4079.604,352.2866,3.089183,0,0,0,1,300,100,1), -(@OGUID+33,190718,571,1,2,5647.27,-4029.999,365.4366,1.570796,0,0,0,1,300,100,1), -(@OGUID+34,190717,571,1,2,5860.241,-4433.489,375.8128,5.654869,0,0,0,1,300,100,1), -(@OGUID+35,190718,571,1,2,5843.092,-4513.476,376.2388,1.989672,0,0,0,1,300,100,1), -(@OGUID+36,190707,571,1,2,5664.056,-4146.634,351.3731,1.570796,0,0,0,1,300,255,1), -(@OGUID+37,190707,571,1,2,5664.211,-4086.191,352.1793,4.747296,0,0,0,1,300,255,1), -(@OGUID+38,190707,571,1,2,5716.826,-4226.646,362.7477,1.570796,0,0,0,1,300,255,1), -(@OGUID+39,190707,571,1,2,5769.083,-4147.873,352.0845,1.553341,0,0,0,1,300,255,1), -(@OGUID+40,190707,571,1,2,5689.842,-4294.94,373.995,4.677484,0,0,0,1,300,255,1), -(@OGUID+41,190707,571,1,2,5742.686,-4293.651,373.9954,4.729844,0,0,0,1,300,255,1), -(@OGUID+42,190707,571,1,2,5820.354,-4211.717,362.248,4.694937,0,0,0,1,300,255,1), -(@OGUID+43,190707,571,1,2,5825.472,-4297.784,374.0092,3.194002,0,0,0,1,300,255,1), -(@OGUID+44,190707,571,1,2,5784.287,-4449.718,385.8015,1.605702,0,0,0,1,300,255,1), -(@OGUID+45,190707,571,1,2,5649.908,-4447.956,385.8015,1.553341,0,0,0,1,300,255,1), -(@OGUID+46,190707,571,1,2,5582.351,-4435.273,373.9958,6.265733,0,0,0,1,300,255,1), -(@OGUID+47,190707,571,1,2,5613.975,-4286.599,373.9606,5.375615,0,0,0,1,300,255,1), -(@OGUID+48,190707,571,1,2,5616.112,-4236.369,363.7091,1.605702,0,0,0,1,300,255,1), -(@OGUID+49,190707,571,1,2,5769.052,-4085.8,352.0868,4.694937,0,0,0,1,300,255,1), -(@OGUID+50,190707,571,1,2,5848.813,-4433.848,373.995,3.141593,0,0,0,1,300,255,1); --- Addon data -DELETE FROM `creature_addon` WHERE `guid` IN (@GUID+0,@GUID+3,@GUID+5,@GUID+6,@GUID+7,@GUID+10,@GUID+13,@GUID+14,@GUID+15,@GUID+18,@GUID+19,@GUID+20,@GUID+24,@GUID+25,@GUID+26,@GUID+29,@GUID+31,@GUID+33,@GUID+34,@GUID+36,@GUID+37,@GUID+38,@GUID+41,@GUID+43,@GUID+44,@GUID+47,@GUID+48,@GUID+50,@GUID+53,@GUID+56,@GUID+57,@GUID+58,@GUID+62,@GUID+64,@GUID+65,@GUID+67,@GUID+68,@GUID+69,@GUID+72,@GUID+73,@GUID+74,@GUID+77,@GUID+78,@GUID+79,@GUID+80,@GUID+81,@GUID+82); -INSERT INTO `creature_addon` (`guid`,`path_id`,`mount`,`bytes1`,`bytes2`,`emote`,`auras`) VALUES -(@GUID+0,0,0,8,1,0,''), -(@GUID+3,0,0,0,1,431,''), -(@GUID+5,0,0,8,1,0,''), -(@GUID+6,0,0,8,1,0,''), -(@GUID+7,0,0,0,1,431,''), -(@GUID+10,(@GUID+10)*10,0,0,1,0,''), -(@GUID+13,0,0,0,1,0,'52385'), -(@GUID+14,0,0,0,1,0,'52385'), -(@GUID+15,(@GUID+15)*10,0,0,1,0,''), -(@GUID+18,0,0,0,1,431,''), -(@GUID+19,(@GUID+19)*10,0,0,1,0,''), -(@GUID+20,0,0,0,1,431,''), -(@GUID+24,0,0,8,1,0,''), -(@GUID+25,0,0,0,1,431,''), -(@GUID+26,(@GUID+26)*10,0,0,1,0,''), -(@GUID+29,0,0,8,1,0,''), -(@GUID+31,0,0,0,1,0,'52385'), -(@GUID+33,0,0,0,1,0,'52385'), -(@GUID+34,(@GUID+34)*10,0,0,1,0,''), -(@GUID+36,0,0,0,1,0,'52385'), -(@GUID+37,0,0,0,1,431,''), -(@GUID+38,0,0,8,1,0,''), -(@GUID+41,0,0,0,1,431,''), -(@GUID+43,0,0,0,1,431,''), -(@GUID+44,0,0,0,1,0,'52385'), -(@GUID+47,0,0,0,1,0,'52385'), -(@GUID+48,(@GUID+48)*10,0,0,1,0,''), -(@GUID+50,0,0,0,1,431,''), -(@GUID+53,0,0,0,1,431,''), -(@GUID+56,(@GUID+56)*10,0,0,1,0,''), -(@GUID+57,0,0,0,1,431,''), -(@GUID+58,0,0,0,1,0,'52385'), -(@GUID+62,0,0,0,1,431,''), -(@GUID+64,0,0,0,1,431,''), -(@GUID+65,0,0,0,1,0,'52385'), -(@GUID+67,0,0,0,1,431,''), -(@GUID+68,0,0,8,1,0,''), -(@GUID+69,0,0,8,1,0,''), -(@GUID+72,0,0,8,1,0,''), -(@GUID+73,0,0,0,1,0,'52385'), -(@GUID+74,0,0,0,1,0,'52385'), -(@GUID+77,0,0,0,1,431,''), -(@GUID+78,0,0,0,1,431,''), -(@GUID+79,0,0,0,1,0,'52385'), -(@GUID+80,(@GUID+80)*10,0,0,1,0,''), -(@GUID+81,(@GUID+81)*10,0,0,1,0,''), -(@GUID+82,0,0,0,1,0,'52385'); -DELETE FROM `creature_template_addon` WHERE `entry` IN (@NPC_QUETZLUN,@NPC_SOUL_FONT_VOID_ZONE); -INSERT INTO `creature_template_addon` (`entry`,`path_id`,`mount`,`bytes1`,`bytes2`,`emote`,`auras`) VALUES -(@NPC_QUETZLUN,0,0,0,1,0,'51126 41408'), -(@NPC_SOUL_FONT_VOID_ZONE,0,0,0,1,0,'52222'); --- Creature_updates -UPDATE `creature_template` SET `unit_flags`=33555200, `AIName`='SmartAI' WHERE `entry`=@NPC_MATERIAL_YOU; -UPDATE `creature_template` SET `faction_A`=190, `faction_H`=190, `npcflag`=3, `gossip_menu_id`=9734, `unit_flags`=33536, `AIName`='SmartAI' WHERE `entry`=@NPC_QUETZLUN; -UPDATE `creature_template` SET `minlevel`=77, `maxlevel`=77, `faction_A`=2073, `faction_H`=2073, `unit_flags`=33554432, `flags_extra`=2 WHERE `entry`=@NPC_SOUL_FONT_VOID_ZONE; -UPDATE `creature_template` SET `minlevel`=77, `maxlevel`=77, `unit_flags`=33554432, `unit_flags2`=2080, `InhabitType`=4 WHERE `entry`=@NPC_SOUL_FONT_BUNNY; -UPDATE `creature_template` SET `faction_A`=2069, `faction_H`=2069, `unit_flags`=32768, `equipment_id`=2482, `AIName`='SmartAI' WHERE `entry`=@NPC_QUTEZLUN_WORSHIPPER; -UPDATE `creature_template` SET `speed_walk`=0.6666666, `faction_A`=2069, `faction_H`=2069, `unit_flags`=32768, `AIName`='SmartAI' WHERE `entry` IN (@NPC_SERPENTTOUCHED_BERSERKER,@NPC_HIGH_PRIEST_HAWINNI); -UPDATE `creature_template` SET `faction_A`=2069, `faction_H`=2069, `unit_flags`=32768, `AIName`='SmartAI', `equipment_id`=2483 WHERE `entry`=@NPC_HIGH_PRIEST_MUFUNU; -UPDATE `creature_template` SET `faction_A`=2069, `faction_H`=2069, `unit_flags`=32768, `AIName`='SmartAI', `equipment_id`=2484 WHERE `entry`=@NPC_HIGH_PRIESTESS_TUATUA; -UPDATE `creature_model_info` SET `bounding_radius`=2.38, `combat_reach`=10.5 WHERE `modelid`=25634; -UPDATE `creature_model_info` SET `bounding_radius`=0.3672, `combat_reach`=1.8, `gender`=0, `modelid_other_gender`=25661 WHERE `modelid`=25660; -UPDATE `creature_model_info` SET `bounding_radius`=0.3672, `combat_reach`=1.8, `gender`=1, `modelid_other_gender`=25660 WHERE `modelid`=25661; -UPDATE `creature_model_info` SET `bounding_radius`=2.625, `combat_reach`=2.625 WHERE `modelid`=25662; -UPDATE `creature_model_info` SET `bounding_radius`=3, `combat_reach`=3 WHERE `modelid`=25663; -UPDATE `creature_model_info` SET `bounding_radius`=0.5355, `combat_reach`=2.625 WHERE `modelid`=25666; -UPDATE `creature_model_info` SET `bounding_radius`=4.5, `combat_reach`=4.5 WHERE `modelid`=25667; -UPDATE `creature_model_info` SET `bounding_radius`=0.6076385, `combat_reach`=2.625 WHERE `modelid`=27858; --- Equipments -DELETE FROM `creature_equip_template` WHERE `entry` IN (2482,2483,2484); -INSERT INTO `creature_equip_template` (`entry`,`itemEntry1`,`itemEntry2`,`itemEntry3`) VALUES -(2482,28678,0,0), -(2483,13622,0,0), -(2484,28739,0,0); --- Gossips -DELETE FROM `gossip_menu` WHERE `entry`=9734; -INSERT INTO `gossip_menu` (`entry`,`text_id`) VALUES -(9734,13331); --- SAI for involved creatures -DELETE FROM `smart_scripts` WHERE `entryorguid` IN (@NPC_QUETZLUN,@NPC_MATERIAL_YOU,@NPC_QUTEZLUN_WORSHIPPER,@NPC_SERPENTTOUCHED_BERSERKER,@NPC_HIGH_PRIEST_MUFUNU,@NPC_HIGH_PRIESTESS_TUATUA,@NPC_HIGH_PRIEST_HAWINNI) AND `source_type`=0; -INSERT INTO `smart_scripts` (`entryorguid`,`source_type`,`id`,`link`,`event_type`,`event_phase_mask`,`event_chance`,`event_flags`,`event_param1`,`event_param2`,`event_param3`,`event_param4`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`action_param4`,`action_param5`,`action_param6`,`target_type`,`target_param1`,`target_param2`,`target_param3`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`) VALUES -(@NPC_QUETZLUN,0,0,0,1,0,100,0,30000,60000,180000,300000,11,@SPELL_QUETZLUN_JUDGMENT,0,0,0,0,0,19,@NPC_QUTEZLUN_WORSHIPPER,30,0,0,0,0,0,'Quetz''lun - On update OOC - Spellcast Quetz''lun''s Judgment'), -(@NPC_MATERIAL_YOU,0,0,1,54,0,100,0,0,0,0,0,1,0,0,0,0,0,0,7,0,0,0,0,0,0,0,'Material You - Just summoned - Say line'), -(@NPC_MATERIAL_YOU,0,1,2,61,0,100,0,0,0,0,0,85,@SPELL_MATERIAL_YOU_MIRROR_IMAGE,0,0,0,0,0,1,0,0,0,0,0,0,0,'Material You - Just summoned - Invoker spellcast Altar of Quetz''lun: Material You''s Mirror Image Aura'), -(@NPC_MATERIAL_YOU,0,2,3,61,0,100,0,0,0,0,0,85,41055,0,0,0,0,0,1,0,0,0,0,0,0,0,'Material You - Just summoned - Invoker spellcast Copy Weapon'), -(@NPC_MATERIAL_YOU,0,3,0,61,0,100,0,0,0,0,0,85,45206,0,0,0,0,0,1,0,0,0,0,0,0,0,'Material You - Just summoned - Invoker spellcast Copy Off-hand Weapon'), -(@NPC_QUTEZLUN_WORSHIPPER,0,0,0,4,0,100,0,0,0,0,0,11,54594,0,0,0,0,0,7,0,0,0,0,0,0,0,'Quetz''lun Worshipper - On aggro - Spellcast Serpent Strike'), -(@NPC_QUTEZLUN_WORSHIPPER,0,1,0,2,0,100,0,0,50,30000,40000,11,54601,0,0,0,0,0,1,0,0,0,0,0,0,0,'Quetz''lun Worshipper - On health below 50% - Spellcast Serpent Form'), -(@NPC_SERPENTTOUCHED_BERSERKER,0,0,0,4,0,100,0,0,0,0,0,11,54594,0,0,0,0,0,7,0,0,0,0,0,0,0,'Serpent-Touched Berserker - On aggro - Spellcast Serpent Strike'), -(@NPC_HIGH_PRIEST_MUFUNU,0,0,2,11,0,100,0,0,0,0,0,11,51733,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Mu''funu - On spawn - Spellcast Shadow Channelling'), -(@NPC_HIGH_PRIEST_MUFUNU,0,1,2,21,0,100,0,0,0,0,0,11,51733,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Mu''funu - On homeposition reached - Spellcast Shadow Channelling'), -(@NPC_HIGH_PRIEST_MUFUNU,0,2,3,61,0,100,0,0,0,0,0,21,0,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Mu''funu - On homeposition reached - Disable combat movement'), -(@NPC_HIGH_PRIEST_MUFUNU,0,3,0,61,0,100,0,0,0,0,0,22,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Mu''funu - On homeposition reached - Set event phase 1'), -(@NPC_HIGH_PRIEST_MUFUNU,0,4,5,9,0,100,0,40,80,0,0,21,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Mu''funu - On target range more than 40y - Enable combat movement'), -(@NPC_HIGH_PRIEST_MUFUNU,0,5,0,61,0,100,0,0,0,0,0,22,2,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Mu''funu - On target range more than 40y - Set event phase 2'), -(@NPC_HIGH_PRIEST_MUFUNU,0,6,3,9,0,100,0,0,20,0,0,21,0,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Mu''funu - On target range below 20y - Disable combat movement'), -(@NPC_HIGH_PRIEST_MUFUNU,0,7,0,0,1,100,0,0,0,2500,2500,11,20820,0,0,0,0,0,2,0,0,0,0,0,0,0,'High Priest Mu''funu - On update IC (phase 1) - Spellcast Holy Smite'), -(@NPC_HIGH_PRIEST_MUFUNU,0,8,0,2,0,100,0,0,30,0,0,22,4,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Mu''funu - On health below 30% - Set event phase 4'), -(@NPC_HIGH_PRIEST_MUFUNU,0,9,0,0,4,100,0,0,0,30000,30000,11,11974,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Mu''funu - On update IC (phase 4) - Spellcast Power Word: Shield'), -(@NPC_HIGH_PRIEST_MUFUNU,0,10,0,0,4,100,0,50,50,15000,20000,11,11640,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Mu''funu - On update IC (phase 4) - Spellcast Renew'), -(@NPC_HIGH_PRIESTESS_TUATUA,0,0,1,11,0,100,0,0,0,0,0,11,51733,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priestess Tua-Tua - On spawn - Spellcast Shadow Channelling'), -(@NPC_HIGH_PRIESTESS_TUATUA,0,1,0,61,0,100,0,0,0,0,0,28,29406,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priestess Tua-Tua - On homeposition reached - Remove aura Shadowform'), -(@NPC_HIGH_PRIESTESS_TUATUA,0,2,1,21,0,100,0,0,0,0,0,11,51733,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priestess Tua-Tua - On homeposition reached - Spellcast Shadow Channelling'), -(@NPC_HIGH_PRIESTESS_TUATUA,0,3,0,4,0,100,0,0,0,0,0,11,29406,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priestess Tua-Tua - On aggro - Spellcast Shadowform'), -(@NPC_HIGH_PRIESTESS_TUATUA,0,4,0,0,0,100,0,2000,3000,15000,20000,11,51818,0,0,0,0,0,2,0,0,0,0,0,0,0,'High Priestess Tua-Tua - On update IC - Spellcast Shadow Word: Death'), -(@NPC_HIGH_PRIESTESS_TUATUA,0,5,0,0,0,100,0,4000,5000,3000,5000,11,13860,0,0,0,0,0,2,0,0,0,0,0,0,0,'High Priestess Tua-Tua - On update IC - Spellcast Mind Blast'), -(@NPC_HIGH_PRIEST_HAWINNI,0,0,0,0,0,100,0,2000,3000,10000,15000,11,54603,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Hawinni - On update IC - Spellcast Serpent''s Agility'), -(@NPC_HIGH_PRIEST_HAWINNI,0,1,2,2,0,100,1,0,40,0,0,11,50420,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Hawinni - On health below 40% - Spellcast Enrage'), -(@NPC_HIGH_PRIEST_HAWINNI,0,2,0,61,0,100,0,0,0,0,0,1,0,0,0,0,0,0,7,0,0,0,0,0,0,0,'High Priest Hawinni - On health below 40% - Say line'), -(@NPC_HIGH_PRIEST_HAWINNI,0,3,0,7,0,100,0,0,0,0,0,28,50420,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Hawinni - On evade - Remove aura Enrage'); --- Waypoints -DELETE FROM `waypoint_data` WHERE `id` IN ((@GUID+10)*10,(@GUID+15)*10,(@GUID+19)*10,(@GUID+26)*10,(@GUID+34)*10,(@GUID+48)*10,(@GUID+56)*10,(@GUID+80)*10,(@GUID+81)*10); -INSERT INTO `waypoint_data` (`id`,`point`,`position_x`,`position_y`,`position_z`,`orientation`,`delay`,`move_flag`,`action`,`action_chance`,`wpguid`) VALUES -((@GUID+10)*10,1,5622.78,-4115.903,353.1671,0,0,0,0,100,0), -((@GUID+10)*10,2,5700.014,-4116.477,353.2688,0,0,0,0,100,0), -((@GUID+15)*10,1,5629.758,-4220.245,363.0638,0,0,0,0,100,0), -((@GUID+15)*10,2,5698.905,-4220.559,362.8123,0,0,0,0,100,0), -((@GUID+19)*10,1,5736.187,-4221.563,362.641,0,0,0,0,100,0), -((@GUID+19)*10,2,5765.859,-4221.353,361.5846,0,0,0,0,100,0), -((@GUID+19)*10,3,5781.38,-4231.069,359.3161,0,0,0,0,100,0), -((@GUID+19)*10,4,5799.918,-4242.83,362.6221,0,0,0,0,100,0), -((@GUID+19)*10,5,5817.34,-4242.409,363.7439,0,0,0,0,100,0), -((@GUID+19)*10,6,5844.105,-4244.604,362.7979,0,0,0,0,100,0), -((@GUID+19)*10,7,5817.34,-4242.409,363.7439,0,0,0,0,100,0), -((@GUID+19)*10,8,5799.918,-4242.83,362.6221,0,0,0,0,100,0), -((@GUID+19)*10,9,5781.38,-4231.069,359.3161,0,0,0,0,100,0), -((@GUID+19)*10,10,5765.859,-4221.353,361.5846,0,0,0,0,100,0), -((@GUID+26)*10,1,5606.6504,-4317.5366,373.995,0,0,0,0,100,0), -((@GUID+26)*10,2,5625.5952,-4303.0625,373.995,0,0,0,0,100,0), -((@GUID+26)*10,3,5782.809,-4302.274,374.12,0,0,0,0,100,0), -((@GUID+26)*10,4,5802.482,-4309.014,374.0114,0,0,0,0,100,0), -((@GUID+34)*10,1,5812.099,-4175.637,353.3968,0,0,0,0,100,0), -((@GUID+34)*10,2,5821.506,-4165.563,353.5313,0,0,0,0,100,0), -((@GUID+34)*10,3,5818.826,-4129.878,353.8851,0,0,0,0,100,0), -((@GUID+34)*10,4,5810.663,-4117.67,353.2181,0,0,0,0,100,0), -((@GUID+34)*10,5,5792.259,-4117.242,353.2197,0,0,0,0,100,0), -((@GUID+34)*10,6,5755.833,-4119.403,353.3149,0,0,0,0,100,0), -((@GUID+34)*10,7,5754.487,-4121.689,353.3535,0,0,0,0,100,0), -((@GUID+34)*10,8,5747.097,-4163.901,352.5367,0,0,0,0,100,0), -((@GUID+34)*10,9,5754.965,-4174.736,353.418,0,0,0,0,100,0), -((@GUID+48)*10,1,5647.668,-4377.963,386.065,0,0,0,0,100,0), -((@GUID+48)*10,2,5647.648,-4439.329,385.8019,0,0,0,0,100,0), -((@GUID+56)*10,1,5591.341,-4395.804,374.0577,0,0,0,0,100,0), -((@GUID+56)*10,2,5589.711,-4473.008,373.9948,0,0,0,0,100,0), -((@GUID+80)*10,1,5841.862,-4383.027,374.0503,0,0,0,0,100,0), -((@GUID+80)*10,2,5841.261,-4481.065,376.1894,0,0,0,0,100,0), -((@GUID+81)*10,1,5794.948,-4488.715,387.3983,0,0,0,0,100,0), -((@GUID+81)*10,2,5793.181,-4386.617,387.4278,0,0,0,0,100,0); --- Spell data -DELETE FROM `spell_area` WHERE `spell`=@SPELL_GHOSTLY AND `area`=4325; -INSERT INTO `spell_area` (`spell`,`area`,`quest_start`,`quest_end`,`aura_spell`,`racemask`,`gender`,`autocast`,`quest_start_status`) VALUES -(@SPELL_GHOSTLY,4325,12667,12675,0,0,2,1,2|64); --- Spell Linking -DELETE FROM `spell_linked_spell` WHERE `spell_trigger`=@SPELL_GHOSTLY; -INSERT INTO `spell_linked_spell` (`spell_trigger`,`spell_effect`,`type`,`comment`) VALUES -(@SPELL_GHOSTLY,51717,1,'On Ghostly - Spellcast Altar of Quetz''lun: Summon Material You'); --- Conditions -DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=13 AND `SourceEntry` IN (@SPELL_MATERIAL_YOU_MIRROR_IMAGE,@SPELL_QUETZLUN_JUDGMENT); -INSERT INTO `conditions` (`SourceTypeOrReferenceId`,`SourceGroup`,`SourceEntry`,`SourceId`,`ElseGroup`,`ConditionTypeOrReference`,`ConditionTarget`,`ConditionValue1`,`ConditionValue2`,`ConditionValue3`,`NegativeCondition`,`ErrorTextId`,`ScriptName`,`Comment`) VALUES -(13,1,@SPELL_MATERIAL_YOU_MIRROR_IMAGE,0,0,31,0,3,@NPC_MATERIAL_YOU,0,0,0,'','Spell Altar of Quetz''lun: Material You''s Mirror Image Aura targets Material You'), -(13,2,@SPELL_MATERIAL_YOU_MIRROR_IMAGE,0,0,31,0,3,@NPC_MATERIAL_YOU,0,0,0,'','Spell Altar of Quetz''lun: Material You''s Mirror Image Aura targets Material You'), -(13,4,@SPELL_MATERIAL_YOU_MIRROR_IMAGE,0,0,31,0,3,@NPC_MATERIAL_YOU,0,0,0,'','Spell Altar of Quetz''lun: Material You''s Mirror Image Aura targets Material You'), -(13,1,@SPELL_QUETZLUN_JUDGMENT,0,0,31,0,3,@NPC_QUTEZLUN_WORSHIPPER,0,0,0,'','Spell Quetz''lun''s Judgment targets Quetz''lun Worshipper'); --- Creature Texts -DELETE FROM `creature_text` WHERE `entry` IN (@NPC_MATERIAL_YOU,@NPC_HIGH_PRIEST_HAWINNI); -INSERT INTO `creature_text` (`entry`,`groupid`,`id`,`text`,`type`,`language`,`probability`,`emote`,`duration`,`sound`,`comment`) VALUES -(@NPC_MATERIAL_YOU,0,0,'You leave your material body behind!',42,0,100,0,0,0,'Material You'), -(@NPC_HIGH_PRIEST_HAWINNI,0,0,'%s becomes enraged!',16,0,100,0,0,0,'Hawinni'); --- --------------------------------------------------------------------------------------------------------------------------------------------------- --- Issue 8515: Quest I Sense a Disturbance -SET @GUID := 88701; -- need 34 set by TDB -SET @GOSSIP := 9687; -SET @QUEST := 12665; -SET @NPC_ELM_BUNNY := 26298; -SET @NPC_HARKOA := 28401; -SET @NPC_CLAW_OF_HARKOA := 28402; -SET @NPC_HARKOA_SUBDUER := 28403; -SET @NPC_CURSED_OFFSPRING := 28404; -SET @NPC_HARKOA_KITTEN := 28665; -SET @NPC_QUETZLUN := 28671; -SET @SPELL_RIDING_HARKOA_KITTEN := 25673; -SET @SPELL_SPEED := 39870; -SET @SPELL_SUMMON_HARKOA_KITTEN := 52187; -SET @SPELL_STEALTH := 52188; --- Spawns -DELETE FROM `creature` WHERE `guid` BETWEEN @GUID+0 AND @GUID+33; -INSERT INTO `creature` (`guid`,`id`,`map`,`spawnMask`,`phaseMask`,`modelid`,`equipment_id`,`position_x`,`position_y`,`position_z`,`orientation`,`spawntimesecs`,`spawndist`,`currentwaypoint`,`curhealth`,`curmana`,`MovementType`,`npcflag`,`unit_flags`,`dynamicflags`) VALUES -(@GUID+0,@NPC_ELM_BUNNY,571,1,1,21999,0,5309.635,-3772.253,372.5037,5.707227,300,0,0,42,0,0,0,0,0), -(@GUID+1,@NPC_ELM_BUNNY,571,1,1,21999,0,5333.049,-3796.974,372.489,2.356194,300,0,0,42,0,0,0,0,0), -(@GUID+2,@NPC_ELM_BUNNY,571,1,1,21999,0,5309.46,-3772.571,372.4755,5.358161,300,0,0,42,0,0,0,0,0), -(@GUID+3,@NPC_ELM_BUNNY,571,1,1,21999,0,5332.838,-3797.16,372.4756,2.321288,300,0,0,42,0,0,0,0,0), -(@GUID+4,@NPC_CLAW_OF_HARKOA,571,1,1,0,0,5375.799,-3758.142,360.5291,0.7330383,300,0,0,0,0,0,0,0,0), -(@GUID+5,@NPC_CURSED_OFFSPRING,571,1,1,0,0,5497.146,-3791.354,359.6451,3.033307,300,5,0,0,0,1,0,0,0), -(@GUID+6,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5323.46,-3813,371.9776,1.553343,300,0,0,0,0,0,0,0,0), -(@GUID+7,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5291.728,-3780.95,371.6594,6.248279,300,0,0,0,0,0,0,0,0), -(@GUID+8,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5316.537,-3755.717,371.5298,5.009095,300,0,0,0,0,0,0,0,0), -(@GUID+9,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5422.518,-3822.243,363.2307,0.01745329,300,0,0,0,0,0,0,0,0), -(@GUID+10,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5335.817,-3846.023,370.8626,3.926991,300,0,0,0,0,0,0,0,0), -(@GUID+11,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5382.776,-3799.292,372.6979,0.7853982,300,0,0,0,0,0,0,0,0), -(@GUID+12,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5347.82,-3790.36,371.4579,2.80998,300,0,0,0,0,0,0,0,0), -(@GUID+13,@NPC_CURSED_OFFSPRING,571,1,1,0,0,5385.085,-3821.307,373.1991,4.390826,300,5,0,0,0,1,0,0,0), -(@GUID+14,@NPC_CLAW_OF_HARKOA,571,1,1,0,0,5368.791,-3862.889,373.6328,5.51524,300,0,0,0,0,0,0,0,0), -(@GUID+15,@NPC_CLAW_OF_HARKOA,571,1,1,0,0,5263.502,-3717.983,373.0725,2.356194,300,0,0,0,0,0,0,0,0), -(@GUID+16,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5394.254,-3702.963,362.089,0.1570796,300,0,0,0,0,0,0,0,0), -(@GUID+17,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5410.39,-3718.896,362.0468,1.518436,300,0,0,0,0,0,0,0,0), -(@GUID+18,@NPC_CURSED_OFFSPRING,571,1,1,0,0,5395.654,-3862.894,362.4349,4.355803,300,5,0,0,0,1,0,0,0), -(@GUID+19,@NPC_CURSED_OFFSPRING,571,1,1,0,0,5434.535,-3731.848,362.0858,2.675762,300,5,0,0,0,1,0,0,0), -(@GUID+20,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5477.654,-3878.015,361.0569,0.7679449,300,0,0,0,0,0,0,0,0), -(@GUID+21,@NPC_CLAW_OF_HARKOA,571,1,1,0,0,5553.428,-3829.976,372.5273,5.654867,300,0,0,0,0,0,0,0,0), -(@GUID+22,@NPC_CLAW_OF_HARKOA,571,1,1,0,0,5585.777,-3799.415,366.2234,6.143559,300,0,0,0,0,0,0,0,0), -(@GUID+23,@NPC_CLAW_OF_HARKOA,571,1,1,0,0,5537.25,-3846.529,372.089,5.375614,300,0,0,0,0,0,0,0,0), -(@GUID+24,@NPC_CURSED_OFFSPRING,571,1,1,0,0,5510.545,-3926.729,362.0851,5.462688,300,5,0,0,0,1,0,0,0), -(@GUID+25,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5322.316,-3572.04,363.3229,4.834562,300,0,0,0,0,0,0,0,0), -(@GUID+26,@NPC_CLAW_OF_HARKOA,571,1,1,0,0,5367.774,-3541.64,364.2363,0.7853982,300,0,0,0,0,0,0,0,0), -(@GUID+27,@NPC_CLAW_OF_HARKOA,571,1,1,0,0,5459.911,-3643.151,362.3447,0.9424778,300,0,0,0,0,0,0,0,0), -(@GUID+28,@NPC_CLAW_OF_HARKOA,571,1,1,0,0,5323.396,-3644.5,362.0438,5.707227,300,0,0,0,0,0,0,0,0), -(@GUID+29,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5330.009,-3913.493,365.8797,4.694936,300,0,0,0,0,0,0,0,0), -(@GUID+30,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5434.8,-3919.141,361.1612,3.944444,300,0,0,0,0,0,0,0,0), -(@GUID+31,@NPC_CLAW_OF_HARKOA,571,1,1,0,0,5407.908,-3925.006,362.0776,4.746883,300,5,0,0,0,1,0,0,0), -(@GUID+32,@NPC_CURSED_OFFSPRING,571,1,1,0,0,5347.841,-3946.389,362.553,0.7498215,300,5,0,0,0,1,0,0,0), -(@GUID+33,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5277.245,-3619.667,363.3282,6.213372,300,0,0,0,0,0,0,0,0); --- some corrections to previous spawns -UPDATE `creature` SET `position_x`=5349.371, `position_y`=-3615.906, `position_z`=363.8878, `orientation`=5.462881 WHERE `guid`=118735; -UPDATE `creature` SET `spawndist`=5, `movementType`=1 WHERE `guid` IN (118714,118722,118729,118731,118732,118733); -UPDATE `gameobject_template` SET `flags`=4 WHERE `entry`=190633; -UPDATE `creature_template` SET `gossip_menu_id`=@GOSSIP, `AIName`='SmartAI' WHERE `entry`=28401; -UPDATE `creature_template` SET `speed_run`=2.571429, `unit_flags`=33288, `AIName`='SmartAI' WHERE `entry`=28665; -UPDATE `creature_template` SET `AIName`='SmartAI' WHERE `entry`=@NPC_HARKOA_SUBDUER; -DELETE FROM `creature_template_addon` WHERE `entry`=@NPC_CLAW_OF_HARKOA; -INSERT INTO `creature_template_addon` (`entry`,`path_id`,`mount`,`bytes1`,`bytes2`,`emote`,`auras`) VALUES -(@NPC_CLAW_OF_HARKOA,0,0,0,1,0,'54608'); -DELETE FROM `creature_addon` WHERE `guid` IN (@GUID+0,@GUID+1,@GUID+2,@GUID+3,118591); -INSERT INTO `creature_addon` (`guid`,`path_id`,`mount`,`bytes1`,`bytes2`,`emote`,`auras`) VALUES -(@GUID+0,0,0,0,1,0,'52485 51666'), -(@GUID+1,0,0,0,1,0,'52485 51666'), -(@GUID+2,0,0,0,1,0,'52485 51666'), -(@GUID+3,0,0,0,1,0,'52485 51666'), -(118591,0,0,0,1,0,'52485 51666'); --- SAI info -DELETE FROM `creature_ai_scripts` WHERE `creature_id`=@NPC_HARKOA_SUBDUER; -DELETE FROM `smart_scripts` WHERE `entryorguid` IN (@NPC_HARKOA_SUBDUER,-(@GUID+0),-(@GUID+1),-(@GUID+2),-(@GUID+3)) AND `source_type`=0; -DELETE FROM `smart_scripts` WHERE `entryorguid`=@NPC_HARKOA_SUBDUER*100 AND `source_type`=9; -INSERT INTO `smart_scripts` (`entryorguid`,`source_type`,`id`,`link`,`event_type`,`event_phase_mask`,`event_chance`,`event_flags`,`event_param1`,`event_param2`,`event_param3`,`event_param4`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`action_param4`,`action_param5`,`action_param6`,`target_type`,`target_param1`,`target_param2`,`target_param3`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`) VALUES -(@NPC_HARKOA_SUBDUER,0,0,0,11,0,100,0,0,0,0,0,21,0,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On spawn - Disable combatmovement'), -(@NPC_HARKOA_SUBDUER,0,1,0,1,0,100,0,2000,20000,40000,60000,80,@NPC_HARKOA_SUBDUER*100,2,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On update OOC - Run script'), -(@NPC_HARKOA_SUBDUER,0,2,0,4,0,100,0,0,0,0,0,22,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On aggro - Set eventphase 1'), -(@NPC_HARKOA_SUBDUER,0,3,0,0,1,100,0,0,0,2800,3500,11,20822,0,0,0,0,0,2,0,0,0,0,0,0,0,'Har''koa Subduer - On update IC (phase 1) - Spellcast Frostbolt'), -(@NPC_HARKOA_SUBDUER,0,4,0,9,1,100,0,35,80,0,0,21,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On range more than 35y (phase 1) - Enable combatmovement'), -(@NPC_HARKOA_SUBDUER,0,6,0,9,1,100,0,5,15,0,0,21,0,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On range less than 15y (phase 1) - Disable combatmovement'), -(@NPC_HARKOA_SUBDUER,0,7,0,9,1,100,0,0,5,0,0,21,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On range less than 5y (phase 1) - Enable combatmovement'), -(@NPC_HARKOA_SUBDUER,0,8,9,3,1,100,0,0,15,0,0,21,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On mana below 15% (phase 1) - Set eventphase 2'), -(@NPC_HARKOA_SUBDUER,0,9,0,61,0,100,0,0,0,0,0,22,2,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On mana below 15% - Enable combatmovement'), -(@NPC_HARKOA_SUBDUER,0,10,0,3,2,100,0,30,100,0,0,22,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On mana over 30% (phase 2) - Set eventphase 1'), -(@NPC_HARKOA_SUBDUER,0,11,12,2,0,100,0,0,15,0,0,22,4,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On health below 15% - Set eventphase 3'), -(@NPC_HARKOA_SUBDUER,0,12,13,61,0,100,0,0,0,0,0,21,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On health below 15% - Enable combat movement'), -(@NPC_HARKOA_SUBDUER,0,13,0,61,0,100,1,0,0,0,0,25,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On health below 15% - Flee'), -(@NPC_HARKOA_SUBDUER,0,14,0,7,0,100,0,0,0,0,0,22,0,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On evade - Reset event phase'), -(@NPC_HARKOA_SUBDUER,0,15,0,21,0,100,0,0,0,0,0,21,0,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On homeposition reached - Disable combatmovement'), -(-(@GUID+0),0,0,0,11,0,100,0,0,0,0,0,11,51579,0,0,0,0,0,11,28401,10,0,0,0,0,0,'ELM General Purpose Bunny - On spawn - Spellcast Har''koa''s Chains'), -(-(@GUID+1),0,0,0,11,0,100,0,0,0,0,0,11,51577,0,0,0,0,0,11,28401,10,0,0,0,0,0,'ELM General Purpose Bunny - On spawn - Spellcast Har''koa''s Chains'), -(-(@GUID+2),0,0,0,11,0,100,0,0,0,0,0,11,45808,0,0,0,0,0,11,28401,10,0,0,0,0,0,'ELM General Purpose Bunny - On spawn - Spellcast Har''koa''s Chains'), -(-(@GUID+3),0,0,0,11,0,100,0,0,0,0,0,11,45808,0,0,0,0,0,11,28401,10,0,0,0,0,0,'ELM General Purpose Bunny - On spawn - Spellcast Har''koa''s Chains'), -(@NPC_HARKOA_SUBDUER*100,9,0,0,0,0,100,0,0,0,0,0,11,45846,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer script - Spellcast Frost Channelling'), -(@NPC_HARKOA_SUBDUER*100,9,1,0,0,0,100,0,10000,20000,0,0,92,0,45846,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer script - Set unit_field_bytes1 (kneel)'), -(@NPC_HARKOA_SUBDUER*100,9,2,0,0,0,100,0,0,0,0,0,90,8,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer script - Set unit_field_bytes1 (kneel)'); --- Gossip info -DELETE FROM `gossip_menu` WHERE `entry`=@GOSSIP; -INSERT INTO `gossip_menu` (`entry`,`text_id`) VALUES -(@GOSSIP,13139); -DELETE FROM `gossip_menu_option` WHERE `menu_id`=@GOSSIP AND `id`=0; -INSERT INTO `gossip_menu_option` (`menu_id`,`id`,`option_icon`,`option_text`,`option_id`,`npc_option_npcflag`,`action_menu_id`,`action_poi_id`,`box_coded`,`box_money`,`box_text`) VALUES -(@GOSSIP,0,0,'Great and powerful Har''koa, please call for one of your children that it might stealthily carry me into the Altar of Quetz''lun.',1,1,0,0,0,0,NULL); --- Conditions -DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=13 AND `SourceEntry` IN (45808,51577,51579); -DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=15 AND `SourceGroup`=@GOSSIP; -INSERT INTO `conditions` (`SourceTypeOrReferenceId`,`SourceGroup`,`SourceEntry`,`SourceId`,`ElseGroup`,`ConditionTypeOrReference`,`ConditionTarget`,`ConditionValue1`,`ConditionValue2`,`ConditionValue3`,`NegativeCondition`,`ErrorTextId`,`ScriptName`,`Comment`) VALUES -(13,1,45808,0,0,31,0,3,28401,0,0,0,'','Spell Har''koa''s Chains targets Har''koa'), -(13,1,51577,0,0,31,0,3,28401,0,0,0,'','Spell Har''koa''s Chains targets Har''koa'), -(13,1,51579,0,0,31,0,3,28401,0,0,0,'','Spell Har''koa''s Chains targets Har''koa'), -(15,@GOSSIP,0,0,0,9,0,@QUEST,0,0,0,0,'','Show gossip option if player has taken quest 12655'); - -DELETE FROM `smart_scripts` WHERE `entryorguid` IN (@NPC_HARKOA,@NPC_HARKOA_KITTEN) AND `source_type`=0; -DELETE FROM `smart_scripts` WHERE `entryorguid`=@NPC_HARKOA_KITTEN*100 AND `source_type`=9; -INSERT INTO `smart_scripts` (`entryorguid`,`source_type`,`id`,`link`,`event_type`,`event_phase_mask`,`event_chance`,`event_flags`,`event_param1`,`event_param2`,`event_param3`,`event_param4`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`action_param4`,`action_param5`,`action_param6`,`target_type`,`target_param1`,`target_param2`,`target_param3`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`) VALUES --- Har'koa script -(@NPC_HARKOA,0,0,1,62,0,100,0,@GOSSIP,0,0,0,11,@SPELL_SUMMON_HARKOA_KITTEN,0,0,0,0,0,7,0,0,0,0,0,0,0,'Har''koa - On gossip option select - force player to summon Har''koa''s Kitten'), -(@NPC_HARKOA,0,1,0,61,0,100,0,0,0,0,0,72,0,0,0,0,0,0,7,0,0,0,0,0,0,0,'Har''koa - On gossip option select - close gossip'), --- Har'koa's Kitten script -(@NPC_HARKOA_KITTEN,0,0,1,54,0,100,0,0,0,0,0,75,@SPELL_STEALTH,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On spawn - Apply Stealth'), -(@NPC_HARKOA_KITTEN,0,1,0,61,0,100,0,0,0,0,0,53,1,@NPC_HARKOA_KITTEN,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On spawn - Start WP movement'), -(@NPC_HARKOA_KITTEN,0,2,0,40,0,100,0,1,@NPC_HARKOA_KITTEN,0,0,1,0,0,0,0,0,0,23,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 1 reached - Say line'), -(@NPC_HARKOA_KITTEN,0,3,4,40,0,100,0,10,@NPC_HARKOA_KITTEN,0,0,54,1000,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 10 reached - Pause WP movement'), -(@NPC_HARKOA_KITTEN,0,4,0,61,0,100,0,0,0,0,0,1,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On waypoint 10 reached - Say line'), -(@NPC_HARKOA_KITTEN,0,5,6,40,0,100,0,18,@NPC_HARKOA_KITTEN,0,0,54,1000,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 18 reached - Pause WP movement'), -(@NPC_HARKOA_KITTEN,0,6,7,61,0,100,0,0,0,0,0,59,0,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 18 reached - Disable run'), -(@NPC_HARKOA_KITTEN,0,7,0,61,0,100,0,0,0,0,0,1,2,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 18 reached - Say line'), -(@NPC_HARKOA_KITTEN,0,9,0,40,0,100,0,21,@NPC_HARKOA_KITTEN,0,0,84,0,0,0,0,0,0,19,@NPC_QUETZLUN,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 21 reached - Set data 0 1 for Prophet of Quetz''lun'), -(@NPC_HARKOA_KITTEN,0,10,11,40,0,100,0,22,@NPC_HARKOA_KITTEN,0,0,59,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 22 reached - Enable run'), -(@NPC_HARKOA_KITTEN,0,11,0,61,0,100,0,0,0,0,0,1,3,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 22 reached - Say line'), -(@NPC_HARKOA_KITTEN,0,12,0,40,0,100,0,31,@NPC_HARKOA_KITTEN,0,0,11,@SPELL_SPEED,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 31 reached - Spellcast Speed Burst'), -(@NPC_HARKOA_KITTEN,0,13,14,40,0,100,0,34,@NPC_HARKOA_KITTEN,0,0,28,@SPELL_SPEED,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 34 reached - Remove aura Speed Burst'), -(@NPC_HARKOA_KITTEN,0,14,15,61,0,100,0,0,0,0,0,97,30,10,0,0,0,0,8,0,0,0,5651.193,-3790.460,361.974,0,'Har''koa''s Kitten - On WP 34 reached - Jump'), -(@NPC_HARKOA_KITTEN,0,15,0,61,0,100,0,0,0,0,0,80,@NPC_HARKOA_KITTEN*100,2,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 34 reached - Run script'), -(@NPC_HARKOA_KITTEN,0,16,17,40,0,100,0,11,@NPC_HARKOA_KITTEN*10,0,0,1,5,0,0,0,0,0,23,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 11 reached - Say line'), -(@NPC_HARKOA_KITTEN,0,17,18,61,0,100,0,0,0,0,0,28,@SPELL_RIDING_HARKOA_KITTEN,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 10 reached - Remove aura Riding Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN,0,18,0,61,0,100,0,0,0,0,0,41,500,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 10 reached - Despawn'), -(@NPC_HARKOA_KITTEN*100,9,0,0,0,0,100,0,2000,2000,0,0,1,4,0,0,0,0,0,23,0,0,0,0,0,0,0,'Har''koa''s Kitten script - Say line'), -(@NPC_HARKOA_KITTEN*100,9,1,0,0,0,100,0,500,500,0,0,53,1,@NPC_HARKOA_KITTEN*10,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten script - Start WP movement'); --- Waypoints -DELETE FROM `waypoints` WHERE `entry` IN (@NPC_HARKOA_KITTEN,@NPC_HARKOA_KITTEN*10); -INSERT INTO `waypoints` (`entry`,`pointid`,`position_x`,`position_y`,`position_z`,`point_comment`) VALUES -(@NPC_HARKOA_KITTEN, 1,5343.219,-3763.973,373.093,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN, 2,5365.389,-3750.708,360.531,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN, 3,5386.707,-3755.923,360.458,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN, 4,5421.301,-3779.266,361.966,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN, 5,5464.585,-3784.811,362.422,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN, 6,5472.514,-3787.657,359.862,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN, 7,5523.643,-3823.486,360.533,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN, 8,5539.182,-3838.393,372.141,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN, 9,5714.259,-3895.436,371.987,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN,10,5714.515,-3944.740,371.987,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN,11,5715.673,-4019.310,372.152,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN,12,5716.523,-4054.907,353.671,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN,13,5716.630,-4188.195,354.075,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN,14,5716.644,-4205.305,362.825,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN,15,5724.548,-4238.222,362.746,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN,16,5724.905,-4258.611,374.355,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN,17,5720.831,-4331.177,374.023,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN,18,5722.675,-4351.540,385.496,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN,19,5728.693,-4374.917,386.492,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN,20,5717.937,-4385.863,386.191,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN,21,5705.368,-4379.375,385.803,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN,22,5705.883,-4371.388,385.803,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN,23,5714.739,-4352.132,385.560,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN,24,5720.831,-4331.177,374.023,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN,25,5724.905,-4258.611,374.355,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN,26,5724.548,-4238.222,362.746,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN,27,5716.644,-4205.305,362.825,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN,28,5716.630,-4188.195,354.075,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN,29,5716.523,-4054.907,353.671,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN,30,5715.673,-4019.310,372.152,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN,31,5714.515,-3944.740,371.987,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN,32,5714.259,-3895.436,371.987,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN,33,5709.297,-3844.293,372.012,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN,34,5672.465,-3815.550,373.647,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN*10, 1,5605.440,-3790.634,362.713,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN*10, 2,5579.467,-3789.876,365.829,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN*10, 3,5552.734,-3794.191,362.082,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN*10, 4,5535.410,-3792.923,362.071,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN*10, 5,5472.514,-3787.657,359.862,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN*10, 6,5464.585,-3784.811,362.422,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN*10, 7,5421.301,-3779.266,361.966,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN*10, 8,5386.707,-3755.923,360.458,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN*10, 9,5365.389,-3750.708,360.531,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN*10,10,5344.119,-3764.440,373.096,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN*10,11,5331.768,-3774.679,371.341,'Har''koa''s Kitten'); --- Areatrigger info -DELETE FROM `areatrigger_involvedrelation` WHERE `quest`=@QUEST; -INSERT INTO `areatrigger_involvedrelation` (`id`,`quest`) VALUES -(5052,@QUEST); --- Spell Data -DELETE FROM `spell_area` WHERE `spell`=52485 AND `area`=4322; -INSERT INTO `spell_area` (`spell`,`area`,`quest_start`,`quest_end`,`aura_spell`,`racemask`,`gender`,`autocast`) VALUES -(52485,4322,0,12685,0,0,2,1); --- Creature Texts -DELETE FROM `creature_text` WHERE `entry` IN (@NPC_HARKOA_KITTEN,@NPC_QUETZLUN); -INSERT INTO `creature_text` (`entry`,`groupid`,`id`,`text`,`type`,`language`,`probability`,`emote`,`duration`,`sound`,`comment`) VALUES -(@NPC_HARKOA_KITTEN,0,0,'Thank you for saving me, $N. This is the least that I could do to return the favor. Hold on tight. Here we go.',15,0,100,0,0,0,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN,1,0,'This doesn''t look good. Whatever you do, don''t fall off. There''s a ton of nasty things in there!',15,0,100,0,0,0,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN,2,0,'Oh no... Quetz''lun is dead! Stay still. We''ll sneak past the prophet.',15,0,100,0,0,0,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN,3,0,'We''re spotted! Hang on. We have to get out of here!',15,0,100,0,0,0,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN,4,0,'I think we''re safe now. Let''s get back!',15,0,100,0,0,0,'Har''koa''s Kitten'), -(@NPC_HARKOA_KITTEN,5,0,'We made it! Take care, $N, and thanks again!',15,0,100,0,0,0,'Har''koa''s Kitten'), -(@NPC_QUETZLUN,0,0,'What was that? I sense an intruder. Find and kill them!',14,0,100,0,0,0,'Quetz''lun'); --- --------------------------------------------------------------------------------------------------------------------------------------------------- diff --git a/sql/updates/world/2012_12_07_02_world_tracker_pitcrawler.sql b/sql/updates/world/2012_12_07_02_world_tracker_pitcrawler.sql new file mode 100644 index 00000000000..345a61cb7f5 --- /dev/null +++ b/sql/updates/world/2012_12_07_02_world_tracker_pitcrawler.sql @@ -0,0 +1,596 @@ +-- --------------------------------------------------------------------------------------------------------------------------------------------------- +-- Issue 4787: Quests 11984, 12255, 12259 +SET @NPC_BUDD := 26422; +SET @NPC_FLAMEBRINGER := 27292; +SET @NPC_FLAMEBRINGERS_CHAIN := 27297; +SET @NPC_THANE_TORVALD := 27377; +SET @NPC_BUDD_PET := 32663; +SET @GUID := 43489; -- Need 2 +-- Creature Spawns +UPDATE `creature` SET `spawndist`=0, `MovementType`=0 WHERE `id`=27377; -- Thane Torvald +DELETE FROM `creature` WHERE `id`=@NPC_FLAMEBRINGERS_CHAIN; +INSERT INTO `creature` (`guid`,`id`,`map`,`spawnMask`,`phaseMask`,`modelid`,`equipment_id`,`position_x`,`position_y`,`position_z`,`orientation`,`spawntimesecs`,`spawndist`,`currentwaypoint`,`curhealth`,`curmana`,`MovementType`,`npcflag`,`unit_flags`,`dynamicflags`) VALUES +(@GUID+0,@NPC_FLAMEBRINGERS_CHAIN,571,1,1,17188,0,2786.589,-2483.958,49.05502,4.171337,120,0,0,42,0,0,0,33555200,8), +(@GUID+1,@NPC_FLAMEBRINGERS_CHAIN,571,1,1,17188,0,2802.708,-2520.483,52.75195,2.443461,120,0,0,42,0,0,0,33555200,8); +-- Creature Templates +UPDATE `creature_template` SET `InhabitType`=`InhabitType`|4, `spell1`=48619, `spell2`=48620, `spell3`=52812 WHERE `entry`=@NPC_FLAMEBRINGER; +UPDATE `creature_template` SET `spell1`=47031 WHERE `entry`=@NPC_BUDD_PET; +UPDATE `creature_template` SET `AIName`='SmartAI' WHERE `entry` IN (@NPC_BUDD,@NPC_FLAMEBRINGER,@NPC_FLAMEBRINGERS_CHAIN,@NPC_BUDD_PET); +UPDATE `creature_template` SET `InhabitType`=4 WHERE `entry`=@NPC_FLAMEBRINGERS_CHAIN; +-- Modelinfo +UPDATE `creature_model_info` SET `combat_reach`=1.95 WHERE `modelid`=134; +UPDATE `creature_model_info` SET `bounding_radius`=0.62, `combat_reach`=4 WHERE `modelid`=22657; +-- SmartScripts for them +UPDATE `smart_scripts` SET `event_param1`=9615 WHERE `entryorguid`=26423; -- Drakuru correct gossip_menu from sniff +DELETE FROM `smart_scripts` WHERE `entryorguid` IN (@NPC_BUDD,@NPC_FLAMEBRINGER,@NPC_FLAMEBRINGERS_CHAIN,@NPC_BUDD_PET) AND `source_type`=0; +INSERT INTO `smart_scripts` (`entryorguid`,`source_type`,`id`,`link`,`event_type`,`event_phase_mask`,`event_chance`,`event_flags`,`event_param1`,`event_param2`,`event_param3`,`event_param4`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`action_param4`,`action_param5`,`action_param6`,`target_type`,`target_param1`,`target_param2`,`target_param3`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`) VALUES +(@NPC_BUDD,0,0,1,62,0,100,0,9301,0,0,0,11,61545,0,0,0,0,0,7,0,0,0,0,0,0,0,'Budd - On gossip select - Spellcast'), +(@NPC_BUDD,0,1,0,61,0,100,0,0,0,0,0,72,0,0,0,0,0,0,7,0,0,0,0,0,0,0,'Budd - On gossip select - Close gossip'), +(@NPC_FLAMEBRINGER,0,0,1,62,0,100,0,9512,0,0,0,11,48606,0,0,0,0,0,7,0,0,0,0,0,0,0,'Flamebringer - On gossip select - Spellcast'), +(@NPC_FLAMEBRINGER,0,1,0,61,0,100,0,0,0,0,0,72,0,0,0,0,0,0,7,0,0,0,0,0,0,0,'Flamebringer - On gossip select - Close gossip'), +(@NPC_FLAMEBRINGER,0,2,3,54,0,100,0,0,0,0,0,83,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Flamebringer - On summon - Remove npcflag'), +(@NPC_FLAMEBRINGER,0,3,4,61,0,100,0,0,0,0,0,11,48602,0,0,0,0,0,1,0,0,0,0,0,0,0,'Flamebringer - On summon - Spellcast'), +(@NPC_FLAMEBRINGER,0,4,0,61,0,100,0,0,0,0,0,85,46598,0,0,0,0,0,1,0,0,0,0,0,0,0,'Flamebringer - On summon - Spellcast'), -- actually cast 48598 on invoker but the linked spell 48600 doesn't work maybe because of effect 1: Dummy (4207) which means this spell works in area Voldrune only and will be removed if the area is left +(@NPC_FLAMEBRINGER,0,5,0,28,0,100,0,0,0,0,0,41,500,0,0,0,0,0,1,0,0,0,0,0,0,0,'Flamebringer - On passenger removed - Despawn'), -- not working +(@NPC_FLAMEBRINGERS_CHAIN,0,0,0,11,0,100,0,0,0,0,0,11,48293,0,30,0,0,0,10,110538,0,0,0,0,0,0,'Flamebringer''s Chain - On update - Spellcast'), +(@NPC_BUDD_PET,0,0,1,54,0,100,0,0,0,0,0,11,47014,0,0,0,0,0,7,0,0,0,0,0,0,0,'Budd pet - On summon - Spellcast'), +(@NPC_BUDD_PET,0,1,2,61,0,100,0,0,0,0,0,11,47025,0,0,0,0,0,1,0,0,0,0,0,0,0,'Budd pet - On summon - Spellcast'), +(@NPC_BUDD_PET,0,2,3,61,0,100,0,0,0,0,0,8,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Budd pet - On summon - Set react defensive'), +(@NPC_BUDD_PET,0,3,0,61,0,100,0,0,0,0,0,29,0,0,0,0,0,0,7,0,0,0,0,0,0,0,'Budd pet - On summon - Follow'), +(@NPC_BUDD_PET,0,4,0,60,0,100,0,5000,5000,15000,15000,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,'Budd pet - Frequently - Say random line'); +-- Insert creature_text from sniff +DELETE FROM `creature_text` WHERE `entry`=@NPC_BUDD_PET; +INSERT INTO `creature_text` (`entry`,`groupid`,`id`,`text`,`type`,`language`,`probability`,`emote`,`duration`,`sound`,`comment`) VALUES +(@NPC_BUDD_PET,0,0,'You sure we be goin'' da right way, mon?',12,0,10,0,0,0,'Budd'), +(@NPC_BUDD_PET,0,1,'Nuttin'' says luvin'' like a little tap on da noggin.',12,0,10,0,0,0,'Budd'), +(@NPC_BUDD_PET,0,2,'You be it now, brudda!',12,0,10,0,0,0,'Budd'), +(@NPC_BUDD_PET,0,3,'Hee hee hee! Dis gunna be some fun, mon!',12,0,10,0,0,0,'Budd'), +(@NPC_BUDD_PET,0,4,'My troll bruddas be in for some real fun today, mon!',12,0,10,0,0,0,'Budd'), +(@NPC_BUDD_PET,0,5,'Time to play some troll tag, mon!',12,0,10,0,0,0,'Budd'), +(@NPC_BUDD_PET,0,6,' I can smell ''em, mon.',12,0,10,0,0,0,'Budd'), +(@NPC_BUDD_PET,0,7,'No, no, mon. Dere be no trolls here....',12,0,10,0,0,0,'Budd'), +(@NPC_BUDD_PET,0,8,'Ok, mon. Tell me when we be close to mah troll bruddas.',12,0,10,0,0,0,'Budd'), +(@NPC_BUDD_PET,0,9,'Ey, mon! Take me to mah troll bruddas!',12,0,10,0,0,0, 'Budd'); +-- Conditions +DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=13 AND `SourceEntry`=48293; +DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=17 AND `SourceEntry`=47042; +INSERT INTO `conditions` (`SourceTypeOrReferenceId`,`SourceGroup`,`SourceEntry`,`SourceId`,`ElseGroup`,`ConditionTypeOrReference`,`ConditionTarget`,`ConditionValue1`,`ConditionValue2`,`ConditionValue3`,`NegativeCondition`,`ErrorTextId`,`ScriptName`,`Comment`) VALUES +(13,1,48293,0,0,31,0,3,27292,0,0,0,'','Spell Flamebringer''s Chain targets Flamebringer'), +(17,0,47042,0,0,31,1,3,26425,0,0,0,'','Spell Assemble Cage can only be cast on Drakkari Warrior'), +(17,0,47042,0,1,31,1,3,26447,0,0,0,'','Spell Assemble Cage can only be cast on Drakkari Shaman'); +-- --------------------------------------------------------------------------------------------------------------------------------------------------- +-- Issue 8577: Quests: Seeking the Windserpent Godess, Setting the Stage +SET @GUID := 136095; -- need 83 set by TDB team +SET @OGUID := 71445; -- need 51 set by TDB team +SET @NPC_MATERIAL_YOU := 28473; +SET @NPC_QUETZLUN := 28030; +SET @NPC_SOUL_FONT_VOID_ZONE := 28719; +SET @NPC_SOUL_FONT_BUNNY := 28724; +SET @NPC_QUTEZLUN_WORSHIPPER := 28747; +SET @NPC_SERPENTTOUCHED_BERSERKER := 28748; +SET @NPC_HIGH_PRIEST_MUFUNU := 28752; +SET @NPC_HIGH_PRIESTESS_TUATUA := 28754; +SET @NPC_HIGH_PRIEST_HAWINNI := 28756; +SET @SPELL_GHOSTLY := 51671; +SET @SPELL_MATERIAL_YOU_MIRROR_IMAGE := 51719; +SET @SPELL_QUETZLUN_JUDGMENT := 53096; +-- Creature Spawns +UPDATE `creature` SET `phaseMask`=3 WHERE `guid`=101830; +DELETE FROM `creature` WHERE `guid` BETWEEN @GUID+0 AND @GUID+82; +INSERT INTO `creature` (`guid`,`id`,`map`,`spawnMask`,`phaseMask`,`modelid`,`position_x`,`position_y`,`position_z`,`orientation`,`spawntimesecs`,`spawndist`,`MovementType`) VALUES +(@GUID+0,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5636.122,-4146.7,351.608,3.089233,300,0,0), +(@GUID+1,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5664.044,-4147.331,352.7899,1.553343,300,0,0), +(@GUID+2,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5664.018,-4147.648,351.4565,2.548181,300,0,0), +(@GUID+3,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5675.395,-4137.262,351.502,3.787364,300,0,0), +(@GUID+4,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5664.217,-4085.715,353.6724,4.764749,300,0,0), +(@GUID+5,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5635.908,-4084.476,352.2891,3.228859,300,0,0), +(@GUID+6,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5613.329,-4115.911,353.2454,3.089233,300,0,0), +(@GUID+7,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5674.509,-4074.528,354.1718,3.944444,300,0,0), +(@GUID+8,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5664.241,-4085.23,352.2626,3.647738,300,0,0), +(@GUID+9,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5639.341,-4053.244,353.2463,2.876765,300,0,0), +(@GUID+10,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5622.78,-4115.903,353.1671,3.138673,300,0,2), +(@GUID+11,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5716.746,-4227.831,362.8311,3.769911,300,0,0), +(@GUID+12,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5716.862,-4227.003,363.9283,1.448623,300,0,0), +(@GUID+13,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5675.243,-4215.884,362.8769,2.487047,300,10,1), +(@GUID+14,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5672.002,-4169.415,353.3519,1.175808,300,10,1), +(@GUID+15,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5629.758,-4220.245,363.0638,0.003776325,300,0,2), +(@GUID+16,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5769.077,-4148.809,352.1679,1.239184,300,0,0), +(@GUID+17,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5769.101,-4148.125,353.5637,1.570796,300,0,0), +(@GUID+18,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5754.831,-4147.796,352.168,6.248279,300,0,0), +(@GUID+19,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5736.187,-4221.563,362.641,3.203449,300,0,2), +(@GUID+20,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5754.225,-4091.116,352.1982,0.3839724,300,0,0), +(@GUID+21,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5689.841,-4294.694,375.4998,4.625123,300,0,0), +(@GUID+22,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5689.859,-4293.607,374.0815,2.96706,300,0,0), +(@GUID+23,@NPC_HIGH_PRIESTESS_TUATUA,571,1,2,0,5645.158,-4272.998,375.6752,5.8294,300,0,0), +(@GUID+24,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5688.647,-4271.216,375.4739,1.64061,300,0,0), +(@GUID+25,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5665.319,-4285.886,374.0784,1.797689,300,0,0), +(@GUID+26,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5606.6504,-4317.5366,373.995,6.254433,300,0,2), +(@GUID+27,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5742.73,-4293.231,375.2595,4.625123,300,0,0), +(@GUID+28,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5742.742,-4292.647,374.0793,3.630285,300,0,0), +(@GUID+29,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5745.571,-4271.291,375.4861,1.570796,300,0,0), +(@GUID+30,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5820.372,-4211.103,363.6525,4.660029,300,0,0), +(@GUID+31,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5778.949,-4177.473,354.4064,5.271958,300,10,1), +(@GUID+32,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5820.291,-4210.607,362.4237,3.124139,300,0,0), +(@GUID+33,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5777.957,-4234.875,360.5455,5.426627,300,10,1), +(@GUID+34,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5812.099,-4175.637,353.3968,6.254186,300,0,2), +(@GUID+35,@NPC_QUETZLUN,571,1,2,0,5717.112,-4364.71,385.8849,1.570796,300,0,0), +(@GUID+36,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5650.962,-4311.059,374.12,0.1213555,300,10,1), +(@GUID+37,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5689.269,-4377.144,385.8853,0.3490658,300,0,0), +(@GUID+38,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5672.371,-4325.267,374.9322,4.607669,300,0,0), +(@GUID+39,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5826.438,-4297.896,374.0838,5.026548,300,0,0), +(@GUID+40,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5826.199,-4297.682,375.6247,3.211406,300,0,0), +(@GUID+41,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5813.962,-4295.513,374.6385,6.126106,300,0,0), +(@GUID+42,@NPC_HIGH_PRIEST_MUFUNU,571,1,2,0,5757.949,-4321.796,374.0786,1.762783,300,0,0), +(@GUID+43,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5717.151,-4417.467,390.0197,1.553343,300,0,0), +(@GUID+44,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5717.597,-4465.906,394.4915,4.8708,300,10,1), +(@GUID+45,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5784.318,-4450.26,387.2599,1.58825,300,0,0), +(@GUID+46,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5784.426,-4450.768,385.8849,6.073746,300,0,0), +(@GUID+47,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5789.287,-4409.731,386.4334,1.280781,300,10,1), +(@GUID+48,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5647.668,-4377.963,386.065,3.499769,300,0,2), +(@GUID+49,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5649.861,-4449.003,385.8849,3.124139,300,0,0), +(@GUID+50,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5642.891,-4441.074,385.8849,5.462881,300,0,0), +(@GUID+51,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5649.906,-4448.593,387.246,1.570796,300,0,0), +(@GUID+52,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5591.124,-4345.021,374.4803,1.396263,300,0,0), +(@GUID+53,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5616.43,-4299.668,374.1321,1.832596,300,0,0), +(@GUID+54,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5581.104,-4435.173,374.0819,1.553343,300,0,0), +(@GUID+55,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5581.708,-4435.312,375.6412,6.265732,300,0,0), +(@GUID+56,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5591.341,-4395.804,374.0577,1.312582,300,0,2), +(@GUID+57,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5595.193,-4432.799,374.0784,3.316126,300,0,0), +(@GUID+58,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5643.719,-4486.458,385.8680,3.330791,300,10,1), +(@GUID+59,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5613.822,-4286.389,375.3737,5.044002,300,0,0), +(@GUID+60,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5613.496,-4285.685,374.0294,5.986479,300,0,0), +(@GUID+61,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5616.248,-4237.393,363.7526,0.1919862,300,0,0), +(@GUID+62,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5616.471,-4223.491,363.7719,4.694936,300,0,0), +(@GUID+63,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5616.134,-4236.797,365.063,1.58825,300,0,0), +(@GUID+64,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5746.81,-4376.404,386.2263,2.949606,300,0,0), +(@GUID+65,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5819.418,-4267.652,370.2367,5.992916,300,10,1), +(@GUID+66,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5840.336,-4347.718,374.0784,1.623156,300,0,0), +(@GUID+67,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5827.608,-4221.192,362.5218,2.216568,300,0,0), +(@GUID+68,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5798.308,-4147.533,352.1857,6.230825,300,0,0), +(@GUID+69,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5818.01,-4117.077,353.2626,0.01745329,300,0,0), +(@GUID+70,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5769.03,-4084.954,352.1702,3.560472,300,0,0), +(@GUID+71,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5769.066,-4085.207,353.5035,4.764749,300,0,0), +(@GUID+72,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5798.5,-4085.708,352.4719,0.03490658,300,0,0), +(@GUID+73,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5779.8,-4054.32,353.9052,0.0102175,300,10,1), +(@GUID+74,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5831.308,-4381.716,374.6486,1.259763,300,10,1), +(@GUID+75,@NPC_SOUL_FONT_BUNNY,571,1,2,13069,5848.862,-4433.827,375.502,3.159046,300,0,0), +(@GUID+76,@NPC_SOUL_FONT_VOID_ZONE,571,1,2,0,5849.88,-4433.882,374.0784,1.466077,300,0,0), +(@GUID+77,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5842.898,-4440.752,374.0784,0.8377581,300,0,0), +(@GUID+78,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5795.062,-4456.038,385.8848,2.6529,300,0,0), +(@GUID+79,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5831.405,-4489.442,376.4616,2.929957,300,10,1), +(@GUID+80,@NPC_HIGH_PRIEST_HAWINNI,571,1,2,0,5841.862,-4383.027,374.0503,1.571773,300,0,2), +(@GUID+81,@NPC_SERPENTTOUCHED_BERSERKER,571,1,2,0,5793.181,-4386.617,387.4278,2.263534,300,0,2), +(@GUID+82,@NPC_QUTEZLUN_WORSHIPPER,571,1,2,0,5784.907,-4313.739,374.0784,0.9090425,300,10,1); +-- Gameobject Spawns +UPDATE `gameobject_template` SET `flags`=4 WHERE `entry` IN (190717,190718,190719); +DELETE FROM `gameobject` WHERE `guid` BETWEEN @OGUID+0 AND @OGUID+50; +INSERT INTO `gameobject` (`guid`,`id`,`map`,`spawnMask`,`phaseMask`,`position_x`,`position_y`,`position_z`, `orientation`, `rotation0`, `rotation1`,`rotation2`,`rotation3`,`spawntimesecs`,`animprogress`,`state`) VALUES +(@OGUID+0,190719,571,1,2,5597.872,-4155.729,362.6012,0.8726639,0,0,0,1,300,100,1), +(@OGUID+1,190719,571,1,2,5632.151,-4150.096,352.3025,4.380776,0,0,0,1,300,100,1), +(@OGUID+2,190717,571,1,2,5707.645,-4061.914,354.3174,3.001947,0,0,0,1,300,100,1), +(@OGUID+3,190719,571,1,2,5610.382,-4115.927,353.4982,1.06465,0,0,0,1,300,100,1), +(@OGUID+4,190717,571,1,2,5742.388,-4150.106,352.4384,1.134463,0,0,0,1,300,100,1), +(@OGUID+5,190719,571,1,2,5726.853,-4062.069,354.3002,1.431168,0,0,0,1,300,100,1), +(@OGUID+6,190719,571,1,2,5768.683,-4106.524,352.6742,5.148723,0,0,0,1,300,100,1), +(@OGUID+7,190719,571,1,2,5797.803,-4286.921,378.6772,4.171338,0,0,0,1,300,100,1), +(@OGUID+8,190718,571,1,2,5680.476,-4381.055,386.0848,4.886924,0,0,0,1,300,100,1), +(@OGUID+9,190718,571,1,2,5676.559,-4325.772,375.9498,3.560473,0,0,0,1,300,100,1), +(@OGUID+10,190717,571,1,2,5706.948,-4324.307,376.862,5.026549,0,0,0,1,300,100,1), +(@OGUID+11,190719,571,1,2,5636.998,-4287.619,378.2026,5.794494,0,0,0,1,300,100,1), +(@OGUID+12,190717,571,1,2,5755.16,-4375.944,386.6035,5.759588,0,0,0,1,300,100,1), +(@OGUID+13,190717,571,1,2,5669.412,-4445.692,385.9232,4.66003,0,0,0,1,300,100,1), +(@OGUID+14,190719,571,1,2,5765.822,-4451.795,386.1481,3.403396,0,0,0,1,300,100,1), +(@OGUID+15,190719,571,1,2,5800.226,-4396.256,388.1242,5.148723,0,0,0,1,300,100,1), +(@OGUID+16,190719,571,1,2,5598.75,-4345.661,377.5887,4.939284,0,0,0,1,300,100,1), +(@OGUID+17,190718,571,1,2,5591.678,-4510.597,377.5719,3.717554,0,0,0,1,300,100,1), +(@OGUID+18,190719,571,1,2,5644.191,-4501.064,387.4688,3.717554,0,0,0,1,300,100,1), +(@OGUID+19,190717,571,1,2,5583.782,-4344.892,377.9865,4.677484,0,0,0,1,300,100,1), +(@OGUID+20,190718,571,1,2,5850.167,-4351.829,374.0035,2.513274,0,0,0,1,300,100,1), +(@OGUID+21,190718,571,1,2,5787.077,-4166.182,352.4897,2.652894,0,0,0,1,300,100,1), +(@OGUID+22,190719,571,1,2,5706.358,-4183.55,353.0656,5.550147,0,0,0,1,300,100,1), +(@OGUID+23,190717,571,1,2,5820.999,-4117.51,353.2778,2.216565,0,0,0,1,300,100,1), +(@OGUID+24,190717,571,1,2,5725.525,-4183.616,356.4301,3.490667,0,0,0,1,300,100,1), +(@OGUID+25,190717,571,1,2,5801.518,-4081.54,352.9559,0.4712385,0,0,0,1,300,100,1), +(@OGUID+26,190718,571,1,2,5783.599,-4199.378,363.9255,1.361356,0,0,0,1,300,100,1), +(@OGUID+27,190718,571,1,2,5788.463,-4028.865,364.6118,3.316144,0,0,0,1,300,100,1), +(@OGUID+28,190718,571,1,2,5679.798,-4084.759,354.015,2.164206,0,0,0,1,300,100,1), +(@OGUID+29,190717,571,1,2,5742.388,-4150.106,352.4384,1.134463,0,0,0,1,300,100,1), +(@OGUID+30,190717,571,1,2,5726.853,-4062.069,354.3002,1.431168,0,0,0,1,300,100,1), +(@OGUID+31,190719,571,1,2,5596.239,-4084.587,362.3596,1.151916,0,0,0,1,300,100,1), +(@OGUID+32,190718,571,1,2,5631.854,-4079.604,352.2866,3.089183,0,0,0,1,300,100,1), +(@OGUID+33,190718,571,1,2,5647.27,-4029.999,365.4366,1.570796,0,0,0,1,300,100,1), +(@OGUID+34,190717,571,1,2,5860.241,-4433.489,375.8128,5.654869,0,0,0,1,300,100,1), +(@OGUID+35,190718,571,1,2,5843.092,-4513.476,376.2388,1.989672,0,0,0,1,300,100,1), +(@OGUID+36,190707,571,1,2,5664.056,-4146.634,351.3731,1.570796,0,0,0,1,300,255,1), +(@OGUID+37,190707,571,1,2,5664.211,-4086.191,352.1793,4.747296,0,0,0,1,300,255,1), +(@OGUID+38,190707,571,1,2,5716.826,-4226.646,362.7477,1.570796,0,0,0,1,300,255,1), +(@OGUID+39,190707,571,1,2,5769.083,-4147.873,352.0845,1.553341,0,0,0,1,300,255,1), +(@OGUID+40,190707,571,1,2,5689.842,-4294.94,373.995,4.677484,0,0,0,1,300,255,1), +(@OGUID+41,190707,571,1,2,5742.686,-4293.651,373.9954,4.729844,0,0,0,1,300,255,1), +(@OGUID+42,190707,571,1,2,5820.354,-4211.717,362.248,4.694937,0,0,0,1,300,255,1), +(@OGUID+43,190707,571,1,2,5825.472,-4297.784,374.0092,3.194002,0,0,0,1,300,255,1), +(@OGUID+44,190707,571,1,2,5784.287,-4449.718,385.8015,1.605702,0,0,0,1,300,255,1), +(@OGUID+45,190707,571,1,2,5649.908,-4447.956,385.8015,1.553341,0,0,0,1,300,255,1), +(@OGUID+46,190707,571,1,2,5582.351,-4435.273,373.9958,6.265733,0,0,0,1,300,255,1), +(@OGUID+47,190707,571,1,2,5613.975,-4286.599,373.9606,5.375615,0,0,0,1,300,255,1), +(@OGUID+48,190707,571,1,2,5616.112,-4236.369,363.7091,1.605702,0,0,0,1,300,255,1), +(@OGUID+49,190707,571,1,2,5769.052,-4085.8,352.0868,4.694937,0,0,0,1,300,255,1), +(@OGUID+50,190707,571,1,2,5848.813,-4433.848,373.995,3.141593,0,0,0,1,300,255,1); +-- Addon data +DELETE FROM `creature_addon` WHERE `guid` IN (@GUID+0,@GUID+3,@GUID+5,@GUID+6,@GUID+7,@GUID+10,@GUID+13,@GUID+14,@GUID+15,@GUID+18,@GUID+19,@GUID+20,@GUID+24,@GUID+25,@GUID+26,@GUID+29,@GUID+31,@GUID+33,@GUID+34,@GUID+36,@GUID+37,@GUID+38,@GUID+41,@GUID+43,@GUID+44,@GUID+47,@GUID+48,@GUID+50,@GUID+53,@GUID+56,@GUID+57,@GUID+58,@GUID+62,@GUID+64,@GUID+65,@GUID+67,@GUID+68,@GUID+69,@GUID+72,@GUID+73,@GUID+74,@GUID+77,@GUID+78,@GUID+79,@GUID+80,@GUID+81,@GUID+82); +INSERT INTO `creature_addon` (`guid`,`path_id`,`mount`,`bytes1`,`bytes2`,`emote`,`auras`) VALUES +(@GUID+0,0,0,8,1,0,''), +(@GUID+3,0,0,0,1,431,''), +(@GUID+5,0,0,8,1,0,''), +(@GUID+6,0,0,8,1,0,''), +(@GUID+7,0,0,0,1,431,''), +(@GUID+10,(@GUID+10)*10,0,0,1,0,''), +(@GUID+13,0,0,0,1,0,'52385'), +(@GUID+14,0,0,0,1,0,'52385'), +(@GUID+15,(@GUID+15)*10,0,0,1,0,''), +(@GUID+18,0,0,0,1,431,''), +(@GUID+19,(@GUID+19)*10,0,0,1,0,''), +(@GUID+20,0,0,0,1,431,''), +(@GUID+24,0,0,8,1,0,''), +(@GUID+25,0,0,0,1,431,''), +(@GUID+26,(@GUID+26)*10,0,0,1,0,''), +(@GUID+29,0,0,8,1,0,''), +(@GUID+31,0,0,0,1,0,'52385'), +(@GUID+33,0,0,0,1,0,'52385'), +(@GUID+34,(@GUID+34)*10,0,0,1,0,''), +(@GUID+36,0,0,0,1,0,'52385'), +(@GUID+37,0,0,0,1,431,''), +(@GUID+38,0,0,8,1,0,''), +(@GUID+41,0,0,0,1,431,''), +(@GUID+43,0,0,0,1,431,''), +(@GUID+44,0,0,0,1,0,'52385'), +(@GUID+47,0,0,0,1,0,'52385'), +(@GUID+48,(@GUID+48)*10,0,0,1,0,''), +(@GUID+50,0,0,0,1,431,''), +(@GUID+53,0,0,0,1,431,''), +(@GUID+56,(@GUID+56)*10,0,0,1,0,''), +(@GUID+57,0,0,0,1,431,''), +(@GUID+58,0,0,0,1,0,'52385'), +(@GUID+62,0,0,0,1,431,''), +(@GUID+64,0,0,0,1,431,''), +(@GUID+65,0,0,0,1,0,'52385'), +(@GUID+67,0,0,0,1,431,''), +(@GUID+68,0,0,8,1,0,''), +(@GUID+69,0,0,8,1,0,''), +(@GUID+72,0,0,8,1,0,''), +(@GUID+73,0,0,0,1,0,'52385'), +(@GUID+74,0,0,0,1,0,'52385'), +(@GUID+77,0,0,0,1,431,''), +(@GUID+78,0,0,0,1,431,''), +(@GUID+79,0,0,0,1,0,'52385'), +(@GUID+80,(@GUID+80)*10,0,0,1,0,''), +(@GUID+81,(@GUID+81)*10,0,0,1,0,''), +(@GUID+82,0,0,0,1,0,'52385'); +DELETE FROM `creature_template_addon` WHERE `entry` IN (@NPC_QUETZLUN,@NPC_SOUL_FONT_VOID_ZONE); +INSERT INTO `creature_template_addon` (`entry`,`path_id`,`mount`,`bytes1`,`bytes2`,`emote`,`auras`) VALUES +(@NPC_QUETZLUN,0,0,0,1,0,'51126 41408'), +(@NPC_SOUL_FONT_VOID_ZONE,0,0,0,1,0,'52222'); +-- Creature_updates +UPDATE `creature_template` SET `unit_flags`=33555200, `AIName`='SmartAI' WHERE `entry`=@NPC_MATERIAL_YOU; +UPDATE `creature_template` SET `faction_A`=190, `faction_H`=190, `npcflag`=3, `gossip_menu_id`=9734, `unit_flags`=33536, `AIName`='SmartAI' WHERE `entry`=@NPC_QUETZLUN; +UPDATE `creature_template` SET `minlevel`=77, `maxlevel`=77, `faction_A`=2073, `faction_H`=2073, `unit_flags`=33554432, `flags_extra`=2 WHERE `entry`=@NPC_SOUL_FONT_VOID_ZONE; +UPDATE `creature_template` SET `minlevel`=77, `maxlevel`=77, `unit_flags`=33554432, `unit_flags2`=2080, `InhabitType`=4 WHERE `entry`=@NPC_SOUL_FONT_BUNNY; +UPDATE `creature_template` SET `faction_A`=2069, `faction_H`=2069, `unit_flags`=32768, `equipment_id`=2482, `AIName`='SmartAI' WHERE `entry`=@NPC_QUTEZLUN_WORSHIPPER; +UPDATE `creature_template` SET `speed_walk`=0.6666666, `faction_A`=2069, `faction_H`=2069, `unit_flags`=32768, `AIName`='SmartAI' WHERE `entry` IN (@NPC_SERPENTTOUCHED_BERSERKER,@NPC_HIGH_PRIEST_HAWINNI); +UPDATE `creature_template` SET `faction_A`=2069, `faction_H`=2069, `unit_flags`=32768, `AIName`='SmartAI', `equipment_id`=2483 WHERE `entry`=@NPC_HIGH_PRIEST_MUFUNU; +UPDATE `creature_template` SET `faction_A`=2069, `faction_H`=2069, `unit_flags`=32768, `AIName`='SmartAI', `equipment_id`=2484 WHERE `entry`=@NPC_HIGH_PRIESTESS_TUATUA; +UPDATE `creature_model_info` SET `bounding_radius`=2.38, `combat_reach`=10.5 WHERE `modelid`=25634; +UPDATE `creature_model_info` SET `bounding_radius`=0.3672, `combat_reach`=1.8, `gender`=0, `modelid_other_gender`=25661 WHERE `modelid`=25660; +UPDATE `creature_model_info` SET `bounding_radius`=0.3672, `combat_reach`=1.8, `gender`=1, `modelid_other_gender`=25660 WHERE `modelid`=25661; +UPDATE `creature_model_info` SET `bounding_radius`=2.625, `combat_reach`=2.625 WHERE `modelid`=25662; +UPDATE `creature_model_info` SET `bounding_radius`=3, `combat_reach`=3 WHERE `modelid`=25663; +UPDATE `creature_model_info` SET `bounding_radius`=0.5355, `combat_reach`=2.625 WHERE `modelid`=25666; +UPDATE `creature_model_info` SET `bounding_radius`=4.5, `combat_reach`=4.5 WHERE `modelid`=25667; +UPDATE `creature_model_info` SET `bounding_radius`=0.6076385, `combat_reach`=2.625 WHERE `modelid`=27858; +-- Equipments +DELETE FROM `creature_equip_template` WHERE `entry` IN (2482,2483,2484); +INSERT INTO `creature_equip_template` (`entry`,`itemEntry1`,`itemEntry2`,`itemEntry3`) VALUES +(2482,28678,0,0), +(2483,13622,0,0), +(2484,28739,0,0); +-- Gossips +DELETE FROM `gossip_menu` WHERE `entry`=9734; +INSERT INTO `gossip_menu` (`entry`,`text_id`) VALUES +(9734,13331); +-- SAI for involved creatures +DELETE FROM `smart_scripts` WHERE `entryorguid` IN (@NPC_QUETZLUN,@NPC_MATERIAL_YOU,@NPC_QUTEZLUN_WORSHIPPER,@NPC_SERPENTTOUCHED_BERSERKER,@NPC_HIGH_PRIEST_MUFUNU,@NPC_HIGH_PRIESTESS_TUATUA,@NPC_HIGH_PRIEST_HAWINNI) AND `source_type`=0; +INSERT INTO `smart_scripts` (`entryorguid`,`source_type`,`id`,`link`,`event_type`,`event_phase_mask`,`event_chance`,`event_flags`,`event_param1`,`event_param2`,`event_param3`,`event_param4`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`action_param4`,`action_param5`,`action_param6`,`target_type`,`target_param1`,`target_param2`,`target_param3`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`) VALUES +(@NPC_QUETZLUN,0,0,0,1,0,100,0,30000,60000,180000,300000,11,@SPELL_QUETZLUN_JUDGMENT,0,0,0,0,0,19,@NPC_QUTEZLUN_WORSHIPPER,30,0,0,0,0,0,'Quetz''lun - On update OOC - Spellcast Quetz''lun''s Judgment'), +(@NPC_MATERIAL_YOU,0,0,1,54,0,100,0,0,0,0,0,1,0,0,0,0,0,0,7,0,0,0,0,0,0,0,'Material You - Just summoned - Say line'), +(@NPC_MATERIAL_YOU,0,1,2,61,0,100,0,0,0,0,0,85,@SPELL_MATERIAL_YOU_MIRROR_IMAGE,0,0,0,0,0,1,0,0,0,0,0,0,0,'Material You - Just summoned - Invoker spellcast Altar of Quetz''lun: Material You''s Mirror Image Aura'), +(@NPC_MATERIAL_YOU,0,2,3,61,0,100,0,0,0,0,0,85,41055,0,0,0,0,0,1,0,0,0,0,0,0,0,'Material You - Just summoned - Invoker spellcast Copy Weapon'), +(@NPC_MATERIAL_YOU,0,3,0,61,0,100,0,0,0,0,0,85,45206,0,0,0,0,0,1,0,0,0,0,0,0,0,'Material You - Just summoned - Invoker spellcast Copy Off-hand Weapon'), +(@NPC_QUTEZLUN_WORSHIPPER,0,0,0,4,0,100,0,0,0,0,0,11,54594,0,0,0,0,0,7,0,0,0,0,0,0,0,'Quetz''lun Worshipper - On aggro - Spellcast Serpent Strike'), +(@NPC_QUTEZLUN_WORSHIPPER,0,1,0,2,0,100,0,0,50,30000,40000,11,54601,0,0,0,0,0,1,0,0,0,0,0,0,0,'Quetz''lun Worshipper - On health below 50% - Spellcast Serpent Form'), +(@NPC_SERPENTTOUCHED_BERSERKER,0,0,0,4,0,100,0,0,0,0,0,11,54594,0,0,0,0,0,7,0,0,0,0,0,0,0,'Serpent-Touched Berserker - On aggro - Spellcast Serpent Strike'), +(@NPC_HIGH_PRIEST_MUFUNU,0,0,2,11,0,100,0,0,0,0,0,11,51733,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Mu''funu - On spawn - Spellcast Shadow Channelling'), +(@NPC_HIGH_PRIEST_MUFUNU,0,1,2,21,0,100,0,0,0,0,0,11,51733,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Mu''funu - On homeposition reached - Spellcast Shadow Channelling'), +(@NPC_HIGH_PRIEST_MUFUNU,0,2,3,61,0,100,0,0,0,0,0,21,0,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Mu''funu - On homeposition reached - Disable combat movement'), +(@NPC_HIGH_PRIEST_MUFUNU,0,3,0,61,0,100,0,0,0,0,0,22,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Mu''funu - On homeposition reached - Set event phase 1'), +(@NPC_HIGH_PRIEST_MUFUNU,0,4,5,9,0,100,0,40,80,0,0,21,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Mu''funu - On target range more than 40y - Enable combat movement'), +(@NPC_HIGH_PRIEST_MUFUNU,0,5,0,61,0,100,0,0,0,0,0,22,2,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Mu''funu - On target range more than 40y - Set event phase 2'), +(@NPC_HIGH_PRIEST_MUFUNU,0,6,3,9,0,100,0,0,20,0,0,21,0,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Mu''funu - On target range below 20y - Disable combat movement'), +(@NPC_HIGH_PRIEST_MUFUNU,0,7,0,0,1,100,0,0,0,2500,2500,11,20820,0,0,0,0,0,2,0,0,0,0,0,0,0,'High Priest Mu''funu - On update IC (phase 1) - Spellcast Holy Smite'), +(@NPC_HIGH_PRIEST_MUFUNU,0,8,0,2,0,100,0,0,30,0,0,22,4,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Mu''funu - On health below 30% - Set event phase 4'), +(@NPC_HIGH_PRIEST_MUFUNU,0,9,0,0,4,100,0,0,0,30000,30000,11,11974,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Mu''funu - On update IC (phase 4) - Spellcast Power Word: Shield'), +(@NPC_HIGH_PRIEST_MUFUNU,0,10,0,0,4,100,0,50,50,15000,20000,11,11640,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Mu''funu - On update IC (phase 4) - Spellcast Renew'), +(@NPC_HIGH_PRIESTESS_TUATUA,0,0,1,11,0,100,0,0,0,0,0,11,51733,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priestess Tua-Tua - On spawn - Spellcast Shadow Channelling'), +(@NPC_HIGH_PRIESTESS_TUATUA,0,1,0,61,0,100,0,0,0,0,0,28,29406,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priestess Tua-Tua - On homeposition reached - Remove aura Shadowform'), +(@NPC_HIGH_PRIESTESS_TUATUA,0,2,1,21,0,100,0,0,0,0,0,11,51733,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priestess Tua-Tua - On homeposition reached - Spellcast Shadow Channelling'), +(@NPC_HIGH_PRIESTESS_TUATUA,0,3,0,4,0,100,0,0,0,0,0,11,29406,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priestess Tua-Tua - On aggro - Spellcast Shadowform'), +(@NPC_HIGH_PRIESTESS_TUATUA,0,4,0,0,0,100,0,2000,3000,15000,20000,11,51818,0,0,0,0,0,2,0,0,0,0,0,0,0,'High Priestess Tua-Tua - On update IC - Spellcast Shadow Word: Death'), +(@NPC_HIGH_PRIESTESS_TUATUA,0,5,0,0,0,100,0,4000,5000,3000,5000,11,13860,0,0,0,0,0,2,0,0,0,0,0,0,0,'High Priestess Tua-Tua - On update IC - Spellcast Mind Blast'), +(@NPC_HIGH_PRIEST_HAWINNI,0,0,0,0,0,100,0,2000,3000,10000,15000,11,54603,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Hawinni - On update IC - Spellcast Serpent''s Agility'), +(@NPC_HIGH_PRIEST_HAWINNI,0,1,2,2,0,100,1,0,40,0,0,11,50420,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Hawinni - On health below 40% - Spellcast Enrage'), +(@NPC_HIGH_PRIEST_HAWINNI,0,2,0,61,0,100,0,0,0,0,0,1,0,0,0,0,0,0,7,0,0,0,0,0,0,0,'High Priest Hawinni - On health below 40% - Say line'), +(@NPC_HIGH_PRIEST_HAWINNI,0,3,0,7,0,100,0,0,0,0,0,28,50420,0,0,0,0,0,1,0,0,0,0,0,0,0,'High Priest Hawinni - On evade - Remove aura Enrage'); +-- Waypoints +DELETE FROM `waypoint_data` WHERE `id` IN ((@GUID+10)*10,(@GUID+15)*10,(@GUID+19)*10,(@GUID+26)*10,(@GUID+34)*10,(@GUID+48)*10,(@GUID+56)*10,(@GUID+80)*10,(@GUID+81)*10); +INSERT INTO `waypoint_data` (`id`,`point`,`position_x`,`position_y`,`position_z`,`orientation`,`delay`,`move_flag`,`action`,`action_chance`,`wpguid`) VALUES +((@GUID+10)*10,1,5622.78,-4115.903,353.1671,0,0,0,0,100,0), +((@GUID+10)*10,2,5700.014,-4116.477,353.2688,0,0,0,0,100,0), +((@GUID+15)*10,1,5629.758,-4220.245,363.0638,0,0,0,0,100,0), +((@GUID+15)*10,2,5698.905,-4220.559,362.8123,0,0,0,0,100,0), +((@GUID+19)*10,1,5736.187,-4221.563,362.641,0,0,0,0,100,0), +((@GUID+19)*10,2,5765.859,-4221.353,361.5846,0,0,0,0,100,0), +((@GUID+19)*10,3,5781.38,-4231.069,359.3161,0,0,0,0,100,0), +((@GUID+19)*10,4,5799.918,-4242.83,362.6221,0,0,0,0,100,0), +((@GUID+19)*10,5,5817.34,-4242.409,363.7439,0,0,0,0,100,0), +((@GUID+19)*10,6,5844.105,-4244.604,362.7979,0,0,0,0,100,0), +((@GUID+19)*10,7,5817.34,-4242.409,363.7439,0,0,0,0,100,0), +((@GUID+19)*10,8,5799.918,-4242.83,362.6221,0,0,0,0,100,0), +((@GUID+19)*10,9,5781.38,-4231.069,359.3161,0,0,0,0,100,0), +((@GUID+19)*10,10,5765.859,-4221.353,361.5846,0,0,0,0,100,0), +((@GUID+26)*10,1,5606.6504,-4317.5366,373.995,0,0,0,0,100,0), +((@GUID+26)*10,2,5625.5952,-4303.0625,373.995,0,0,0,0,100,0), +((@GUID+26)*10,3,5782.809,-4302.274,374.12,0,0,0,0,100,0), +((@GUID+26)*10,4,5802.482,-4309.014,374.0114,0,0,0,0,100,0), +((@GUID+34)*10,1,5812.099,-4175.637,353.3968,0,0,0,0,100,0), +((@GUID+34)*10,2,5821.506,-4165.563,353.5313,0,0,0,0,100,0), +((@GUID+34)*10,3,5818.826,-4129.878,353.8851,0,0,0,0,100,0), +((@GUID+34)*10,4,5810.663,-4117.67,353.2181,0,0,0,0,100,0), +((@GUID+34)*10,5,5792.259,-4117.242,353.2197,0,0,0,0,100,0), +((@GUID+34)*10,6,5755.833,-4119.403,353.3149,0,0,0,0,100,0), +((@GUID+34)*10,7,5754.487,-4121.689,353.3535,0,0,0,0,100,0), +((@GUID+34)*10,8,5747.097,-4163.901,352.5367,0,0,0,0,100,0), +((@GUID+34)*10,9,5754.965,-4174.736,353.418,0,0,0,0,100,0), +((@GUID+48)*10,1,5647.668,-4377.963,386.065,0,0,0,0,100,0), +((@GUID+48)*10,2,5647.648,-4439.329,385.8019,0,0,0,0,100,0), +((@GUID+56)*10,1,5591.341,-4395.804,374.0577,0,0,0,0,100,0), +((@GUID+56)*10,2,5589.711,-4473.008,373.9948,0,0,0,0,100,0), +((@GUID+80)*10,1,5841.862,-4383.027,374.0503,0,0,0,0,100,0), +((@GUID+80)*10,2,5841.261,-4481.065,376.1894,0,0,0,0,100,0), +((@GUID+81)*10,1,5794.948,-4488.715,387.3983,0,0,0,0,100,0), +((@GUID+81)*10,2,5793.181,-4386.617,387.4278,0,0,0,0,100,0); +-- Spell data +DELETE FROM `spell_area` WHERE `spell`=@SPELL_GHOSTLY AND `area`=4325; +INSERT INTO `spell_area` (`spell`,`area`,`quest_start`,`quest_end`,`aura_spell`,`racemask`,`gender`,`autocast`,`quest_start_status`) VALUES +(@SPELL_GHOSTLY,4325,12667,12675,0,0,2,1,2|64); +-- Spell Linking +DELETE FROM `spell_linked_spell` WHERE `spell_trigger`=@SPELL_GHOSTLY; +INSERT INTO `spell_linked_spell` (`spell_trigger`,`spell_effect`,`type`,`comment`) VALUES +(@SPELL_GHOSTLY,51717,1,'On Ghostly - Spellcast Altar of Quetz''lun: Summon Material You'); +-- Conditions +DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=13 AND `SourceEntry` IN (@SPELL_MATERIAL_YOU_MIRROR_IMAGE,@SPELL_QUETZLUN_JUDGMENT); +INSERT INTO `conditions` (`SourceTypeOrReferenceId`,`SourceGroup`,`SourceEntry`,`SourceId`,`ElseGroup`,`ConditionTypeOrReference`,`ConditionTarget`,`ConditionValue1`,`ConditionValue2`,`ConditionValue3`,`NegativeCondition`,`ErrorTextId`,`ScriptName`,`Comment`) VALUES +(13,1,@SPELL_MATERIAL_YOU_MIRROR_IMAGE,0,0,31,0,3,@NPC_MATERIAL_YOU,0,0,0,'','Spell Altar of Quetz''lun: Material You''s Mirror Image Aura targets Material You'), +(13,2,@SPELL_MATERIAL_YOU_MIRROR_IMAGE,0,0,31,0,3,@NPC_MATERIAL_YOU,0,0,0,'','Spell Altar of Quetz''lun: Material You''s Mirror Image Aura targets Material You'), +(13,4,@SPELL_MATERIAL_YOU_MIRROR_IMAGE,0,0,31,0,3,@NPC_MATERIAL_YOU,0,0,0,'','Spell Altar of Quetz''lun: Material You''s Mirror Image Aura targets Material You'), +(13,1,@SPELL_QUETZLUN_JUDGMENT,0,0,31,0,3,@NPC_QUTEZLUN_WORSHIPPER,0,0,0,'','Spell Quetz''lun''s Judgment targets Quetz''lun Worshipper'); +-- Creature Texts +DELETE FROM `creature_text` WHERE `entry` IN (@NPC_MATERIAL_YOU,@NPC_HIGH_PRIEST_HAWINNI); +INSERT INTO `creature_text` (`entry`,`groupid`,`id`,`text`,`type`,`language`,`probability`,`emote`,`duration`,`sound`,`comment`) VALUES +(@NPC_MATERIAL_YOU,0,0,'You leave your material body behind!',42,0,100,0,0,0,'Material You'), +(@NPC_HIGH_PRIEST_HAWINNI,0,0,'%s becomes enraged!',16,0,100,0,0,0,'Hawinni'); +-- --------------------------------------------------------------------------------------------------------------------------------------------------- +-- Issue 8515: Quest I Sense a Disturbance +SET @GUID := 88701; -- need 34 set by TDB +SET @GOSSIP := 9687; +SET @QUEST := 12665; +SET @NPC_ELM_BUNNY := 26298; +SET @NPC_HARKOA := 28401; +SET @NPC_CLAW_OF_HARKOA := 28402; +SET @NPC_HARKOA_SUBDUER := 28403; +SET @NPC_CURSED_OFFSPRING := 28404; +SET @NPC_HARKOA_KITTEN := 28665; +SET @NPC_QUETZLUN := 28671; +SET @SPELL_RIDING_HARKOA_KITTEN := 25673; +SET @SPELL_SPEED := 39870; +SET @SPELL_SUMMON_HARKOA_KITTEN := 52187; +SET @SPELL_STEALTH := 52188; +-- Spawns +DELETE FROM `creature` WHERE `guid` BETWEEN @GUID+0 AND @GUID+33; +INSERT INTO `creature` (`guid`,`id`,`map`,`spawnMask`,`phaseMask`,`modelid`,`equipment_id`,`position_x`,`position_y`,`position_z`,`orientation`,`spawntimesecs`,`spawndist`,`currentwaypoint`,`curhealth`,`curmana`,`MovementType`,`npcflag`,`unit_flags`,`dynamicflags`) VALUES +(@GUID+0,@NPC_ELM_BUNNY,571,1,1,21999,0,5309.635,-3772.253,372.5037,5.707227,300,0,0,42,0,0,0,0,0), +(@GUID+1,@NPC_ELM_BUNNY,571,1,1,21999,0,5333.049,-3796.974,372.489,2.356194,300,0,0,42,0,0,0,0,0), +(@GUID+2,@NPC_ELM_BUNNY,571,1,1,21999,0,5309.46,-3772.571,372.4755,5.358161,300,0,0,42,0,0,0,0,0), +(@GUID+3,@NPC_ELM_BUNNY,571,1,1,21999,0,5332.838,-3797.16,372.4756,2.321288,300,0,0,42,0,0,0,0,0), +(@GUID+4,@NPC_CLAW_OF_HARKOA,571,1,1,0,0,5375.799,-3758.142,360.5291,0.7330383,300,0,0,0,0,0,0,0,0), +(@GUID+5,@NPC_CURSED_OFFSPRING,571,1,1,0,0,5497.146,-3791.354,359.6451,3.033307,300,5,0,0,0,1,0,0,0), +(@GUID+6,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5323.46,-3813,371.9776,1.553343,300,0,0,0,0,0,0,0,0), +(@GUID+7,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5291.728,-3780.95,371.6594,6.248279,300,0,0,0,0,0,0,0,0), +(@GUID+8,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5316.537,-3755.717,371.5298,5.009095,300,0,0,0,0,0,0,0,0), +(@GUID+9,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5422.518,-3822.243,363.2307,0.01745329,300,0,0,0,0,0,0,0,0), +(@GUID+10,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5335.817,-3846.023,370.8626,3.926991,300,0,0,0,0,0,0,0,0), +(@GUID+11,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5382.776,-3799.292,372.6979,0.7853982,300,0,0,0,0,0,0,0,0), +(@GUID+12,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5347.82,-3790.36,371.4579,2.80998,300,0,0,0,0,0,0,0,0), +(@GUID+13,@NPC_CURSED_OFFSPRING,571,1,1,0,0,5385.085,-3821.307,373.1991,4.390826,300,5,0,0,0,1,0,0,0), +(@GUID+14,@NPC_CLAW_OF_HARKOA,571,1,1,0,0,5368.791,-3862.889,373.6328,5.51524,300,0,0,0,0,0,0,0,0), +(@GUID+15,@NPC_CLAW_OF_HARKOA,571,1,1,0,0,5263.502,-3717.983,373.0725,2.356194,300,0,0,0,0,0,0,0,0), +(@GUID+16,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5394.254,-3702.963,362.089,0.1570796,300,0,0,0,0,0,0,0,0), +(@GUID+17,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5410.39,-3718.896,362.0468,1.518436,300,0,0,0,0,0,0,0,0), +(@GUID+18,@NPC_CURSED_OFFSPRING,571,1,1,0,0,5395.654,-3862.894,362.4349,4.355803,300,5,0,0,0,1,0,0,0), +(@GUID+19,@NPC_CURSED_OFFSPRING,571,1,1,0,0,5434.535,-3731.848,362.0858,2.675762,300,5,0,0,0,1,0,0,0), +(@GUID+20,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5477.654,-3878.015,361.0569,0.7679449,300,0,0,0,0,0,0,0,0), +(@GUID+21,@NPC_CLAW_OF_HARKOA,571,1,1,0,0,5553.428,-3829.976,372.5273,5.654867,300,0,0,0,0,0,0,0,0), +(@GUID+22,@NPC_CLAW_OF_HARKOA,571,1,1,0,0,5585.777,-3799.415,366.2234,6.143559,300,0,0,0,0,0,0,0,0), +(@GUID+23,@NPC_CLAW_OF_HARKOA,571,1,1,0,0,5537.25,-3846.529,372.089,5.375614,300,0,0,0,0,0,0,0,0), +(@GUID+24,@NPC_CURSED_OFFSPRING,571,1,1,0,0,5510.545,-3926.729,362.0851,5.462688,300,5,0,0,0,1,0,0,0), +(@GUID+25,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5322.316,-3572.04,363.3229,4.834562,300,0,0,0,0,0,0,0,0), +(@GUID+26,@NPC_CLAW_OF_HARKOA,571,1,1,0,0,5367.774,-3541.64,364.2363,0.7853982,300,0,0,0,0,0,0,0,0), +(@GUID+27,@NPC_CLAW_OF_HARKOA,571,1,1,0,0,5459.911,-3643.151,362.3447,0.9424778,300,0,0,0,0,0,0,0,0), +(@GUID+28,@NPC_CLAW_OF_HARKOA,571,1,1,0,0,5323.396,-3644.5,362.0438,5.707227,300,0,0,0,0,0,0,0,0), +(@GUID+29,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5330.009,-3913.493,365.8797,4.694936,300,0,0,0,0,0,0,0,0), +(@GUID+30,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5434.8,-3919.141,361.1612,3.944444,300,0,0,0,0,0,0,0,0), +(@GUID+31,@NPC_CLAW_OF_HARKOA,571,1,1,0,0,5407.908,-3925.006,362.0776,4.746883,300,5,0,0,0,1,0,0,0), +(@GUID+32,@NPC_CURSED_OFFSPRING,571,1,1,0,0,5347.841,-3946.389,362.553,0.7498215,300,5,0,0,0,1,0,0,0), +(@GUID+33,@NPC_HARKOA_SUBDUER,571,1,1,0,0,5277.245,-3619.667,363.3282,6.213372,300,0,0,0,0,0,0,0,0); +-- some corrections to previous spawns +UPDATE `creature` SET `position_x`=5349.371, `position_y`=-3615.906, `position_z`=363.8878, `orientation`=5.462881 WHERE `guid`=118735; +UPDATE `creature` SET `spawndist`=5, `movementType`=1 WHERE `guid` IN (118714,118722,118729,118731,118732,118733); +UPDATE `gameobject_template` SET `flags`=4 WHERE `entry`=190633; +UPDATE `creature_template` SET `gossip_menu_id`=@GOSSIP, `AIName`='SmartAI' WHERE `entry`=28401; +UPDATE `creature_template` SET `speed_run`=2.571429, `unit_flags`=33288, `AIName`='SmartAI' WHERE `entry`=28665; +UPDATE `creature_template` SET `AIName`='SmartAI' WHERE `entry`=@NPC_HARKOA_SUBDUER; +DELETE FROM `creature_template_addon` WHERE `entry`=@NPC_CLAW_OF_HARKOA; +INSERT INTO `creature_template_addon` (`entry`,`path_id`,`mount`,`bytes1`,`bytes2`,`emote`,`auras`) VALUES +(@NPC_CLAW_OF_HARKOA,0,0,0,1,0,'54608'); +DELETE FROM `creature_addon` WHERE `guid` IN (@GUID+0,@GUID+1,@GUID+2,@GUID+3,118591); +INSERT INTO `creature_addon` (`guid`,`path_id`,`mount`,`bytes1`,`bytes2`,`emote`,`auras`) VALUES +(@GUID+0,0,0,0,1,0,'52485 51666'), +(@GUID+1,0,0,0,1,0,'52485 51666'), +(@GUID+2,0,0,0,1,0,'52485 51666'), +(@GUID+3,0,0,0,1,0,'52485 51666'), +(118591,0,0,0,1,0,'52485 51666'); +-- SAI info +DELETE FROM `creature_ai_scripts` WHERE `creature_id`=@NPC_HARKOA_SUBDUER; +DELETE FROM `smart_scripts` WHERE `entryorguid` IN (@NPC_HARKOA_SUBDUER,-(@GUID+0),-(@GUID+1),-(@GUID+2),-(@GUID+3)) AND `source_type`=0; +DELETE FROM `smart_scripts` WHERE `entryorguid`=@NPC_HARKOA_SUBDUER*100 AND `source_type`=9; +INSERT INTO `smart_scripts` (`entryorguid`,`source_type`,`id`,`link`,`event_type`,`event_phase_mask`,`event_chance`,`event_flags`,`event_param1`,`event_param2`,`event_param3`,`event_param4`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`action_param4`,`action_param5`,`action_param6`,`target_type`,`target_param1`,`target_param2`,`target_param3`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`) VALUES +(@NPC_HARKOA_SUBDUER,0,0,0,11,0,100,0,0,0,0,0,21,0,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On spawn - Disable combatmovement'), +(@NPC_HARKOA_SUBDUER,0,1,0,1,0,100,0,2000,20000,40000,60000,80,@NPC_HARKOA_SUBDUER*100,2,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On update OOC - Run script'), +(@NPC_HARKOA_SUBDUER,0,2,0,4,0,100,0,0,0,0,0,22,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On aggro - Set eventphase 1'), +(@NPC_HARKOA_SUBDUER,0,3,0,0,1,100,0,0,0,2800,3500,11,20822,0,0,0,0,0,2,0,0,0,0,0,0,0,'Har''koa Subduer - On update IC (phase 1) - Spellcast Frostbolt'), +(@NPC_HARKOA_SUBDUER,0,4,0,9,1,100,0,35,80,0,0,21,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On range more than 35y (phase 1) - Enable combatmovement'), +(@NPC_HARKOA_SUBDUER,0,6,0,9,1,100,0,5,15,0,0,21,0,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On range less than 15y (phase 1) - Disable combatmovement'), +(@NPC_HARKOA_SUBDUER,0,7,0,9,1,100,0,0,5,0,0,21,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On range less than 5y (phase 1) - Enable combatmovement'), +(@NPC_HARKOA_SUBDUER,0,8,9,3,1,100,0,0,15,0,0,21,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On mana below 15% (phase 1) - Set eventphase 2'), +(@NPC_HARKOA_SUBDUER,0,9,0,61,0,100,0,0,0,0,0,22,2,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On mana below 15% - Enable combatmovement'), +(@NPC_HARKOA_SUBDUER,0,10,0,3,2,100,0,30,100,0,0,22,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On mana over 30% (phase 2) - Set eventphase 1'), +(@NPC_HARKOA_SUBDUER,0,11,12,2,0,100,0,0,15,0,0,22,4,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On health below 15% - Set eventphase 3'), +(@NPC_HARKOA_SUBDUER,0,12,13,61,0,100,0,0,0,0,0,21,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On health below 15% - Enable combat movement'), +(@NPC_HARKOA_SUBDUER,0,13,0,61,0,100,1,0,0,0,0,25,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On health below 15% - Flee'), +(@NPC_HARKOA_SUBDUER,0,14,0,7,0,100,0,0,0,0,0,22,0,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On evade - Reset event phase'), +(@NPC_HARKOA_SUBDUER,0,15,0,21,0,100,0,0,0,0,0,21,0,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer - On homeposition reached - Disable combatmovement'), +(-(@GUID+0),0,0,0,11,0,100,0,0,0,0,0,11,51579,0,0,0,0,0,11,28401,10,0,0,0,0,0,'ELM General Purpose Bunny - On spawn - Spellcast Har''koa''s Chains'), +(-(@GUID+1),0,0,0,11,0,100,0,0,0,0,0,11,51577,0,0,0,0,0,11,28401,10,0,0,0,0,0,'ELM General Purpose Bunny - On spawn - Spellcast Har''koa''s Chains'), +(-(@GUID+2),0,0,0,11,0,100,0,0,0,0,0,11,45808,0,0,0,0,0,11,28401,10,0,0,0,0,0,'ELM General Purpose Bunny - On spawn - Spellcast Har''koa''s Chains'), +(-(@GUID+3),0,0,0,11,0,100,0,0,0,0,0,11,45808,0,0,0,0,0,11,28401,10,0,0,0,0,0,'ELM General Purpose Bunny - On spawn - Spellcast Har''koa''s Chains'), +(@NPC_HARKOA_SUBDUER*100,9,0,0,0,0,100,0,0,0,0,0,11,45846,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer script - Spellcast Frost Channelling'), +(@NPC_HARKOA_SUBDUER*100,9,1,0,0,0,100,0,10000,20000,0,0,92,0,45846,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer script - Set unit_field_bytes1 (kneel)'), +(@NPC_HARKOA_SUBDUER*100,9,2,0,0,0,100,0,0,0,0,0,90,8,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa Subduer script - Set unit_field_bytes1 (kneel)'); +-- Gossip info +DELETE FROM `gossip_menu` WHERE `entry`=@GOSSIP; +INSERT INTO `gossip_menu` (`entry`,`text_id`) VALUES +(@GOSSIP,13139); +DELETE FROM `gossip_menu_option` WHERE `menu_id`=@GOSSIP AND `id`=0; +INSERT INTO `gossip_menu_option` (`menu_id`,`id`,`option_icon`,`option_text`,`option_id`,`npc_option_npcflag`,`action_menu_id`,`action_poi_id`,`box_coded`,`box_money`,`box_text`) VALUES +(@GOSSIP,0,0,'Great and powerful Har''koa, please call for one of your children that it might stealthily carry me into the Altar of Quetz''lun.',1,1,0,0,0,0,NULL); +-- Conditions +DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=13 AND `SourceEntry` IN (45808,51577,51579); +DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=15 AND `SourceGroup`=@GOSSIP; +INSERT INTO `conditions` (`SourceTypeOrReferenceId`,`SourceGroup`,`SourceEntry`,`SourceId`,`ElseGroup`,`ConditionTypeOrReference`,`ConditionTarget`,`ConditionValue1`,`ConditionValue2`,`ConditionValue3`,`NegativeCondition`,`ErrorTextId`,`ScriptName`,`Comment`) VALUES +(13,1,45808,0,0,31,0,3,28401,0,0,0,'','Spell Har''koa''s Chains targets Har''koa'), +(13,1,51577,0,0,31,0,3,28401,0,0,0,'','Spell Har''koa''s Chains targets Har''koa'), +(13,1,51579,0,0,31,0,3,28401,0,0,0,'','Spell Har''koa''s Chains targets Har''koa'), +(15,@GOSSIP,0,0,0,9,0,@QUEST,0,0,0,0,'','Show gossip option if player has taken quest 12655'); + +DELETE FROM `smart_scripts` WHERE `entryorguid` IN (@NPC_HARKOA,@NPC_HARKOA_KITTEN) AND `source_type`=0; +DELETE FROM `smart_scripts` WHERE `entryorguid`=@NPC_HARKOA_KITTEN*100 AND `source_type`=9; +INSERT INTO `smart_scripts` (`entryorguid`,`source_type`,`id`,`link`,`event_type`,`event_phase_mask`,`event_chance`,`event_flags`,`event_param1`,`event_param2`,`event_param3`,`event_param4`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`action_param4`,`action_param5`,`action_param6`,`target_type`,`target_param1`,`target_param2`,`target_param3`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`) VALUES +-- Har'koa script +(@NPC_HARKOA,0,0,1,62,0,100,0,@GOSSIP,0,0,0,11,@SPELL_SUMMON_HARKOA_KITTEN,0,0,0,0,0,7,0,0,0,0,0,0,0,'Har''koa - On gossip option select - force player to summon Har''koa''s Kitten'), +(@NPC_HARKOA,0,1,0,61,0,100,0,0,0,0,0,72,0,0,0,0,0,0,7,0,0,0,0,0,0,0,'Har''koa - On gossip option select - close gossip'), +-- Har'koa's Kitten script +(@NPC_HARKOA_KITTEN,0,0,1,54,0,100,0,0,0,0,0,75,@SPELL_STEALTH,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On spawn - Apply Stealth'), +(@NPC_HARKOA_KITTEN,0,1,0,61,0,100,0,0,0,0,0,53,1,@NPC_HARKOA_KITTEN,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On spawn - Start WP movement'), +(@NPC_HARKOA_KITTEN,0,2,0,40,0,100,0,1,@NPC_HARKOA_KITTEN,0,0,1,0,0,0,0,0,0,23,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 1 reached - Say line'), +(@NPC_HARKOA_KITTEN,0,3,4,40,0,100,0,10,@NPC_HARKOA_KITTEN,0,0,54,1000,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 10 reached - Pause WP movement'), +(@NPC_HARKOA_KITTEN,0,4,0,61,0,100,0,0,0,0,0,1,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On waypoint 10 reached - Say line'), +(@NPC_HARKOA_KITTEN,0,5,6,40,0,100,0,18,@NPC_HARKOA_KITTEN,0,0,54,1000,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 18 reached - Pause WP movement'), +(@NPC_HARKOA_KITTEN,0,6,7,61,0,100,0,0,0,0,0,59,0,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 18 reached - Disable run'), +(@NPC_HARKOA_KITTEN,0,7,0,61,0,100,0,0,0,0,0,1,2,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 18 reached - Say line'), +(@NPC_HARKOA_KITTEN,0,9,0,40,0,100,0,21,@NPC_HARKOA_KITTEN,0,0,84,0,0,0,0,0,0,19,@NPC_QUETZLUN,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 21 reached - Set data 0 1 for Prophet of Quetz''lun'), +(@NPC_HARKOA_KITTEN,0,10,11,40,0,100,0,22,@NPC_HARKOA_KITTEN,0,0,59,1,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 22 reached - Enable run'), +(@NPC_HARKOA_KITTEN,0,11,0,61,0,100,0,0,0,0,0,1,3,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 22 reached - Say line'), +(@NPC_HARKOA_KITTEN,0,12,0,40,0,100,0,31,@NPC_HARKOA_KITTEN,0,0,11,@SPELL_SPEED,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 31 reached - Spellcast Speed Burst'), +(@NPC_HARKOA_KITTEN,0,13,14,40,0,100,0,34,@NPC_HARKOA_KITTEN,0,0,28,@SPELL_SPEED,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 34 reached - Remove aura Speed Burst'), +(@NPC_HARKOA_KITTEN,0,14,15,61,0,100,0,0,0,0,0,97,30,10,0,0,0,0,8,0,0,0,5651.193,-3790.460,361.974,0,'Har''koa''s Kitten - On WP 34 reached - Jump'), +(@NPC_HARKOA_KITTEN,0,15,0,61,0,100,0,0,0,0,0,80,@NPC_HARKOA_KITTEN*100,2,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 34 reached - Run script'), +(@NPC_HARKOA_KITTEN,0,16,17,40,0,100,0,11,@NPC_HARKOA_KITTEN*10,0,0,1,5,0,0,0,0,0,23,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 11 reached - Say line'), +(@NPC_HARKOA_KITTEN,0,17,18,61,0,100,0,0,0,0,0,28,@SPELL_RIDING_HARKOA_KITTEN,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 10 reached - Remove aura Riding Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,0,18,0,61,0,100,0,0,0,0,0,41,500,0,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten - On WP 10 reached - Despawn'), +(@NPC_HARKOA_KITTEN*100,9,0,0,0,0,100,0,2000,2000,0,0,1,4,0,0,0,0,0,23,0,0,0,0,0,0,0,'Har''koa''s Kitten script - Say line'), +(@NPC_HARKOA_KITTEN*100,9,1,0,0,0,100,0,500,500,0,0,53,1,@NPC_HARKOA_KITTEN*10,0,0,0,0,1,0,0,0,0,0,0,0,'Har''koa''s Kitten script - Start WP movement'); +-- Waypoints +DELETE FROM `waypoints` WHERE `entry` IN (@NPC_HARKOA_KITTEN,@NPC_HARKOA_KITTEN*10); +INSERT INTO `waypoints` (`entry`,`pointid`,`position_x`,`position_y`,`position_z`,`point_comment`) VALUES +(@NPC_HARKOA_KITTEN, 1,5343.219,-3763.973,373.093,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN, 2,5365.389,-3750.708,360.531,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN, 3,5386.707,-3755.923,360.458,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN, 4,5421.301,-3779.266,361.966,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN, 5,5464.585,-3784.811,362.422,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN, 6,5472.514,-3787.657,359.862,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN, 7,5523.643,-3823.486,360.533,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN, 8,5539.182,-3838.393,372.141,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN, 9,5714.259,-3895.436,371.987,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,10,5714.515,-3944.740,371.987,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,11,5715.673,-4019.310,372.152,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,12,5716.523,-4054.907,353.671,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,13,5716.630,-4188.195,354.075,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,14,5716.644,-4205.305,362.825,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,15,5724.548,-4238.222,362.746,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,16,5724.905,-4258.611,374.355,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,17,5720.831,-4331.177,374.023,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,18,5722.675,-4351.540,385.496,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,19,5728.693,-4374.917,386.492,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,20,5717.937,-4385.863,386.191,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,21,5705.368,-4379.375,385.803,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,22,5705.883,-4371.388,385.803,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,23,5714.739,-4352.132,385.560,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,24,5720.831,-4331.177,374.023,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,25,5724.905,-4258.611,374.355,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,26,5724.548,-4238.222,362.746,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,27,5716.644,-4205.305,362.825,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,28,5716.630,-4188.195,354.075,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,29,5716.523,-4054.907,353.671,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,30,5715.673,-4019.310,372.152,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,31,5714.515,-3944.740,371.987,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,32,5714.259,-3895.436,371.987,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,33,5709.297,-3844.293,372.012,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,34,5672.465,-3815.550,373.647,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN*10, 1,5605.440,-3790.634,362.713,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN*10, 2,5579.467,-3789.876,365.829,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN*10, 3,5552.734,-3794.191,362.082,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN*10, 4,5535.410,-3792.923,362.071,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN*10, 5,5472.514,-3787.657,359.862,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN*10, 6,5464.585,-3784.811,362.422,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN*10, 7,5421.301,-3779.266,361.966,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN*10, 8,5386.707,-3755.923,360.458,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN*10, 9,5365.389,-3750.708,360.531,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN*10,10,5344.119,-3764.440,373.096,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN*10,11,5331.768,-3774.679,371.341,'Har''koa''s Kitten'); +-- Areatrigger info +DELETE FROM `areatrigger_involvedrelation` WHERE `quest`=@QUEST; +INSERT INTO `areatrigger_involvedrelation` (`id`,`quest`) VALUES +(5052,@QUEST); +-- Spell Data +DELETE FROM `spell_area` WHERE `spell`=52485 AND `area`=4322; +INSERT INTO `spell_area` (`spell`,`area`,`quest_start`,`quest_end`,`aura_spell`,`racemask`,`gender`,`autocast`) VALUES +(52485,4322,0,12685,0,0,2,1); +-- Creature Texts +DELETE FROM `creature_text` WHERE `entry` IN (@NPC_HARKOA_KITTEN,@NPC_QUETZLUN); +INSERT INTO `creature_text` (`entry`,`groupid`,`id`,`text`,`type`,`language`,`probability`,`emote`,`duration`,`sound`,`comment`) VALUES +(@NPC_HARKOA_KITTEN,0,0,'Thank you for saving me, $N. This is the least that I could do to return the favor. Hold on tight. Here we go.',15,0,100,0,0,0,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,1,0,'This doesn''t look good. Whatever you do, don''t fall off. There''s a ton of nasty things in there!',15,0,100,0,0,0,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,2,0,'Oh no... Quetz''lun is dead! Stay still. We''ll sneak past the prophet.',15,0,100,0,0,0,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,3,0,'We''re spotted! Hang on. We have to get out of here!',15,0,100,0,0,0,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,4,0,'I think we''re safe now. Let''s get back!',15,0,100,0,0,0,'Har''koa''s Kitten'), +(@NPC_HARKOA_KITTEN,5,0,'We made it! Take care, $N, and thanks again!',15,0,100,0,0,0,'Har''koa''s Kitten'), +(@NPC_QUETZLUN,0,0,'What was that? I sense an intruder. Find and kill them!',14,0,100,0,0,0,'Quetz''lun'); +-- --------------------------------------------------------------------------------------------------------------------------------------------------- diff --git a/sql/updates/world/2012_12_07_03_Tracker_Trista.sql b/sql/updates/world/2012_12_07_03_Tracker_Trista.sql deleted file mode 100644 index b717f4e53e8..00000000000 --- a/sql/updates/world/2012_12_07_03_Tracker_Trista.sql +++ /dev/null @@ -1,218 +0,0 @@ --- --------------------------------------------------------------------------------------------------------------------------------------------------- --- Issue 1550: Membership Benefits 9884/9885/9886/9887 --- Add special flags for monthly quests -UPDATE `quest_template` SET `SpecialFlags`=16 WHERE `Id` IN (9884,9885,9886,9887); --- Add missing creature_quesrelation and involvedrealation that were blocking the next quests -DELETE FROM `creature_questrelation` WHERE `quest`=9884; -INSERT INTO `creature_questrelation` (`id`, `quest`) VALUES -(18265,9884); -DELETE FROM `creature_involvedrelation` WHERE `quest`=9884; -INSERT INTO `creature_involvedrelation` (`id`, `quest`) VALUES -(18265,9884); --- --------------------------------------------------------------------------------------------------------------------------------------------------- --- Issue 1944: Fix quest Canyon Chase ID: 12145 --- Checked db and stuff from sniff, as lubomir8 said it had 2 times same credit required, following the alliance version, the fix is this: -UPDATE `quest_template` SET `RequiredNpcOrGo2`=0, `RequiredNpcOrGoCount2`=0 WHERE `Id`=12145; --- --------------------------------------------------------------------------------------------------------------------------------------------------- --- Issue 5971: Revenge for the Vargul --- Closes: #4341 and #2201 --- Revenge for the Vargul (13059) quest fix by Trista --- Thanks to Pitcrawler for helping with some sniffs and suggestions --- Updated by nelegalno and w1sht0l1v3 -SET @Thane_Illskar := 30475; -SET @Volgur := 30483; -SET @Brita := 30484; -SET @ObjectiveCredit := 61779; -- spell, note there are 2 credits -SET @Arbiter := 30501; -- Val"kyr Arbiter -SET @TheDamned := 30523; -- Thane Illskar the Damned -SET @Script := 30475000; -SET @Script1 := 30475001; -SET @Script2 := 30501000; -SET @Summon := 55064; -- this get displayed correctly each time after an active core use it once /first time he start above ground and do all, all rest emerge from groun - core issue with loading addon data/. -SET @Judge := 55063; -- Arbiter - Judge the fallen vrykul, ascending them to Ymirjar or reducing them to vargul. -SET @Challenge := 36851; -SET @Teleport := 34427; -SET @Sword := 192558; --- Increase "TEMP Thane Illskar be present and that he and his champions not be engaged in battle" GOs radius from 10 to 30 -UPDATE `gameobject_template` SET `data1`=30 WHERE `entry` = 300235; --- SAI Thane Illskar -UPDATE `creature_template` SET `unit_flags`=`unit_flags`|4,`AIName`= 'SmartAI' WHERE `entry`=@Thane_Illskar; -DELETE FROM `smart_scripts` WHERE `source_type`=0 AND `entryorguid`=@Thane_Illskar; -DELETE FROM `smart_scripts` WHERE `source_type`=9 AND `entryorguid` IN (@Script,@Script1); -INSERT INTO `smart_scripts` (`entryorguid`,`source_type`,`id`,`link`,`event_type`,`event_phase_mask`,`event_chance`,`event_flags`,`event_param1`,`event_param2`,`event_param3`,`event_param4`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`action_param4`,`action_param5`,`action_param6`,`target_type`,`target_param1`,`target_param2`,`target_param3`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`) VALUES -(@Thane_Illskar,0,0,1,8,0,100,0,@Challenge,0,0,0,85,@ObjectiveCredit,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Thane - On spell hit by Sword Challenge - Invoker spell cast on self objectivecomplete credit'), -(@Thane_Illskar,0,1,0,61,0,100,0,0,0,0,0,80,@Script,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Thane - Linked with event 0 - Start script 00'), -(@Thane_Illskar,0,2,0,38,0,100,0,0,1,0,0,80,@Script1,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Thane - On data set 0 1 - Start script 01'), --- Script 00 -(@Script,9,0,0,0,0,100,0,500,500,0,0,1,0,2000,0,0,0,0,21,60,0,0,0,0,0,0, 'Action 0 - Say text 0'), -(@Script,9,1,0,0,0,100,0,1500,1500,0,0,45,0,1,0,0,0,0,9,@Volgur,0,70,0,0,0,0, 'Action 1 - Set data 0 1 to Volgur to trigger his SAI'), --- Script 01 -(@Script1,9,0,0,0,0,100,0,500,500,0,0,1,1,2000,0,0,0,0,21,60,0,0,0,0,0,0, 'Action 0 - Say text 1'), -(@Script1,9,1,0,0,0,100,0,1500,1500,0,0,45,0,1,0,0,0,0,9,@Brita,0,70,0,0,0,0, 'Action 1 - Set data 0 1 to Brita to trigger her SAI'), --- Continues normal events -(@Thane_Illskar,0,3,4,38,0,100,0,0,2,0,0,12,@Arbiter,2,180000,0,0,0,8,0,0,0,7851.866699,3399.678955,670.993225,3.665521, 'Thane - On Set data 0 2 - Summon Arbiter Val"kyr in air'), -(@Thane_Illskar,0,4,5,61,0,100,0,0,2,0,0,1,2,2000,0,0,0,0,21,50,0,0,0,0,0,0, 'Thane - Linked with event 3 - Say text 2'), -(@Thane_Illskar,0,5,6,61,0,100,0,0,0,0,0,1,3,2000,0,0,0,0,21,50,0,0,0,0,0,0, 'Thane - Linked with event 4 - Say text 3'), -(@Thane_Illskar,0,6,7,61,0,100,0,0,0,0,0,19,258,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Thane - Linked with event 5 - Remove unattackable flag'), -(@Thane_Illskar,0,7,0,61,0,100,0,0,0,0,0,49,0,0,0,0,0,0,21,30,0,0,0,0,0,0, 'Thane - Linked with event 6 - Attack player'), -(@Thane_Illskar,0,8,0,0,0,100,0,2000,6000,8500,15800,11,51779,0,0,0,0,0,2,0,0,0,0,0,0,0,'Thane - IC - Cast spell Frostfire Bolt'), -(@Thane_Illskar,0,9,0,0,0,100,0,2100,8100,2000,9000,11,19816,0,0,0,0,0,0,0,0,0,0,0,0,0,'Thane - IC - Cast spell Fire Ball'), -(@Thane_Illskar,0,10,0,0,0,100,0,4200,10200,1000,10200,11,17145,0,0,0,0,0,2,0,0,0,0,0,0,0,'Thane - IC - Blast Wave'), -(@Thane_Illskar,0,11,0,0,0,100,0,4300,10000,13000,16000,11,20754,0,0,0,0,0,2,0,0,0,0,0,0,0,'Thane - IC - Rain of Fire'), -(@Thane_Illskar,0,12,0,6,0,100,0,0,0,0,0,45,0,1,0,0,0,0,9,@Arbiter,0,70,0,0,0,0, 'Thane - On death - Data set 0 1 on Val"kyr Arbiter'), -(@Thane_Illskar,0,13,14,38,0,100,0,0,3,0,0,11,@Summon,2,0,0,0,0,1,0,0,0,0,0,0,0, 'Thane - Action 0 - Cast Summon'), -(@Thane_Illskar,0,14,0,61,0,100,0,0,0,0,0,47,0,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Thane - Linked with event 13 - Set unseen'), -(@Thane_Illskar,0,15,0,25,0,100,0,0,0,0,0,45,0,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Thane - Data set 0 0'); --- SAI for Volgur -UPDATE `creature_template` SET `AIName`= 'SmartAI' WHERE `entry`=@Volgur; -DELETE FROM `smart_scripts` WHERE `source_type`=0 AND `entryorguid`=@Volgur; -INSERT INTO `smart_scripts` (`entryorguid`,`source_type`,`id`,`link`,`event_type`,`event_phase_mask`,`event_chance`,`event_flags`,`event_param1`,`event_param2`,`event_param3`,`event_param4`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`action_param4`,`action_param5`,`action_param6`,`target_type`,`target_param1`,`target_param2`,`target_param3`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`) VALUES -(@Volgur,0,0,1,38,0,100,0,0,1,0,0,19,256,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Volgur - On data set 0 1 - Remove flag immune to players'), -(@Volgur,0,1,0,61,0,100,0,0,0,0,0,49,0,0,0,0,0,0,21,50,0,0,0,0,0,0, 'Volgur - Linked with event 0 - Attack player'), -(@Volgur,0,2,0,0,0,100,0,5000,5000,30000,31000,11,23262,0,0,0,0,0,2,0,0,0,0,0,0,0,'Volgur - IC - Cast spell Demoralize'), -(@Volgur,0,3,0,0,0,100,0,3000,3000,11000,12800,11,43410,0,0,0,0,0,2,0,0,0,0,0,0,0,'Volgur - IC - Cast spell Chop'), -(@Volgur,0,4,0,9,0,100,0,6,30,15000,20000,11,49758,0,0,0,0,0,2,0,0,0,0,0,0,0,'Volgur - On target in range more than 6 yards - Cast spell Charge'), -(@Volgur,0,5,0,0,0,100,0,8000,8000,15000,18000,11,49807,0,0,0,0,0,2,0,0,0,0,0,0,0,'Volgur - IC - Cast spell Whirlwind'), -(@Volgur,0,6,0,6,0,100,0,0,0,0,0,45,0,1,0,0,0,0,9,@Thane_Illskar,0,80,0,0,0,0, 'Volgur - On death - Dataset 0 1 on Thane'), -(@Volgur,0,7,0,25,0,100,0,0,0,0,0,45,0,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Volgur - On Reset - Data set 0 0'); --- SAI for Brita -UPDATE `creature_template` SET `AIName`= 'SmartAI' WHERE `entry`=@Brita; -DELETE FROM `smart_scripts` WHERE `source_type`=0 AND `entryorguid`=@Brita; -INSERT INTO `smart_scripts` (`entryorguid`,`source_type`,`id`,`link`,`event_type`,`event_phase_mask`,`event_chance`,`event_flags`,`event_param1`,`event_param2`,`event_param3`,`event_param4`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`action_param4`,`action_param5`,`action_param6`,`target_type`,`target_param1`,`target_param2`,`target_param3`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`) VALUES -(@Brita,0,0,1,38,0,100,0,0,1,0,0,19,256,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Brita - On data set 0 1 - Remove flag immune to players'), -(@Brita,0,1,0,61,0,100,0,0,0,0,0,49,0,0,0,0,0,0,21,50,0,0,0,0,0,0, 'Brita - Linked with event 0 - Attack player'), -(@Brita,0,2,0,0,0,100,0,19500,19600,60000,60000,11,43414,0,0,0,0,0,2,0,0,0,0,0,0,0,'Brita - IC - Cast spell Frost trap'), -(@Brita,0,3,0,0,0,100,0,2100,6100,5000,10000,11,44286,0,0,0,0,0,2,0,0,0,0,0,0,0,'Brita - IC - Cast spell Wing Clip'), -(@Brita,0,4,0,0,0,100,0,20000,21000,20000,21000,11,60932,0,0,0,0,0,2,0,0,0,0,0,0,0,'Brita - Linked with event 2 - Cast spell Disengage /Leaps backwards/'), -(@Brita,0,5,6,0,0,100,0,2500,3000,2000,2250,11,60954,1,0,0,0,0,2,0,0,0,0,0,0,0,'Brita - IC - Cast spell Aimed Shot /only out of melee range/'), -(@Brita,0,6,0,61,0,100,0,0,0,0,0,11,49712,0,0,0,0,0,2,0,0,0,0,0,0,0,'Brita - Linked with event 5 - Cast spell Shoot /only out of melee range/'), -(@Brita,0,7,0,6,0,100,0,0,0,0,0,45,0,2,0,0,0,0,9,@Thane_Illskar,0,80,0,0,0,0, 'Brita - On death - Dataset 0 2 on Thane'), -(@Brita,0,8,0,25,0,100,0,0,0,0,0,45,0,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Brita - On reset - Data set 0 0'); --- SAI for Arbiter -DELETE FROM `creature_template_addon` WHERE `entry`=@Arbiter; -INSERT INTO `creature_template_addon` (`entry`, `path_id`, `mount`, `bytes1`, `bytes2`, `emote`, `auras`) -VALUES (@Arbiter, 0, 0, 33554432, 1, 0, NULL); -UPDATE `creature_template` SET `AIName`= 'SmartAI' WHERE `entry`=@Arbiter; -DELETE FROM `smart_scripts` WHERE `source_type`=0 AND `entryorguid`=@Arbiter; -DELETE FROM `smart_scripts` WHERE `source_type`=9 AND `entryorguid`=@Script2; -INSERT INTO `smart_scripts` (`entryorguid`,`source_type`,`id`,`link`,`event_type`,`event_phase_mask`,`event_chance`,`event_flags`,`event_param1`,`event_param2`,`event_param3`,`event_param4`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`action_param4`,`action_param5`,`action_param6`,`target_type`,`target_param1`,`target_param2`,`target_param3`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`) VALUES -(@Arbiter,0,0,0,54,0,100,0,0,0,0,0,11,@Teleport,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Arbiter - On spawn - Cast Ethereal Teleport on self'), -(@Arbiter,0,1,0,38,0,100,0,0,1,0,0,80,@Script2,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Arbiter - On Data set 0 1 - Follow Thane Illskar'), --- Start script 00 (Script2) -(@Script2,9,0,0,0,0,100,0,0,0,0,0,69,1,0,0,0,0,0,0,0,0,0,7835.128906,3389.118408,655.098083,3.915739, 'Action 0 - Move to pos (near Illskar body)'), -(@Script2,9,1,0,0,0,100,0,2250,2250,0,0,1,0,1000,0,0,0,0,1,0,0,0,0,0,0,0, 'Action 1 - Say text 0'), -(@Script2,9,2,0,0,0,100,0,2250,2250,0,0,1,1,2000,0,0,0,0,1,0,0,0,0,0,0,0, 'Action 2 - Say text 1'), -(@Script2,9,3,0,0,0,100,0,0,0,0,0,11,@Judge,0,0,0,0,0,10,121005,@Thane_Illskar,0,0,0,0,0, 'Action 3 - Cast spell Arbiter Judgment /visual stuff/'), -(@Script2,9,4,0,0,0,100,0,5000,5000,0,0,45,0,3,0,0,0,0,10,121005,@Thane_Illskar,0,0,0,0,0, 'Action 4 - Data set 0 3 on Thane'), -(@Script2,9,5,0,0,0,100,0,0,0,0,0,69,1,0,0,0,0,0,0,0,0,0,7851.866699,3399.678955,670.993225,3.665521, 'Action 5 - Move to pos /starting one/'), -(@Script2,9,6,0,0,0,100,0,4000,4000,0,0,45,0,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Action 6 - Data set 0 0'), -(@Script2,9,7,0,0,0,100,0,0,0,0,0,78,0,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Action 7 - Reset'), -(@Script2,9,8,0,0,0,100,0,0,0,0,0,47,0,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Action 8 - Set unseen'), -(@Script2,9,9,0,0,0,100,0,0,0,0,0,41,1,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Action 9 - Despawn'); --- SAI for Thane Illskar the Damned and creature_template_addon data -DELETE FROM `creature_template_addon` WHERE `entry`=@TheDamned; -INSERT INTO `creature_template_addon` (`entry`, `path_id`, `mount`, `bytes1`, `bytes2`, `emote`, `auras`) VALUES -(@TheDamned, 0, 0, 9, 1, 0, NULL); -UPDATE `creature_template` SET `unit_flags`=33024,`faction_A`=1885,`faction_H`=1885,`AIName`= 'SmartAI' WHERE `entry`=@TheDamned; -DELETE FROM `smart_scripts` WHERE `source_type`=0 AND `entryorguid`=@TheDamned; -INSERT INTO `smart_scripts` (`entryorguid`,`source_type`,`id`,`link`,`event_type`,`event_phase_mask`,`event_chance`,`event_flags`,`event_param1`,`event_param2`,`event_param3`,`event_param4`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`action_param4`,`action_param5`,`action_param6`,`target_type`,`target_param1`,`target_param2`,`target_param3`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`) VALUES -(@TheDamned,0,0,1,54,0,100,0,0,0,0,0,91,9,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Thane Illskar the Damned - On summon - Remove field byte that makes creature submurged under ground (to create emerge on surface effect)'), -(@TheDamned,0,1,2,61,0,100,0,0,0,0,0,1,0,1000,0,0,0,0,1,0,0,0,0,0,0,0, 'Thane Illskar the Damned - Linked with event 1 - Say text 0'), -(@TheDamned,0,2,3,61,0,100,0,0,0,0,0,66,0,0,0,0,0,0,8,0,0,0,0,0,0,0.9, 'Thane Illskar the Damned - Linked with event 2 - Set orientation to look towards Arbiter'), -(@TheDamned,0,3,0,61,0,100,0,0,0,0,0,90,8,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Thane Illskar the Damned - Linked with event 3 - Set unit field bytes for creature kneel state'); --- Add conditions for Judge -DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=13 AND `SourceEntry`=@Judge; -INSERT INTO `conditions` (`SourceTypeOrReferenceId`,`SourceGroup`,`SourceEntry`,`SourceId`,`ElseGroup`,`ConditionTypeOrReference`,`ConditionTarget`,`ConditionValue1`,`ConditionValue2`,`ConditionValue3`,`NegativeCondition` ,`ErrorTextId`,`ScriptName`,`Comment`) VALUES -(13,1,@Judge,0,0,31,0,3,@Thane_Illskar,0,0,0,'','Judge can target only Illskar'); --- Add conditions for Challenge - player can only cast it, if no sword is already on ground /per 3 minutes/ -DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=17 AND `SourceEntry`=@Challenge; -INSERT INTO `conditions` (`SourceTypeOrReferenceId`,`SourceGroup`,`SourceEntry`,`SourceId`,`ElseGroup`,`ConditionTypeOrReference`,`ConditionTarget`,`ConditionValue1`,`ConditionValue2`,`ConditionValue3`,`NegativeCondition` ,`ErrorTextId`,`ScriptName`,`Comment`) VALUES -(17,0,@Challenge,0,0,30,0,@Sword,30,0,1,0,'','Challenge can be used only, if no aura present from it'); --- Texts -DELETE FROM `creature_text` WHERE `entry` IN (@Thane_Illskar,@Arbiter,@TheDamned); -INSERT INTO `creature_text` (`entry`,`groupid`,`id`,`text`,`type`,`language`,`probability`,`emote`,`duration`,`sound`,`comment`) VALUES -(@Thane_Illskar,0,0,'Bethod''s Sword?!! Very well, $r, I accept your challenge. But first, you must best my champions. Volgur! Squash this insect!',14,0,100,15,2000,0,'Thane'), -(@Thane_Illskar,1,0,'Brita, create a pincushion of this puny $c!',14,0,100,22,2000,0,'Thane'), -(@Thane_Illskar,2,0,'You may have defeated my champions, $c. I am something else entirely.',14,0,100,66,2000,0,'Thane'), -(@Thane_Illskar,3,0,'Pray to your gods for a quick death.',14,0,100,53,2000,0,'Thane'), -(@Arbiter,0,0,'Thane Illskar, you were challenged to honorable combat and failed.',14,0,100,0,2000,0,'Arbiter'), -(@Arbiter,1,0,'You have been found wanting and are judged accordingly. Now rise, Thane Illskar the Damned!',14,0,100,0,2000,0,'Arbiter'), -(@TheDamned,0,0,'NOOOOOOOOOOOOOOOOOO!',14,0,100,15,2000,0,'Illskar the Damned'); --- --------------------------------------------------------------------------------------------------------------------------------------------------- --- Issue 5928: Quests 10305, 10306, 10307 and 10182 --- Closes these issues: #3797 #1965 #1966 #1968 #1967 --- Implement [Q]{A/H} Abjurist Belmara ID: 10305 & [Q]{A/H} Conjurer Luminrath ID: 10306 & --- [Q]{A/H} Cohlien Frostweaver: 10307 & [Q]{A/H} Battle-Mage Dathric: 10182 --- NPCs -SET @Belmara := 19546; -- The required npc to be summoned to thank the player, give credit and despawn -SET @Luminrath := 19580; -- The required npc to be summoned to thank the player, give credit and despawn /with cape/ -SET @LCapeless := 19544; -- /without cape/ -SET @Dathric := 19543; -- The required npc to be summoned to thank the player, give credit and despawn /with hat version/ -SET @Frostweaver := 19579; -- The required npc to be summoned to thank the player, give credit and despawn /with hat version/ -SET @FHatless := 19545; -- /without hat/ --- Involved spells and credits -SET @Book := 34140; -- The required spell that triggers the event below to summon the npc to give credit -SET @BelmaraCredit := 19547; -SET @Mantle := 34142; -- The required spell that triggers the event below to summon the npc to give credit -SET @LuminrathCredit := 19548; -SET @Hat := 34144; -- The required spell that triggers the event below to summon the npc to give credit -SET @FrostweaverCredit := 19550; -SET @Weapon := 34141; -- The required spell that triggers the event below to summon the npc to give credit -SET @DathricCredit := 19549; --- Removes the required spell since it doesn't exist in dbc, it's some random made error most likely, --- on top of that spells values were copied from quest template entry (huh?, anyway this field is deprecated)... -UPDATE `quest_template` SET `RequiredSpellCast1`=0 WHERE `Id` IN (10305,10306,10307); -UPDATE `quest_template` SET `RequiredSpellCast2`=0 WHERE `Id`=10182; --- Add SAI and db updates for related npcs -UPDATE `creature_template` SET `AIName`= 'SmartAI' WHERE `entry` IN (@Belmara,@Luminrath,@LCapeless,@Dathric,@Frostweaver,@FHatless); -UPDATE `creature_template` SET `maxlevel`=68,`minlevel`=68,`unit_class`=2 WHERE `entry`= @Luminrath; -UPDATE `creature_template` SET `maxlevel`=68,`minlevel`=68,`unit_class`=2 WHERE `entry`= @Frostweaver; -DELETE FROM `creature_ai_scripts` WHERE `creature_id` IN (@Belmara,@Luminrath,@LCapeless,@Dathric,@Frostweaver,@FHatless); -DELETE FROM `smart_scripts` WHERE `source_type`=0 AND `entryorguid` IN (@Belmara,@Luminrath,@LCapeless,@Dathric,@Frostweaver,@FHatless); -INSERT INTO `smart_scripts` (`entryorguid`,`source_type`,`id`,`link`,`event_type`,`event_phase_mask`,`event_chance`,`event_flags`,`event_param1`,`event_param2`,`event_param3`,`event_param4`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`action_param4`,`action_param5`,`action_param6`,`target_type`,`target_param1`,`target_param2`,`target_param3`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`) VALUES -(@Belmara,0,0,1,54,0,100,0,0,0,0,0,2,35,0,0,0,0,0,1,0,0,0,0,0,0,0,'Ajdurist Belmara - On creature summoned - Switch faction to friendly'), -(@Belmara,0,1,2,61,0,100,0,0,0,0,0,1,0,1000,0,0,0,0,1,0,0,0,0,0,0,0,'Ajdurist Belmara - Linked with event 0 - Say text 0'), -(@Belmara,0,2,0,61,0,100,0,0,0,0,0,33,@BelmaraCredit,0,0,0,0,0,23,0,0,0,0,0,0,0,'Ajdurist Belmara - Linked with event 1 - Call killcredit to player'), -(@Belmara,0,3,0,4,0,100,0,0,0,0,0,11,12544,0,0,0,0,0,1,0,0,0,0,0,0,0,'Ajdurist Belmara - On aggro - Cast to self Frost armor'), -(@Belmara,0,4,0,0,0,100,0,2000,5000,12000,22000,11,17740,0,0,0,0,0,1,0,0,0,0,0,0,0,'Ajdurist Belmara - IC - Cast to self Mana shield'), -(@Belmara,0,5,0,0,0,100,0,0,6000,2500,8000,11,34447,0,0,0,0,0,2,0,0,0,0,0,0,0,'Ajdurist Belmara - IC - Cast Arcane missles'), -(@Belmara,0,6,0,25,0,100,0,0,0,0,0,28,12544,0,0,0,0,0,1,0,0,0,0,0,0,0,'Ajdurist Belmara - On reset - Remove aura from Frost Armor'), --- Luminrath /with cape/ -(@Luminrath,0,0,0,54,0,100,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,'Conjurer Luminrath - On creature summoned - Say text 0'), -(@Luminrath,0,1,2,61,0,100,0,0,0,0,0,1,1,1000,0,0,0,0,1,0,0,0,0,0,0,0,'Conjurer Luminrath - Linked with event 0 - Say text 1'), -(@Luminrath,0,2,0,61,0,100,0,0,0,0,0,33,@LuminrathCredit,0,0,0,0,0,21,20,0,0,0,0,0,0,'Conjurer Luminrath - Linked with event 1 - Call credit to player'), --- Luminrath /without cape/ -(@LCapeless,0,0,0,0,0,100,0,0,2500,1000,7500,11,9532,0,0,0,0,0,2,0,0,0,0,0,0,0,'Conjurer Luminrath - IC - Cast Lightening bolt'), -(@LCapeless,0,1,0,0,0,100,0,0,5000,15000,30000,11,36110,0,0,0,0,0,2,0,0,0,0,0,0,0,'Conjurer Luminrath - IC - Cast Summon Dancing Swords'), -(@LCapeless,0,2,0,0,0,100,0,0,10000,5000,15000,11,36109,0,0,0,0,0,1,0,0,0,0,0,0,0,'Conjurer Luminrath - IC - Cast Blink'), --- Frostweaver /without hat/ -(@FHatless,0,0,0,0,0,100,0,0,1000,25000,30000,11,33245,0,0,0,0,0,1,0,0,0,0,0,0,0,'Cohlien Frostweaver - IC - Cast Ice Barrier on self'), -(@FHatless,0,1,0,0,0,100,0,0,10000,2500,9500,11,11831,0,0,0,0,0,2,0,0,0,0,0,0,0,'Cohlien Frostweaver - IC - Cast Frost Nova'), -(@FHatless,0,2,0,0,0,100,0,0,2500,2500,11000,11,9672,0,0,0,0,0,2,0,0,0,0,0,0,0,'Cohlien Frostweaver - IC - Cast Frostbolt'), --- Frostweaver /with hat/ -(@Frostweaver,0,0,1,54,0,100,0,0,0,0,0,1,0,1000,0,0,0,0,1,0,0,0,0,0,0,0,'Cohlien Frostweaver - On creature summoned - Say text 0'), -(@Frostweaver,0,1,0,61,0,100,0,0,0,0,0,33,@FrostweaverCredit,0,0,0,0,0,21,20,0,0,0,0,0,0,'Cohlien Frostweaver - Linked with event 0 - Call credit to player'), --- Dathric -(@Dathric,0,0,1,54,0,100,0,0,0,0,0,2,35,0,0,0,0,0,1,0,0,0,0,0,0,0,'Dathric - On creature summoned - Switch faction to friendly'), -(@Dathric,0,1,2,61,0,100,0,0,0,0,0,1,0,1000,0,0,0,0,1,0,0,0,0,0,0,0,'Dathric - Linked with event 0 - Say text 0'), -(@Dathric,0,2,0,61,0,100,0,0,0,0,0,33,@DathricCredit,0,0,0,0,0,21,20,0,0,0,0,0,0,'Dathric - Linked with event 1 - Call credit to player'), -(@Dathric,0,3,0,0,0,100,0,0,3000,3000,8000,11,36104,0,0,0,0,0,2,0,0,0,0,0,0,0,'Dathric - IC - Cast Torrent of Flames'), -(@Dathric,0,4,0,0,0,100,0,0,2500,8500,12000,11,17273,0,0,0,0,0,2,0,0,0,0,0,0,0,'Dathric - IC - Cast Pyroblast'); --- NPCs texts -DELETE FROM `creature_text` WHERE `entry` IN (@Dathric,@Frostweaver,@Luminrath,@Belmara); -INSERT INTO `creature_text` (`entry`,`groupid`,`id`,`text`,`type`,`language`,`probability`,`emote`,`duration`,`sound`,`comment`) VALUES -(@Dathric,0,0,'I don''t know what I was thinking, going out without my sword. I would''ve put it on if I''d seen it here...',12,0,100,1,0,0,'Dathric gratitude'), --- Frostweaver's text -(@Frostweaver,0,0,'Phew! There''s my lucky hat. I''ve been looking for it everywhere.',12,0,100,1,0,0,'Frostweaver gratitude'), --- Luminrath's text -(@Luminrath,0,0,'I can''t possibly go out without my cloak. I hope it''s in here...',12,0,100,1,0,0,'Luminrath gratitude'), -(@Luminrath,1,0,'There it is! I could''ve sworn it wasn''t here last time I checked...',12,0,100,1,0,0,'Luminrath gratitude'), --- Belmara's text -(@Belmara,0,0,'I can''t sleep without a good bedtime story. Now I''m certain to rest well.',12,0,100,1,0,0,'Belmara gratitude'); --- Gives support for send_event scripts in quest related spells -DELETE FROM `event_scripts` WHERE `id` IN (12607,12608,12609,12610); -INSERT INTO `event_scripts` (`id`,`delay`,`command`,`datalong`,`datalong2`,`x`,`y`,`z`,`o`) VALUES -(12607,0,10,@Belmara,25000,2242.230957,2389.818115,112.811760,2.941585), -(12608,0,10,@Dathric,25000,2228.003662,2314.015869,89.643219,4.822619), -(12609,0,10,@Luminrath,25000,2192.744873,2340.836182,90.353905,4.682819), -(12610,0,10,@Frostweaver,25000,2203.629883,2413.392090,109.257515,3.961037); diff --git a/sql/updates/world/2012_12_07_03_world_tracker_trista.sql b/sql/updates/world/2012_12_07_03_world_tracker_trista.sql new file mode 100644 index 00000000000..b717f4e53e8 --- /dev/null +++ b/sql/updates/world/2012_12_07_03_world_tracker_trista.sql @@ -0,0 +1,218 @@ +-- --------------------------------------------------------------------------------------------------------------------------------------------------- +-- Issue 1550: Membership Benefits 9884/9885/9886/9887 +-- Add special flags for monthly quests +UPDATE `quest_template` SET `SpecialFlags`=16 WHERE `Id` IN (9884,9885,9886,9887); +-- Add missing creature_quesrelation and involvedrealation that were blocking the next quests +DELETE FROM `creature_questrelation` WHERE `quest`=9884; +INSERT INTO `creature_questrelation` (`id`, `quest`) VALUES +(18265,9884); +DELETE FROM `creature_involvedrelation` WHERE `quest`=9884; +INSERT INTO `creature_involvedrelation` (`id`, `quest`) VALUES +(18265,9884); +-- --------------------------------------------------------------------------------------------------------------------------------------------------- +-- Issue 1944: Fix quest Canyon Chase ID: 12145 +-- Checked db and stuff from sniff, as lubomir8 said it had 2 times same credit required, following the alliance version, the fix is this: +UPDATE `quest_template` SET `RequiredNpcOrGo2`=0, `RequiredNpcOrGoCount2`=0 WHERE `Id`=12145; +-- --------------------------------------------------------------------------------------------------------------------------------------------------- +-- Issue 5971: Revenge for the Vargul +-- Closes: #4341 and #2201 +-- Revenge for the Vargul (13059) quest fix by Trista +-- Thanks to Pitcrawler for helping with some sniffs and suggestions +-- Updated by nelegalno and w1sht0l1v3 +SET @Thane_Illskar := 30475; +SET @Volgur := 30483; +SET @Brita := 30484; +SET @ObjectiveCredit := 61779; -- spell, note there are 2 credits +SET @Arbiter := 30501; -- Val"kyr Arbiter +SET @TheDamned := 30523; -- Thane Illskar the Damned +SET @Script := 30475000; +SET @Script1 := 30475001; +SET @Script2 := 30501000; +SET @Summon := 55064; -- this get displayed correctly each time after an active core use it once /first time he start above ground and do all, all rest emerge from groun - core issue with loading addon data/. +SET @Judge := 55063; -- Arbiter - Judge the fallen vrykul, ascending them to Ymirjar or reducing them to vargul. +SET @Challenge := 36851; +SET @Teleport := 34427; +SET @Sword := 192558; +-- Increase "TEMP Thane Illskar be present and that he and his champions not be engaged in battle" GOs radius from 10 to 30 +UPDATE `gameobject_template` SET `data1`=30 WHERE `entry` = 300235; +-- SAI Thane Illskar +UPDATE `creature_template` SET `unit_flags`=`unit_flags`|4,`AIName`= 'SmartAI' WHERE `entry`=@Thane_Illskar; +DELETE FROM `smart_scripts` WHERE `source_type`=0 AND `entryorguid`=@Thane_Illskar; +DELETE FROM `smart_scripts` WHERE `source_type`=9 AND `entryorguid` IN (@Script,@Script1); +INSERT INTO `smart_scripts` (`entryorguid`,`source_type`,`id`,`link`,`event_type`,`event_phase_mask`,`event_chance`,`event_flags`,`event_param1`,`event_param2`,`event_param3`,`event_param4`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`action_param4`,`action_param5`,`action_param6`,`target_type`,`target_param1`,`target_param2`,`target_param3`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`) VALUES +(@Thane_Illskar,0,0,1,8,0,100,0,@Challenge,0,0,0,85,@ObjectiveCredit,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Thane - On spell hit by Sword Challenge - Invoker spell cast on self objectivecomplete credit'), +(@Thane_Illskar,0,1,0,61,0,100,0,0,0,0,0,80,@Script,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Thane - Linked with event 0 - Start script 00'), +(@Thane_Illskar,0,2,0,38,0,100,0,0,1,0,0,80,@Script1,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Thane - On data set 0 1 - Start script 01'), +-- Script 00 +(@Script,9,0,0,0,0,100,0,500,500,0,0,1,0,2000,0,0,0,0,21,60,0,0,0,0,0,0, 'Action 0 - Say text 0'), +(@Script,9,1,0,0,0,100,0,1500,1500,0,0,45,0,1,0,0,0,0,9,@Volgur,0,70,0,0,0,0, 'Action 1 - Set data 0 1 to Volgur to trigger his SAI'), +-- Script 01 +(@Script1,9,0,0,0,0,100,0,500,500,0,0,1,1,2000,0,0,0,0,21,60,0,0,0,0,0,0, 'Action 0 - Say text 1'), +(@Script1,9,1,0,0,0,100,0,1500,1500,0,0,45,0,1,0,0,0,0,9,@Brita,0,70,0,0,0,0, 'Action 1 - Set data 0 1 to Brita to trigger her SAI'), +-- Continues normal events +(@Thane_Illskar,0,3,4,38,0,100,0,0,2,0,0,12,@Arbiter,2,180000,0,0,0,8,0,0,0,7851.866699,3399.678955,670.993225,3.665521, 'Thane - On Set data 0 2 - Summon Arbiter Val"kyr in air'), +(@Thane_Illskar,0,4,5,61,0,100,0,0,2,0,0,1,2,2000,0,0,0,0,21,50,0,0,0,0,0,0, 'Thane - Linked with event 3 - Say text 2'), +(@Thane_Illskar,0,5,6,61,0,100,0,0,0,0,0,1,3,2000,0,0,0,0,21,50,0,0,0,0,0,0, 'Thane - Linked with event 4 - Say text 3'), +(@Thane_Illskar,0,6,7,61,0,100,0,0,0,0,0,19,258,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Thane - Linked with event 5 - Remove unattackable flag'), +(@Thane_Illskar,0,7,0,61,0,100,0,0,0,0,0,49,0,0,0,0,0,0,21,30,0,0,0,0,0,0, 'Thane - Linked with event 6 - Attack player'), +(@Thane_Illskar,0,8,0,0,0,100,0,2000,6000,8500,15800,11,51779,0,0,0,0,0,2,0,0,0,0,0,0,0,'Thane - IC - Cast spell Frostfire Bolt'), +(@Thane_Illskar,0,9,0,0,0,100,0,2100,8100,2000,9000,11,19816,0,0,0,0,0,0,0,0,0,0,0,0,0,'Thane - IC - Cast spell Fire Ball'), +(@Thane_Illskar,0,10,0,0,0,100,0,4200,10200,1000,10200,11,17145,0,0,0,0,0,2,0,0,0,0,0,0,0,'Thane - IC - Blast Wave'), +(@Thane_Illskar,0,11,0,0,0,100,0,4300,10000,13000,16000,11,20754,0,0,0,0,0,2,0,0,0,0,0,0,0,'Thane - IC - Rain of Fire'), +(@Thane_Illskar,0,12,0,6,0,100,0,0,0,0,0,45,0,1,0,0,0,0,9,@Arbiter,0,70,0,0,0,0, 'Thane - On death - Data set 0 1 on Val"kyr Arbiter'), +(@Thane_Illskar,0,13,14,38,0,100,0,0,3,0,0,11,@Summon,2,0,0,0,0,1,0,0,0,0,0,0,0, 'Thane - Action 0 - Cast Summon'), +(@Thane_Illskar,0,14,0,61,0,100,0,0,0,0,0,47,0,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Thane - Linked with event 13 - Set unseen'), +(@Thane_Illskar,0,15,0,25,0,100,0,0,0,0,0,45,0,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Thane - Data set 0 0'); +-- SAI for Volgur +UPDATE `creature_template` SET `AIName`= 'SmartAI' WHERE `entry`=@Volgur; +DELETE FROM `smart_scripts` WHERE `source_type`=0 AND `entryorguid`=@Volgur; +INSERT INTO `smart_scripts` (`entryorguid`,`source_type`,`id`,`link`,`event_type`,`event_phase_mask`,`event_chance`,`event_flags`,`event_param1`,`event_param2`,`event_param3`,`event_param4`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`action_param4`,`action_param5`,`action_param6`,`target_type`,`target_param1`,`target_param2`,`target_param3`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`) VALUES +(@Volgur,0,0,1,38,0,100,0,0,1,0,0,19,256,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Volgur - On data set 0 1 - Remove flag immune to players'), +(@Volgur,0,1,0,61,0,100,0,0,0,0,0,49,0,0,0,0,0,0,21,50,0,0,0,0,0,0, 'Volgur - Linked with event 0 - Attack player'), +(@Volgur,0,2,0,0,0,100,0,5000,5000,30000,31000,11,23262,0,0,0,0,0,2,0,0,0,0,0,0,0,'Volgur - IC - Cast spell Demoralize'), +(@Volgur,0,3,0,0,0,100,0,3000,3000,11000,12800,11,43410,0,0,0,0,0,2,0,0,0,0,0,0,0,'Volgur - IC - Cast spell Chop'), +(@Volgur,0,4,0,9,0,100,0,6,30,15000,20000,11,49758,0,0,0,0,0,2,0,0,0,0,0,0,0,'Volgur - On target in range more than 6 yards - Cast spell Charge'), +(@Volgur,0,5,0,0,0,100,0,8000,8000,15000,18000,11,49807,0,0,0,0,0,2,0,0,0,0,0,0,0,'Volgur - IC - Cast spell Whirlwind'), +(@Volgur,0,6,0,6,0,100,0,0,0,0,0,45,0,1,0,0,0,0,9,@Thane_Illskar,0,80,0,0,0,0, 'Volgur - On death - Dataset 0 1 on Thane'), +(@Volgur,0,7,0,25,0,100,0,0,0,0,0,45,0,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Volgur - On Reset - Data set 0 0'); +-- SAI for Brita +UPDATE `creature_template` SET `AIName`= 'SmartAI' WHERE `entry`=@Brita; +DELETE FROM `smart_scripts` WHERE `source_type`=0 AND `entryorguid`=@Brita; +INSERT INTO `smart_scripts` (`entryorguid`,`source_type`,`id`,`link`,`event_type`,`event_phase_mask`,`event_chance`,`event_flags`,`event_param1`,`event_param2`,`event_param3`,`event_param4`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`action_param4`,`action_param5`,`action_param6`,`target_type`,`target_param1`,`target_param2`,`target_param3`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`) VALUES +(@Brita,0,0,1,38,0,100,0,0,1,0,0,19,256,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Brita - On data set 0 1 - Remove flag immune to players'), +(@Brita,0,1,0,61,0,100,0,0,0,0,0,49,0,0,0,0,0,0,21,50,0,0,0,0,0,0, 'Brita - Linked with event 0 - Attack player'), +(@Brita,0,2,0,0,0,100,0,19500,19600,60000,60000,11,43414,0,0,0,0,0,2,0,0,0,0,0,0,0,'Brita - IC - Cast spell Frost trap'), +(@Brita,0,3,0,0,0,100,0,2100,6100,5000,10000,11,44286,0,0,0,0,0,2,0,0,0,0,0,0,0,'Brita - IC - Cast spell Wing Clip'), +(@Brita,0,4,0,0,0,100,0,20000,21000,20000,21000,11,60932,0,0,0,0,0,2,0,0,0,0,0,0,0,'Brita - Linked with event 2 - Cast spell Disengage /Leaps backwards/'), +(@Brita,0,5,6,0,0,100,0,2500,3000,2000,2250,11,60954,1,0,0,0,0,2,0,0,0,0,0,0,0,'Brita - IC - Cast spell Aimed Shot /only out of melee range/'), +(@Brita,0,6,0,61,0,100,0,0,0,0,0,11,49712,0,0,0,0,0,2,0,0,0,0,0,0,0,'Brita - Linked with event 5 - Cast spell Shoot /only out of melee range/'), +(@Brita,0,7,0,6,0,100,0,0,0,0,0,45,0,2,0,0,0,0,9,@Thane_Illskar,0,80,0,0,0,0, 'Brita - On death - Dataset 0 2 on Thane'), +(@Brita,0,8,0,25,0,100,0,0,0,0,0,45,0,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Brita - On reset - Data set 0 0'); +-- SAI for Arbiter +DELETE FROM `creature_template_addon` WHERE `entry`=@Arbiter; +INSERT INTO `creature_template_addon` (`entry`, `path_id`, `mount`, `bytes1`, `bytes2`, `emote`, `auras`) +VALUES (@Arbiter, 0, 0, 33554432, 1, 0, NULL); +UPDATE `creature_template` SET `AIName`= 'SmartAI' WHERE `entry`=@Arbiter; +DELETE FROM `smart_scripts` WHERE `source_type`=0 AND `entryorguid`=@Arbiter; +DELETE FROM `smart_scripts` WHERE `source_type`=9 AND `entryorguid`=@Script2; +INSERT INTO `smart_scripts` (`entryorguid`,`source_type`,`id`,`link`,`event_type`,`event_phase_mask`,`event_chance`,`event_flags`,`event_param1`,`event_param2`,`event_param3`,`event_param4`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`action_param4`,`action_param5`,`action_param6`,`target_type`,`target_param1`,`target_param2`,`target_param3`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`) VALUES +(@Arbiter,0,0,0,54,0,100,0,0,0,0,0,11,@Teleport,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Arbiter - On spawn - Cast Ethereal Teleport on self'), +(@Arbiter,0,1,0,38,0,100,0,0,1,0,0,80,@Script2,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Arbiter - On Data set 0 1 - Follow Thane Illskar'), +-- Start script 00 (Script2) +(@Script2,9,0,0,0,0,100,0,0,0,0,0,69,1,0,0,0,0,0,0,0,0,0,7835.128906,3389.118408,655.098083,3.915739, 'Action 0 - Move to pos (near Illskar body)'), +(@Script2,9,1,0,0,0,100,0,2250,2250,0,0,1,0,1000,0,0,0,0,1,0,0,0,0,0,0,0, 'Action 1 - Say text 0'), +(@Script2,9,2,0,0,0,100,0,2250,2250,0,0,1,1,2000,0,0,0,0,1,0,0,0,0,0,0,0, 'Action 2 - Say text 1'), +(@Script2,9,3,0,0,0,100,0,0,0,0,0,11,@Judge,0,0,0,0,0,10,121005,@Thane_Illskar,0,0,0,0,0, 'Action 3 - Cast spell Arbiter Judgment /visual stuff/'), +(@Script2,9,4,0,0,0,100,0,5000,5000,0,0,45,0,3,0,0,0,0,10,121005,@Thane_Illskar,0,0,0,0,0, 'Action 4 - Data set 0 3 on Thane'), +(@Script2,9,5,0,0,0,100,0,0,0,0,0,69,1,0,0,0,0,0,0,0,0,0,7851.866699,3399.678955,670.993225,3.665521, 'Action 5 - Move to pos /starting one/'), +(@Script2,9,6,0,0,0,100,0,4000,4000,0,0,45,0,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Action 6 - Data set 0 0'), +(@Script2,9,7,0,0,0,100,0,0,0,0,0,78,0,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Action 7 - Reset'), +(@Script2,9,8,0,0,0,100,0,0,0,0,0,47,0,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Action 8 - Set unseen'), +(@Script2,9,9,0,0,0,100,0,0,0,0,0,41,1,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Action 9 - Despawn'); +-- SAI for Thane Illskar the Damned and creature_template_addon data +DELETE FROM `creature_template_addon` WHERE `entry`=@TheDamned; +INSERT INTO `creature_template_addon` (`entry`, `path_id`, `mount`, `bytes1`, `bytes2`, `emote`, `auras`) VALUES +(@TheDamned, 0, 0, 9, 1, 0, NULL); +UPDATE `creature_template` SET `unit_flags`=33024,`faction_A`=1885,`faction_H`=1885,`AIName`= 'SmartAI' WHERE `entry`=@TheDamned; +DELETE FROM `smart_scripts` WHERE `source_type`=0 AND `entryorguid`=@TheDamned; +INSERT INTO `smart_scripts` (`entryorguid`,`source_type`,`id`,`link`,`event_type`,`event_phase_mask`,`event_chance`,`event_flags`,`event_param1`,`event_param2`,`event_param3`,`event_param4`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`action_param4`,`action_param5`,`action_param6`,`target_type`,`target_param1`,`target_param2`,`target_param3`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`) VALUES +(@TheDamned,0,0,1,54,0,100,0,0,0,0,0,91,9,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Thane Illskar the Damned - On summon - Remove field byte that makes creature submurged under ground (to create emerge on surface effect)'), +(@TheDamned,0,1,2,61,0,100,0,0,0,0,0,1,0,1000,0,0,0,0,1,0,0,0,0,0,0,0, 'Thane Illskar the Damned - Linked with event 1 - Say text 0'), +(@TheDamned,0,2,3,61,0,100,0,0,0,0,0,66,0,0,0,0,0,0,8,0,0,0,0,0,0,0.9, 'Thane Illskar the Damned - Linked with event 2 - Set orientation to look towards Arbiter'), +(@TheDamned,0,3,0,61,0,100,0,0,0,0,0,90,8,0,0,0,0,0,1,0,0,0,0,0,0,0, 'Thane Illskar the Damned - Linked with event 3 - Set unit field bytes for creature kneel state'); +-- Add conditions for Judge +DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=13 AND `SourceEntry`=@Judge; +INSERT INTO `conditions` (`SourceTypeOrReferenceId`,`SourceGroup`,`SourceEntry`,`SourceId`,`ElseGroup`,`ConditionTypeOrReference`,`ConditionTarget`,`ConditionValue1`,`ConditionValue2`,`ConditionValue3`,`NegativeCondition` ,`ErrorTextId`,`ScriptName`,`Comment`) VALUES +(13,1,@Judge,0,0,31,0,3,@Thane_Illskar,0,0,0,'','Judge can target only Illskar'); +-- Add conditions for Challenge - player can only cast it, if no sword is already on ground /per 3 minutes/ +DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=17 AND `SourceEntry`=@Challenge; +INSERT INTO `conditions` (`SourceTypeOrReferenceId`,`SourceGroup`,`SourceEntry`,`SourceId`,`ElseGroup`,`ConditionTypeOrReference`,`ConditionTarget`,`ConditionValue1`,`ConditionValue2`,`ConditionValue3`,`NegativeCondition` ,`ErrorTextId`,`ScriptName`,`Comment`) VALUES +(17,0,@Challenge,0,0,30,0,@Sword,30,0,1,0,'','Challenge can be used only, if no aura present from it'); +-- Texts +DELETE FROM `creature_text` WHERE `entry` IN (@Thane_Illskar,@Arbiter,@TheDamned); +INSERT INTO `creature_text` (`entry`,`groupid`,`id`,`text`,`type`,`language`,`probability`,`emote`,`duration`,`sound`,`comment`) VALUES +(@Thane_Illskar,0,0,'Bethod''s Sword?!! Very well, $r, I accept your challenge. But first, you must best my champions. Volgur! Squash this insect!',14,0,100,15,2000,0,'Thane'), +(@Thane_Illskar,1,0,'Brita, create a pincushion of this puny $c!',14,0,100,22,2000,0,'Thane'), +(@Thane_Illskar,2,0,'You may have defeated my champions, $c. I am something else entirely.',14,0,100,66,2000,0,'Thane'), +(@Thane_Illskar,3,0,'Pray to your gods for a quick death.',14,0,100,53,2000,0,'Thane'), +(@Arbiter,0,0,'Thane Illskar, you were challenged to honorable combat and failed.',14,0,100,0,2000,0,'Arbiter'), +(@Arbiter,1,0,'You have been found wanting and are judged accordingly. Now rise, Thane Illskar the Damned!',14,0,100,0,2000,0,'Arbiter'), +(@TheDamned,0,0,'NOOOOOOOOOOOOOOOOOO!',14,0,100,15,2000,0,'Illskar the Damned'); +-- --------------------------------------------------------------------------------------------------------------------------------------------------- +-- Issue 5928: Quests 10305, 10306, 10307 and 10182 +-- Closes these issues: #3797 #1965 #1966 #1968 #1967 +-- Implement [Q]{A/H} Abjurist Belmara ID: 10305 & [Q]{A/H} Conjurer Luminrath ID: 10306 & +-- [Q]{A/H} Cohlien Frostweaver: 10307 & [Q]{A/H} Battle-Mage Dathric: 10182 +-- NPCs +SET @Belmara := 19546; -- The required npc to be summoned to thank the player, give credit and despawn +SET @Luminrath := 19580; -- The required npc to be summoned to thank the player, give credit and despawn /with cape/ +SET @LCapeless := 19544; -- /without cape/ +SET @Dathric := 19543; -- The required npc to be summoned to thank the player, give credit and despawn /with hat version/ +SET @Frostweaver := 19579; -- The required npc to be summoned to thank the player, give credit and despawn /with hat version/ +SET @FHatless := 19545; -- /without hat/ +-- Involved spells and credits +SET @Book := 34140; -- The required spell that triggers the event below to summon the npc to give credit +SET @BelmaraCredit := 19547; +SET @Mantle := 34142; -- The required spell that triggers the event below to summon the npc to give credit +SET @LuminrathCredit := 19548; +SET @Hat := 34144; -- The required spell that triggers the event below to summon the npc to give credit +SET @FrostweaverCredit := 19550; +SET @Weapon := 34141; -- The required spell that triggers the event below to summon the npc to give credit +SET @DathricCredit := 19549; +-- Removes the required spell since it doesn't exist in dbc, it's some random made error most likely, +-- on top of that spells values were copied from quest template entry (huh?, anyway this field is deprecated)... +UPDATE `quest_template` SET `RequiredSpellCast1`=0 WHERE `Id` IN (10305,10306,10307); +UPDATE `quest_template` SET `RequiredSpellCast2`=0 WHERE `Id`=10182; +-- Add SAI and db updates for related npcs +UPDATE `creature_template` SET `AIName`= 'SmartAI' WHERE `entry` IN (@Belmara,@Luminrath,@LCapeless,@Dathric,@Frostweaver,@FHatless); +UPDATE `creature_template` SET `maxlevel`=68,`minlevel`=68,`unit_class`=2 WHERE `entry`= @Luminrath; +UPDATE `creature_template` SET `maxlevel`=68,`minlevel`=68,`unit_class`=2 WHERE `entry`= @Frostweaver; +DELETE FROM `creature_ai_scripts` WHERE `creature_id` IN (@Belmara,@Luminrath,@LCapeless,@Dathric,@Frostweaver,@FHatless); +DELETE FROM `smart_scripts` WHERE `source_type`=0 AND `entryorguid` IN (@Belmara,@Luminrath,@LCapeless,@Dathric,@Frostweaver,@FHatless); +INSERT INTO `smart_scripts` (`entryorguid`,`source_type`,`id`,`link`,`event_type`,`event_phase_mask`,`event_chance`,`event_flags`,`event_param1`,`event_param2`,`event_param3`,`event_param4`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`action_param4`,`action_param5`,`action_param6`,`target_type`,`target_param1`,`target_param2`,`target_param3`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`) VALUES +(@Belmara,0,0,1,54,0,100,0,0,0,0,0,2,35,0,0,0,0,0,1,0,0,0,0,0,0,0,'Ajdurist Belmara - On creature summoned - Switch faction to friendly'), +(@Belmara,0,1,2,61,0,100,0,0,0,0,0,1,0,1000,0,0,0,0,1,0,0,0,0,0,0,0,'Ajdurist Belmara - Linked with event 0 - Say text 0'), +(@Belmara,0,2,0,61,0,100,0,0,0,0,0,33,@BelmaraCredit,0,0,0,0,0,23,0,0,0,0,0,0,0,'Ajdurist Belmara - Linked with event 1 - Call killcredit to player'), +(@Belmara,0,3,0,4,0,100,0,0,0,0,0,11,12544,0,0,0,0,0,1,0,0,0,0,0,0,0,'Ajdurist Belmara - On aggro - Cast to self Frost armor'), +(@Belmara,0,4,0,0,0,100,0,2000,5000,12000,22000,11,17740,0,0,0,0,0,1,0,0,0,0,0,0,0,'Ajdurist Belmara - IC - Cast to self Mana shield'), +(@Belmara,0,5,0,0,0,100,0,0,6000,2500,8000,11,34447,0,0,0,0,0,2,0,0,0,0,0,0,0,'Ajdurist Belmara - IC - Cast Arcane missles'), +(@Belmara,0,6,0,25,0,100,0,0,0,0,0,28,12544,0,0,0,0,0,1,0,0,0,0,0,0,0,'Ajdurist Belmara - On reset - Remove aura from Frost Armor'), +-- Luminrath /with cape/ +(@Luminrath,0,0,0,54,0,100,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,'Conjurer Luminrath - On creature summoned - Say text 0'), +(@Luminrath,0,1,2,61,0,100,0,0,0,0,0,1,1,1000,0,0,0,0,1,0,0,0,0,0,0,0,'Conjurer Luminrath - Linked with event 0 - Say text 1'), +(@Luminrath,0,2,0,61,0,100,0,0,0,0,0,33,@LuminrathCredit,0,0,0,0,0,21,20,0,0,0,0,0,0,'Conjurer Luminrath - Linked with event 1 - Call credit to player'), +-- Luminrath /without cape/ +(@LCapeless,0,0,0,0,0,100,0,0,2500,1000,7500,11,9532,0,0,0,0,0,2,0,0,0,0,0,0,0,'Conjurer Luminrath - IC - Cast Lightening bolt'), +(@LCapeless,0,1,0,0,0,100,0,0,5000,15000,30000,11,36110,0,0,0,0,0,2,0,0,0,0,0,0,0,'Conjurer Luminrath - IC - Cast Summon Dancing Swords'), +(@LCapeless,0,2,0,0,0,100,0,0,10000,5000,15000,11,36109,0,0,0,0,0,1,0,0,0,0,0,0,0,'Conjurer Luminrath - IC - Cast Blink'), +-- Frostweaver /without hat/ +(@FHatless,0,0,0,0,0,100,0,0,1000,25000,30000,11,33245,0,0,0,0,0,1,0,0,0,0,0,0,0,'Cohlien Frostweaver - IC - Cast Ice Barrier on self'), +(@FHatless,0,1,0,0,0,100,0,0,10000,2500,9500,11,11831,0,0,0,0,0,2,0,0,0,0,0,0,0,'Cohlien Frostweaver - IC - Cast Frost Nova'), +(@FHatless,0,2,0,0,0,100,0,0,2500,2500,11000,11,9672,0,0,0,0,0,2,0,0,0,0,0,0,0,'Cohlien Frostweaver - IC - Cast Frostbolt'), +-- Frostweaver /with hat/ +(@Frostweaver,0,0,1,54,0,100,0,0,0,0,0,1,0,1000,0,0,0,0,1,0,0,0,0,0,0,0,'Cohlien Frostweaver - On creature summoned - Say text 0'), +(@Frostweaver,0,1,0,61,0,100,0,0,0,0,0,33,@FrostweaverCredit,0,0,0,0,0,21,20,0,0,0,0,0,0,'Cohlien Frostweaver - Linked with event 0 - Call credit to player'), +-- Dathric +(@Dathric,0,0,1,54,0,100,0,0,0,0,0,2,35,0,0,0,0,0,1,0,0,0,0,0,0,0,'Dathric - On creature summoned - Switch faction to friendly'), +(@Dathric,0,1,2,61,0,100,0,0,0,0,0,1,0,1000,0,0,0,0,1,0,0,0,0,0,0,0,'Dathric - Linked with event 0 - Say text 0'), +(@Dathric,0,2,0,61,0,100,0,0,0,0,0,33,@DathricCredit,0,0,0,0,0,21,20,0,0,0,0,0,0,'Dathric - Linked with event 1 - Call credit to player'), +(@Dathric,0,3,0,0,0,100,0,0,3000,3000,8000,11,36104,0,0,0,0,0,2,0,0,0,0,0,0,0,'Dathric - IC - Cast Torrent of Flames'), +(@Dathric,0,4,0,0,0,100,0,0,2500,8500,12000,11,17273,0,0,0,0,0,2,0,0,0,0,0,0,0,'Dathric - IC - Cast Pyroblast'); +-- NPCs texts +DELETE FROM `creature_text` WHERE `entry` IN (@Dathric,@Frostweaver,@Luminrath,@Belmara); +INSERT INTO `creature_text` (`entry`,`groupid`,`id`,`text`,`type`,`language`,`probability`,`emote`,`duration`,`sound`,`comment`) VALUES +(@Dathric,0,0,'I don''t know what I was thinking, going out without my sword. I would''ve put it on if I''d seen it here...',12,0,100,1,0,0,'Dathric gratitude'), +-- Frostweaver's text +(@Frostweaver,0,0,'Phew! There''s my lucky hat. I''ve been looking for it everywhere.',12,0,100,1,0,0,'Frostweaver gratitude'), +-- Luminrath's text +(@Luminrath,0,0,'I can''t possibly go out without my cloak. I hope it''s in here...',12,0,100,1,0,0,'Luminrath gratitude'), +(@Luminrath,1,0,'There it is! I could''ve sworn it wasn''t here last time I checked...',12,0,100,1,0,0,'Luminrath gratitude'), +-- Belmara's text +(@Belmara,0,0,'I can''t sleep without a good bedtime story. Now I''m certain to rest well.',12,0,100,1,0,0,'Belmara gratitude'); +-- Gives support for send_event scripts in quest related spells +DELETE FROM `event_scripts` WHERE `id` IN (12607,12608,12609,12610); +INSERT INTO `event_scripts` (`id`,`delay`,`command`,`datalong`,`datalong2`,`x`,`y`,`z`,`o`) VALUES +(12607,0,10,@Belmara,25000,2242.230957,2389.818115,112.811760,2.941585), +(12608,0,10,@Dathric,25000,2228.003662,2314.015869,89.643219,4.822619), +(12609,0,10,@Luminrath,25000,2192.744873,2340.836182,90.353905,4.682819), +(12610,0,10,@Frostweaver,25000,2203.629883,2413.392090,109.257515,3.961037); diff --git a/sql/updates/world/2012_12_07_04_world_misc.sql b/sql/updates/world/2012_12_07_04_world_misc.sql new file mode 100644 index 00000000000..fb4c466d91c --- /dev/null +++ b/sql/updates/world/2012_12_07_04_world_misc.sql @@ -0,0 +1,5 @@ +DELETE FROM `creature_ai_scripts` WHERE `creature_id` =19255; + +UPDATE `conditions` SET `ErrorType`=173,`ErrorTextId`=0 WHERE `SourceTypeOrReferenceId` =17 AND `SourceEntry`=74222; + +UPDATE `quest_template` SET `SpecialFlags`=`SpecialFlags` |0x1 WHERE `Id` IN (9884,9885,9886,9887); diff --git a/src/server/game/Spells/SpellMgr.cpp b/src/server/game/Spells/SpellMgr.cpp index f0c0a3a494e..3eefd969eed 100644 --- a/src/server/game/Spells/SpellMgr.cpp +++ b/src/server/game/Spells/SpellMgr.cpp @@ -2978,7 +2978,7 @@ void SpellMgr::LoadDbcDataCorrections() switch (spellInfo->Id) { - case 53096: // Quetz'lun's Judgment + case 53096: // Quetz'lun's Judgment spellInfo->MaxAffectedTargets = 1; break; case 42730: -- cgit v1.2.3 From 0aea6c85126ff255a00646bc7a366c1c95c62a5f Mon Sep 17 00:00:00 2001 From: Vincent_Michael Date: Fri, 7 Dec 2012 19:41:30 +0100 Subject: Core/Scripts: Add missing creature_text --- .../world/2012_12_07_05_world_creature_text.sql | 22 +++++++ src/server/scripts/World/npcs_special.cpp | 75 +++++++++++----------- 2 files changed, 61 insertions(+), 36 deletions(-) create mode 100644 sql/updates/world/2012_12_07_05_world_creature_text.sql (limited to 'src') diff --git a/sql/updates/world/2012_12_07_05_world_creature_text.sql b/sql/updates/world/2012_12_07_05_world_creature_text.sql new file mode 100644 index 00000000000..8e3e2cd737f --- /dev/null +++ b/sql/updates/world/2012_12_07_05_world_creature_text.sql @@ -0,0 +1,22 @@ +DELETE FROM `creature_text` WHERE `entry` IN (12428,12423,12430,12427,12429); +INSERT INTO `creature_text` (`entry`, `groupid`, `id`, `text`, `type`, `language`, `probability`, `emote`, `duration`, `sound`, `comment`) VALUES +-- Deathguard Kel +(12428, 0, 0, 'Thank you! Thank you, $GPriest:Priestess;. Now I can take on those gnolls with your power to back me!', 12, 1, 100, 1, 0, 0, 'Deathguard Kel - SAY_THANKS'), +(12428, 1, 0, 'Farewell to you, and may shadow always protect you!', 12, 1, 100, 3, 0, 0, 'Deathguard Kel - SAY_GOODBYE'), +(12428, 2, 0, 'Ah, $GPriest:Priestess; you came along just in time. I appreciate it.', 12, 0, 100, 2, 0, 0, 'Deathguard Kel - SAY_HEALED'), +-- Guard Robert +(12423, 0, 0, 'Thank you! Thank you, $GPriest:Priestess;. Now I can take on those murlocs with the Light on my side!', 12, 7, 100, 1, 0, 0, 'Guard Roberts - SAY_THANKS'), +(12423, 1, 0, 'Farewell to you, and may the Light be with you always.', 12, 7, 100, 3, 0, 0, 'Guard Roberts - SAY_GOODBYE'), +(12423, 2, 0, 'Ah, $GPriest:Priestess; you came along just in time. I appreciate it.', 12, 0, 100, 2, 0, 0, 'Guard Robert - SAY_HEALED'), +-- Grunt Kor'ja +(12430, 0, 0, 'Thank you! Thank you, $GPriest:Priestess;. Now I can take on those humans with your power to back me!', 12, 7, 100, 0, 0, 0, 'Grunt Kor''ja - SAY_THANKS'), +(12430, 1, 0, 'Farewell to you, and may our ancestors be with you always!', 12, 1, 100, 3, 0, 0, 'Grunt Kor''ja - SAY_GOODBYE'), +(12430, 2, 0, 'Ah, $GPriest:Priestess; you came along just in time. I appreciate it.', 12, 0, 100, 2, 0, 0, 'Grunt Kor''ja - SAY_HEALED'), +-- Mountaineer Dol +(12427, 0, 0, 'Thank you! Thank you, $GPriest:Priestess;. Now I can take on those wendigo with the Light on my side!', 12, 7, 100, 1, 0, 0, 'Mountaineer Dolf - SAY_THANKS'), +(12427, 1, 0, 'Farewell to you, and may the Light be with you always.', 12, 7, 100, 3, 0, 0, 'Mountaineer Dolf - SAY_GOODBYE'), +(12427, 2, 0, 'Ah, $GPriest:Priestess; you came along just in time. I appreciate it.', 12, 0, 100, 2, 0, 0, 'Mountaineer Dol - SAY_HEALED'), +-- Sentinel Shaya +(12429, 0, 0, 'Thank you! Thank you, $GPriest:Priestess;. Now I can take on those corrupt timberlings with Elune''s power behind me!', 12, 2, 100, 1, 0, 0, 'Sentinel Shaya - SAY_THANKS'), +(12429, 1, 0, 'Farewell to you, and may Elune be with you always.', 12, 2, 100, 3, 0, 0, 'Sentinel Shaya - SAY_GOODBYE'), +(12429, 2, 0, 'Ah, $GPriest:Priestess; you came along just in time. I appreciate it.', 12, 0, 100, 2, 0, 0, 'Sentinel Shaya - SAY_HEALED'); diff --git a/src/server/scripts/World/npcs_special.cpp b/src/server/scripts/World/npcs_special.cpp index 367a119c9a3..76d2c230808 100644 --- a/src/server/scripts/World/npcs_special.cpp +++ b/src/server/scripts/World/npcs_special.cpp @@ -883,7 +883,7 @@ void npc_doctor::npc_doctorAI::UpdateAI(uint32 const diff) //TODO: get text for each NPC -enum eGarments +enum Garments { SPELL_LESSER_HEAL_R2 = 2052, SPELL_FORTITUDE_R1 = 1243, @@ -900,10 +900,10 @@ enum eGarments ENTRY_KORJA = 12430, ENTRY_DG_KEL = 12428, - //used by 12429, 12423, 12427, 12430, 12428, but signed for 12429 - //SAY_HEALED = 0, - //SAY_THANKS = 1, - //SAY_GOODBYE = 2 + // used by 12429, 12423, 12427, 12430, 12428, but signed for 12429 + SAY_THANKS = 0, + SAY_GOODBYE = 1, + SAY_HEALED = 2, }; class npc_garments_of_quests : public CreatureScript @@ -913,7 +913,10 @@ public: struct npc_garments_of_questsAI : public npc_escortAI { - npc_garments_of_questsAI(Creature* creature) : npc_escortAI(creature) {Reset();} + npc_garments_of_questsAI(Creature* creature) : npc_escortAI(creature) + { + Reset(); + } uint64 CasterGUID; @@ -932,15 +935,15 @@ public: RunAwayTimer = 5000; me->SetStandState(UNIT_STAND_STATE_KNEEL); - //expect database to have RegenHealth=0 + // expect database to have RegenHealth=0 me->SetHealth(me->CountPctFromMaxHealth(70)); } - void EnterCombat(Unit* /*who*/) {} + void EnterCombat(Unit* /*who*/) { } - void SpellHit(Unit* caster, SpellInfo const* Spell) + void SpellHit(Unit* caster, SpellInfo const* spell) { - if (Spell->Id == SPELL_LESSER_HEAL_R2 || Spell->Id == SPELL_FORTITUDE_R1) + if (spell->Id == SPELL_LESSER_HEAL_R2 || spell->Id == SPELL_FORTITUDE_R1) { //not while in combat if (me->isInCombat()) @@ -957,16 +960,16 @@ public: case ENTRY_SHAYA: if (player->GetQuestStatus(QUEST_MOON) == QUEST_STATUS_INCOMPLETE) { - if (IsHealed && !CanRun && Spell->Id == SPELL_FORTITUDE_R1) + if (IsHealed && !CanRun && spell->Id == SPELL_FORTITUDE_R1) { - //Talk(SAY_THANKS, caster->GetGUID()); + Talk(SAY_THANKS, caster->GetGUID()); CanRun = true; } - else if (!IsHealed && Spell->Id == SPELL_LESSER_HEAL_R2) + else if (!IsHealed && spell->Id == SPELL_LESSER_HEAL_R2) { CasterGUID = caster->GetGUID(); me->SetStandState(UNIT_STAND_STATE_STAND); - //Talk(SAY_HEALED, caster->GetGUID()); + Talk(SAY_HEALED, caster->GetGUID()); IsHealed = true; } } @@ -974,16 +977,16 @@ public: case ENTRY_ROBERTS: if (player->GetQuestStatus(QUEST_LIGHT_1) == QUEST_STATUS_INCOMPLETE) { - if (IsHealed && !CanRun && Spell->Id == SPELL_FORTITUDE_R1) + if (IsHealed && !CanRun && spell->Id == SPELL_FORTITUDE_R1) { - //Talk(SAY_THANKS, caster->GetGUID()); + Talk(SAY_THANKS, caster->GetGUID()); CanRun = true; } - else if (!IsHealed && Spell->Id == SPELL_LESSER_HEAL_R2) + else if (!IsHealed && spell->Id == SPELL_LESSER_HEAL_R2) { CasterGUID = caster->GetGUID(); me->SetStandState(UNIT_STAND_STATE_STAND); - //Talk(SAY_HEALED, caster->GetGUID()); + Talk(SAY_HEALED, caster->GetGUID()); IsHealed = true; } } @@ -991,16 +994,16 @@ public: case ENTRY_DOLF: if (player->GetQuestStatus(QUEST_LIGHT_2) == QUEST_STATUS_INCOMPLETE) { - if (IsHealed && !CanRun && Spell->Id == SPELL_FORTITUDE_R1) + if (IsHealed && !CanRun && spell->Id == SPELL_FORTITUDE_R1) { - //Talk(SAY_THANKS, caster->GetGUID()); + Talk(SAY_THANKS, caster->GetGUID()); CanRun = true; } - else if (!IsHealed && Spell->Id == SPELL_LESSER_HEAL_R2) + else if (!IsHealed && spell->Id == SPELL_LESSER_HEAL_R2) { CasterGUID = caster->GetGUID(); me->SetStandState(UNIT_STAND_STATE_STAND); - //Talk(SAY_HEALED, caster->GetGUID()); + Talk(SAY_HEALED, caster->GetGUID()); IsHealed = true; } } @@ -1008,16 +1011,16 @@ public: case ENTRY_KORJA: if (player->GetQuestStatus(QUEST_SPIRIT) == QUEST_STATUS_INCOMPLETE) { - if (IsHealed && !CanRun && Spell->Id == SPELL_FORTITUDE_R1) + if (IsHealed && !CanRun && spell->Id == SPELL_FORTITUDE_R1) { - //Talk(SAY_THANKS, caster->GetGUID()); + Talk(SAY_THANKS, caster->GetGUID()); CanRun = true; } - else if (!IsHealed && Spell->Id == SPELL_LESSER_HEAL_R2) + else if (!IsHealed && spell->Id == SPELL_LESSER_HEAL_R2) { CasterGUID = caster->GetGUID(); me->SetStandState(UNIT_STAND_STATE_STAND); - //Talk(SAY_HEALED, caster->GetGUID()); + Talk(SAY_HEALED, caster->GetGUID()); IsHealed = true; } } @@ -1025,23 +1028,23 @@ public: case ENTRY_DG_KEL: if (player->GetQuestStatus(QUEST_DARKNESS) == QUEST_STATUS_INCOMPLETE) { - if (IsHealed && !CanRun && Spell->Id == SPELL_FORTITUDE_R1) + if (IsHealed && !CanRun && spell->Id == SPELL_FORTITUDE_R1) { - //Talk(SAY_THANKS, caster->GetGUID()); + Talk(SAY_THANKS, caster->GetGUID()); CanRun = true; } - else if (!IsHealed && Spell->Id == SPELL_LESSER_HEAL_R2) + else if (!IsHealed && spell->Id == SPELL_LESSER_HEAL_R2) { CasterGUID = caster->GetGUID(); me->SetStandState(UNIT_STAND_STATE_STAND); - //Talk(SAY_HEALED, caster->GetGUID()); + Talk(SAY_HEALED, caster->GetGUID()); IsHealed = true; } } break; } - //give quest credit, not expect any special quest objectives + // give quest credit, not expect any special quest objectives if (CanRun) player->TalkedToCreature(me->GetEntry(), me->GetGUID()); } @@ -1064,19 +1067,19 @@ public: switch (me->GetEntry()) { case ENTRY_SHAYA: - //Talk(SAY_GOODBYE, unit->GetGUID()); + Talk(SAY_GOODBYE, unit->GetGUID()); break; case ENTRY_ROBERTS: - //Talk(SAY_GOODBYE, unit->GetGUID()); + Talk(SAY_GOODBYE, unit->GetGUID()); break; case ENTRY_DOLF: - //Talk(SAY_GOODBYE, unit->GetGUID()); + Talk(SAY_GOODBYE, unit->GetGUID()); break; case ENTRY_KORJA: - //Talk(SAY_GOODBYE, unit->GetGUID()); + Talk(SAY_GOODBYE, unit->GetGUID()); break; case ENTRY_DG_KEL: - //Talk(SAY_GOODBYE, unit->GetGUID()); + Talk(SAY_GOODBYE, unit->GetGUID()); break; } -- cgit v1.2.3