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 *)
 
virtual void SummonedCreatureEvade (Creature *)
 

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:266

Member Function Documentation

◆ GossipHello()

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

Reimplemented from GameObjectAI.

242 {
243 if (reportUse)
244 {
246 {
248 {
249 creature->SetHomePosition(homePos);
250 creature->GetMotionMaster()->MovePath(creature->GetEntry() * 10, false);
251 creature->AI()->SetGUID(player->GetGUID(), GUID_LEVER_USER);
252 }
253
256 }
257
260 }
261
262 return true;
263 }
@ IN_PROGRESS
Definition: InstanceScript.h:58
@ DONE
Definition: InstanceScript.h:60
@ GO_STATE_ACTIVE
Definition: GameObjectData.h:690
@ DATA_CHROMAGGUS
Definition: blackwing_lair.h:37
@ DATA_GO_CHROMAGGUS_DOOR
Definition: blackwing_lair.h:46
@ GUID_LEVER_USER
Definition: boss_chromaggus.cpp:68
Position const homePos
Definition: boss_chromaggus.cpp:71
@ 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:121
void SetGoState(GOState state)
Definition: GameObject.cpp:2477
void SetGameObjectFlag(GameObjectFlags flags)
Definition: GameObject.h:219
static ObjectGuid GetGUID(Object const *o)
Definition: Object.h:109
static ObjectGuid const Empty
Definition: ObjectGuid.h:120
Creature * GetCreature(uint32 type)
Definition: InstanceScript.cpp:100
void HandleGameObject(ObjectGuid guid, bool open, GameObject *go=nullptr)
Definition: InstanceScript.cpp:110
EncounterState GetBossState(uint32 id) const
Definition: InstanceScript.h:235
GameObject * GetGameObject(uint32 type)
Definition: InstanceScript.cpp:105

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