TrinityCore
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
go_twilight_portal::go_twilight_portalAI Struct Reference

Public Member Functions

 go_twilight_portalAI (GameObject *gameobject)
 
bool GossipHello (Player *player) override
 
void UpdateAI (uint32) override
 
- Public Member Functions inherited from GameObjectAI
 GameObjectAI (GameObject *g)
 
virtual ~GameObjectAI ()
 
virtual void InitializeAI ()
 
virtual void Reset ()
 
virtual void DoAction (int32)
 
virtual void SetGUID (uint64, int32)
 
virtual uint64 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 SetData64 (uint32, uint64)
 
virtual uint64 GetData64 (uint32) const
 
virtual void SetData (uint32, uint32)
 
virtual void OnGameEvent (bool, uint16)
 
virtual void OnStateChanged (uint32, Unit *)
 
virtual void EventInform (uint32)
 

Private Attributes

InstanceScript_instance
 
uint32 _spellId
 
bool _deleted
 

Additional Inherited Members

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

Constructor & Destructor Documentation

go_twilight_portal::go_twilight_portalAI::go_twilight_portalAI ( GameObject gameobject)
inline

Because WDB template has non-existent spell ID, not seen in sniffs either, meh

1335  : GameObjectAI(gameobject),
1336  _instance(gameobject->GetInstanceScript()), _deleted(false)
1337  {
1338  switch (gameobject->GetEntry())
1339  {
1340  case GO_HALION_PORTAL_EXIT:
1341  gameobject->SetPhaseMask(0x20, true);
1342  _spellId = gameobject->GetGOInfo()->goober.spell;
1343  break;
1344  case GO_HALION_PORTAL_1:
1345  case GO_HALION_PORTAL_2:
1346  gameobject->SetPhaseMask(0x1, true);
1349  break;
1350  default:
1351  _spellId = 0;
1352  break;
1353  }
1354  }
Definition: ruby_sanctum.h:105
uint32 _spellId
Definition: boss_halion.cpp:1377
virtual void SetPhaseMask(uint32 newPhaseMask, bool update)
Definition: Object.cpp:2795
InstanceScript * GetInstanceScript()
Definition: Object.cpp:1540
Definition: boss_halion.cpp:109
GameObjectAI(GameObject *g)
Definition: GameObjectAI.h:34
GameObjectTemplate const * GetGOInfo() const
Definition: GameObject.h:894
struct GameObjectTemplate::@221::@233 goober
InstanceScript * _instance
Definition: boss_halion.cpp:1376
uint32 GetEntry() const
Definition: Object.h:107
bool _deleted
Definition: boss_halion.cpp:1378
Definition: ruby_sanctum.h:106
Definition: ruby_sanctum.h:104

+ Here is the call graph for this function:

Member Function Documentation

bool go_twilight_portal::go_twilight_portalAI::GossipHello ( Player player)
inlineoverridevirtual

Reimplemented from GameObjectAI.

1357  {
1358  if (_spellId != 0)
1359  player->CastSpell(player, _spellId, true);
1360  return true;
1361  }
uint32 _spellId
Definition: boss_halion.cpp:1377
void go_twilight_portal::go_twilight_portalAI::UpdateAI ( uint32  )
inlineoverridevirtual

Reimplemented from GameObjectAI.

1364  {
1366  return;
1367 
1368  if (!_deleted)
1369  {
1370  _deleted = true;
1371  go->Delete();
1372  }
1373  }
Definition: InstanceScript.h:59
Definition: ruby_sanctum.h:34
InstanceScript * _instance
Definition: boss_halion.cpp:1376
bool _deleted
Definition: boss_halion.cpp:1378
GameObject *const go
Definition: GameObjectAI.h:32
EncounterState GetBossState(uint32 id) const
Definition: InstanceScript.h:227
void Delete()
Definition: GameObject.cpp:726

+ Here is the call graph for this function:

Member Data Documentation

bool go_twilight_portal::go_twilight_portalAI::_deleted
private
InstanceScript* go_twilight_portal::go_twilight_portalAI::_instance
private
uint32 go_twilight_portal::go_twilight_portalAI::_spellId
private

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