TrinityCore
Loading...
Searching...
No Matches
instance_vortex_pinnacle.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 "vortex_pinnacle.h"
20#include "Creature.h"
21#include "InstanceScript.h"
22
29
30static constexpr DungeonEncounterData const encounters[] =
31{
32 { BOSS_GRAND_VIZIER_ERTAN, {{ 1043 }} },
33 { BOSS_ALTAIRUS, {{ 1041 }} },
34 { BOSS_ASAAD, {{ 1042 }} }
35};
36
37// These StringIds must be set in DB to properly identify the first and second landing zone for the entrance shortcut teleporters
38static constexpr std::string_view SlipStreamLandingZoneStringId1 = "vp_slipstream_landing_zone_1";
39static constexpr std::string_view SlipStreamLandingZoneStringId2 = "vp_slipstream_landing_zone_2";
40
42{
43public:
45
47 {
55
56 void OnCreatureCreate(Creature* creature) override
57 {
59
60 switch (creature->GetEntry())
61 {
67 break;
68 default:
69 break;
70 }
71 }
72
73 void OnCreatureRemove(Creature* creature) override
74 {
76
77 switch (creature->GetEntry())
78 {
84 break;
85 default:
86 break;
87 }
88 }
89 };
90
95};
96
#define DataHeader
uint32 const EncounterCount
bool HasStringId(std::string_view id) const
void SetBossNumber(uint32 number)
virtual void OnCreatureCreate(Creature *creature) override
virtual void OnCreatureRemove(Creature *creature) override
void LoadObjectData(std::span< ObjectData const > creatureData, std::span< ObjectData const > gameObjectData)
void SetHeaders(std::string_view dataHeaders)
void LoadDungeonEncounterData(std::span< DungeonEncounterData const > encounters)
void AddObject(Creature *obj, bool add)
uint32 GetEntry() const
Definition Object.h:89
InstanceScript * GetInstanceScript(InstanceMap *map) const override
static constexpr ObjectData const creatureData[]
static constexpr DungeonEncounterData const encounters[]
static constexpr std::string_view SlipStreamLandingZoneStringId2
void AddSC_instance_vortex_pinnacle()
static constexpr std::string_view SlipStreamLandingZoneStringId1
@ BOSS_ASAAD
@ DATA_SLIPSTREAM_LANDING_ZONE_1
@ BOSS_GRAND_VIZIER_ERTAN
@ BOSS_ALTAIRUS
@ DATA_SLIPSTREAM_LANDING_ZONE_2
constexpr char const * VPScriptName
@ NPC_SLIPSTREAM_LANDING_ZONE
@ NPC_ALTAIRUS
@ NPC_GRAND_VIZIER_ERTAN
@ NPC_ASAAD