diff options
author | Nay <dnpd.dd@gmail.com> | 2013-09-15 06:58:24 -0700 |
---|---|---|
committer | Nay <dnpd.dd@gmail.com> | 2013-09-15 06:58:24 -0700 |
commit | 478ec28e6dd6de1204fda8b3148f7b147ecef165 (patch) | |
tree | 2ce0c093994b00bfd656e058b9d36a1510da58fa /src | |
parent | 99f5a6c3d6525696de25d153850e53f522f26982 (diff) | |
parent | 6477f8c4536c3c04df5c59a0472bb189af72a343 (diff) |
Merge pull request #10823 from jackpoz/icewall_overflow
Scripts/HoR: Fix possible array overflow
Diffstat (limited to 'src')
-rw-r--r-- | src/server/scripts/Northrend/FrozenHalls/HallsOfReflection/halls_of_reflection.cpp | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/server/scripts/Northrend/FrozenHalls/HallsOfReflection/halls_of_reflection.cpp b/src/server/scripts/Northrend/FrozenHalls/HallsOfReflection/halls_of_reflection.cpp index 84da194aa2d..987807c2080 100644 --- a/src/server/scripts/Northrend/FrozenHalls/HallsOfReflection/halls_of_reflection.cpp +++ b/src/server/scripts/Northrend/FrozenHalls/HallsOfReflection/halls_of_reflection.cpp @@ -990,12 +990,15 @@ class npc_jaina_or_sylvanas_escape_hor : public CreatureScript lichking->SetReactState(REACT_PASSIVE); lichking->Attack(me,true); } - if (Creature* walltarget = me->SummonCreature(NPC_ICE_WALL, IceWalls[_icewall].GetPositionX(), IceWalls[_icewall].GetPositionY(), IceWalls[_icewall].GetPositionZ(), IceWalls[_icewall].GetOrientation(), TEMPSUMMON_MANUAL_DESPAWN, 720000)) + if (_icewall < 4) { - _walltargetGUID = walltarget->GetGUID(); - walltarget->AI()->DoCast(walltarget, SPELL_SUMMON_ICE_WALL); - walltarget->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE); - me->Attack(walltarget,false); + if (Creature* walltarget = me->SummonCreature(NPC_ICE_WALL, IceWalls[_icewall].GetPositionX(), IceWalls[_icewall].GetPositionY(), IceWalls[_icewall].GetPositionZ(), IceWalls[_icewall].GetOrientation(), TEMPSUMMON_MANUAL_DESPAWN, 720000)) + { + _walltargetGUID = walltarget->GetGUID(); + walltarget->AI()->DoCast(walltarget, SPELL_SUMMON_ICE_WALL); + walltarget->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NON_ATTACKABLE | UNIT_FLAG_NOT_SELECTABLE); + me->Attack(walltarget,false); + } } _events.ScheduleEvent(EVENT_ESCAPE_20, 3000); break; |