Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Loading...
Searching...
No Matches
firelands.h
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#ifndef FIRELANDS_H_
7#define FIRELANDS_H_
8
9#include "Map.h"
10#include "CreatureAI.h"
11
12#define FirelandsScriptName "instance_firelands"
13
15
26
36
38{
39 public:
41
42 bool Execute(uint64 /*e_time*/, uint32 /*p_time*/)
43 {
44 _owner->AI()->DoZoneInCombat(_owner, 200.0f);
45 return true;
46 }
47
48 private:
50};
51
52template<class AI>
54{
55 if (InstanceMap* instance = creature->GetMap()->ToInstanceMap())
56 if (instance->GetInstanceScript())
57 if (instance->GetScriptId() == sObjectMgr->GetScriptId(FirelandsScriptName))
58 return new AI(creature);
59 return NULL;
60}
61
62#endif // FIRELANDS_H_
std::uint32_t uint32
Definition Define.h:77
std::uint64_t uint64
Definition Define.h:76
#define sObjectMgr
Definition ObjectMgr.h:1617
uint32 const EncounterCount
CreatureIds
DataTypes
DelayedAttackStartEvent(Creature *owner)
Definition firelands.h:40
bool Execute(uint64, uint32)
Definition firelands.h:42
InstanceMap * ToInstanceMap()
Definition Map.h:440
Map * GetMap() const
Definition Object.h:740
#define FirelandsScriptName
Definition firelands.h:12
CreatureAI * GetFirelandsAI(Creature *creature)
Definition firelands.h:53
@ NPC_HARBINGER_OF_FLAME
Definition firelands.h:32
@ NPC_SMOULDERING_HATCHLING
Definition firelands.h:34
@ NPC_BLAZING_MONSTROSITY_RIGHT
Definition firelands.h:30
@ NPC_MOLTEN_EGG_TRASH
Definition firelands.h:33
@ NPC_EGG_PILE
Definition firelands.h:31
@ NPC_BLAZING_MONSTROSITY_LEFT
Definition firelands.h:29
@ DATA_BETH_TILAC
Definition firelands.h:18
@ DATA_ALYSRAZOR
Definition firelands.h:21
@ DATA_MAJORDOMO_STAGHELM
Definition firelands.h:23
@ DATA_RAGNAROS
Definition firelands.h:24
@ DATA_BALEROC
Definition firelands.h:22
@ DATA_SHANNOX
Definition firelands.h:20
@ DATA_LORD_RHYOLITH
Definition firelands.h:19