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

Public Member Functions

 go_troll_cageAI (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 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 *)
 

Public Attributes

InstanceScript * instance
 

Private Member Functions

void initBlyCrewMember (uint32 entry, float x, float y, float z)
 

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

go_troll_cage::go_troll_cageAI::go_troll_cageAI ( GameObject *  go)
inline
Definition GameObjectAI.h:33
InstanceScript * GetInstanceScript() const
Definition Object.cpp:1247
InstanceScript * instance
Definition zulfarrak.cpp:330

Member Function Documentation

◆ GossipHello()

bool go_troll_cage::go_troll_cageAI::GossipHello ( Player *  ,
bool  reportUse 
)
inlineoverridevirtual

Reimplemented from GameObjectAI.

333 {
334 if (reportUse)
335 {
336 return true;
337 }
338
340 return false;
341
343
344 //setting gossip option as soon as the cages open
346 {
347 bly->SetNpcFlag(UNIT_NPC_FLAG_GOSSIP);
348 }
349
351 {
352 weegli->SetNpcFlag(UNIT_NPC_FLAG_GOSSIP);
353 }
354
355 //set bly & co to aggressive & start moving to top of stairs
356 initBlyCrewMember(NPC_BLY, 1886.9601f, 1263.4943f, 41.544308f);
357 initBlyCrewMember(NPC_RAVEN, 1882.5f, 1263, 41.52f);
358 initBlyCrewMember(NPC_ORO, 1886.47f, 1270.68f, 41.68f);
359 initBlyCrewMember(NPC_WEEGLI, 1890, 1263, 41.52f);
360 initBlyCrewMember(NPC_MURTA, 1891.19f, 1272.03f, 41.60f);
361 return false;
362 }
@ UNIT_NPC_FLAG_GOSSIP
Definition UnitDefines.h:322
Definition Creature.h:47
GameObject *const me
Definition GameObjectAI.h:35
ObjectGuid GetGuidData(uint32 type) const override
Definition InstanceScript.cpp:115
virtual uint32 GetData(uint32) const
Definition ZoneScript.h:51
virtual void SetData(uint32, uint32)
Definition ZoneScript.h:52
Creature * GetCreature(WorldObject const &u, ObjectGuid const &guid)
Definition ObjectAccessor.cpp:234
void initBlyCrewMember(uint32 entry, float x, float y, float z)
Definition zulfarrak.cpp:365
@ DATA_PYRAMID
Definition zulfarrak.h:51
@ PYRAMID_NOT_STARTED
Definition zulfarrak.h:72
@ PYRAMID_CAGES_OPEN
Definition zulfarrak.h:73
@ NPC_WEEGLI
Definition zulfarrak.h:40
@ NPC_ORO
Definition zulfarrak.h:39
@ NPC_MURTA
Definition zulfarrak.h:41
@ NPC_BLY
Definition zulfarrak.h:37
@ NPC_RAVEN
Definition zulfarrak.h:38

References DATA_PYRAMID, ObjectAccessor::GetCreature(), ZoneScript::GetData(), InstanceScript::GetGuidData(), initBlyCrewMember(), instance, GameObjectAI::me, NPC_BLY, NPC_MURTA, NPC_ORO, NPC_RAVEN, NPC_WEEGLI, PYRAMID_CAGES_OPEN, PYRAMID_NOT_STARTED, ZoneScript::SetData(), and UNIT_NPC_FLAG_GOSSIP.

◆ initBlyCrewMember()

void go_troll_cage::go_troll_cageAI::initBlyCrewMember ( uint32  entry,
float  x,
float  y,
float  z 
)
inlineprivate
366 {
368 {
369 crew->SetReactState(REACT_AGGRESSIVE);
370 crew->SetWalk(true);
371 crew->SetHomePosition(x, y, z, 4.78f);
372 crew->GetMotionMaster()->MovePoint(POINT_CREW_STAIRS, { x, y, z, 4.78f });
373 crew->SetFaction(FACTION_ESCORTEE_N_FRIEND_ACTIVE);
374
375 }
376 }
@ FACTION_ESCORTEE_N_FRIEND_ACTIVE
Definition SharedDefines.h:207
@ REACT_AGGRESSIVE
Definition Unit.h:569
@ POINT_CREW_STAIRS
Definition zulfarrak.h:64

References FACTION_ESCORTEE_N_FRIEND_ACTIVE, ObjectAccessor::GetCreature(), InstanceScript::GetGuidData(), instance, GameObjectAI::me, POINT_CREW_STAIRS, and REACT_AGGRESSIVE.

Referenced by GossipHello().

Member Data Documentation

◆ instance

InstanceScript* go_troll_cage::go_troll_cageAI::instance

Referenced by GossipHello(), and initBlyCrewMember().


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