Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Loading...
Searching...
No Matches
boss_daakara.cpp
Go to the documentation of this file.
1/*
2* This file is part of Project SkyFire https://www.projectskyfire.org.
3* See LICENSE.md file for Copyright information
4*/
5
6#include "ScriptMgr.h"
7#include "ScriptedCreature.h"
8#include "zulaman.h"
9
26
28{
29};
30
32{
33};
34
36{
37 public:
38
39 boss_daakara() : CreatureScript("boss_daakara") { }
40
41 struct boss_daakaraAI : public BossAI
42 {
43 boss_daakaraAI(Creature* creature) : BossAI(creature, DATA_DAAKARA) { }
44
46 {
47 _Reset();
48 }
49
50 void EnterCombat(Unit* /*who*/) OVERRIDE
51 {
54 }
55
56 void JustDied(Unit* /*killer*/) OVERRIDE
57 {
59 _JustDied();
60 }
61
62 void KilledUnit(Unit* victim) OVERRIDE
63 {
64 if (victim->GetTypeId() == TYPEID_PLAYER)
66 }
67
69 {
70 if (!UpdateVictim())
71 return;
72
73 events.Update(diff);
74
75 if (me->HasUnitState(UNIT_STATE_CASTING))
76 return;
77 /*
78 while (uint32 eventId = events.ExecuteEvent())
79 {
80 switch (eventId)
81 {
82 default:
83 break;
84 }
85 }
86 */
87
89 }
90 };
91
93 {
94 return GetZulAmanAI<boss_daakaraAI>(creature);
95 }
96};
97
99{
100 new boss_daakara();
101}
std::uint32_t uint32
Definition Define.h:77
#define OVERRIDE
Definition Define.h:60
static constexpr TypeID TYPEID_PLAYER
@ UNIT_STATE_CASTING
Definition Unit.h:527
@ SAY_PLAYER_KILL
@ SAY_INTRO
#define SAY_DEATH
#define SAY_AGGRO
@ SAY_DEATH
@ SAY_TRANSFORMS_EAGLE
@ SAY_PLAYER_KILL
@ SAY_AGGRO
@ SAY_ABSORBS_EAGLE_SPIRIT
@ SAY_ABSORBS_LYNX_SPIRIT
@ SAY_TRANSFORMS_LYNX
@ SAY_FIRE_BREATH
@ SAY_TRANSFORMS_DRAGONHAWK
@ SAY_ABSORBS_DRAGONHAWK_SPIRIT
@ SAY_ABSORBS_BEAR_SPIRIT
@ SAY_TRANSFORMS_BEAR
void AddSC_boss_daakara()
EventMap events
BossAI(Creature *creature, uint32 bossId)
void _EnterCombat()
void Talk(uint8 id, WorldObject const *whisperTarget=NULL)
bool UpdateVictim()
CreatureScript(const char *name)
void DoMeleeAttackIfReady()
Definition UnitAI.cpp:28
Definition Unit.h:1367
CreatureAI * GetAI(Creature *creature) const OVERRIDE
Creature * me
void EnterCombat(Unit *) OVERRIDE
void UpdateAI(uint32 diff) OVERRIDE
== Triggered Actions Requested ==================
void JustDied(Unit *) OVERRIDE
void KilledUnit(Unit *victim) OVERRIDE
boss_daakaraAI(Creature *creature)
CreatureAI * GetZulAmanAI(Creature *creature)
Definition zulaman.h:69
@ DATA_DAAKARA
Definition zulaman.h:20