From a1bb79942d46ca75a7d910ed887e3af63c7b1145 Mon Sep 17 00:00:00 2001 From: MobiusDev <8391001+MobiusDevelopment@users.noreply.github.com> Date: Sun, 15 Apr 2018 21:07:58 +0000 Subject: [PATCH] Prevent moving to nonexistent regions. --- .../com/l2jmobius/gameserver/model/actor/L2Character.java | 7 +++++++ .../com/l2jmobius/gameserver/model/actor/L2Character.java | 7 +++++++ .../com/l2jmobius/gameserver/model/actor/L2Character.java | 7 +++++++ .../com/l2jmobius/gameserver/model/actor/L2Character.java | 7 +++++++ .../com/l2jmobius/gameserver/model/actor/L2Character.java | 7 +++++++ .../com/l2jmobius/gameserver/model/actor/L2Character.java | 7 +++++++ .../com/l2jmobius/gameserver/model/actor/L2Character.java | 7 +++++++ 7 files changed, 49 insertions(+) diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/L2Character.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/L2Character.java index 3574d7318d..38ef251794 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/L2Character.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/L2Character.java @@ -5145,6 +5145,13 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe { final ZoneRegion oldZoneRegion = ZoneManager.getInstance().getRegion(this); final ZoneRegion newZoneRegion = ZoneManager.getInstance().getRegion(newX, newY); + + // Mobius: Prevent moving to nonexistent regions. + if (newZoneRegion == null) + { + return; + } + if (oldZoneRegion != newZoneRegion) { oldZoneRegion.removeFromZones(this); diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/L2Character.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/L2Character.java index 3574d7318d..38ef251794 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/L2Character.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/L2Character.java @@ -5145,6 +5145,13 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe { final ZoneRegion oldZoneRegion = ZoneManager.getInstance().getRegion(this); final ZoneRegion newZoneRegion = ZoneManager.getInstance().getRegion(newX, newY); + + // Mobius: Prevent moving to nonexistent regions. + if (newZoneRegion == null) + { + return; + } + if (oldZoneRegion != newZoneRegion) { oldZoneRegion.removeFromZones(this); diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/L2Character.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/L2Character.java index 3574d7318d..38ef251794 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/L2Character.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/L2Character.java @@ -5145,6 +5145,13 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe { final ZoneRegion oldZoneRegion = ZoneManager.getInstance().getRegion(this); final ZoneRegion newZoneRegion = ZoneManager.getInstance().getRegion(newX, newY); + + // Mobius: Prevent moving to nonexistent regions. + if (newZoneRegion == null) + { + return; + } + if (oldZoneRegion != newZoneRegion) { oldZoneRegion.removeFromZones(this); diff --git a/L2J_Mobius_4.0_GrandCrusade/java/com/l2jmobius/gameserver/model/actor/L2Character.java b/L2J_Mobius_4.0_GrandCrusade/java/com/l2jmobius/gameserver/model/actor/L2Character.java index 3574d7318d..38ef251794 100644 --- a/L2J_Mobius_4.0_GrandCrusade/java/com/l2jmobius/gameserver/model/actor/L2Character.java +++ b/L2J_Mobius_4.0_GrandCrusade/java/com/l2jmobius/gameserver/model/actor/L2Character.java @@ -5145,6 +5145,13 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe { final ZoneRegion oldZoneRegion = ZoneManager.getInstance().getRegion(this); final ZoneRegion newZoneRegion = ZoneManager.getInstance().getRegion(newX, newY); + + // Mobius: Prevent moving to nonexistent regions. + if (newZoneRegion == null) + { + return; + } + if (oldZoneRegion != newZoneRegion) { oldZoneRegion.removeFromZones(this); diff --git a/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/actor/L2Character.java b/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/actor/L2Character.java index 5816ebbd1c..3aa07a291a 100644 --- a/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/actor/L2Character.java +++ b/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/actor/L2Character.java @@ -6803,6 +6803,13 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe { final ZoneRegion oldZoneRegion = ZoneManager.getInstance().getRegion(this); final ZoneRegion newZoneRegion = ZoneManager.getInstance().getRegion(newX, newY); + + // Mobius: Prevent moving to nonexistent regions. + if (newZoneRegion == null) + { + return; + } + if (oldZoneRegion != newZoneRegion) { oldZoneRegion.removeFromZones(this); diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/L2Character.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/L2Character.java index 3574d7318d..38ef251794 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/L2Character.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/L2Character.java @@ -5145,6 +5145,13 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe { final ZoneRegion oldZoneRegion = ZoneManager.getInstance().getRegion(this); final ZoneRegion newZoneRegion = ZoneManager.getInstance().getRegion(newX, newY); + + // Mobius: Prevent moving to nonexistent regions. + if (newZoneRegion == null) + { + return; + } + if (oldZoneRegion != newZoneRegion) { oldZoneRegion.removeFromZones(this); diff --git a/L2J_Mobius_Classic_2.0_Zaken/java/com/l2jmobius/gameserver/model/actor/L2Character.java b/L2J_Mobius_Classic_2.0_Zaken/java/com/l2jmobius/gameserver/model/actor/L2Character.java index 3574d7318d..38ef251794 100644 --- a/L2J_Mobius_Classic_2.0_Zaken/java/com/l2jmobius/gameserver/model/actor/L2Character.java +++ b/L2J_Mobius_Classic_2.0_Zaken/java/com/l2jmobius/gameserver/model/actor/L2Character.java @@ -5145,6 +5145,13 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe { final ZoneRegion oldZoneRegion = ZoneManager.getInstance().getRegion(this); final ZoneRegion newZoneRegion = ZoneManager.getInstance().getRegion(newX, newY); + + // Mobius: Prevent moving to nonexistent regions. + if (newZoneRegion == null) + { + return; + } + if (oldZoneRegion != newZoneRegion) { oldZoneRegion.removeFromZones(this);