aboutsummaryrefslogtreecommitdiff
path: root/src/server/scripts
diff options
context:
space:
mode:
authorVincent_Michael <Vincent_Michael@gmx.de>2013-01-09 21:15:41 +0100
committerVincent_Michael <Vincent_Michael@gmx.de>2013-01-09 21:15:41 +0100
commit899ffde1f9c1f6cb68bf39b9bc2c583a2408623d (patch)
treeb85234722bddf063ae3b4c099b54798244a99005 /src/server/scripts
parent7210ffe34d2052c1aee642ac3af40425c8ba137e (diff)
parentf9c193d27d0239d6c63b59adc64bb9f43d58e37e (diff)
Merge branch 'master' of github.com:TrinityCore/TrinityCore into mmaps
Diffstat (limited to 'src/server/scripts')
-rw-r--r--src/server/scripts/EasternKingdoms/ScarletMonastery/boss_headless_horseman.cpp6
-rw-r--r--src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_faction_champions.cpp48
2 files changed, 32 insertions, 22 deletions
diff --git a/src/server/scripts/EasternKingdoms/ScarletMonastery/boss_headless_horseman.cpp b/src/server/scripts/EasternKingdoms/ScarletMonastery/boss_headless_horseman.cpp
index 6733200e44d..4927666073b 100644
--- a/src/server/scripts/EasternKingdoms/ScarletMonastery/boss_headless_horseman.cpp
+++ b/src/server/scripts/EasternKingdoms/ScarletMonastery/boss_headless_horseman.cpp
@@ -29,6 +29,7 @@ EndScriptData */
#include "scarlet_monastery.h"
#include "LFGMgr.h"
#include "Player.h"
+#include "Group.h"
#include "SpellInfo.h"
//this texts are already used by 3975 and 3976
@@ -576,10 +577,7 @@ public:
Map::PlayerList const& players = me->GetMap()->GetPlayers();
if (!players.isEmpty())
- for (Map::PlayerList::const_iterator i = players.begin(); i != players.end(); ++i)
- if (Player* player = i->getSource())
- if (player->IsAtGroupRewardDistance(me))
- sLFGMgr->RewardDungeonDoneFor(285, player);
+ sLFGMgr->FinishDungeon(players.begin()->getSource()->GetGroup()->GetGUID(), 285);
}
void SpellHit(Unit* caster, const SpellInfo* spell)
diff --git a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_faction_champions.cpp b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_faction_champions.cpp
index 32d4c621450..ba554c3703d 100644
--- a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_faction_champions.cpp
+++ b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_faction_champions.cpp
@@ -29,7 +29,7 @@ enum Yells
SAY_KILL_PLAYER = 6
};
-enum eAIs
+enum AIs
{
AI_MELEE = 0,
AI_RANGED = 1,
@@ -1484,8 +1484,11 @@ class mob_toc_hunter : public CreatureScript
events.ScheduleEvent(EVENT_STEADY_SHOT, urand(5*IN_MILLISECONDS, 15*IN_MILLISECONDS));
return;
case EVENT_WING_CLIP:
- if (me->GetDistance2d(me->getVictim()) < 6.0f)
- DoCastVictim(SPELL_WING_CLIP);
+ if (Unit* target = me->getVictim())
+ {
+ if (me->GetDistance2d(target) < 6.0f)
+ DoCast(target, SPELL_WING_CLIP);
+ }
events.ScheduleEvent(EVENT_WING_CLIP, urand(15*IN_MILLISECONDS, 25*IN_MILLISECONDS));
return;
case EVENT_WYVERN_STING:
@@ -1670,13 +1673,16 @@ class mob_toc_warrior : public CreatureScript
events.ScheduleEvent(EVENT_SUNDER_ARMOR, urand(2*IN_MILLISECONDS, 5*IN_MILLISECONDS));
return;
case EVENT_SHATTERING_THROW:
- if (me->getVictim()->HasAuraWithMechanic(1<<MECHANIC_IMMUNE_SHIELD))
+ if (Unit* target = me->getVictim())
{
- DoCastVictim(SPELL_SHATTERING_THROW);
- events.RescheduleEvent(EVENT_SHATTERING_THROW, 5*MINUTE*IN_MILLISECONDS);
+ if (target->HasAuraWithMechanic(1 << MECHANIC_IMMUNE_SHIELD))
+ {
+ DoCast(target, SPELL_SHATTERING_THROW);
+ events.RescheduleEvent(EVENT_SHATTERING_THROW, 5*MINUTE*IN_MILLISECONDS);
+ return;
+ }
}
- else
- events.RescheduleEvent(EVENT_SHATTERING_THROW, 3*IN_MILLISECONDS);
+ events.RescheduleEvent(EVENT_SHATTERING_THROW, 3*IN_MILLISECONDS);
return;
case EVENT_RETALIATION:
if (HealthBelowPct(50))
@@ -1746,13 +1752,16 @@ class mob_toc_dk : public CreatureScript
events.ScheduleEvent(EVENT_DEATH_COIL, urand(5*IN_MILLISECONDS, 15*IN_MILLISECONDS));
return;
case EVENT_DEATH_GRIP:
- if (me->IsInRange(me->getVictim(), 5.0f, 30.0f, false))
+ if (Unit* target = me->getVictim())
{
- DoCast(me->getVictim(), SPELL_DEATH_GRIP);
- events.RescheduleEvent(EVENT_DEATH_GRIP, 35*IN_MILLISECONDS);
+ if (me->IsInRange(target, 5.0f, 30.0f, false))
+ {
+ DoCast(target, SPELL_DEATH_GRIP);
+ events.RescheduleEvent(EVENT_DEATH_GRIP, 35*IN_MILLISECONDS);
+ return;
+ }
}
- else
- events.RescheduleEvent(EVENT_DEATH_GRIP, 3*IN_MILLISECONDS);
+ events.RescheduleEvent(EVENT_DEATH_GRIP, 3*IN_MILLISECONDS);
return;
case EVENT_FROST_STRIKE:
DoCastVictim(SPELL_FROST_STRIKE);
@@ -1862,13 +1871,16 @@ class mob_toc_rogue : public CreatureScript
events.RescheduleEvent(EVENT_BLADE_FLURRY, 5*IN_MILLISECONDS);
return;
case EVENT_SHADOWSTEP:
- if (me->IsInRange(me->getVictim(), 10.0f, 40.0f, false))
+ if (Unit* target = me->getVictim())
{
- DoCast(me->getVictim(), SPELL_SHADOWSTEP);
- events.RescheduleEvent(EVENT_SHADOWSTEP, 30*IN_MILLISECONDS);
+ if (me->IsInRange(target, 10.0f, 40.0f, false))
+ {
+ DoCast(target, SPELL_SHADOWSTEP);
+ events.RescheduleEvent(EVENT_SHADOWSTEP, 30*IN_MILLISECONDS);
+ return;
+ }
}
- else
- events.RescheduleEvent(EVENT_SHADOWSTEP, 5*IN_MILLISECONDS);
+ events.RescheduleEvent(EVENT_SHADOWSTEP, 5*IN_MILLISECONDS);
return;
case EVENT_HEMORRHAGE:
DoCastVictim(SPELL_HEMORRHAGE);