TrinityCore
Loading...
Searching...
No Matches
steam_vault.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 "
ScriptMgr.h
"
19
#include "
Creature.h
"
20
#include "
CreatureAI.h
"
21
#include "
GameObject.h
"
22
#include "
GameObjectAI.h
"
23
#include "
InstanceScript.h
"
24
#include "
steam_vault.h
"
25
26
// 184125, 184126 - Main Chambers Access Panel
27
struct
go_main_chambers_access_panel
:
public
GameObjectAI
28
{
29
go_main_chambers_access_panel
(
GameObject
* go) :
GameObjectAI
(go),
_instance
(go->GetInstanceScript()) { }
30
31
bool
OnGossipHello
(
Player
*
/*player*/
)
override
32
{
33
if
(
Creature
* controller =
_instance
->
GetCreature
(
DATA_DOOR_CONTROLLER
))
34
controller->AI()->Talk(
CONTROLLER_TEXT_ACESS_USED
);
35
36
_instance
->
SetData
(
ACTION_OPEN_DOOR
, 0);
37
me
->
SetFlag
(
GO_FLAG_NOT_SELECTABLE
);
38
me
->
SetGoState
(
GO_STATE_ACTIVE
);
39
return
true
;
40
}
41
42
private
:
43
InstanceScript
*
_instance
;
44
};
45
46
void
AddSC_steam_vault
()
47
{
48
RegisterSteamVaultGameObjectAI
(
go_main_chambers_access_panel
);
49
}
CreatureAI.h
Creature.h
GameObjectAI.h
GameObject.h
InstanceScript.h
ScriptMgr.h
GO_FLAG_NOT_SELECTABLE
@ GO_FLAG_NOT_SELECTABLE
Definition
SharedDefines.h:1695
GO_STATE_ACTIVE
@ GO_STATE_ACTIVE
Definition
SharedDefines.h:1717
ACTION_OPEN_DOOR
@ ACTION_OPEN_DOOR
Definition
black_temple.h:140
Creature
Definition
Creature.h:62
GameObjectAI
Definition
GameObjectAI.h:33
GameObjectAI::me
GameObject *const me
Definition
GameObjectAI.h:35
GameObject
Definition
GameObject.h:86
GameObject::SetGoState
void SetGoState(GOState state)
Definition
GameObject.cpp:2574
GameObject::SetFlag
void SetFlag(GameObjectFlags flags)
Definition
GameObject.h:171
InstanceScript
Definition
InstanceScript.h:159
InstanceScript::GetCreature
Creature * GetCreature(uint32 type)
Definition
InstanceScript.cpp:119
Player
Definition
Player.h:924
ZoneScript::SetData
virtual void SetData(uint32, uint32)
Definition
ZoneScript.h:56
AddSC_steam_vault
void AddSC_steam_vault()
Definition
steam_vault.cpp:46
steam_vault.h
DATA_DOOR_CONTROLLER
@ DATA_DOOR_CONTROLLER
Definition
steam_vault.h:38
RegisterSteamVaultGameObjectAI
#define RegisterSteamVaultGameObjectAI(ai_name)
Definition
steam_vault.h:71
CONTROLLER_TEXT_ACESS_USED
@ CONTROLLER_TEXT_ACESS_USED
Definition
steam_vault.h:60
go_main_chambers_access_panel
Definition
steam_vault.cpp:28
go_main_chambers_access_panel::OnGossipHello
bool OnGossipHello(Player *) override
Definition
steam_vault.cpp:31
go_main_chambers_access_panel::go_main_chambers_access_panel
go_main_chambers_access_panel(GameObject *go)
Definition
steam_vault.cpp:29
go_main_chambers_access_panel::_instance
InstanceScript * _instance
Definition
steam_vault.cpp:43
server
scripts
Outland
CoilfangReservoir
SteamVault
steam_vault.cpp
Generated on Sun May 10 2026 02:30:24 for TrinityCore by
1.9.8