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

Public Member Functions

 go_orb_of_domination (GameObject *go)
 
bool GossipHello (Player *player, bool) 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 const &, int32)
 
virtual ObjectGuid GetGUID (int32) const
 
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 *)
 
virtual void SummonedCreatureEvade (Creature *)
 

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_orb_of_domination()

go_orb_of_domination::go_orb_of_domination ( GameObject go)
inline
252: GameObjectAI(go) { }
Definition GameObjectAI.h:33

Member Function Documentation

◆ GossipHello()

bool go_orb_of_domination::GossipHello ( Player player,
bool   
)
inlineoverridevirtual

Reimplemented from GameObjectAI.

255 {
256 if (InstanceScript* instance = me->GetInstanceScript())
257 if (instance->GetData(DATA_EGG_EVENT) != DONE && !player->HasAura(SPELL_MIND_EXHAUSTION) && !player->GetPet())
258 if (Creature* razor = ObjectAccessor::GetCreature(*me, instance->GetGuidData(DATA_RAZORGORE_THE_UNTAMED)))
259 {
260 razor->AI()->SetGUID(player->GetGUID());
261 razor->Attack(player, true);
262 player->CastSpell(razor, SPELL_MINDCONTROL);
263 }
264 return true;
265 }
@ DONE
Definition InstanceScript.h:61
@ DATA_EGG_EVENT
Definition blackwing_lair.h:112
@ DATA_RAZORGORE_THE_UNTAMED
Definition blackwing_lair.h:31
@ SPELL_MINDCONTROL
Definition boss_razorgore.cpp:40
@ SPELL_MIND_EXHAUSTION
Definition boss_razorgore.cpp:43
Definition Creature.h:47
GameObject *const me
Definition GameObjectAI.h:35
Definition InstanceScript.h:143
static ObjectGuid GetGUID(Object const *o)
Definition Object.h:114
Pet * GetPet() const
Definition Player.cpp:8946
bool HasAura(uint32 spellId, ObjectGuid casterGUID=ObjectGuid::Empty, ObjectGuid itemCasterGUID=ObjectGuid::Empty, uint8 reqEffMask=0) const
Definition Unit.cpp:5982
SpellCastResult CastSpell(SpellCastTargets const &targets, SpellInfo const *spellInfo, CustomSpellValues const *value, TriggerCastFlags triggerFlags=TRIGGERED_NONE, Item *castItem=nullptr, AuraEffect const *triggeredByAura=nullptr, ObjectGuid originalCaster=ObjectGuid::Empty)
Definition Unit.cpp:1350
InstanceScript * GetInstanceScript() const
Definition Object.cpp:1238
Creature * GetCreature(WorldObject const &u, ObjectGuid const &guid)
Definition ObjectAccessor.cpp:210

References Unit::CastSpell(), DATA_EGG_EVENT, DATA_RAZORGORE_THE_UNTAMED, DONE, ObjectAccessor::GetCreature(), Object::GetGUID(), WorldObject::GetInstanceScript(), Player::GetPet(), Unit::HasAura(), GameObjectAI::me, SPELL_MIND_EXHAUSTION, and SPELL_MINDCONTROL.


The documentation for this struct was generated from the following file: