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

Public Member Functions

 go_chromaggus_leverAI (GameObject *go)
 
bool GossipHello (Player *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 *)
 

Private Attributes

InstanceScript_instance
 

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

go_chromaggus_lever::go_chromaggus_leverAI::go_chromaggus_leverAI ( GameObject go)
inline
Definition: GameObjectAI.h:34
InstanceScript * GetInstanceScript() const
Definition: Object.cpp:1192
InstanceScript * _instance
Definition: boss_chromaggus.cpp:267

Member Function Documentation

◆ GossipHello()

bool go_chromaggus_lever::go_chromaggus_leverAI::GossipHello ( Player player,
bool  reportUse 
)
inlineoverridevirtual

Reimplemented from GameObjectAI.

243 {
244 if (reportUse)
245 {
247 {
249 {
250 creature->SetHomePosition(homePos);
251 creature->GetMotionMaster()->MovePath(creature->GetEntry() * 10, false);
252 creature->AI()->SetGUID(player->GetGUID(), GUID_LEVER_USER);
253 }
254
257 }
258
261 }
262
263 return true;
264 }
@ GO_STATE_ACTIVE
Definition: GameObjectData.h:690
@ IN_PROGRESS
Definition: InstanceScript.h:58
@ DONE
Definition: InstanceScript.h:60
@ DATA_CHROMAGGUS
Definition: blackwing_lair.h:37
@ DATA_GO_CHROMAGGUS_DOOR
Definition: blackwing_lair.h:46
@ GUID_LEVER_USER
Definition: boss_chromaggus.cpp:69
Position const homePos
Definition: boss_chromaggus.cpp:72
@ GO_FLAG_NOT_SELECTABLE
Definition: SharedDefines.h:1607
@ GO_FLAG_IN_USE
Definition: SharedDefines.h:1603
GameObject *const me
Definition: GameObjectAI.h:36
Definition: Creature.h:46
Definition: GameObject.h:122
void SetGoState(GOState state)
Definition: GameObject.cpp:2477
void SetGameObjectFlag(GameObjectFlags flags)
Definition: GameObject.h:220
static ObjectGuid GetGUID(Object const *o)
Definition: Object.h:106
static ObjectGuid const Empty
Definition: ObjectGuid.h:122
Creature * GetCreature(uint32 type)
Definition: InstanceScript.cpp:99
void HandleGameObject(ObjectGuid guid, bool open, GameObject *go=nullptr)
Definition: InstanceScript.cpp:109
EncounterState GetBossState(uint32 id) const
Definition: InstanceScript.h:231
GameObject * GetGameObject(uint32 type)
Definition: InstanceScript.cpp:104

References _instance, DATA_CHROMAGGUS, DATA_GO_CHROMAGGUS_DOOR, DONE, ObjectGuid::Empty, InstanceScript::GetBossState(), InstanceScript::GetCreature(), InstanceScript::GetGameObject(), Object::GetGUID(), GO_FLAG_IN_USE, GO_FLAG_NOT_SELECTABLE, GO_STATE_ACTIVE, GUID_LEVER_USER, InstanceScript::HandleGameObject(), homePos, IN_PROGRESS, GameObjectAI::me, GameObject::SetGameObjectFlag(), and GameObject::SetGoState().

Member Data Documentation

◆ _instance

InstanceScript* go_chromaggus_lever::go_chromaggus_leverAI::_instance
private

Referenced by GossipHello().