diff options
Diffstat (limited to 'src/scripts/northrend/dragonblight.cpp')
-rw-r--r-- | src/scripts/northrend/dragonblight.cpp | 398 |
1 files changed, 199 insertions, 199 deletions
diff --git a/src/scripts/northrend/dragonblight.cpp b/src/scripts/northrend/dragonblight.cpp index 59832c5e6ec..a8037f83bfb 100644 --- a/src/scripts/northrend/dragonblight.cpp +++ b/src/scripts/northrend/dragonblight.cpp @@ -58,200 +58,200 @@ bool GossipSelect_npc_alexstrasza_wr_gate(Player* pPlayer, Creature* /*pCreature } return true; -}
-
-/*######
-## npc_inquisitor_hallard. Quest 12321
-######*/
-
-
-enum eInquisitor
-{
- NPC_GODFREY = 27577,
- SPELL_HOLY_FIRE = 39323,
-
- SAY_WP_0 = -1800014,
- SAY_WP_1 = -1800015,
- SAY_WP_2 = -1800016,
- SAY_WP_3 = -1800017,
- SAY_WP_4 = -1800018,
- SAY_WP_5 = -1800019,
- SAY_WP_6 = -1800020,
- SAY_WP_7 = -1800021,
- SAY_WP_8 = -1800022,
- SAY_WP_9 = -1800023,
- SAY_WP_10 = -1800024,
- SAY_WP_11 = -1800025,
- SAY_WP_12 = -1800026,
- SAY_WP_13 = -1800027,
- SAY_WP_14 = -1800028,
- SAY_WP_15 = -1800029,
- SAY_WP_16 = -1800030,
- SAY_WP_17 = -1800031,
- SAY_WP_18 = -1800032,
- SAY_WP_19 = -1800033,
- SAY_WP_20 = -1800034,
- SAY_WP_21 = -1800035,
- SAY_WP_22 = -1800036,
- SAY_WP_23 = -1800037,
- SAY_WP_24 = -1800038,
- SAY_WP_25 = -1800039,
- SAY_WP_26 = -1800040,
- SAY_WP_27 = -1800041
-};
-
-#define QUEST_A_RIGHTEOUS_SERMON 12321
-
-struct npc_inquisitor_hallardAI : public npc_escortAI
-{
- npc_inquisitor_hallardAI(Creature* pCreature) : npc_escortAI(pCreature) { }
-
- bool Completed;
-
- void WaypointReached(uint32 i)
- {
- Player* pPlayer = GetPlayerForEscort();
- if (!pPlayer)
- return;
- Creature* Godfrey = m_creature->FindNearestCreature(NPC_GODFREY, 50, true);
- if (!Godfrey)
- return;
- switch (i)
- {
- case 1:
- DoScriptText(SAY_WP_1, m_creature, Godfrey);
- m_creature->SetUInt64Value(UNIT_FIELD_TARGET, Godfrey->GetGUID());
- m_creature->HandleEmoteCommand(5);
- m_creature->RemoveFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_QUESTGIVER);
- m_creature->RemoveFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_GOSSIP);
- break;
- case 2:
- Godfrey->HandleEmoteCommand(434);
- DoScriptText(SAY_WP_2, m_creature, Godfrey);
- m_creature->HandleEmoteCommand(15);
- break;
- case 3:
- DoScriptText(SAY_WP_3, m_creature, Godfrey);
- m_creature->HandleEmoteCommand(1);
- break;
- case 4:
- DoScriptText(SAY_WP_4, Godfrey);
- break;
- case 5:
- DoScriptText(SAY_WP_5, Godfrey);
- break;
- case 6:
- DoScriptText(SAY_WP_6, Godfrey);
- break;
- case 7:
- DoScriptText(SAY_WP_7, m_creature, Godfrey);
- m_creature->HandleEmoteCommand(1);
- break;
- case 8:
- DoScriptText(SAY_WP_8, m_creature, Godfrey);
- m_creature->HandleEmoteCommand(16);
- break;
- case 9:
- DoScriptText(SAY_WP_9, m_creature, Godfrey);
- m_creature->HandleEmoteCommand(5);
- break;
- case 10:
- DoScriptText(SAY_WP_10, m_creature, Godfrey);
- DoCast(Godfrey, SPELL_HOLY_FIRE);
- break;
- case 11:
- Godfrey->HandleEmoteCommand(434);
- DoScriptText(SAY_WP_11, Godfrey);
- break;
- case 12:
- DoScriptText(SAY_WP_12, m_creature, Godfrey);
- DoCast(Godfrey, SPELL_HOLY_FIRE);
- break;
- case 13:
- DoScriptText(SAY_WP_13, m_creature, Godfrey);
- DoCast(Godfrey, SPELL_HOLY_FIRE);
- break;
- case 14:
- Godfrey->HandleEmoteCommand(434);
- DoScriptText(SAY_WP_14, Godfrey);
- break;
- case 15:
- DoScriptText(SAY_WP_15, m_creature, Godfrey);
- DoCast(Godfrey, SPELL_HOLY_FIRE);
- break;
- case 16:
- DoScriptText(SAY_WP_16, m_creature, Godfrey);
- break;
- case 17:
- DoScriptText(SAY_WP_17, m_creature, Godfrey);
- break;
- case 18:
- DoScriptText(SAY_WP_18, Godfrey);
- break;
- case 19:
- DoScriptText(SAY_WP_19, m_creature, Godfrey);
- break;
- case 20:
- DoScriptText(SAY_WP_20, Godfrey);
- break;
- case 21:
- DoScriptText(SAY_WP_21, Godfrey);
- break;
- case 22:
- DoScriptText(SAY_WP_22, m_creature, Godfrey);
- break;
- case 23:
- DoScriptText(SAY_WP_23, Godfrey);
- break;
- case 24:
- DoScriptText(SAY_WP_24, Godfrey);
- break;
- case 25:
- DoScriptText(SAY_WP_25, m_creature, Godfrey);
- break;
- case 26:
- DoScriptText(SAY_WP_26, m_creature);
- m_creature->SetUInt64Value(UNIT_FIELD_TARGET, pPlayer->GetGUID());
- break;
- case 27:
- DoScriptText(SAY_WP_27, m_creature, Godfrey);
- m_creature->SetUInt64Value(UNIT_FIELD_TARGET, Godfrey->GetGUID());
- Completed = true;
- if (pPlayer)
- pPlayer->GroupEventHappens(QUEST_A_RIGHTEOUS_SERMON, m_creature);
- break;
- }
- }
-
- void Reset()
- {
- Completed = false;
- }
-
- void UpdateAI(const uint32 diff)
- {
- npc_escortAI::UpdateAI(diff);
- }
-};
-
-bool QuestAccept_npc_inquisitor_hallard(Player* pPlayer, Creature* pCreature, Quest const* quest)
-{
- if (quest->GetQuestId() == QUEST_A_RIGHTEOUS_SERMON)
- {
- DoScriptText(SAY_WP_0, pCreature, pPlayer);
- if (npc_escortAI* pEscortAI = CAST_AI(npc_inquisitor_hallardAI, pCreature->AI()))
- {
- pEscortAI->Start(true, false, pPlayer->GetGUID(), 0, true);
- pCreature->GetMotionMaster()->MovePoint(0, 3801.543, -679.350, 213.75);
- }
- }
- return true;
-}
-
-CreatureAI* GetAI_npc_inquisitor_hallard(Creature* pCreature)
-{
- return new npc_inquisitor_hallardAI(pCreature);
-}
+} + +/*###### +## npc_inquisitor_hallard. Quest 12321 +######*/ + + +enum eInquisitor +{ + NPC_GODFREY = 27577, + SPELL_HOLY_FIRE = 39323, + + SAY_WP_0 = -1800014, + SAY_WP_1 = -1800015, + SAY_WP_2 = -1800016, + SAY_WP_3 = -1800017, + SAY_WP_4 = -1800018, + SAY_WP_5 = -1800019, + SAY_WP_6 = -1800020, + SAY_WP_7 = -1800021, + SAY_WP_8 = -1800022, + SAY_WP_9 = -1800023, + SAY_WP_10 = -1800024, + SAY_WP_11 = -1800025, + SAY_WP_12 = -1800026, + SAY_WP_13 = -1800027, + SAY_WP_14 = -1800028, + SAY_WP_15 = -1800029, + SAY_WP_16 = -1800030, + SAY_WP_17 = -1800031, + SAY_WP_18 = -1800032, + SAY_WP_19 = -1800033, + SAY_WP_20 = -1800034, + SAY_WP_21 = -1800035, + SAY_WP_22 = -1800036, + SAY_WP_23 = -1800037, + SAY_WP_24 = -1800038, + SAY_WP_25 = -1800039, + SAY_WP_26 = -1800040, + SAY_WP_27 = -1800041 +}; + +#define QUEST_A_RIGHTEOUS_SERMON 12321 + +struct npc_inquisitor_hallardAI : public npc_escortAI +{ + npc_inquisitor_hallardAI(Creature* pCreature) : npc_escortAI(pCreature) { } + + bool Completed; + + void WaypointReached(uint32 i) + { + Player* pPlayer = GetPlayerForEscort(); + if (!pPlayer) + return; + Creature* Godfrey = m_creature->FindNearestCreature(NPC_GODFREY, 50, true); + if (!Godfrey) + return; + switch (i) + { + case 1: + DoScriptText(SAY_WP_1, m_creature, Godfrey); + m_creature->SetUInt64Value(UNIT_FIELD_TARGET, Godfrey->GetGUID()); + m_creature->HandleEmoteCommand(5); + m_creature->RemoveFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_QUESTGIVER); + m_creature->RemoveFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_GOSSIP); + break; + case 2: + Godfrey->HandleEmoteCommand(434); + DoScriptText(SAY_WP_2, m_creature, Godfrey); + m_creature->HandleEmoteCommand(15); + break; + case 3: + DoScriptText(SAY_WP_3, m_creature, Godfrey); + m_creature->HandleEmoteCommand(1); + break; + case 4: + DoScriptText(SAY_WP_4, Godfrey); + break; + case 5: + DoScriptText(SAY_WP_5, Godfrey); + break; + case 6: + DoScriptText(SAY_WP_6, Godfrey); + break; + case 7: + DoScriptText(SAY_WP_7, m_creature, Godfrey); + m_creature->HandleEmoteCommand(1); + break; + case 8: + DoScriptText(SAY_WP_8, m_creature, Godfrey); + m_creature->HandleEmoteCommand(16); + break; + case 9: + DoScriptText(SAY_WP_9, m_creature, Godfrey); + m_creature->HandleEmoteCommand(5); + break; + case 10: + DoScriptText(SAY_WP_10, m_creature, Godfrey); + DoCast(Godfrey, SPELL_HOLY_FIRE); + break; + case 11: + Godfrey->HandleEmoteCommand(434); + DoScriptText(SAY_WP_11, Godfrey); + break; + case 12: + DoScriptText(SAY_WP_12, m_creature, Godfrey); + DoCast(Godfrey, SPELL_HOLY_FIRE); + break; + case 13: + DoScriptText(SAY_WP_13, m_creature, Godfrey); + DoCast(Godfrey, SPELL_HOLY_FIRE); + break; + case 14: + Godfrey->HandleEmoteCommand(434); + DoScriptText(SAY_WP_14, Godfrey); + break; + case 15: + DoScriptText(SAY_WP_15, m_creature, Godfrey); + DoCast(Godfrey, SPELL_HOLY_FIRE); + break; + case 16: + DoScriptText(SAY_WP_16, m_creature, Godfrey); + break; + case 17: + DoScriptText(SAY_WP_17, m_creature, Godfrey); + break; + case 18: + DoScriptText(SAY_WP_18, Godfrey); + break; + case 19: + DoScriptText(SAY_WP_19, m_creature, Godfrey); + break; + case 20: + DoScriptText(SAY_WP_20, Godfrey); + break; + case 21: + DoScriptText(SAY_WP_21, Godfrey); + break; + case 22: + DoScriptText(SAY_WP_22, m_creature, Godfrey); + break; + case 23: + DoScriptText(SAY_WP_23, Godfrey); + break; + case 24: + DoScriptText(SAY_WP_24, Godfrey); + break; + case 25: + DoScriptText(SAY_WP_25, m_creature, Godfrey); + break; + case 26: + DoScriptText(SAY_WP_26, m_creature); + m_creature->SetUInt64Value(UNIT_FIELD_TARGET, pPlayer->GetGUID()); + break; + case 27: + DoScriptText(SAY_WP_27, m_creature, Godfrey); + m_creature->SetUInt64Value(UNIT_FIELD_TARGET, Godfrey->GetGUID()); + Completed = true; + if (pPlayer) + pPlayer->GroupEventHappens(QUEST_A_RIGHTEOUS_SERMON, m_creature); + break; + } + } + + void Reset() + { + Completed = false; + } + + void UpdateAI(const uint32 diff) + { + npc_escortAI::UpdateAI(diff); + } +}; + +bool QuestAccept_npc_inquisitor_hallard(Player* pPlayer, Creature* pCreature, Quest const* quest) +{ + if (quest->GetQuestId() == QUEST_A_RIGHTEOUS_SERMON) + { + DoScriptText(SAY_WP_0, pCreature, pPlayer); + if (npc_escortAI* pEscortAI = CAST_AI(npc_inquisitor_hallardAI, pCreature->AI())) + { + pEscortAI->Start(true, false, pPlayer->GetGUID(), 0, true); + pCreature->GetMotionMaster()->MovePoint(0, 3801.543, -679.350, 213.75); + } + } + return true; +} + +CreatureAI* GetAI_npc_inquisitor_hallard(Creature* pCreature) +{ + return new npc_inquisitor_hallardAI(pCreature); +} void AddSC_dragonblight() { @@ -263,10 +263,10 @@ void AddSC_dragonblight() newscript->pGossipSelect = &GossipSelect_npc_alexstrasza_wr_gate; newscript->RegisterSelf(); - newscript = new Script;
- newscript->Name = "npc_inquisitor_hallard";
- newscript->GetAI = &GetAI_npc_inquisitor_hallard;
- newscript->pQuestAccept = &QuestAccept_npc_inquisitor_hallard;
- newscript->RegisterSelf();
+ newscript = new Script; + newscript->Name = "npc_inquisitor_hallard"; + newscript->GetAI = &GetAI_npc_inquisitor_hallard; + newscript->pQuestAccept = &QuestAccept_npc_inquisitor_hallard; + newscript->RegisterSelf(); } |