AzerothCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
go_scourge_enclosure Class Reference
Inheritance diagram for go_scourge_enclosure:
GameObjectScript ScriptObject UpdatableScript< GameObject >

Public Member Functions

 go_scourge_enclosure ()
 
bool OnGossipHello (Player *player, GameObject *go) override
 
- Public Member Functions inherited from GameObjectScript
bool IsDatabaseBound () const override
 
virtual bool OnGossipSelect (Player *, GameObject *, uint32, uint32)
 
virtual bool OnGossipSelectCode (Player *, GameObject *, uint32, uint32, const char *)
 
virtual bool OnQuestAccept (Player *, GameObject *, Quest const *)
 
virtual bool OnQuestReward (Player *, GameObject *, Quest const *, uint32)
 
virtual uint32 GetDialogStatus (Player *, GameObject *)
 
virtual void OnDestroyed (GameObject *, Player *)
 
virtual void OnDamaged (GameObject *, Player *)
 
virtual void OnModifyHealth (GameObject *, Unit *, int32 &, SpellInfo const *)
 
virtual void OnLootStateChanged (GameObject *, uint32, Unit *)
 
virtual void OnGameObjectStateChanged (GameObject *, uint32)
 
virtual GameObjectAIGetAI (GameObject *) const
 
- Public Member Functions inherited from ScriptObject
virtual bool isAfterLoadScript () const
 
virtual void checkValidity ()
 
const std::string & GetName () const
 
uint16 GetTotalAvailableHooks ()
 
- Public Member Functions inherited from UpdatableScript< GameObject >
virtual void OnUpdate (GameObject *, uint32)
 

Additional Inherited Members

- Protected Member Functions inherited from GameObjectScript
 GameObjectScript (const char *name)
 
- Protected Member Functions inherited from ScriptObject
 ScriptObject (const char *name, uint16 totalAvailableHooks=0)
 
virtual ~ScriptObject ()=default
 
- Protected Member Functions inherited from UpdatableScript< GameObject >
 UpdatableScript ()=default
 

Detailed Description

Constructor & Destructor Documentation

◆ go_scourge_enclosure()

go_scourge_enclosure::go_scourge_enclosure ( )
inline
805: GameObjectScript("go_scourge_enclosure") { }
Definition GameObjectScript.h:25

Member Function Documentation

◆ OnGossipHello()

bool go_scourge_enclosure::OnGossipHello ( Player player,
GameObject go 
)
inlineoverridevirtual

Reimplemented from GameObjectScript.

808 {
809 go->UseDoorOrButton();
811 {
812 Creature* gymerDummy = go->FindNearestCreature(NPC_GYMER_DUMMY, 20.0f);
813 if (gymerDummy)
814 {
815 player->KilledMonsterCredit(gymerDummy->GetEntry(), gymerDummy->GetGUID());
816 gymerDummy->CastSpell(gymerDummy, SPELL_GYMER_LOCK_EXPLOSION, true);
817 gymerDummy->DespawnOrUnsummon();
818 }
819 }
820 return true;
821 }
@ QUEST_STATUS_INCOMPLETE
Definition QuestDef.h:103
Definition Creature.h:43
void DespawnOrUnsummon(Milliseconds msTimeToDespawn, Seconds forcedRespawnTimer)
Definition Creature.cpp:2183
void UseDoorOrButton(uint32 time_to_restore=0, bool alternative=false, Unit *user=nullptr)
Definition GameObject.cpp:1414
uint32 GetEntry() const
Definition Object.h:115
static ObjectGuid GetGUID(Object const *o)
Definition Object.h:112
void KilledMonsterCredit(uint32 entry, ObjectGuid guid=ObjectGuid::Empty)
Definition PlayerQuest.cpp:1927
QuestStatus GetQuestStatus(uint32 quest_id) const
Definition PlayerQuest.cpp:1430
SpellCastResult CastSpell(SpellCastTargets const &targets, SpellInfo const *spellInfo, CustomSpellValues const *value, TriggerCastFlags triggerFlags=TRIGGERED_NONE, Item *castItem=nullptr, AuraEffect const *triggeredByAura=nullptr, ObjectGuid originalCaster=ObjectGuid::Empty)
Definition Unit.cpp:1178
Creature * FindNearestCreature(uint32 entry, float range, bool alive=true) const
Definition Object.cpp:2459
@ QUEST_OUR_ONLY_HOPE
Definition zone_zuldrak.cpp:797
@ SPELL_GYMER_LOCK_EXPLOSION
Definition zone_zuldrak.cpp:799
@ NPC_GYMER_DUMMY
Definition zone_zuldrak.cpp:798

References Unit::CastSpell(), Creature::DespawnOrUnsummon(), WorldObject::FindNearestCreature(), Object::GetEntry(), Object::GetGUID(), Player::GetQuestStatus(), Player::KilledMonsterCredit(), NPC_GYMER_DUMMY, QUEST_OUR_ONLY_HOPE, QUEST_STATUS_INCOMPLETE, SPELL_GYMER_LOCK_EXPLOSION, and GameObject::UseDoorOrButton().


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