AzerothCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
AreaTrigger_at_brewfest Class Reference
Inheritance diagram for AreaTrigger_at_brewfest:
AreaTriggerScript ScriptObject

Public Member Functions

 AreaTrigger_at_brewfest ()
 
bool OnTrigger (Player *player, AreaTrigger const *trigger) override
 
- Public Member Functions inherited from AreaTriggerScript
bool IsDatabaseBound () const override
 
- Public Member Functions inherited from ScriptObject
virtual bool isAfterLoadScript () const
 
virtual void checkValidity ()
 
const std::string & GetName () const
 
uint16 GetTotalAvailableHooks ()
 

Private Attributes

std::map< uint32, time_t > _triggerTimes
 

Additional Inherited Members

- Protected Member Functions inherited from AreaTriggerScript
 AreaTriggerScript (const char *name)
 
- Protected Member Functions inherited from ScriptObject
 ScriptObject (const char *name, uint16 totalAvailableHooks=0)
 
virtual ~ScriptObject ()=default
 

Detailed Description

Constructor & Destructor Documentation

◆ AreaTrigger_at_brewfest()

AreaTrigger_at_brewfest::AreaTrigger_at_brewfest ( )
inline
292 : AreaTriggerScript("at_brewfest")
293 {
294 // Initialize for cooldown
296 }
@ AT_BREWFEST_DUROTAR
Definition areatrigger_scripts.cpp:281
@ AT_BREWFEST_DUN_MOROGH
Definition areatrigger_scripts.cpp:282
Definition AreaTriggerScript.h:24
std::map< uint32, time_t > _triggerTimes
Definition areatrigger_scripts.cpp:324

References _triggerTimes, AT_BREWFEST_DUN_MOROGH, and AT_BREWFEST_DUROTAR.

Member Function Documentation

◆ OnTrigger()

bool AreaTrigger_at_brewfest::OnTrigger ( Player player,
AreaTrigger const *  trigger 
)
inlineoverridevirtual

Reimplemented from AreaTriggerScript.

299 {
300 uint32 triggerId = trigger->entry;
301 // Second trigger happened too early after first, skip for now
303 return false;
304
305 switch (triggerId)
306 {
308 if (Creature* tapper = player->FindNearestCreature(NPC_TAPPER_SWINDLEKEG, 20.0f))
309 tapper->AI()->Talk(SAY_WELCOME, player);
310 break;
312 if (Creature* ipfelkofer = player->FindNearestCreature(NPC_IPFELKOFER_IRONKEG, 20.0f))
313 ipfelkofer->AI()->Talk(SAY_WELCOME, player);
314 break;
315 default:
316 break;
317 }
318
319 _triggerTimes[triggerId] = GameTime::GetGameTime().count();
320 return false;
321 }
std::uint32_t uint32
Definition Define.h:107
@ NPC_IPFELKOFER_IRONKEG
Definition areatrigger_scripts.cpp:279
@ SAY_WELCOME
Definition areatrigger_scripts.cpp:284
@ AREATRIGGER_TALK_COOLDOWN
Definition areatrigger_scripts.cpp:286
@ NPC_TAPPER_SWINDLEKEG
Definition areatrigger_scripts.cpp:278
Definition Creature.h:43
Creature * FindNearestCreature(uint32 entry, float range, bool alive=true) const
Definition Object.cpp:2425
Seconds GetGameTime()
Definition GameTime.cpp:38

References _triggerTimes, AREATRIGGER_TALK_COOLDOWN, AT_BREWFEST_DUN_MOROGH, AT_BREWFEST_DUROTAR, AreaTrigger::entry, WorldObject::FindNearestCreature(), GameTime::GetGameTime(), NPC_IPFELKOFER_IRONKEG, NPC_TAPPER_SWINDLEKEG, and SAY_WELCOME.

Member Data Documentation

◆ _triggerTimes

std::map<uint32, time_t> AreaTrigger_at_brewfest::_triggerTimes
private

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