From 7c9ca42499c00fd90b5bed867f2f074bc74ad711 Mon Sep 17 00:00:00 2001 From: MobiusDev <8391001+MobiusDevelopment@users.noreply.github.com> Date: Thu, 12 Apr 2018 12:00:55 +0000 Subject: [PATCH] Deletion must handle instances as well. --- .../com/l2jmobius/gameserver/model/actor/L2Character.java | 8 ++++++-- .../com/l2jmobius/gameserver/model/actor/L2Character.java | 8 ++++++-- .../com/l2jmobius/gameserver/model/actor/L2Character.java | 8 ++++++-- .../com/l2jmobius/gameserver/model/actor/L2Character.java | 8 ++++++-- .../com/l2jmobius/gameserver/model/actor/L2Character.java | 8 ++++++-- .../com/l2jmobius/gameserver/model/actor/L2Character.java | 8 ++++++-- .../com/l2jmobius/gameserver/model/actor/L2Character.java | 8 ++++++-- 7 files changed, 42 insertions(+), 14 deletions(-) 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 9bdd7bbbef..48eb4a9a83 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 @@ -3037,13 +3037,17 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe { ((L2Npc) summoner).removeSummonedNpc(getObjectId()); } - L2World.getInstance().removeObject(this); final L2Spawn spawn = npc.getSpawn(); if ((spawn != null) && spawn.isRespawnEnabled()) { spawn.decreaseCount(npc); - spawn.doSpawn(); } + final Instance instance = getInstanceWorld(); + if (instance != null) + { + instance.removeNpc(npc); + } + L2World.getInstance().removeObject(this); } else { 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 9bdd7bbbef..48eb4a9a83 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 @@ -3037,13 +3037,17 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe { ((L2Npc) summoner).removeSummonedNpc(getObjectId()); } - L2World.getInstance().removeObject(this); final L2Spawn spawn = npc.getSpawn(); if ((spawn != null) && spawn.isRespawnEnabled()) { spawn.decreaseCount(npc); - spawn.doSpawn(); } + final Instance instance = getInstanceWorld(); + if (instance != null) + { + instance.removeNpc(npc); + } + L2World.getInstance().removeObject(this); } else { 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 9bdd7bbbef..48eb4a9a83 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 @@ -3037,13 +3037,17 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe { ((L2Npc) summoner).removeSummonedNpc(getObjectId()); } - L2World.getInstance().removeObject(this); final L2Spawn spawn = npc.getSpawn(); if ((spawn != null) && spawn.isRespawnEnabled()) { spawn.decreaseCount(npc); - spawn.doSpawn(); } + final Instance instance = getInstanceWorld(); + if (instance != null) + { + instance.removeNpc(npc); + } + L2World.getInstance().removeObject(this); } else { 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 9bdd7bbbef..48eb4a9a83 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 @@ -3037,13 +3037,17 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe { ((L2Npc) summoner).removeSummonedNpc(getObjectId()); } - L2World.getInstance().removeObject(this); final L2Spawn spawn = npc.getSpawn(); if ((spawn != null) && spawn.isRespawnEnabled()) { spawn.decreaseCount(npc); - spawn.doSpawn(); } + final Instance instance = getInstanceWorld(); + if (instance != null) + { + instance.removeNpc(npc); + } + L2World.getInstance().removeObject(this); } else { 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 abdb74bc3f..6d9020db6b 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 @@ -4032,13 +4032,17 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe { ((L2Npc) summoner).removeSummonedNpc(getObjectId()); } - L2World.getInstance().removeObject(this); final L2Spawn spawn = npc.getSpawn(); if ((spawn != null) && spawn.isRespawnEnabled()) { spawn.decreaseCount(npc); - spawn.doSpawn(); } + final Instance instance = InstanceManager.getInstance().getInstance(getInstanceId()); + if (instance != null) + { + instance.removeNpc(npc); + } + L2World.getInstance().removeObject(this); } else { 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 9bdd7bbbef..48eb4a9a83 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 @@ -3037,13 +3037,17 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe { ((L2Npc) summoner).removeSummonedNpc(getObjectId()); } - L2World.getInstance().removeObject(this); final L2Spawn spawn = npc.getSpawn(); if ((spawn != null) && spawn.isRespawnEnabled()) { spawn.decreaseCount(npc); - spawn.doSpawn(); } + final Instance instance = getInstanceWorld(); + if (instance != null) + { + instance.removeNpc(npc); + } + L2World.getInstance().removeObject(this); } else { 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 9bdd7bbbef..48eb4a9a83 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 @@ -3037,13 +3037,17 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe { ((L2Npc) summoner).removeSummonedNpc(getObjectId()); } - L2World.getInstance().removeObject(this); final L2Spawn spawn = npc.getSpawn(); if ((spawn != null) && spawn.isRespawnEnabled()) { spawn.decreaseCount(npc); - spawn.doSpawn(); } + final Instance instance = getInstanceWorld(); + if (instance != null) + { + instance.removeNpc(npc); + } + L2World.getInstance().removeObject(this); } else {