TrinityCore
Loading...
Searching...
No Matches
GameObjectAI Class Reference

#include <GameObjectAI.h>

+ Inheritance diagram for GameObjectAI:

Public Member Functions

 GameObjectAI (GameObject *go, uint32 scriptId={}) noexcept
 
 GameObjectAI (GameObjectAI const &)=delete
 
 GameObjectAI (GameObjectAI &&)=delete
 
GameObjectAI & operator= (GameObjectAI const &)=delete
 
GameObjectAI & operator= (GameObjectAI &&)=delete
 
virtual ~GameObjectAI ()
 
uint32 GetId () const
 
virtual void UpdateAI (uint32)
 
virtual void InitializeAI ()
 
virtual void Reset ()
 
virtual void DoAction (int32 param)
 
virtual void SetGUID (ObjectGuid const &guid, int32 id)
 
virtual ObjectGuid GetGUID (int32 id) const
 
virtual Optional< QuestGiverStatus > GetDialogStatus (Player const *player)
 
virtual bool OnGossipHello (Player *)
 
virtual bool OnGossipSelect (Player *, uint32, uint32)
 
virtual bool OnGossipSelectCode (Player *, uint32, uint32, char const *)
 
virtual void OnQuestAccept (Player *, Quest const *)
 
virtual void OnQuestReward (Player *, Quest const *, LootItemType, uint32)
 
virtual bool OnReportUse (Player *)
 
virtual void Destroyed (WorldObject *, uint32)
 
virtual void Damaged (WorldObject *, 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 OnLootStateChanged (uint32, Unit *)
 
virtual void OnStateChanged (uint32)
 
virtual void EventInform (uint32)
 
virtual void SpellHit (WorldObject *, SpellInfo const *)
 
virtual void SpellHitTarget (WorldObject *, SpellInfo const *)
 
virtual void JustSummoned (Creature *)
 
virtual void SummonedCreatureDespawn (Creature *)
 
virtual void SummonedCreatureDies (Creature *, Unit *)
 
virtual bool OnCapturePointAssaulted (Player *)
 
virtual bool OnCapturePointUpdated (WorldPackets::Battleground::BattlegroundCapturePointState)
 

Static Public Member Functions

static int32 Permissible (GameObject const *go)
 

Protected Attributes

GameObject *const me
 

Private Attributes

uint32 const _scriptId
 

Detailed Description

Definition at line 43 of file GameObjectAI.h.

Constructor & Destructor Documentation

◆ GameObjectAI() [1/3]

GameObjectAI::GameObjectAI ( GameObject *  go,
uint32  scriptId = {} 
)
explicitnoexcept

Definition at line 29 of file GameObjectAI.cpp.

References ASSERT.

◆ GameObjectAI() [2/3]

GameObjectAI::GameObjectAI ( GameObjectAI const &  )
delete

◆ GameObjectAI() [3/3]

GameObjectAI::GameObjectAI ( GameObjectAI &&  )
delete

◆ ~GameObjectAI()

GameObjectAI::~GameObjectAI ( )
virtualdefault

Member Function Documentation

◆ Damaged()

virtual void GameObjectAI::Damaged ( WorldObject *  ,
uint32   
)
inlinevirtual

Definition at line 99 of file GameObjectAI.h.

Referenced by GameObject::SetDestructibleState().

◆ Destroyed()

virtual void GameObjectAI::Destroyed ( WorldObject *  ,
uint32   
)
inlinevirtual

Reimplemented in SmartGameObjectAI, and go_ulduar_tower::go_ulduar_towerAI.

Definition at line 98 of file GameObjectAI.h.

Referenced by GameObject::SetDestructibleState().

◆ DoAction()

virtual void GameObjectAI::DoAction ( int32  param)
inlinevirtual

Reimplemented in go_suppression_device.

Definition at line 70 of file GameObjectAI.h.

◆ EventInform()

virtual void GameObjectAI::EventInform ( uint32  )
inlinevirtual

Reimplemented in SmartGameObjectAI.

Definition at line 109 of file GameObjectAI.h.

◆ GetData()

virtual uint32 GameObjectAI::GetData ( uint32  ) const
inlinevirtual

Definition at line 101 of file GameObjectAI.h.

◆ GetData64()

virtual uint64 GameObjectAI::GetData64 ( uint32  ) const
inlinevirtual

Definition at line 103 of file GameObjectAI.h.

◆ GetDialogStatus()

Optional< QuestGiverStatus > GameObjectAI::GetDialogStatus ( Player const *  player)
virtual

Definition at line 36 of file GameObjectAI.cpp.

◆ GetGUID()

virtual ObjectGuid GameObjectAI::GetGUID ( int32  id) const
inlinevirtual

Definition at line 72 of file GameObjectAI.h.

References ObjectGuid::Empty.

◆ GetId()

uint32 GameObjectAI::GetId ( ) const
inline

Definition at line 61 of file GameObjectAI.h.

◆ InitializeAI()

virtual void GameObjectAI::InitializeAI ( )
inlinevirtual

◆ JustSummoned()

virtual void GameObjectAI::JustSummoned ( Creature *  )
inlinevirtual

Reimplemented in SmartGameObjectAI.

Definition at line 118 of file GameObjectAI.h.

Referenced by TempSummon::InitSummon().

◆ OnCapturePointAssaulted()

virtual bool GameObjectAI::OnCapturePointAssaulted ( Player *  )
inlinevirtual

Reimplemented in go_bg_seething_shore_azerite.

Definition at line 124 of file GameObjectAI.h.

◆ OnCapturePointUpdated()

virtual bool GameObjectAI::OnCapturePointUpdated ( WorldPackets::Battleground::BattlegroundCapturePointState  )
inlinevirtual

Definition at line 126 of file GameObjectAI.h.

◆ OnGameEvent()

virtual void GameObjectAI::OnGameEvent ( bool  ,
uint16   
)
inlinevirtual

Reimplemented in SmartGameObjectAI, and go_bells::go_bellsAI.

Definition at line 106 of file GameObjectAI.h.

◆ OnGossipHello()

virtual bool GameObjectAI::OnGossipHello ( Player *  )
inlinevirtual

Reimplemented in go_shadowforge_brazier::go_shadowforge_brazierAI, go_blackened_urn::go_blackened_urnAI, go_atalai_statue::go_atalai_statueAI, go_keystone_chamber, go_blackfathom_fire, go_barrel_old_hillsbrad, go_gong::go_gongAI, go_naga_brazier::go_naga_brazierAI, go_elune_fire::go_elune_fireAI, go_troll_cage::go_troll_cageAI, go_shallow_grave::go_shallow_graveAI, go_prince_taldaram_sphere, go_gundrak_altar, containment_sphere, go_mimiron_hardmode_button::go_mimiron_hardmode_buttonAI, go_razorscale_harpoon::go_razorscale_harpoonAI, go_palehoof_sphere, go_bridge_console, go_shield_generator, go_main_chambers_access_panel, go_broggok_lever, go_grand_warlock_chamber_door, Scripts::Pandaria::TheWanderingIsle::go_edict_of_temperance, go_resonite_cask::go_resonite_caskAI, go_massive_seaforium_charge::go_massive_seaforium_chargeAI, go_kings_rest_serpentine_seal, SmartGameObjectAI, go_av_capturable_object, go_ioc_capturable_object, go_sota_capturable_object, go_master_surveyor, go_chromaggus_lever, go_orb_of_domination, go_acherus_soul_prison::go_acherus_soul_prisonAI, go_loosely_turned_soil, go_brazier_of_the_herald, go_gauntlet_gate::go_gauntlet_gateAI, go_kalecgos_spectral_rift::go_kalecgos_spectral_riftAI, go_orb_of_the_blue_flight::go_orb_of_the_blue_flightAI, go_blackfathom_altar, go_ossirian_crystal::go_ossirian_crystalAI, go_wind_stone::go_wind_stoneAI, go_twilight_portal, go_empowering_blood_orb, go_activation_crystal, go_finklesteins_cauldron, go_najentus_spine, go_strange_pool, go_legion_obelisk::go_legion_obeliskAI, go_simon_cluster::go_simon_clusterAI, go_apexis_relic::go_apexis_relicAI, go_gilded_brazier::go_gilded_brazierAI, go_tablet_of_the_seven::go_tablet_of_the_sevenAI, go_ethereum_prison::go_ethereum_prisonAI, go_ethereum_stasis::go_ethereum_stasisAI, go_southfury_moonstone::go_southfury_moonstoneAI, go_tele_to_dalaran_crystal::go_tele_to_dalaran_crystalAI, go_tele_to_violet_stand::go_tele_to_violet_standAI, go_blood_filled_orb::go_blood_filled_orbAI, go_amberpine_outhouse::go_amberpine_outhouseAI, go_veil_skith_cage::go_veil_skith_cageAI, and go_midsummer_ribbon_pole::go_midsummer_ribbon_poleAI.

Definition at line 80 of file GameObjectAI.h.

◆ OnGossipSelect()

◆ OnGossipSelectCode()

virtual bool GameObjectAI::OnGossipSelectCode ( Player *  ,
uint32  ,
uint32  ,
char const *   
)
inlinevirtual

Reimplemented in SmartGameObjectAI.

Definition at line 86 of file GameObjectAI.h.

Referenced by WorldSession::HandleGossipSelectOptionOpcode().

◆ OnLootStateChanged()

virtual void GameObjectAI::OnLootStateChanged ( uint32  ,
Unit *   
)
inlinevirtual

Reimplemented in go_suppression_device, SmartGameObjectAI, and go_sapphiron_birth.

Definition at line 107 of file GameObjectAI.h.

Referenced by GameObject::SetLootState().

◆ OnQuestAccept()

virtual void GameObjectAI::OnQuestAccept ( Player *  ,
Quest const *   
)
inlinevirtual

◆ OnQuestReward()

virtual void GameObjectAI::OnQuestReward ( Player *  ,
Quest const *  ,
LootItemType  ,
uint32   
)
inlinevirtual

Reimplemented in go_loosely_turned_soil, and SmartGameObjectAI.

Definition at line 92 of file GameObjectAI.h.

◆ OnReportUse()

virtual bool GameObjectAI::OnReportUse ( Player *  )
inlinevirtual

Reimplemented in SmartGameObjectAI, and go_celestial_planetarium_access.

Definition at line 96 of file GameObjectAI.h.

◆ OnStateChanged()

virtual void GameObjectAI::OnStateChanged ( uint32  )
inlinevirtual

Definition at line 108 of file GameObjectAI.h.

Referenced by GameObject::SetGoState().

◆ operator=() [1/2]

GameObjectAI & GameObjectAI::operator= ( GameObjectAI &&  )
delete

◆ operator=() [2/2]

GameObjectAI & GameObjectAI::operator= ( GameObjectAI const &  )
delete

◆ Permissible()

int32 GameObjectAI::Permissible ( GameObject const *  go)
static

Definition at line 24 of file GameObjectAI.cpp.

References PERMIT_BASE_NO.

◆ Reset()

◆ SetData()

virtual void GameObjectAI::SetData ( uint32  ,
uint32   
)
inlinevirtual

Reimplemented in SmartGameObjectAI.

Definition at line 104 of file GameObjectAI.h.

Referenced by SmartScript::ProcessAction().

◆ SetData64()

virtual void GameObjectAI::SetData64 ( uint32  ,
uint64   
)
inlinevirtual

Definition at line 102 of file GameObjectAI.h.

◆ SetGUID()

virtual void GameObjectAI::SetGUID ( ObjectGuid const &  guid,
int32  id 
)
inlinevirtual

Reimplemented in go_empowering_blood_orb.

Definition at line 71 of file GameObjectAI.h.

◆ SpellHit()

virtual void GameObjectAI::SpellHit ( WorldObject *  ,
SpellInfo const *   
)
inlinevirtual

Reimplemented in SmartGameObjectAI, go_caribou_trap, and go_mammoth_trap.

Definition at line 112 of file GameObjectAI.h.

Referenced by Spell::GOTargetInfo::DoTargetSpellHit().

◆ SpellHitTarget()

virtual void GameObjectAI::SpellHitTarget ( WorldObject *  ,
SpellInfo const *   
)
inlinevirtual

◆ SummonedCreatureDespawn()

virtual void GameObjectAI::SummonedCreatureDespawn ( Creature *  )
inlinevirtual

Reimplemented in SmartGameObjectAI.

Definition at line 120 of file GameObjectAI.h.

◆ SummonedCreatureDies()

virtual void GameObjectAI::SummonedCreatureDies ( Creature *  ,
Unit *   
)
inlinevirtual

Reimplemented in SmartGameObjectAI.

Definition at line 121 of file GameObjectAI.h.

◆ UpdateAI()

Member Data Documentation

◆ _scriptId

uint32 const GameObjectAI::_scriptId
private

Definition at line 47 of file GameObjectAI.h.

◆ me

GameObject* const GameObjectAI::me
protected

Definition at line 50 of file GameObjectAI.h.

Referenced by go_suppression_device::Activate(), go_suppression_device::Deactivate(), SmartGameObjectAI::Destroyed(), go_ulduar_tower::go_ulduar_towerAI::Destroyed(), go_wg_vehicle_teleporter::GetValidVehicle(), go_empowering_blood_orb::HandleObjectUse(), go_troll_cage::go_troll_cageAI::initBlyCrewMember(), SmartGameObjectAI::InitializeAI(), go_ragnaros_lava_burst_trap::InitializeAI(), go_hoo_the_makers_lift_controller::InitializeAI(), go_bells::go_bellsAI::InitializeAI(), go_wg_vehicle_teleporter::IsFriendly(), go_bg_seething_shore_azerite::OnCapturePointAssaulted(), go_blackened_urn::go_blackened_urnAI::OnGossipHello(), go_atalai_statue::go_atalai_statueAI::OnGossipHello(), go_blackfathom_fire::OnGossipHello(), go_gong::go_gongAI::OnGossipHello(), go_naga_brazier::go_naga_brazierAI::OnGossipHello(), go_elune_fire::go_elune_fireAI::OnGossipHello(), go_shallow_grave::go_shallow_graveAI::OnGossipHello(), go_prince_taldaram_sphere::OnGossipHello(), go_gundrak_altar::OnGossipHello(), containment_sphere::OnGossipHello(), go_mimiron_hardmode_button::go_mimiron_hardmode_buttonAI::OnGossipHello(), go_razorscale_harpoon::go_razorscale_harpoonAI::OnGossipHello(), go_palehoof_sphere::OnGossipHello(), go_shield_generator::OnGossipHello(), go_main_chambers_access_panel::OnGossipHello(), go_broggok_lever::OnGossipHello(), Scripts::Pandaria::TheWanderingIsle::go_edict_of_temperance::OnGossipHello(), go_resonite_cask::go_resonite_caskAI::OnGossipHello(), go_massive_seaforium_charge::go_massive_seaforium_chargeAI::OnGossipHello(), go_kings_rest_serpentine_seal::OnGossipHello(), SmartGameObjectAI::OnGossipHello(), go_av_capturable_object::OnGossipHello(), go_ioc_capturable_object::OnGossipHello(), go_sota_capturable_object::OnGossipHello(), go_master_surveyor::OnGossipHello(), go_chromaggus_lever::OnGossipHello(), go_acherus_soul_prison::go_acherus_soul_prisonAI::OnGossipHello(), go_brazier_of_the_herald::OnGossipHello(), go_gauntlet_gate::go_gauntlet_gateAI::OnGossipHello(), go_orb_of_the_blue_flight::go_orb_of_the_blue_flightAI::OnGossipHello(), go_ossirian_crystal::go_ossirian_crystalAI::OnGossipHello(), go_empowering_blood_orb::OnGossipHello(), go_najentus_spine::OnGossipHello(), go_strange_pool::OnGossipHello(), go_legion_obelisk::go_legion_obeliskAI::OnGossipHello(), go_simon_cluster::go_simon_clusterAI::OnGossipHello(), go_apexis_relic::go_apexis_relicAI::OnGossipHello(), go_gilded_brazier::go_gilded_brazierAI::OnGossipHello(), go_tablet_of_the_seven::go_tablet_of_the_sevenAI::OnGossipHello(), go_ethereum_prison::go_ethereum_prisonAI::OnGossipHello(), go_ethereum_stasis::go_ethereum_stasisAI::OnGossipHello(), go_blood_filled_orb::go_blood_filled_orbAI::OnGossipHello(), go_amberpine_outhouse::go_amberpine_outhouseAI::OnGossipHello(), go_veil_skith_cage::go_veil_skith_cageAI::OnGossipHello(), go_midsummer_ribbon_pole::go_midsummer_ribbon_poleAI::OnGossipHello(), SmartGameObjectAI::OnGossipSelect(), icecrown_citadel_teleport::OnGossipSelect(), go_amberpine_outhouse::go_amberpine_outhouseAI::OnGossipSelect(), go_ahune_ice_stone::OnGossipSelect(), go_apexis_relic::go_apexis_relicAI::OnGossipSelect(), go_suppression_device::OnLootStateChanged(), go_sapphiron_birth::OnLootStateChanged(), SmartGameObjectAI::OnQuestAccept(), SmartGameObjectAI::OnQuestReward(), SmartGameObjectAI::OnReportUse(), go_celestial_planetarium_access::OnReportUse(), go_av_capturable_object::Reset(), go_av_contested_object::Reset(), go_ioc_contested_object::Reset(), go_direbrew_mole_machine::go_direbrew_mole_machineAI::Reset(), go_empowering_blood_orb::Reset(), go_razorscale_harpoon::go_razorscale_harpoonAI::Reset(), go_razorscale_mole_machine::go_razorscale_mole_machineAI::Reset(), go_caribou_trap::Reset(), go_mammoth_trap::Reset(), go_ahune_ice_spear::Reset(), go_vazruden_liquid_fire::Reset(), go_razorscale_harpoon::go_razorscale_harpoonAI::SelectRightSpell(), go_empowering_blood_orb::SetGUID(), go_mammoth_trap::SpellHit(), go_suppression_device::UpdateAI(), go_cheer_speaker::go_cheer_speakerAI::UpdateAI(), go_celestial_planetarium_access::UpdateAI(), go_caribou_trap::UpdateAI(), go_mammoth_trap::UpdateAI(), go_wg_vehicle_teleporter::UpdateAI(), go_brewfest_music::go_brewfest_musicAI::UpdateAI(), go_midsummer_music::go_midsummer_musicAI::UpdateAI(), go_darkmoon_faire_music::go_darkmoon_faire_musicAI::UpdateAI(), go_pirate_day_music::go_pirate_day_musicAI::UpdateAI(), go_bells::go_bellsAI::UpdateAI(), and go_twilight_portal::UpdateAI().


The documentation for this class was generated from the following files: