aboutsummaryrefslogtreecommitdiff
path: root/src/server/scripts/EasternKingdoms
diff options
context:
space:
mode:
authorwowpsp <a@wowpsp.com>2013-05-19 04:31:56 -0700
committerwowpsp <a@wowpsp.com>2013-05-19 04:31:56 -0700
commit897d5dadff6206eaa37ec01e70e6ad5249b9a65e (patch)
tree54d4c930291bd18e0cc03ac255d671d07cd71f05 /src/server/scripts/EasternKingdoms
parent529e8fba8242e4eb1cf1d90049a0f71068c72b30 (diff)
parent695c8cd7b4e221b20a273c34001d737c2bc5765f (diff)
Merge pull request #1 from TrinityCore/master
Diffstat (limited to 'src/server/scripts/EasternKingdoms')
-rw-r--r--src/server/scripts/EasternKingdoms/Scholomance/boss_kirtonos_the_herald.cpp78
-rw-r--r--src/server/scripts/EasternKingdoms/ZulGurub/boss_gahzranka.cpp6
-rw-r--r--src/server/scripts/EasternKingdoms/ZulGurub/boss_grilek.cpp4
-rw-r--r--src/server/scripts/EasternKingdoms/ZulGurub/boss_hakkar.cpp20
-rw-r--r--src/server/scripts/EasternKingdoms/ZulGurub/boss_hazzarah.cpp6
-rw-r--r--src/server/scripts/EasternKingdoms/ZulGurub/boss_jindo.cpp10
-rw-r--r--src/server/scripts/EasternKingdoms/ZulGurub/boss_marli.cpp103
-rw-r--r--src/server/scripts/EasternKingdoms/ZulGurub/boss_thekal.cpp18
-rw-r--r--src/server/scripts/EasternKingdoms/ZulGurub/boss_wushoolay.cpp4
9 files changed, 124 insertions, 125 deletions
diff --git a/src/server/scripts/EasternKingdoms/Scholomance/boss_kirtonos_the_herald.cpp b/src/server/scripts/EasternKingdoms/Scholomance/boss_kirtonos_the_herald.cpp
index 97b8e0334ee..3585debb1c2 100644
--- a/src/server/scripts/EasternKingdoms/Scholomance/boss_kirtonos_the_herald.cpp
+++ b/src/server/scripts/EasternKingdoms/Scholomance/boss_kirtonos_the_herald.cpp
@@ -146,49 +146,51 @@ class boss_kirtonos_the_herald : public CreatureScript
{
events.Update(diff);
- while (uint32 eventId = events.ExecuteEvent() && !UpdateVictim())
+ if (!UpdateVictim())
{
- switch (eventId)
+ while (uint32 eventId = events.ExecuteEvent())
{
- case INTRO_1:
- me->GetMotionMaster()->MovePath(KIRTONOS_PATH, false);
- break;
- case INTRO_2:
- me->GetMotionMaster()->MovePoint(0, PosMove[0]);
- events.ScheduleEvent(INTRO_3, 1000);
- break;
- case INTRO_3:
- if (GameObject* gate = me->GetMap()->GetGameObject(instance->GetData64(GO_GATE_KIRTONOS)))
- gate->SetGoState(GO_STATE_READY);
- me->SetFacingTo(0.01745329f);
- events.ScheduleEvent(INTRO_4, 3000);
- break;
- case INTRO_4:
- if (GameObject* brazier = me->GetMap()->GetGameObject(instance->GetData64(GO_BRAZIER_OF_THE_HERALD)))
- brazier->SetGoState(GO_STATE_READY);
- me->SetWalk(true);
- me->SetDisableGravity(false);
- DoCast(me, SPELL_KIRTONOS_TRANSFORM);
- me->SetCanFly(false);
- events.ScheduleEvent(INTRO_5, 1000);
- break;
- case INTRO_5:
- me->HandleEmoteCommand(EMOTE_ONESHOT_ROAR);
- me->SetUInt32Value(UNIT_VIRTUAL_ITEM_SLOT_ID + 0, uint32(WEAPON_KIRTONOS_STAFF));
- me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE|UNIT_FLAG_NOT_SELECTABLE);
- me->SetReactState(REACT_AGGRESSIVE);
- events.ScheduleEvent(INTRO_6, 5000);
- break;
- case INTRO_6:
- me->GetMotionMaster()->MovePoint(0, PosMove[1]);
- break;
- default:
- break;
+ switch (eventId)
+ {
+ case INTRO_1:
+ me->GetMotionMaster()->MovePath(KIRTONOS_PATH, false);
+ break;
+ case INTRO_2:
+ me->GetMotionMaster()->MovePoint(0, PosMove[0]);
+ events.ScheduleEvent(INTRO_3, 1000);
+ break;
+ case INTRO_3:
+ if (GameObject* gate = me->GetMap()->GetGameObject(instance->GetData64(GO_GATE_KIRTONOS)))
+ gate->SetGoState(GO_STATE_READY);
+ me->SetFacingTo(0.01745329f);
+ events.ScheduleEvent(INTRO_4, 3000);
+ break;
+ case INTRO_4:
+ if (GameObject* brazier = me->GetMap()->GetGameObject(instance->GetData64(GO_BRAZIER_OF_THE_HERALD)))
+ brazier->SetGoState(GO_STATE_READY);
+ me->SetWalk(true);
+ me->SetDisableGravity(false);
+ DoCast(me, SPELL_KIRTONOS_TRANSFORM);
+ me->SetCanFly(false);
+ events.ScheduleEvent(INTRO_5, 1000);
+ break;
+ case INTRO_5:
+ me->HandleEmoteCommand(EMOTE_ONESHOT_ROAR);
+ me->SetUInt32Value(UNIT_VIRTUAL_ITEM_SLOT_ID + 0, uint32(WEAPON_KIRTONOS_STAFF));
+ me->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE|UNIT_FLAG_NOT_SELECTABLE);
+ me->SetReactState(REACT_AGGRESSIVE);
+ events.ScheduleEvent(INTRO_6, 5000);
+ break;
+ case INTRO_6:
+ me->GetMotionMaster()->MovePoint(0, PosMove[1]);
+ break;
+ default:
+ break;
+ }
}
- }
- if (!UpdateVictim())
return;
+ }
if (me->HasUnitState(UNIT_STATE_CASTING))
return;
diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_gahzranka.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_gahzranka.cpp
index e930d864940..fe9c0be49aa 100644
--- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_gahzranka.cpp
+++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_gahzranka.cpp
@@ -36,9 +36,9 @@ enum Spells
enum Events
{
- EVENT_FROSTBREATH = 0,
- EVENT_MASSIVEGEYSER = 1,
- EVENT_SLAM = 2
+ EVENT_FROSTBREATH = 1,
+ EVENT_MASSIVEGEYSER = 2,
+ EVENT_SLAM = 3
};
class boss_gahzranka : public CreatureScript // gahzranka
diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_grilek.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_grilek.cpp
index af8303e63e4..c0362397dd5 100644
--- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_grilek.cpp
+++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_grilek.cpp
@@ -35,8 +35,8 @@ enum Spells
enum Events
{
- EVENT_AVATAR = 0,
- EVENT_GROUND_TREMOR = 1
+ EVENT_AVATAR = 1,
+ EVENT_GROUND_TREMOR = 2
};
class boss_grilek : public CreatureScript // grilek
diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_hakkar.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_hakkar.cpp
index f9fe338d918..18b1bc21ea3 100644
--- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_hakkar.cpp
+++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_hakkar.cpp
@@ -51,17 +51,17 @@ enum Spells
enum Events
{
- EVENT_BLOOD_SIPHON = 0,
- EVENT_CORRUPTED_BLOOD = 1,
- EVENT_CAUSE_INSANITY = 2, // Spell needs scripting. Event disabled
- EVENT_WILL_OF_HAKKAR = 3,
- EVENT_ENRAGE = 4,
+ EVENT_BLOOD_SIPHON = 1,
+ EVENT_CORRUPTED_BLOOD = 2,
+ EVENT_CAUSE_INSANITY = 3, // Spell needs scripting. Event disabled
+ EVENT_WILL_OF_HAKKAR = 4,
+ EVENT_ENRAGE = 5,
// The Aspects of all High Priests events
- EVENT_ASPECT_OF_JEKLIK = 5,
- EVENT_ASPECT_OF_VENOXIS = 6,
- EVENT_ASPECT_OF_MARLI = 7,
- EVENT_ASPECT_OF_THEKAL = 8,
- EVENT_ASPECT_OF_ARLOKK = 9
+ EVENT_ASPECT_OF_JEKLIK = 6,
+ EVENT_ASPECT_OF_VENOXIS = 7,
+ EVENT_ASPECT_OF_MARLI = 8,
+ EVENT_ASPECT_OF_THEKAL = 9,
+ EVENT_ASPECT_OF_ARLOKK = 10
};
class boss_hakkar : public CreatureScript
diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_hazzarah.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_hazzarah.cpp
index b2282ba85da..e92d3266c45 100644
--- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_hazzarah.cpp
+++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_hazzarah.cpp
@@ -35,9 +35,9 @@ enum Spells
enum Events
{
- EVENT_MANABURN = 0,
- EVENT_SLEEP = 1,
- EVENT_ILLUSIONS = 2
+ EVENT_MANABURN = 1,
+ EVENT_SLEEP = 2,
+ EVENT_ILLUSIONS = 3
};
class boss_hazzarah : public CreatureScript
diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_jindo.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_jindo.cpp
index 166acc13f58..7566c1b2e11 100644
--- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_jindo.cpp
+++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_jindo.cpp
@@ -48,11 +48,11 @@ enum Spells
enum Events
{
- EVENT_BRAINWASHTOTEM = 0,
- EVENT_POWERFULLHEALINGWARD = 1,
- EVENT_HEX = 2,
- EVENT_DELUSIONSOFJINDO = 3,
- EVENT_TELEPORT = 4
+ EVENT_BRAINWASHTOTEM = 1,
+ EVENT_POWERFULLHEALINGWARD = 2,
+ EVENT_HEX = 3,
+ EVENT_DELUSIONSOFJINDO = 4,
+ EVENT_TELEPORT = 5
};
Position const TeleportLoc = {-11583.7783f, -1249.4278f, 77.5471f, 4.745f};
diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_marli.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_marli.cpp
index b1200c2899e..a35e18bee96 100644
--- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_marli.cpp
+++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_marli.cpp
@@ -48,13 +48,13 @@ enum Spells
enum Events
{
- EVENT_SPAWN_START_SPIDERS = 0, // Phase 1
- EVENT_POISON_VOLLEY = 1, // Phase All
- EVENT_SPAWN_SPIDER = 2, // Phase All
- EVENT_CHARGE_PLAYER = 3, // Phase 3
- EVENT_ASPECT_OF_MARLI = 4, // Phase 2
- EVENT_TRANSFORM = 5, // Phase 2
- EVENT_TRANSFORM_BACK = 6 // Phase 3
+ EVENT_SPAWN_START_SPIDERS = 1, // Phase 1
+ EVENT_POISON_VOLLEY = 2, // Phase All
+ EVENT_SPAWN_SPIDER = 3, // Phase All
+ EVENT_CHARGE_PLAYER = 4, // Phase 3
+ EVENT_ASPECT_OF_MARLI = 5, // Phase 2
+ EVENT_TRANSFORM = 6, // Phase 2
+ EVENT_TRANSFORM_BACK = 7 // Phase 3
};
enum Phases
@@ -153,57 +153,54 @@ class boss_marli : public CreatureScript
events.ScheduleEvent(EVENT_SPAWN_SPIDER, urand(12000, 17000));
break;
case EVENT_TRANSFORM:
- {
- Talk(SAY_TRANSFORM);
- DoCast(me, SPELL_SPIDER_FORM);
- const CreatureTemplate* cinfo = me->GetCreatureTemplate();
- me->SetBaseWeaponDamage(BASE_ATTACK, MINDAMAGE, (cinfo->mindmg +((cinfo->mindmg/100) * 35)));
- me->SetBaseWeaponDamage(BASE_ATTACK, MAXDAMAGE, (cinfo->maxdmg +((cinfo->maxdmg/100) * 35)));
- me->UpdateDamagePhysical(BASE_ATTACK);
- DoCast(me->getVictim(), SPELL_ENVOLWINGWEB);
- if (DoGetThreat(me->getVictim()))
- DoModifyThreatPercent(me->getVictim(), -100);
- events.ScheduleEvent(EVENT_CHARGE_PLAYER, 1500, 0, PHASE_THREE);
- events.ScheduleEvent(EVENT_TRANSFORM_BACK, 25000, 0, PHASE_THREE);
- events.SetPhase(PHASE_THREE);
- break;
- }
+ {
+ Talk(SAY_TRANSFORM);
+ DoCast(me, SPELL_SPIDER_FORM);
+ CreatureTemplate const* cinfo = me->GetCreatureTemplate();
+ me->SetBaseWeaponDamage(BASE_ATTACK, MINDAMAGE, (cinfo->mindmg +((cinfo->mindmg/100) * 35)));
+ me->SetBaseWeaponDamage(BASE_ATTACK, MAXDAMAGE, (cinfo->maxdmg +((cinfo->maxdmg/100) * 35)));
+ me->UpdateDamagePhysical(BASE_ATTACK);
+ DoCast(me->getVictim(), SPELL_ENVOLWINGWEB);
+ if (DoGetThreat(me->getVictim()))
+ DoModifyThreatPercent(me->getVictim(), -100);
+ events.ScheduleEvent(EVENT_CHARGE_PLAYER, 1500, 0, PHASE_THREE);
+ events.ScheduleEvent(EVENT_TRANSFORM_BACK, 25000, 0, PHASE_THREE);
+ events.SetPhase(PHASE_THREE);
+ break;
+ }
case EVENT_CHARGE_PLAYER:
+ {
+ Unit* target = NULL;
+ int i = 0;
+ while (i++ < 3) // max 3 tries to get a random target with power_mana
{
- Unit* target = NULL;
- int i = 0;
- while (i < 3) // max 3 tries to get a random target with power_mana
- {
- ++i;
- Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 1, 100, true); // not aggro leader
- if (target && target->getPowerType() == POWER_MANA)
- i = 3;
- }
- if (target)
- {
- DoCast(target, SPELL_CHARGE);
- //me->SetPosition(target->GetPositionX(), target->GetPositionY(), target->GetPositionZ(), 0);
- //me->SendMonsterMove(target->GetPositionX(), target->GetPositionY(), target->GetPositionZ(), 0, true, 1);
- AttackStart(target);
- }
- events.ScheduleEvent(EVENT_CHARGE_PLAYER, 8000, 0, PHASE_THREE);
- break;
+ target = SelectTarget(SELECT_TARGET_RANDOM, 1, 100, true); // not aggro leader
+ if (target && target->getPowerType() == POWER_MANA)
+ break;
}
- case EVENT_TRANSFORM_BACK:
+ if (target)
{
- me->SetDisplayId(MODEL_MARLI);
- const CreatureTemplate* cinfo = me->GetCreatureTemplate();
- me->SetBaseWeaponDamage(BASE_ATTACK, MINDAMAGE, (cinfo->mindmg +((cinfo->mindmg/100) * 1)));
- me->SetBaseWeaponDamage(BASE_ATTACK, MAXDAMAGE, (cinfo->maxdmg +((cinfo->maxdmg/100) * 1)));
- me->UpdateDamagePhysical(BASE_ATTACK);
- events.ScheduleEvent(EVENT_ASPECT_OF_MARLI, 12000, 0, PHASE_TWO);
- events.ScheduleEvent(EVENT_TRANSFORM, 45000, 0, PHASE_TWO);
- events.ScheduleEvent(EVENT_POISON_VOLLEY, 15000);
- events.ScheduleEvent(EVENT_SPAWN_SPIDER, 30000);
- events.ScheduleEvent(EVENT_TRANSFORM, urand(35000, 60000), 0, PHASE_TWO);
- events.SetPhase(PHASE_TWO);
- break;
+ DoCast(target, SPELL_CHARGE);
+ AttackStart(target);
}
+ events.ScheduleEvent(EVENT_CHARGE_PLAYER, 8000, 0, PHASE_THREE);
+ break;
+ }
+ case EVENT_TRANSFORM_BACK:
+ {
+ me->SetDisplayId(MODEL_MARLI);
+ CreatureTemplate const* cinfo = me->GetCreatureTemplate();
+ me->SetBaseWeaponDamage(BASE_ATTACK, MINDAMAGE, (cinfo->mindmg +((cinfo->mindmg/100) * 1)));
+ me->SetBaseWeaponDamage(BASE_ATTACK, MAXDAMAGE, (cinfo->maxdmg +((cinfo->maxdmg/100) * 1)));
+ me->UpdateDamagePhysical(BASE_ATTACK);
+ events.ScheduleEvent(EVENT_ASPECT_OF_MARLI, 12000, 0, PHASE_TWO);
+ events.ScheduleEvent(EVENT_TRANSFORM, 45000, 0, PHASE_TWO);
+ events.ScheduleEvent(EVENT_POISON_VOLLEY, 15000);
+ events.ScheduleEvent(EVENT_SPAWN_SPIDER, 30000);
+ events.ScheduleEvent(EVENT_TRANSFORM, urand(35000, 60000), 0, PHASE_TWO);
+ events.SetPhase(PHASE_TWO);
+ break;
+ }
default:
break;
}
diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_thekal.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_thekal.cpp
index f115daf0fb0..0b859b18777 100644
--- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_thekal.cpp
+++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_thekal.cpp
@@ -59,15 +59,15 @@ enum Spells
enum Events
{
- EVENT_MORTALCLEAVE = 0, // Phase 1
- EVENT_SILENCE = 1, // Phase 1
- EVENT_CHECK_TIMER = 2, // Phase 1
- EVENT_RESURRECT_TIMER = 3, // Phase 1
- EVENT_FRENZY = 4, // Phase 2
- EVENT_FORCEPUNCH = 5, // Phase 2
- EVENT_SPELL_CHARGE = 6, // Phase 2
- EVENT_ENRAGE = 7, // Phase 2
- EVENT_SUMMONTIGERS = 8 // Phase 2
+ EVENT_MORTALCLEAVE = 1, // Phase 1
+ EVENT_SILENCE = 2, // Phase 1
+ EVENT_CHECK_TIMER = 3, // Phase 1
+ EVENT_RESURRECT_TIMER = 4, // Phase 1
+ EVENT_FRENZY = 5, // Phase 2
+ EVENT_FORCEPUNCH = 6, // Phase 2
+ EVENT_SPELL_CHARGE = 7, // Phase 2
+ EVENT_ENRAGE = 8, // Phase 2
+ EVENT_SUMMONTIGERS = 9 // Phase 2
};
enum Phases
diff --git a/src/server/scripts/EasternKingdoms/ZulGurub/boss_wushoolay.cpp b/src/server/scripts/EasternKingdoms/ZulGurub/boss_wushoolay.cpp
index 945303f3d10..6fb1c682a38 100644
--- a/src/server/scripts/EasternKingdoms/ZulGurub/boss_wushoolay.cpp
+++ b/src/server/scripts/EasternKingdoms/ZulGurub/boss_wushoolay.cpp
@@ -35,8 +35,8 @@ enum Spells
enum Events
{
- EVENT_LIGHTNINGCLOUD = 0,
- EVENT_LIGHTNINGWAVE = 1
+ EVENT_LIGHTNINGCLOUD = 1,
+ EVENT_LIGHTNINGWAVE = 2
};
class boss_wushoolay : public CreatureScript