Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Loading...
Searching...
No Matches
zone_silverpine_forest.cpp
Go to the documentation of this file.
1/*
2* This file is part of Project SkyFire https://www.projectskyfire.org.
3* See LICENSE.md file for Copyright information
4*/
5
6/* ScriptData
7SDName: Silverpine_Forest
8SD%Complete: 100
9SDComment: Quest support: 435
10SDCategory: Silverpine Forest
11EndScriptData */
12
13/* ContentData
14npc_deathstalker_erland
15EndContentData */
16
17#include "ScriptMgr.h"
18#include "ScriptedCreature.h"
19#include "ScriptedEscortAI.h"
20#include "Player.h"
21
22/*######
23## npc_deathstalker_erland
24######*/
25
46
48{
49public:
50 npc_deathstalker_erland() : CreatureScript("npc_deathstalker_erland") { }
51
53 {
55
57 {
58 Player* player = GetPlayerForEscort();
59 if (!player)
60 return;
61
62 switch (waypointId)
63 {
64 case 1:
65 Talk(SAY_START, player);
66 break;
67 case 10:
69 break;
70 case 13:
71 Talk(SAY_LAST, player);
73 break;
74 case 15:
75 if (Creature* rane = me->FindNearestCreature(NPC_RANE, 20.0f))
76 rane->AI()->Talk(SAY_RANE);
77 break;
78 case 16:
80 break;
81 case 17:
83 break;
84 case 24:
86 break;
87 case 25:
88 if (Creature* quinn = me->FindNearestCreature(NPC_QUINN, 20.0f))
89 quinn->AI()->Talk(SAY_QUINN_ANSWER);
90 break;
91 case 26:
93 break;
94 }
95 }
96
97 void Reset() OVERRIDE { }
98
100 {
101 Talk(SAY_AGGRO, who);
102 }
103 };
104
105 bool OnQuestAccept(Player* player, Creature* creature, Quest const* quest) OVERRIDE
106 {
107 if (quest->GetQuestId() == QUEST_ESCORTING)
108 {
109 creature->AI()->Talk(SAY_QUESTACCEPT, player);
110
112 pEscortAI->Start(true, false, player->GetGUID());
113 }
114
115 return true;
116 }
117
119 {
120 return new npc_deathstalker_erlandAI(creature);
121 }
122};
123
124/*######
125## AddSC
126######*/
127
std::uint32_t uint32
Definition Define.h:77
#define OVERRIDE
Definition Define.h:60
#define CAST_AI(a, b)
#define SAY_AGGRO
void Talk(uint8 id, WorldObject const *whisperTarget=NULL)
CreatureScript(const char *name)
void GroupEventHappens(uint32 questId, WorldObject const *pEventObject)
Definition Unit.h:1367
CreatureAI * GetAI(Creature *creature) const OVERRIDE
bool OnQuestAccept(Player *player, Creature *creature, Quest const *quest) OVERRIDE
Creature * me
Player * GetPlayerForEscort()
npc_escortAI(Creature *creature)
@ SAY_START
void AddSC_silverpine_forest()