From 1b4a4bc6978be0412472c3bb8ad26e43ca64b6a0 Mon Sep 17 00:00:00 2001 From: MobiusDevelopment <8391001+MobiusDevelopment@users.noreply.github.com> Date: Tue, 14 May 2019 21:41:23 +0000 Subject: [PATCH] Proper remove or store servitor. --- .../l2jmobius/gameserver/model/actor/Summon.java | 3 +++ .../model/actor/instance/ServitorInstance.java | 13 +++++++++---- .../l2jmobius/gameserver/model/actor/Summon.java | 3 +++ .../model/actor/instance/ServitorInstance.java | 13 +++++++++---- .../l2jmobius/gameserver/model/actor/Summon.java | 3 +++ .../model/actor/instance/ServitorInstance.java | 13 +++++++++---- .../l2jmobius/gameserver/model/actor/Summon.java | 3 +++ .../model/actor/instance/ServitorInstance.java | 13 +++++++++---- .../l2jmobius/gameserver/model/actor/Summon.java | 3 +++ .../model/actor/instance/ServitorInstance.java | 13 +++++++++---- .../l2jmobius/gameserver/model/actor/Summon.java | 3 +++ .../model/actor/instance/ServitorInstance.java | 13 +++++++++---- .../l2jmobius/gameserver/model/actor/Summon.java | 3 +++ .../model/actor/instance/ServitorInstance.java | 13 +++++++++---- .../l2jmobius/gameserver/model/actor/Summon.java | 3 +++ .../model/actor/instance/ServitorInstance.java | 13 +++++++++---- .../l2jmobius/gameserver/model/actor/Summon.java | 3 +++ .../model/actor/instance/ServitorInstance.java | 13 +++++++++---- .../l2jmobius/gameserver/model/actor/Summon.java | 3 +++ .../model/actor/instance/ServitorInstance.java | 13 +++++++++---- .../l2jmobius/gameserver/model/actor/Summon.java | 3 +++ .../model/actor/instance/ServitorInstance.java | 13 +++++++++---- .../l2jmobius/gameserver/model/actor/Summon.java | 3 +++ .../model/actor/instance/ServitorInstance.java | 13 +++++++++---- 24 files changed, 144 insertions(+), 48 deletions(-) diff --git a/L2J_Mobius_1.0_Ertheia/java/org/l2jmobius/gameserver/model/actor/Summon.java b/L2J_Mobius_1.0_Ertheia/java/org/l2jmobius/gameserver/model/actor/Summon.java index 492636411b..85293fcb36 100644 --- a/L2J_Mobius_1.0_Ertheia/java/org/l2jmobius/gameserver/model/actor/Summon.java +++ b/L2J_Mobius_1.0_Ertheia/java/org/l2jmobius/gameserver/model/actor/Summon.java @@ -22,6 +22,7 @@ import org.l2jmobius.commons.util.Rnd; import org.l2jmobius.gameserver.ai.CreatureAI; import org.l2jmobius.gameserver.ai.CtrlIntention; import org.l2jmobius.gameserver.ai.SummonAI; +import org.l2jmobius.gameserver.data.sql.impl.CharSummonTable; import org.l2jmobius.gameserver.data.xml.impl.ExperienceData; import org.l2jmobius.gameserver.datatables.ItemTable; import org.l2jmobius.gameserver.enums.InstanceType; @@ -404,6 +405,8 @@ public abstract class Summon extends Playable getInventory().destroyAllItems("pet deleted", _owner, this); } decayMe(); + + CharSummonTable.getInstance().removeServitor(_owner, getObjectId()); } public void unSummon(PlayerInstance owner) diff --git a/L2J_Mobius_1.0_Ertheia/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java b/L2J_Mobius_1.0_Ertheia/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java index 80467a7b18..cb3313c8b7 100644 --- a/L2J_Mobius_1.0_Ertheia/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java +++ b/L2J_Mobius_1.0_Ertheia/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java @@ -188,9 +188,7 @@ public class ServitorInstance extends Summon implements Runnable _summonLifeTask.cancel(false); } - CharSummonTable.getInstance().removeServitor(getOwner(), getObjectId()); return true; - } /** @@ -258,14 +256,21 @@ public class ServitorInstance extends Summon implements Runnable @Override public void storeMe() { - if ((_referenceSkill == 0) || isDead()) + if (_referenceSkill == 0) { return; } if (Config.RESTORE_SERVITOR_ON_RECONNECT) { - CharSummonTable.getInstance().saveSummon(this); + if (isDead()) + { + CharSummonTable.getInstance().removeServitor(getOwner(), getObjectId()); + } + else + { + CharSummonTable.getInstance().saveSummon(this); + } } } diff --git a/L2J_Mobius_2.5_Underground/java/org/l2jmobius/gameserver/model/actor/Summon.java b/L2J_Mobius_2.5_Underground/java/org/l2jmobius/gameserver/model/actor/Summon.java index 492636411b..85293fcb36 100644 --- a/L2J_Mobius_2.5_Underground/java/org/l2jmobius/gameserver/model/actor/Summon.java +++ b/L2J_Mobius_2.5_Underground/java/org/l2jmobius/gameserver/model/actor/Summon.java @@ -22,6 +22,7 @@ import org.l2jmobius.commons.util.Rnd; import org.l2jmobius.gameserver.ai.CreatureAI; import org.l2jmobius.gameserver.ai.CtrlIntention; import org.l2jmobius.gameserver.ai.SummonAI; +import org.l2jmobius.gameserver.data.sql.impl.CharSummonTable; import org.l2jmobius.gameserver.data.xml.impl.ExperienceData; import org.l2jmobius.gameserver.datatables.ItemTable; import org.l2jmobius.gameserver.enums.InstanceType; @@ -404,6 +405,8 @@ public abstract class Summon extends Playable getInventory().destroyAllItems("pet deleted", _owner, this); } decayMe(); + + CharSummonTable.getInstance().removeServitor(_owner, getObjectId()); } public void unSummon(PlayerInstance owner) diff --git a/L2J_Mobius_2.5_Underground/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java b/L2J_Mobius_2.5_Underground/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java index 80467a7b18..cb3313c8b7 100644 --- a/L2J_Mobius_2.5_Underground/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java +++ b/L2J_Mobius_2.5_Underground/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java @@ -188,9 +188,7 @@ public class ServitorInstance extends Summon implements Runnable _summonLifeTask.cancel(false); } - CharSummonTable.getInstance().removeServitor(getOwner(), getObjectId()); return true; - } /** @@ -258,14 +256,21 @@ public class ServitorInstance extends Summon implements Runnable @Override public void storeMe() { - if ((_referenceSkill == 0) || isDead()) + if (_referenceSkill == 0) { return; } if (Config.RESTORE_SERVITOR_ON_RECONNECT) { - CharSummonTable.getInstance().saveSummon(this); + if (isDead()) + { + CharSummonTable.getInstance().removeServitor(getOwner(), getObjectId()); + } + else + { + CharSummonTable.getInstance().saveSummon(this); + } } } diff --git a/L2J_Mobius_3.0_Helios/java/org/l2jmobius/gameserver/model/actor/Summon.java b/L2J_Mobius_3.0_Helios/java/org/l2jmobius/gameserver/model/actor/Summon.java index 45bf477450..08cda4fa74 100644 --- a/L2J_Mobius_3.0_Helios/java/org/l2jmobius/gameserver/model/actor/Summon.java +++ b/L2J_Mobius_3.0_Helios/java/org/l2jmobius/gameserver/model/actor/Summon.java @@ -22,6 +22,7 @@ import org.l2jmobius.commons.util.Rnd; import org.l2jmobius.gameserver.ai.CreatureAI; import org.l2jmobius.gameserver.ai.CtrlIntention; import org.l2jmobius.gameserver.ai.SummonAI; +import org.l2jmobius.gameserver.data.sql.impl.CharSummonTable; import org.l2jmobius.gameserver.data.xml.impl.ExperienceData; import org.l2jmobius.gameserver.datatables.ItemTable; import org.l2jmobius.gameserver.enums.InstanceType; @@ -404,6 +405,8 @@ public abstract class Summon extends Playable getInventory().destroyAllItems("pet deleted", _owner, this); } decayMe(); + + CharSummonTable.getInstance().removeServitor(_owner, getObjectId()); } public void unSummon(PlayerInstance owner) diff --git a/L2J_Mobius_3.0_Helios/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java b/L2J_Mobius_3.0_Helios/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java index 80467a7b18..cb3313c8b7 100644 --- a/L2J_Mobius_3.0_Helios/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java +++ b/L2J_Mobius_3.0_Helios/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java @@ -188,9 +188,7 @@ public class ServitorInstance extends Summon implements Runnable _summonLifeTask.cancel(false); } - CharSummonTable.getInstance().removeServitor(getOwner(), getObjectId()); return true; - } /** @@ -258,14 +256,21 @@ public class ServitorInstance extends Summon implements Runnable @Override public void storeMe() { - if ((_referenceSkill == 0) || isDead()) + if (_referenceSkill == 0) { return; } if (Config.RESTORE_SERVITOR_ON_RECONNECT) { - CharSummonTable.getInstance().saveSummon(this); + if (isDead()) + { + CharSummonTable.getInstance().removeServitor(getOwner(), getObjectId()); + } + else + { + CharSummonTable.getInstance().saveSummon(this); + } } } diff --git a/L2J_Mobius_4.0_GrandCrusade/java/org/l2jmobius/gameserver/model/actor/Summon.java b/L2J_Mobius_4.0_GrandCrusade/java/org/l2jmobius/gameserver/model/actor/Summon.java index 45bf477450..08cda4fa74 100644 --- a/L2J_Mobius_4.0_GrandCrusade/java/org/l2jmobius/gameserver/model/actor/Summon.java +++ b/L2J_Mobius_4.0_GrandCrusade/java/org/l2jmobius/gameserver/model/actor/Summon.java @@ -22,6 +22,7 @@ import org.l2jmobius.commons.util.Rnd; import org.l2jmobius.gameserver.ai.CreatureAI; import org.l2jmobius.gameserver.ai.CtrlIntention; import org.l2jmobius.gameserver.ai.SummonAI; +import org.l2jmobius.gameserver.data.sql.impl.CharSummonTable; import org.l2jmobius.gameserver.data.xml.impl.ExperienceData; import org.l2jmobius.gameserver.datatables.ItemTable; import org.l2jmobius.gameserver.enums.InstanceType; @@ -404,6 +405,8 @@ public abstract class Summon extends Playable getInventory().destroyAllItems("pet deleted", _owner, this); } decayMe(); + + CharSummonTable.getInstance().removeServitor(_owner, getObjectId()); } public void unSummon(PlayerInstance owner) diff --git a/L2J_Mobius_4.0_GrandCrusade/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java b/L2J_Mobius_4.0_GrandCrusade/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java index 80467a7b18..cb3313c8b7 100644 --- a/L2J_Mobius_4.0_GrandCrusade/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java +++ b/L2J_Mobius_4.0_GrandCrusade/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java @@ -188,9 +188,7 @@ public class ServitorInstance extends Summon implements Runnable _summonLifeTask.cancel(false); } - CharSummonTable.getInstance().removeServitor(getOwner(), getObjectId()); return true; - } /** @@ -258,14 +256,21 @@ public class ServitorInstance extends Summon implements Runnable @Override public void storeMe() { - if ((_referenceSkill == 0) || isDead()) + if (_referenceSkill == 0) { return; } if (Config.RESTORE_SERVITOR_ON_RECONNECT) { - CharSummonTable.getInstance().saveSummon(this); + if (isDead()) + { + CharSummonTable.getInstance().removeServitor(getOwner(), getObjectId()); + } + else + { + CharSummonTable.getInstance().saveSummon(this); + } } } diff --git a/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/model/actor/Summon.java b/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/model/actor/Summon.java index 45bf477450..08cda4fa74 100644 --- a/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/model/actor/Summon.java +++ b/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/model/actor/Summon.java @@ -22,6 +22,7 @@ import org.l2jmobius.commons.util.Rnd; import org.l2jmobius.gameserver.ai.CreatureAI; import org.l2jmobius.gameserver.ai.CtrlIntention; import org.l2jmobius.gameserver.ai.SummonAI; +import org.l2jmobius.gameserver.data.sql.impl.CharSummonTable; import org.l2jmobius.gameserver.data.xml.impl.ExperienceData; import org.l2jmobius.gameserver.datatables.ItemTable; import org.l2jmobius.gameserver.enums.InstanceType; @@ -404,6 +405,8 @@ public abstract class Summon extends Playable getInventory().destroyAllItems("pet deleted", _owner, this); } decayMe(); + + CharSummonTable.getInstance().removeServitor(_owner, getObjectId()); } public void unSummon(PlayerInstance owner) diff --git a/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java b/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java index 80467a7b18..cb3313c8b7 100644 --- a/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java +++ b/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java @@ -188,9 +188,7 @@ public class ServitorInstance extends Summon implements Runnable _summonLifeTask.cancel(false); } - CharSummonTable.getInstance().removeServitor(getOwner(), getObjectId()); return true; - } /** @@ -258,14 +256,21 @@ public class ServitorInstance extends Summon implements Runnable @Override public void storeMe() { - if ((_referenceSkill == 0) || isDead()) + if (_referenceSkill == 0) { return; } if (Config.RESTORE_SERVITOR_ON_RECONNECT) { - CharSummonTable.getInstance().saveSummon(this); + if (isDead()) + { + CharSummonTable.getInstance().removeServitor(getOwner(), getObjectId()); + } + else + { + CharSummonTable.getInstance().saveSummon(this); + } } } diff --git a/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/model/actor/Summon.java b/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/model/actor/Summon.java index 45bf477450..08cda4fa74 100644 --- a/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/model/actor/Summon.java +++ b/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/model/actor/Summon.java @@ -22,6 +22,7 @@ import org.l2jmobius.commons.util.Rnd; import org.l2jmobius.gameserver.ai.CreatureAI; import org.l2jmobius.gameserver.ai.CtrlIntention; import org.l2jmobius.gameserver.ai.SummonAI; +import org.l2jmobius.gameserver.data.sql.impl.CharSummonTable; import org.l2jmobius.gameserver.data.xml.impl.ExperienceData; import org.l2jmobius.gameserver.datatables.ItemTable; import org.l2jmobius.gameserver.enums.InstanceType; @@ -404,6 +405,8 @@ public abstract class Summon extends Playable getInventory().destroyAllItems("pet deleted", _owner, this); } decayMe(); + + CharSummonTable.getInstance().removeServitor(_owner, getObjectId()); } public void unSummon(PlayerInstance owner) diff --git a/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java b/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java index 80467a7b18..cb3313c8b7 100644 --- a/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java +++ b/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java @@ -188,9 +188,7 @@ public class ServitorInstance extends Summon implements Runnable _summonLifeTask.cancel(false); } - CharSummonTable.getInstance().removeServitor(getOwner(), getObjectId()); return true; - } /** @@ -258,14 +256,21 @@ public class ServitorInstance extends Summon implements Runnable @Override public void storeMe() { - if ((_referenceSkill == 0) || isDead()) + if (_referenceSkill == 0) { return; } if (Config.RESTORE_SERVITOR_ON_RECONNECT) { - CharSummonTable.getInstance().saveSummon(this); + if (isDead()) + { + CharSummonTable.getInstance().removeServitor(getOwner(), getObjectId()); + } + else + { + CharSummonTable.getInstance().saveSummon(this); + } } } diff --git a/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/model/actor/Summon.java b/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/model/actor/Summon.java index 45bf477450..08cda4fa74 100644 --- a/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/model/actor/Summon.java +++ b/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/model/actor/Summon.java @@ -22,6 +22,7 @@ import org.l2jmobius.commons.util.Rnd; import org.l2jmobius.gameserver.ai.CreatureAI; import org.l2jmobius.gameserver.ai.CtrlIntention; import org.l2jmobius.gameserver.ai.SummonAI; +import org.l2jmobius.gameserver.data.sql.impl.CharSummonTable; import org.l2jmobius.gameserver.data.xml.impl.ExperienceData; import org.l2jmobius.gameserver.datatables.ItemTable; import org.l2jmobius.gameserver.enums.InstanceType; @@ -404,6 +405,8 @@ public abstract class Summon extends Playable getInventory().destroyAllItems("pet deleted", _owner, this); } decayMe(); + + CharSummonTable.getInstance().removeServitor(_owner, getObjectId()); } public void unSummon(PlayerInstance owner) diff --git a/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java b/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java index 80467a7b18..cb3313c8b7 100644 --- a/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java +++ b/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java @@ -188,9 +188,7 @@ public class ServitorInstance extends Summon implements Runnable _summonLifeTask.cancel(false); } - CharSummonTable.getInstance().removeServitor(getOwner(), getObjectId()); return true; - } /** @@ -258,14 +256,21 @@ public class ServitorInstance extends Summon implements Runnable @Override public void storeMe() { - if ((_referenceSkill == 0) || isDead()) + if (_referenceSkill == 0) { return; } if (Config.RESTORE_SERVITOR_ON_RECONNECT) { - CharSummonTable.getInstance().saveSummon(this); + if (isDead()) + { + CharSummonTable.getInstance().removeServitor(getOwner(), getObjectId()); + } + else + { + CharSummonTable.getInstance().saveSummon(this); + } } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/actor/Summon.java b/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/actor/Summon.java index 1c27d61924..343ae4776d 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/actor/Summon.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/actor/Summon.java @@ -22,6 +22,7 @@ import org.l2jmobius.commons.util.Rnd; import org.l2jmobius.gameserver.ai.CreatureAI; import org.l2jmobius.gameserver.ai.CtrlIntention; import org.l2jmobius.gameserver.ai.SummonAI; +import org.l2jmobius.gameserver.data.sql.impl.CharSummonTable; import org.l2jmobius.gameserver.data.xml.impl.ExperienceData; import org.l2jmobius.gameserver.datatables.ItemTable; import org.l2jmobius.gameserver.enums.InstanceType; @@ -404,6 +405,8 @@ public abstract class Summon extends Playable getInventory().destroyAllItems("pet deleted", _owner, this); } decayMe(); + + CharSummonTable.getInstance().removeServitor(_owner, getObjectId()); } public void unSummon(PlayerInstance owner) diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java b/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java index 80467a7b18..cb3313c8b7 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java @@ -188,9 +188,7 @@ public class ServitorInstance extends Summon implements Runnable _summonLifeTask.cancel(false); } - CharSummonTable.getInstance().removeServitor(getOwner(), getObjectId()); return true; - } /** @@ -258,14 +256,21 @@ public class ServitorInstance extends Summon implements Runnable @Override public void storeMe() { - if ((_referenceSkill == 0) || isDead()) + if (_referenceSkill == 0) { return; } if (Config.RESTORE_SERVITOR_ON_RECONNECT) { - CharSummonTable.getInstance().saveSummon(this); + if (isDead()) + { + CharSummonTable.getInstance().removeServitor(getOwner(), getObjectId()); + } + else + { + CharSummonTable.getInstance().saveSummon(this); + } } } diff --git a/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/actor/Summon.java b/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/actor/Summon.java index 1c27d61924..343ae4776d 100644 --- a/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/actor/Summon.java +++ b/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/actor/Summon.java @@ -22,6 +22,7 @@ import org.l2jmobius.commons.util.Rnd; import org.l2jmobius.gameserver.ai.CreatureAI; import org.l2jmobius.gameserver.ai.CtrlIntention; import org.l2jmobius.gameserver.ai.SummonAI; +import org.l2jmobius.gameserver.data.sql.impl.CharSummonTable; import org.l2jmobius.gameserver.data.xml.impl.ExperienceData; import org.l2jmobius.gameserver.datatables.ItemTable; import org.l2jmobius.gameserver.enums.InstanceType; @@ -404,6 +405,8 @@ public abstract class Summon extends Playable getInventory().destroyAllItems("pet deleted", _owner, this); } decayMe(); + + CharSummonTable.getInstance().removeServitor(_owner, getObjectId()); } public void unSummon(PlayerInstance owner) diff --git a/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java b/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java index 80467a7b18..cb3313c8b7 100644 --- a/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java +++ b/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java @@ -188,9 +188,7 @@ public class ServitorInstance extends Summon implements Runnable _summonLifeTask.cancel(false); } - CharSummonTable.getInstance().removeServitor(getOwner(), getObjectId()); return true; - } /** @@ -258,14 +256,21 @@ public class ServitorInstance extends Summon implements Runnable @Override public void storeMe() { - if ((_referenceSkill == 0) || isDead()) + if (_referenceSkill == 0) { return; } if (Config.RESTORE_SERVITOR_ON_RECONNECT) { - CharSummonTable.getInstance().saveSummon(this); + if (isDead()) + { + CharSummonTable.getInstance().removeServitor(getOwner(), getObjectId()); + } + else + { + CharSummonTable.getInstance().saveSummon(this); + } } } diff --git a/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/actor/Summon.java b/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/actor/Summon.java index 1c27d61924..343ae4776d 100644 --- a/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/actor/Summon.java +++ b/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/actor/Summon.java @@ -22,6 +22,7 @@ import org.l2jmobius.commons.util.Rnd; import org.l2jmobius.gameserver.ai.CreatureAI; import org.l2jmobius.gameserver.ai.CtrlIntention; import org.l2jmobius.gameserver.ai.SummonAI; +import org.l2jmobius.gameserver.data.sql.impl.CharSummonTable; import org.l2jmobius.gameserver.data.xml.impl.ExperienceData; import org.l2jmobius.gameserver.datatables.ItemTable; import org.l2jmobius.gameserver.enums.InstanceType; @@ -404,6 +405,8 @@ public abstract class Summon extends Playable getInventory().destroyAllItems("pet deleted", _owner, this); } decayMe(); + + CharSummonTable.getInstance().removeServitor(_owner, getObjectId()); } public void unSummon(PlayerInstance owner) diff --git a/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java b/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java index 80467a7b18..cb3313c8b7 100644 --- a/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java +++ b/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java @@ -188,9 +188,7 @@ public class ServitorInstance extends Summon implements Runnable _summonLifeTask.cancel(false); } - CharSummonTable.getInstance().removeServitor(getOwner(), getObjectId()); return true; - } /** @@ -258,14 +256,21 @@ public class ServitorInstance extends Summon implements Runnable @Override public void storeMe() { - if ((_referenceSkill == 0) || isDead()) + if (_referenceSkill == 0) { return; } if (Config.RESTORE_SERVITOR_ON_RECONNECT) { - CharSummonTable.getInstance().saveSummon(this); + if (isDead()) + { + CharSummonTable.getInstance().removeServitor(getOwner(), getObjectId()); + } + else + { + CharSummonTable.getInstance().saveSummon(this); + } } } diff --git a/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/actor/Summon.java b/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/actor/Summon.java index 1c27d61924..343ae4776d 100644 --- a/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/actor/Summon.java +++ b/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/actor/Summon.java @@ -22,6 +22,7 @@ import org.l2jmobius.commons.util.Rnd; import org.l2jmobius.gameserver.ai.CreatureAI; import org.l2jmobius.gameserver.ai.CtrlIntention; import org.l2jmobius.gameserver.ai.SummonAI; +import org.l2jmobius.gameserver.data.sql.impl.CharSummonTable; import org.l2jmobius.gameserver.data.xml.impl.ExperienceData; import org.l2jmobius.gameserver.datatables.ItemTable; import org.l2jmobius.gameserver.enums.InstanceType; @@ -404,6 +405,8 @@ public abstract class Summon extends Playable getInventory().destroyAllItems("pet deleted", _owner, this); } decayMe(); + + CharSummonTable.getInstance().removeServitor(_owner, getObjectId()); } public void unSummon(PlayerInstance owner) diff --git a/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java b/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java index 80467a7b18..cb3313c8b7 100644 --- a/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java +++ b/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java @@ -188,9 +188,7 @@ public class ServitorInstance extends Summon implements Runnable _summonLifeTask.cancel(false); } - CharSummonTable.getInstance().removeServitor(getOwner(), getObjectId()); return true; - } /** @@ -258,14 +256,21 @@ public class ServitorInstance extends Summon implements Runnable @Override public void storeMe() { - if ((_referenceSkill == 0) || isDead()) + if (_referenceSkill == 0) { return; } if (Config.RESTORE_SERVITOR_ON_RECONNECT) { - CharSummonTable.getInstance().saveSummon(this); + if (isDead()) + { + CharSummonTable.getInstance().removeServitor(getOwner(), getObjectId()); + } + else + { + CharSummonTable.getInstance().saveSummon(this); + } } } diff --git a/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/actor/Summon.java b/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/actor/Summon.java index 1c27d61924..343ae4776d 100644 --- a/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/actor/Summon.java +++ b/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/actor/Summon.java @@ -22,6 +22,7 @@ import org.l2jmobius.commons.util.Rnd; import org.l2jmobius.gameserver.ai.CreatureAI; import org.l2jmobius.gameserver.ai.CtrlIntention; import org.l2jmobius.gameserver.ai.SummonAI; +import org.l2jmobius.gameserver.data.sql.impl.CharSummonTable; import org.l2jmobius.gameserver.data.xml.impl.ExperienceData; import org.l2jmobius.gameserver.datatables.ItemTable; import org.l2jmobius.gameserver.enums.InstanceType; @@ -404,6 +405,8 @@ public abstract class Summon extends Playable getInventory().destroyAllItems("pet deleted", _owner, this); } decayMe(); + + CharSummonTable.getInstance().removeServitor(_owner, getObjectId()); } public void unSummon(PlayerInstance owner) diff --git a/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java b/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java index 80467a7b18..cb3313c8b7 100644 --- a/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java +++ b/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/actor/instance/ServitorInstance.java @@ -188,9 +188,7 @@ public class ServitorInstance extends Summon implements Runnable _summonLifeTask.cancel(false); } - CharSummonTable.getInstance().removeServitor(getOwner(), getObjectId()); return true; - } /** @@ -258,14 +256,21 @@ public class ServitorInstance extends Summon implements Runnable @Override public void storeMe() { - if ((_referenceSkill == 0) || isDead()) + if (_referenceSkill == 0) { return; } if (Config.RESTORE_SERVITOR_ON_RECONNECT) { - CharSummonTable.getInstance().saveSummon(this); + if (isDead()) + { + CharSummonTable.getInstance().removeServitor(getOwner(), getObjectId()); + } + else + { + CharSummonTable.getInstance().saveSummon(this); + } } }