AzerothCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
go_brazier_of_madness Struct Reference
Inheritance diagram for go_brazier_of_madness:
GameObjectAI

Public Member Functions

 go_brazier_of_madness (GameObject *go)
 
bool GossipHello (Player *, bool reportUse) override
 
- Public Member Functions inherited from GameObjectAI
 GameObjectAI (GameObject *go)
 
virtual ~GameObjectAI ()
 
virtual void UpdateAI (uint32)
 
virtual void InitializeAI ()
 
virtual void Reset ()
 
virtual void DoAction (int32)
 
virtual void SetGUID (ObjectGuid, int32)
 
virtual ObjectGuid GetGUID (int32) const
 
virtual bool GossipHello (Player *, bool)
 
virtual bool GossipSelect (Player *, uint32, uint32)
 
virtual bool GossipSelectCode (Player *, uint32, uint32, char const *)
 
virtual bool QuestAccept (Player *, Quest const *)
 
virtual bool QuestReward (Player *, Quest const *, uint32)
 
virtual uint32 GetDialogStatus (Player *)
 
virtual void Destroyed (Player *, uint32)
 
virtual uint32 GetData (uint32) const
 
virtual void SetData (uint32, uint32)
 
virtual void OnGameEvent (bool, uint16)
 
virtual void OnStateChanged (uint32, Unit *)
 
virtual void EventInform (uint32)
 
virtual void SpellHit (Unit *, SpellInfo const *)
 
virtual bool CanBeSeen (Player const *)
 
virtual void JustSummoned (Creature *)
 
virtual void SummonedCreatureDespawn (Creature *)
 
virtual void SummonedCreatureDies (Creature *, Unit *)
 

Additional Inherited Members

- Static Public Member Functions inherited from GameObjectAI
static int32 Permissible (GameObject const *go)
 
- Protected Attributes inherited from GameObjectAI
GameObject *const me
 

Detailed Description

Constructor & Destructor Documentation

◆ go_brazier_of_madness()

go_brazier_of_madness::go_brazier_of_madness ( GameObject go)
inline
213: GameObjectAI(go) { }
Definition: GameObjectAI.h:34

Member Function Documentation

◆ GossipHello()

bool go_brazier_of_madness::GossipHello ( Player ,
bool  reportUse 
)
inlineoverridevirtual

Reimplemented from GameObjectAI.

216 {
217 if (reportUse)
218 {
219 return true;
220 }
221
222 if (InstanceScript* instanceScript = me->GetInstanceScript())
223 {
224 if (instanceScript->GetGuidData(DATA_EDGE_OF_MADNESS))
225 {
226 return false;
227 }
228 }
229
230 uint32 bossEntry = 0;
231 for (uint8 i = 0; i < 4; ++i)
232 {
233 if (sGameEventMgr->IsActiveEvent(BrazierOfMadnessContainer[i].first))
234 {
235 bossEntry = BrazierOfMadnessContainer[i].second;
236 break;
237 }
238 }
239
240 if (bossEntry)
241 {
243 }
244
245 return false;
246 }
constexpr auto IN_MILLISECONDS
Definition: Common.h:62
constexpr auto HOUR
Definition: Common.h:57
std::uint8_t uint8
Definition: Define.h:110
std::uint32_t uint32
Definition: Define.h:108
@ TEMPSUMMON_CORPSE_TIMED_DESPAWN
Definition: Object.h:47
#define sGameEventMgr
Definition: GameEventMgr.h:186
Position const edgeOfMagnessSummonPos
Definition: instance_zulgurub.cpp:209
std::vector< std::pair< uint32, uint32 > > BrazierOfMadnessContainer
Definition: instance_zulgurub.cpp:201
@ DATA_EDGE_OF_MADNESS
Definition: zulgurub.h:40
GameObject *const me
Definition: GameObjectAI.h:36
TempSummon * SummonCreature(uint32 id, const Position &pos, TempSummonType spwtype=TEMPSUMMON_MANUAL_DESPAWN, uint32 despwtime=0, uint32 vehId=0, SummonPropertiesEntry const *properties=nullptr, bool visibleBySummonerOnly=false) const
Definition: Object.cpp:2318
InstanceScript * GetInstanceScript() const
Definition: Object.cpp:1192
Definition: InstanceScript.h:140

References BrazierOfMadnessContainer, DATA_EDGE_OF_MADNESS, edgeOfMagnessSummonPos, WorldObject::GetInstanceScript(), HOUR, IN_MILLISECONDS, GameObjectAI::me, sGameEventMgr, WorldObject::SummonCreature(), and TEMPSUMMON_CORPSE_TIMED_DESPAWN.