diff options
| author | Anubisss <none@none> | 2010-12-16 18:08:23 +0100 |
|---|---|---|
| committer | Anubisss <none@none> | 2010-12-16 18:08:23 +0100 |
| commit | 6d9029c12e9805ee993d98ba66355db1147b0195 (patch) | |
| tree | 2d0c46a04f03a0b61c6c9f49a7b7cef889db3237 /src/server/scripts | |
| parent | bb7bd9ef45cd15c7da271c690f5c798cdd340b22 (diff) | |
Make some cleanup.
My thank goes to Az@zel for the code analysis.
--HG--
branch : trunk
Diffstat (limited to 'src/server/scripts')
7 files changed, 35 insertions, 31 deletions
diff --git a/src/server/scripts/EasternKingdoms/Karazhan/boss_terestian_illhoof.cpp b/src/server/scripts/EasternKingdoms/Karazhan/boss_terestian_illhoof.cpp index 94a66b20c95..d0ebb877ebc 100644 --- a/src/server/scripts/EasternKingdoms/Karazhan/boss_terestian_illhoof.cpp +++ b/src/server/scripts/EasternKingdoms/Karazhan/boss_terestian_illhoof.cpp @@ -184,7 +184,7 @@ public: void Reset() { - summons.DespawnAll(); + DespawnAllImp(); } void JustSummoned(Creature* summon) diff --git a/src/server/scripts/EasternKingdoms/MagistersTerrace/boss_selin_fireheart.cpp b/src/server/scripts/EasternKingdoms/MagistersTerrace/boss_selin_fireheart.cpp index a488ae8389e..6519478a26d 100644 --- a/src/server/scripts/EasternKingdoms/MagistersTerrace/boss_selin_fireheart.cpp +++ b/src/server/scripts/EasternKingdoms/MagistersTerrace/boss_selin_fireheart.cpp @@ -125,8 +125,10 @@ public: DrainLifeTimer = 3000 + rand()%4000; DrainManaTimer = DrainLifeTimer + 5000; FelExplosionTimer = 2100; - DrainCrystalTimer = 10000 + rand()%5000; - DrainCrystalTimer = 20000 + rand()%5000; + if (IsHeroic()) + DrainCrystalTimer = 10000 + rand()%5000; + else + DrainCrystalTimer = 20000 + rand()%5000; EmpowerTimer = 10000; IsDraining = false; diff --git a/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjal.cpp b/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjal.cpp index e75bbcfea4c..4dac6110ed4 100644 --- a/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjal.cpp +++ b/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjal.cpp @@ -104,17 +104,17 @@ public: ai->Reset(); ai->EnterEvadeMode(); - ai->Spell[0].SpellId = SPELL_BLIZZARD; - ai->Spell[0].Cooldown = 15000 + rand()%20000; - ai->Spell[0].TargetType = TARGETTYPE_RANDOM; + ai->Spells[0].SpellId = SPELL_BLIZZARD; + ai->Spells[0].Cooldown = 15000 + rand()%20000; + ai->Spells[0].TargetType = TARGETTYPE_RANDOM; - ai->Spell[1].SpellId = SPELL_PYROBLAST; - ai->Spell[1].Cooldown = 5500 + rand()%4000; - ai->Spell[1].TargetType = TARGETTYPE_RANDOM; + ai->Spells[1].SpellId = SPELL_PYROBLAST; + ai->Spells[1].Cooldown = 5500 + rand()%4000; + ai->Spells[1].TargetType = TARGETTYPE_RANDOM; - ai->Spell[2].SpellId = SPELL_SUMMON_ELEMENTALS; - ai->Spell[2].Cooldown = 15000 + rand()%30000; - ai->Spell[2].TargetType = TARGETTYPE_SELF; + ai->Spells[2].SpellId = SPELL_SUMMON_ELEMENTALS; + ai->Spells[2].Cooldown = 15000 + rand()%30000; + ai->Spells[2].TargetType = TARGETTYPE_SELF; return ai; } @@ -188,13 +188,13 @@ public: ai->Reset(); ai->EnterEvadeMode(); - ai->Spell[0].SpellId = SPELL_CHAIN_LIGHTNING; - ai->Spell[0].Cooldown = 3000 + rand()%5000; - ai->Spell[0].TargetType = TARGETTYPE_VICTIM; + ai->Spells[0].SpellId = SPELL_CHAIN_LIGHTNING; + ai->Spells[0].Cooldown = 3000 + rand()%5000; + ai->Spells[0].TargetType = TARGETTYPE_VICTIM; - ai->Spell[1].SpellId = SPELL_SUMMON_DIRE_WOLF; - ai->Spell[1].Cooldown = 6000 + rand()%35000; - ai->Spell[1].TargetType = TARGETTYPE_RANDOM; + ai->Spells[1].SpellId = SPELL_SUMMON_DIRE_WOLF; + ai->Spells[1].Cooldown = 6000 + rand()%35000; + ai->Spells[1].TargetType = TARGETTYPE_RANDOM; return ai; } diff --git a/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjalAI.cpp b/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjalAI.cpp index 4c41e2d11e7..a8e558621da 100644 --- a/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjalAI.cpp +++ b/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjalAI.cpp @@ -389,7 +389,7 @@ void hyjalAI::Reset() me->SetFlag(UNIT_NPC_FLAGS, UNIT_NPC_FLAG_GOSSIP); //Initialize spells - memset(Spell, 0, sizeof(Spell)); + memset(Spells, 0, sizeof(Spell) * HYJAL_AI_MAX_SPELLS); //Reset Instance Data for trash count if (pInstance) @@ -425,9 +425,9 @@ void hyjalAI::EnterEvadeMode() void hyjalAI::EnterCombat(Unit * /*who*/) { if (IsDummy)return; - for (uint8 i = 0; i < 3; ++i) - if (Spell[i].Cooldown) - SpellTimer[i] = Spell[i].Cooldown; + for (uint8 i = 0; i < HYJAL_AI_MAX_SPELLS; ++i) + if (Spells[i].Cooldown) + SpellTimer[i] = Spells[i].Cooldown; Talk(ATTACKED); } @@ -881,9 +881,9 @@ void hyjalAI::UpdateAI(const uint32 diff) if (!UpdateVictim()) return; - for (uint8 i = 0; i < 3; ++i) + for (uint8 i = 0; i < HYJAL_AI_MAX_SPELLS; ++i) { - if (Spell[i].SpellId) + if (Spells[i].SpellId) { if (SpellTimer[i] <= diff) { @@ -892,7 +892,7 @@ void hyjalAI::UpdateAI(const uint32 diff) Unit *pTarget = NULL; - switch(Spell[i].TargetType) + switch(Spells[i].TargetType) { case TARGETTYPE_SELF: pTarget = me; break; case TARGETTYPE_RANDOM: pTarget = SelectUnit(SELECT_TARGET_RANDOM, 0); break; @@ -901,8 +901,8 @@ void hyjalAI::UpdateAI(const uint32 diff) if (pTarget && pTarget->isAlive()) { - DoCast(pTarget, Spell[i].SpellId); - SpellTimer[i] = Spell[i].Cooldown; + DoCast(pTarget, Spells[i].SpellId); + SpellTimer[i] = Spells[i].Cooldown; } } else SpellTimer[i] -= diff; } diff --git a/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjalAI.h b/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjalAI.h index d9334cc3a18..1126f62ede8 100644 --- a/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjalAI.h +++ b/src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/hyjalAI.h @@ -22,6 +22,8 @@ #include "hyjal.h" #include "ScriptedEscortAI.h" +#define HYJAL_AI_MAX_SPELLS 3 + // Trash Mobs summoned in waves #define NECROMANCER 17899//done #define ABOMINATION 17898//done @@ -252,7 +254,7 @@ struct hyjalAI : public npc_escortAI uint32 SpellId; uint32 Cooldown; uint32 TargetType; - }Spell[3]; + } Spells[HYJAL_AI_MAX_SPELLS]; private: uint32 SpellTimer[3]; diff --git a/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_fankriss.cpp b/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_fankriss.cpp index 309f4b91019..57125052da8 100644 --- a/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_fankriss.cpp +++ b/src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_fankriss.cpp @@ -79,8 +79,8 @@ public: case 0: RandX = 0.0f - Rand; break; case 1: RandX = 0.0f + Rand; break; } - Rand = 0; - Rand = 10 + (rand()%10); + + Rand = 10 + (rand()%10); switch (rand()%2) { case 0: RandY = 0.0f - Rand; break; diff --git a/src/server/scripts/Northrend/ObsidianSanctum/boss_sartharion.cpp b/src/server/scripts/Northrend/ObsidianSanctum/boss_sartharion.cpp index f3e8d892f04..b10a8bfee78 100644 --- a/src/server/scripts/Northrend/ObsidianSanctum/boss_sartharion.cpp +++ b/src/server/scripts/Northrend/ObsidianSanctum/boss_sartharion.cpp @@ -1194,7 +1194,7 @@ public: m_uiShadowBreathTimer -= uiDiff; // Don't attack current target if he's not visible for us. - if(me->getVictim() && me->getVictim() && me->getVictim()->HasAura(57874, 0)) + if(me->getVictim() && me->getVictim()->HasAura(57874, 0)) me->getThreatManager().modifyThreatPercent(me->getVictim(), -100); DoMeleeAttackIfReady(); |
