Changed restore method at CharSummonTable.

This commit is contained in:
MobiusDev 2019-02-17 16:14:41 +00:00
parent 2cb58f8c73
commit 6098ba5317
10 changed files with 40 additions and 30 deletions

View File

@ -196,17 +196,18 @@ public class CharSummonTable
final int curMp = rs.getInt("curMp");
final int time = rs.getInt("time");
removeServitor(activeChar, summonObjId);
skill = SkillData.getInstance().getSkill(skillId, activeChar.getSkillLevel(skillId));
if (skill == null)
{
removeServitor(activeChar, summonObjId);
return;
}
skill.applyEffects(activeChar, activeChar);
final L2ServitorInstance summon = (L2ServitorInstance) activeChar.getServitor(summonObjId);
if (summon != null)
if (activeChar.hasServitors())
{
final L2ServitorInstance summon = activeChar.getServitors().values().stream().map(s -> ((L2ServitorInstance) s)).filter(s -> s.getReferenceSkill() == skillId).findAny().orElse(null);
summon.setCurrentHp(curHp);
summon.setCurrentMp(curMp);
summon.setLifeTimeRemaining(time);

View File

@ -196,17 +196,18 @@ public class CharSummonTable
final int curMp = rs.getInt("curMp");
final int time = rs.getInt("time");
removeServitor(activeChar, summonObjId);
skill = SkillData.getInstance().getSkill(skillId, activeChar.getSkillLevel(skillId));
if (skill == null)
{
removeServitor(activeChar, summonObjId);
return;
}
skill.applyEffects(activeChar, activeChar);
final L2ServitorInstance summon = (L2ServitorInstance) activeChar.getServitor(summonObjId);
if (summon != null)
if (activeChar.hasServitors())
{
final L2ServitorInstance summon = activeChar.getServitors().values().stream().map(s -> ((L2ServitorInstance) s)).filter(s -> s.getReferenceSkill() == skillId).findAny().orElse(null);
summon.setCurrentHp(curHp);
summon.setCurrentMp(curMp);
summon.setLifeTimeRemaining(time);

View File

@ -196,17 +196,18 @@ public class CharSummonTable
final int curMp = rs.getInt("curMp");
final int time = rs.getInt("time");
removeServitor(activeChar, summonObjId);
skill = SkillData.getInstance().getSkill(skillId, activeChar.getSkillLevel(skillId));
if (skill == null)
{
removeServitor(activeChar, summonObjId);
return;
}
skill.applyEffects(activeChar, activeChar);
final L2ServitorInstance summon = (L2ServitorInstance) activeChar.getServitor(summonObjId);
if (summon != null)
if (activeChar.hasServitors())
{
final L2ServitorInstance summon = activeChar.getServitors().values().stream().map(s -> ((L2ServitorInstance) s)).filter(s -> s.getReferenceSkill() == skillId).findAny().orElse(null);
summon.setCurrentHp(curHp);
summon.setCurrentMp(curMp);
summon.setLifeTimeRemaining(time);

View File

@ -196,17 +196,18 @@ public class CharSummonTable
final int curMp = rs.getInt("curMp");
final int time = rs.getInt("time");
removeServitor(activeChar, summonObjId);
skill = SkillData.getInstance().getSkill(skillId, activeChar.getSkillLevel(skillId));
if (skill == null)
{
removeServitor(activeChar, summonObjId);
return;
}
skill.applyEffects(activeChar, activeChar);
final L2ServitorInstance summon = (L2ServitorInstance) activeChar.getServitor(summonObjId);
if (summon != null)
if (activeChar.hasServitors())
{
final L2ServitorInstance summon = activeChar.getServitors().values().stream().map(s -> ((L2ServitorInstance) s)).filter(s -> s.getReferenceSkill() == skillId).findAny().orElse(null);
summon.setCurrentHp(curHp);
summon.setCurrentMp(curMp);
summon.setLifeTimeRemaining(time);

View File

@ -196,17 +196,18 @@ public class CharSummonTable
final int curMp = rs.getInt("curMp");
final int time = rs.getInt("time");
removeServitor(activeChar, summonObjId);
skill = SkillData.getInstance().getSkill(skillId, activeChar.getSkillLevel(skillId));
if (skill == null)
{
removeServitor(activeChar, summonObjId);
return;
}
skill.applyEffects(activeChar, activeChar);
final L2ServitorInstance summon = (L2ServitorInstance) activeChar.getServitor(summonObjId);
if (summon != null)
if (activeChar.hasServitors())
{
final L2ServitorInstance summon = activeChar.getServitors().values().stream().map(s -> ((L2ServitorInstance) s)).filter(s -> s.getReferenceSkill() == skillId).findAny().orElse(null);
summon.setCurrentHp(curHp);
summon.setCurrentMp(curMp);
summon.setLifeTimeRemaining(time);

View File

@ -196,17 +196,18 @@ public class CharSummonTable
final int curMp = rs.getInt("curMp");
final int time = rs.getInt("time");
removeServitor(activeChar, summonObjId);
skill = SkillData.getInstance().getSkill(skillId, activeChar.getSkillLevel(skillId));
if (skill == null)
{
removeServitor(activeChar, summonObjId);
return;
}
skill.applyEffects(activeChar, activeChar);
final L2ServitorInstance summon = (L2ServitorInstance) activeChar.getServitor(summonObjId);
if (summon != null)
if (activeChar.hasServitors())
{
final L2ServitorInstance summon = activeChar.getServitors().values().stream().map(s -> ((L2ServitorInstance) s)).filter(s -> s.getReferenceSkill() == skillId).findAny().orElse(null);
summon.setCurrentHp(curHp);
summon.setCurrentMp(curMp);
summon.setLifeTimeRemaining(time);

View File

@ -196,17 +196,18 @@ public class CharSummonTable
final int curMp = rs.getInt("curMp");
final int time = rs.getInt("time");
removeServitor(activeChar, summonObjId);
skill = SkillData.getInstance().getSkill(skillId, activeChar.getSkillLevel(skillId));
if (skill == null)
{
removeServitor(activeChar, summonObjId);
return;
}
skill.applyEffects(activeChar, activeChar);
final L2ServitorInstance summon = (L2ServitorInstance) activeChar.getServitor(summonObjId);
if (summon != null)
if (activeChar.hasServitors())
{
final L2ServitorInstance summon = activeChar.getServitors().values().stream().map(s -> ((L2ServitorInstance) s)).filter(s -> s.getReferenceSkill() == skillId).findAny().orElse(null);
summon.setCurrentHp(curHp);
summon.setCurrentMp(curMp);
summon.setLifeTimeRemaining(time);

View File

@ -196,17 +196,18 @@ public class CharSummonTable
final int curMp = rs.getInt("curMp");
final int time = rs.getInt("time");
removeServitor(activeChar, summonObjId);
skill = SkillData.getInstance().getSkill(skillId, activeChar.getSkillLevel(skillId));
if (skill == null)
{
removeServitor(activeChar, summonObjId);
return;
}
skill.applyEffects(activeChar, activeChar);
final L2ServitorInstance summon = (L2ServitorInstance) activeChar.getServitor(summonObjId);
if (summon != null)
if (activeChar.hasServitors())
{
final L2ServitorInstance summon = activeChar.getServitors().values().stream().map(s -> ((L2ServitorInstance) s)).filter(s -> s.getReferenceSkill() == skillId).findAny().orElse(null);
summon.setCurrentHp(curHp);
summon.setCurrentMp(curMp);
summon.setLifeTimeRemaining(time);

View File

@ -196,17 +196,18 @@ public class CharSummonTable
final int curMp = rs.getInt("curMp");
final int time = rs.getInt("time");
removeServitor(activeChar, summonObjId);
skill = SkillData.getInstance().getSkill(skillId, activeChar.getSkillLevel(skillId));
if (skill == null)
{
removeServitor(activeChar, summonObjId);
return;
}
skill.applyEffects(activeChar, activeChar);
final L2ServitorInstance summon = (L2ServitorInstance) activeChar.getServitor(summonObjId);
if (summon != null)
if (activeChar.hasServitors())
{
final L2ServitorInstance summon = activeChar.getServitors().values().stream().map(s -> ((L2ServitorInstance) s)).filter(s -> s.getReferenceSkill() == skillId).findAny().orElse(null);
summon.setCurrentHp(curHp);
summon.setCurrentMp(curMp);
summon.setLifeTimeRemaining(time);

View File

@ -196,17 +196,18 @@ public class CharSummonTable
final int curMp = rs.getInt("curMp");
final int time = rs.getInt("time");
removeServitor(activeChar, summonObjId);
skill = SkillData.getInstance().getSkill(skillId, activeChar.getSkillLevel(skillId));
if (skill == null)
{
removeServitor(activeChar, summonObjId);
return;
}
skill.applyEffects(activeChar, activeChar);
final L2ServitorInstance summon = (L2ServitorInstance) activeChar.getServitor(summonObjId);
if (summon != null)
if (activeChar.hasServitors())
{
final L2ServitorInstance summon = activeChar.getServitors().values().stream().map(s -> ((L2ServitorInstance) s)).filter(s -> s.getReferenceSkill() == skillId).findAny().orElse(null);
summon.setCurrentHp(curHp);
summon.setCurrentMp(curMp);
summon.setLifeTimeRemaining(time);