Proper remove or store servitor.
This commit is contained in:
parent
e5bc00862c
commit
1b4a4bc697
@ -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)
|
||||
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -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)
|
||||
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -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)
|
||||
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -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)
|
||||
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -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)
|
||||
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -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)
|
||||
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -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)
|
||||
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -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)
|
||||
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -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)
|
||||
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -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)
|
||||
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -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)
|
||||
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -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)
|
||||
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user