aboutsummaryrefslogtreecommitdiff
path: root/src/server/scripts/EasternKingdoms
diff options
context:
space:
mode:
authorMalcrom <malcromdev@gmail.com>2013-06-23 11:27:33 -0230
committerMalcrom <malcromdev@gmail.com>2013-06-23 11:27:33 -0230
commitb669a2142ee9973124b15698b2dc01a35375d7eb (patch)
treee0373a8aa151afc14493e74ee9fc2533ed45d5c9 /src/server/scripts/EasternKingdoms
parent89466f76acd9fc8562f80d5c6df75eac84bfdae2 (diff)
Core/Scripting: Some boss script fixes.
Diffstat (limited to 'src/server/scripts/EasternKingdoms')
-rw-r--r--src/server/scripts/EasternKingdoms/BlackrockSpire/boss_pyroguard_emberseer.cpp6
-rw-r--r--src/server/scripts/EasternKingdoms/ZulAman/boss_akilzon.cpp29
2 files changed, 10 insertions, 25 deletions
diff --git a/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_pyroguard_emberseer.cpp b/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_pyroguard_emberseer.cpp
index 44a27e6938f..38e930b8533 100644
--- a/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_pyroguard_emberseer.cpp
+++ b/src/server/scripts/EasternKingdoms/BlackrockSpire/boss_pyroguard_emberseer.cpp
@@ -75,9 +75,9 @@ public:
void EnterCombat(Unit* /*who*/)
{
_EnterCombat();
- events.ScheduleEvent(EVENT_FIRENOVA, 6 * IN_MILLISECONDS);
- events.ScheduleEvent(EVENT_FLAMEBUFFET, 3 * IN_MILLISECONDS);
- events.ScheduleEvent(EVENT_PYROBLAST, 14 * IN_MILLISECONDS);
+ events.ScheduleEvent(EVENT_FIRENOVA, 6000);
+ events.ScheduleEvent(EVENT_FLAMEBUFFET, 3000);
+ events.ScheduleEvent(EVENT_PYROBLAST, 14000);
}
void JustDied(Unit* /*killer*/)
diff --git a/src/server/scripts/EasternKingdoms/ZulAman/boss_akilzon.cpp b/src/server/scripts/EasternKingdoms/ZulAman/boss_akilzon.cpp
index e0aede6cd1b..1edc669e548 100644
--- a/src/server/scripts/EasternKingdoms/ZulAman/boss_akilzon.cpp
+++ b/src/server/scripts/EasternKingdoms/ZulAman/boss_akilzon.cpp
@@ -93,17 +93,13 @@ class boss_akilzon : public CreatureScript
void Reset()
{
- if (instance)
- instance->SetData(DATA_AKILZONEVENT, NOT_STARTED);
+ _Reset();
TargetGUID = 0;
CloudGUID = 0;
CycloneGUID = 0;
- DespawnSummons();
memset(BirdGUIDs, 0, sizeof(BirdGUIDs));
-
StormCount = 0;
-
isRaining = false;
SetWeather(WEATHER_STATE_FINE, 0.0f);
@@ -127,9 +123,7 @@ class boss_akilzon : public CreatureScript
void JustDied(Unit* /*killer*/)
{
Talk(SAY_DEATH);
- if (instance)
- instance->SetData(DATA_AKILZONEVENT, DONE);
- DespawnSummons();
+ _JustDied();
}
void KilledUnit(Unit* /*victim*/)
@@ -137,19 +131,6 @@ class boss_akilzon : public CreatureScript
Talk(SAY_KILL);
}
- void DespawnSummons()
- {
- for (uint8 i = 0; i < 8; ++i)
- {
- Unit* bird = Unit::GetUnit(*me, BirdGUIDs[i]);
- if (bird && bird->IsAlive())
- {
- bird->SetVisible(false);
- bird->setDeathState(JUST_DIED);
- }
- }
- }
-
void SetWeather(uint32 weather, float grade)
{
Map* map = me->GetMap();
@@ -187,7 +168,8 @@ class boss_akilzon : public CreatureScript
cell.Visit(p, world_unit_searcher, *me->GetMap(), *me, SIZE_OF_GRIDS);
cell.Visit(p, grid_unit_searcher, *me->GetMap(), *me, SIZE_OF_GRIDS);
}
- //dealdamege
+
+ // deal damage
for (std::list<Unit*>::const_iterator i = tempUnitMap.begin(); i != tempUnitMap.end(); ++i)
{
if (Unit* target = (*i))
@@ -196,6 +178,7 @@ class boss_akilzon : public CreatureScript
Cloud->CastCustomSpell(target, SPELL_ZAP, &bp0, NULL, NULL, true, 0, 0, me->GetGUID());
}
}
+
// visual
float x, y, z;
z = me->GetPositionZ();
@@ -214,7 +197,9 @@ class boss_akilzon : public CreatureScript
}
}
}
+
++StormCount;
+
if (StormCount > 10)
{
StormCount = 0; // finish