TrinityCore
Loading...
Searching...
No Matches
zone_dornogal.cpp
Go to the documentation of this file.
1
/*
2
* This file is part of the TrinityCore Project. See AUTHORS file for Copyright information
3
*
4
* This program is free software; you can redistribute it and/or modify it
5
* under the terms of the GNU General Public License as published by the
6
* Free Software Foundation; either version 2 of the License, or (at your
7
* option) any later version.
8
*
9
* This program is distributed in the hope that it will be useful, but WITHOUT
10
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
12
* more details.
13
*
14
* You should have received a copy of the GNU General Public License along
15
* with this program. If not, see <http://www.gnu.org/licenses/>.
16
*/
17
18
#include "
Containers.h
"
19
#include "
Conversation.h
"
20
#include "
ConversationAI.h
"
21
#include "
ScriptMgr.h
"
22
#include "
ScriptedCreature.h
"
23
#include "
TemporarySummon.h
"
24
25
enum
TheExpeditionAwaitsData
26
{
27
NPC_CHIEF_OFFICER_HAMMERFLANGE
= 236055,
28
NPC_GREASMONKEY_SURVEYOR
= 234986,
29
NPC_ZEPPELIN_ENGINEER
= 234231
30
};
31
32
// 27051 - Conversation
33
class
conversation_dawn_accept_the_expedition_awaits
:
public
ConversationAI
34
{
35
public
:
36
using
ConversationAI::ConversationAI
;
37
38
void
OnCreate
(
Unit
* creator)
override
39
{
40
if
(
Creature
* hammerflangeObject =
GetClosestCreatureWithOptions
(creator, 15.0f, { .CreatureId =
NPC_CHIEF_OFFICER_HAMMERFLANGE
, .IgnorePhases =
true
}))
41
hammerflangeObject->SummonPersonalClone(hammerflangeObject->GetPosition(),
TEMPSUMMON_MANUAL_DESPAWN
, 0s, 0, 0, creator->
ToPlayer
());
42
43
if
(
Creature
* surveyorObject =
GetClosestCreatureWithOptions
(creator, 15.0f, { .CreatureId =
NPC_GREASMONKEY_SURVEYOR
, .IgnorePhases =
true
}))
44
surveyorObject->SummonPersonalClone(surveyorObject->GetPosition(),
TEMPSUMMON_MANUAL_DESPAWN
, 0s, 0, 0, creator->
ToPlayer
());
45
46
if
(
Creature
* engineerObject =
GetClosestCreatureWithOptions
(creator, 15.0f, { .CreatureId =
NPC_ZEPPELIN_ENGINEER
, .IgnorePhases =
true
}))
47
engineerObject->SummonPersonalClone(engineerObject->GetPosition(),
TEMPSUMMON_MANUAL_DESPAWN
, 0s, 0, 0, creator->
ToPlayer
());
48
49
conversation
->
Start
();
50
}
51
};
52
53
void
AddSC_zone_dornogal
()
54
{
55
// Conversation
56
RegisterConversationAI
(
conversation_dawn_accept_the_expedition_awaits
);
57
}
Containers.h
ConversationAI.h
Conversation.h
TEMPSUMMON_MANUAL_DESPAWN
@ TEMPSUMMON_MANUAL_DESPAWN
Definition
ObjectDefines.h:70
ScriptMgr.h
RegisterConversationAI
#define RegisterConversationAI(ai_name)
Definition
ScriptMgr.h:1437
ScriptedCreature.h
GetClosestCreatureWithOptions
Creature * GetClosestCreatureWithOptions(WorldObject *source, float maxSearchRange, FindCreatureOptions const &options)
Definition
ScriptedCreature.h:390
TemporarySummon.h
ConversationAI
Definition
ConversationAI.h:29
ConversationAI::conversation
Conversation *const conversation
Definition
ConversationAI.h:33
ConversationAI::ConversationAI
ConversationAI(Conversation *c, uint32 scriptId={}) noexcept
Definition
ConversationAI.cpp:21
Conversation::Start
bool Start()
Definition
Conversation.cpp:239
Creature
Definition
Creature.h:82
Object::ToPlayer
Player * ToPlayer()
Definition
Object.h:126
Unit
Definition
Unit.h:635
conversation_dawn_accept_the_expedition_awaits
Definition
zone_dornogal.cpp:34
conversation_dawn_accept_the_expedition_awaits::OnCreate
void OnCreate(Unit *creator) override
Definition
zone_dornogal.cpp:38
AddSC_zone_dornogal
void AddSC_zone_dornogal()
Definition
zone_dornogal.cpp:53
TheExpeditionAwaitsData
TheExpeditionAwaitsData
Definition
zone_dornogal.cpp:26
NPC_ZEPPELIN_ENGINEER
@ NPC_ZEPPELIN_ENGINEER
Definition
zone_dornogal.cpp:29
NPC_GREASMONKEY_SURVEYOR
@ NPC_GREASMONKEY_SURVEYOR
Definition
zone_dornogal.cpp:28
NPC_CHIEF_OFFICER_HAMMERFLANGE
@ NPC_CHIEF_OFFICER_HAMMERFLANGE
Definition
zone_dornogal.cpp:27
server
scripts
KhazAlgar
zone_dornogal.cpp
Generated on Sun May 10 2026 02:09:10 for TrinityCore by
1.9.8