From c271f6b31b5f128a13e86159cff466c1ad8cac2d Mon Sep 17 00:00:00 2001 From: MobiusDevelopment <8391001+MobiusDevelopment@users.noreply.github.com> Date: Mon, 10 Jun 2019 10:45:32 +0000 Subject: [PATCH] Use PlayerInstance method for removing player skills. --- .../scripts/ai/areas/TalkingIsland/Hardin/Hardin.java | 7 ++++++- .../ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java | 9 +++++++-- .../scripts/ai/areas/TalkingIsland/Hardin/Hardin.java | 7 ++++++- .../ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java | 9 +++++++-- .../scripts/ai/areas/TalkingIsland/Hardin/Hardin.java | 7 ++++++- .../ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java | 9 +++++++-- .../scripts/ai/areas/TalkingIsland/Hardin/Hardin.java | 7 ++++++- .../ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java | 9 +++++++-- .../scripts/ai/areas/TalkingIsland/Hardin/Hardin.java | 7 ++++++- .../ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java | 9 +++++++-- .../scripts/ai/areas/TalkingIsland/Hardin/Hardin.java | 7 ++++++- .../ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java | 9 +++++++-- .../scripts/ai/areas/TalkingIsland/Hardin/Hardin.java | 7 ++++++- .../ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java | 9 +++++++-- 14 files changed, 91 insertions(+), 21 deletions(-) diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/TalkingIsland/Hardin/Hardin.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/TalkingIsland/Hardin/Hardin.java index 2b66a29fc6..da8b2102aa 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/TalkingIsland/Hardin/Hardin.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/TalkingIsland/Hardin/Hardin.java @@ -31,6 +31,7 @@ import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; import org.l2jmobius.gameserver.model.base.ClassId; import org.l2jmobius.gameserver.model.olympiad.Olympiad; import org.l2jmobius.gameserver.model.quest.QuestState; +import org.l2jmobius.gameserver.model.skills.Skill; import org.l2jmobius.gameserver.network.serverpackets.ExSubjobInfo; import org.l2jmobius.gameserver.network.serverpackets.ExUserInfoInvenWeight; import org.l2jmobius.gameserver.network.serverpackets.NpcHtmlMessage; @@ -160,7 +161,11 @@ public final class Hardin extends AbstractNpcAI { for (int skillId : removedSkillIds) { - player.removeSkill(skillId); + final Skill skill = player.getKnownSkill(skillId); + if (skill != null) + { + player.removeSkill(skill); + } } } player.store(false); diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java index b3a974402c..2967d2ca0c 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java @@ -25,6 +25,7 @@ import org.l2jmobius.gameserver.model.SkillLearn; import org.l2jmobius.gameserver.model.actor.Npc; import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; import org.l2jmobius.gameserver.model.base.AcquireSkillType; +import org.l2jmobius.gameserver.model.skills.Skill; import org.l2jmobius.gameserver.model.variables.PlayerVariables; import org.l2jmobius.gameserver.network.SystemMessageId; import org.l2jmobius.gameserver.network.serverpackets.ExAcquirableSkillListByClass; @@ -145,9 +146,13 @@ public final class MonkOfChaos extends AbstractNpcAI } takeItems(player, 57, CANCEL_FEE); - for (SkillLearn skill : SkillTreesData.getInstance().getAllRevelationSkills(player, player.isDualClassActive() ? SubclassType.DUALCLASS : SubclassType.BASECLASS)) + for (SkillLearn skillLearn : SkillTreesData.getInstance().getAllRevelationSkills(player, player.isDualClassActive() ? SubclassType.DUALCLASS : SubclassType.BASECLASS)) { - player.removeSkill(skill.getSkillId()); + final Skill skill = player.getKnownSkill(skillLearn.getSkillId()); + if (skill != null) + { + player.removeSkill(skill); + } } for (String varName : varNames) { diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/TalkingIsland/Hardin/Hardin.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/TalkingIsland/Hardin/Hardin.java index 2b66a29fc6..da8b2102aa 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/TalkingIsland/Hardin/Hardin.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/TalkingIsland/Hardin/Hardin.java @@ -31,6 +31,7 @@ import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; import org.l2jmobius.gameserver.model.base.ClassId; import org.l2jmobius.gameserver.model.olympiad.Olympiad; import org.l2jmobius.gameserver.model.quest.QuestState; +import org.l2jmobius.gameserver.model.skills.Skill; import org.l2jmobius.gameserver.network.serverpackets.ExSubjobInfo; import org.l2jmobius.gameserver.network.serverpackets.ExUserInfoInvenWeight; import org.l2jmobius.gameserver.network.serverpackets.NpcHtmlMessage; @@ -160,7 +161,11 @@ public final class Hardin extends AbstractNpcAI { for (int skillId : removedSkillIds) { - player.removeSkill(skillId); + final Skill skill = player.getKnownSkill(skillId); + if (skill != null) + { + player.removeSkill(skill); + } } } player.store(false); diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java index b3a974402c..2967d2ca0c 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java @@ -25,6 +25,7 @@ import org.l2jmobius.gameserver.model.SkillLearn; import org.l2jmobius.gameserver.model.actor.Npc; import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; import org.l2jmobius.gameserver.model.base.AcquireSkillType; +import org.l2jmobius.gameserver.model.skills.Skill; import org.l2jmobius.gameserver.model.variables.PlayerVariables; import org.l2jmobius.gameserver.network.SystemMessageId; import org.l2jmobius.gameserver.network.serverpackets.ExAcquirableSkillListByClass; @@ -145,9 +146,13 @@ public final class MonkOfChaos extends AbstractNpcAI } takeItems(player, 57, CANCEL_FEE); - for (SkillLearn skill : SkillTreesData.getInstance().getAllRevelationSkills(player, player.isDualClassActive() ? SubclassType.DUALCLASS : SubclassType.BASECLASS)) + for (SkillLearn skillLearn : SkillTreesData.getInstance().getAllRevelationSkills(player, player.isDualClassActive() ? SubclassType.DUALCLASS : SubclassType.BASECLASS)) { - player.removeSkill(skill.getSkillId()); + final Skill skill = player.getKnownSkill(skillLearn.getSkillId()); + if (skill != null) + { + player.removeSkill(skill); + } } for (String varName : varNames) { diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/TalkingIsland/Hardin/Hardin.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/TalkingIsland/Hardin/Hardin.java index 2b66a29fc6..da8b2102aa 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/TalkingIsland/Hardin/Hardin.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/TalkingIsland/Hardin/Hardin.java @@ -31,6 +31,7 @@ import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; import org.l2jmobius.gameserver.model.base.ClassId; import org.l2jmobius.gameserver.model.olympiad.Olympiad; import org.l2jmobius.gameserver.model.quest.QuestState; +import org.l2jmobius.gameserver.model.skills.Skill; import org.l2jmobius.gameserver.network.serverpackets.ExSubjobInfo; import org.l2jmobius.gameserver.network.serverpackets.ExUserInfoInvenWeight; import org.l2jmobius.gameserver.network.serverpackets.NpcHtmlMessage; @@ -160,7 +161,11 @@ public final class Hardin extends AbstractNpcAI { for (int skillId : removedSkillIds) { - player.removeSkill(skillId); + final Skill skill = player.getKnownSkill(skillId); + if (skill != null) + { + player.removeSkill(skill); + } } } player.store(false); diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java index b3a974402c..2967d2ca0c 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java @@ -25,6 +25,7 @@ import org.l2jmobius.gameserver.model.SkillLearn; import org.l2jmobius.gameserver.model.actor.Npc; import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; import org.l2jmobius.gameserver.model.base.AcquireSkillType; +import org.l2jmobius.gameserver.model.skills.Skill; import org.l2jmobius.gameserver.model.variables.PlayerVariables; import org.l2jmobius.gameserver.network.SystemMessageId; import org.l2jmobius.gameserver.network.serverpackets.ExAcquirableSkillListByClass; @@ -145,9 +146,13 @@ public final class MonkOfChaos extends AbstractNpcAI } takeItems(player, 57, CANCEL_FEE); - for (SkillLearn skill : SkillTreesData.getInstance().getAllRevelationSkills(player, player.isDualClassActive() ? SubclassType.DUALCLASS : SubclassType.BASECLASS)) + for (SkillLearn skillLearn : SkillTreesData.getInstance().getAllRevelationSkills(player, player.isDualClassActive() ? SubclassType.DUALCLASS : SubclassType.BASECLASS)) { - player.removeSkill(skill.getSkillId()); + final Skill skill = player.getKnownSkill(skillLearn.getSkillId()); + if (skill != null) + { + player.removeSkill(skill); + } } for (String varName : varNames) { diff --git a/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/ai/areas/TalkingIsland/Hardin/Hardin.java b/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/ai/areas/TalkingIsland/Hardin/Hardin.java index 2b66a29fc6..da8b2102aa 100644 --- a/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/ai/areas/TalkingIsland/Hardin/Hardin.java +++ b/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/ai/areas/TalkingIsland/Hardin/Hardin.java @@ -31,6 +31,7 @@ import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; import org.l2jmobius.gameserver.model.base.ClassId; import org.l2jmobius.gameserver.model.olympiad.Olympiad; import org.l2jmobius.gameserver.model.quest.QuestState; +import org.l2jmobius.gameserver.model.skills.Skill; import org.l2jmobius.gameserver.network.serverpackets.ExSubjobInfo; import org.l2jmobius.gameserver.network.serverpackets.ExUserInfoInvenWeight; import org.l2jmobius.gameserver.network.serverpackets.NpcHtmlMessage; @@ -160,7 +161,11 @@ public final class Hardin extends AbstractNpcAI { for (int skillId : removedSkillIds) { - player.removeSkill(skillId); + final Skill skill = player.getKnownSkill(skillId); + if (skill != null) + { + player.removeSkill(skill); + } } } player.store(false); diff --git a/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java b/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java index b3a974402c..2967d2ca0c 100644 --- a/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java +++ b/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java @@ -25,6 +25,7 @@ import org.l2jmobius.gameserver.model.SkillLearn; import org.l2jmobius.gameserver.model.actor.Npc; import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; import org.l2jmobius.gameserver.model.base.AcquireSkillType; +import org.l2jmobius.gameserver.model.skills.Skill; import org.l2jmobius.gameserver.model.variables.PlayerVariables; import org.l2jmobius.gameserver.network.SystemMessageId; import org.l2jmobius.gameserver.network.serverpackets.ExAcquirableSkillListByClass; @@ -145,9 +146,13 @@ public final class MonkOfChaos extends AbstractNpcAI } takeItems(player, 57, CANCEL_FEE); - for (SkillLearn skill : SkillTreesData.getInstance().getAllRevelationSkills(player, player.isDualClassActive() ? SubclassType.DUALCLASS : SubclassType.BASECLASS)) + for (SkillLearn skillLearn : SkillTreesData.getInstance().getAllRevelationSkills(player, player.isDualClassActive() ? SubclassType.DUALCLASS : SubclassType.BASECLASS)) { - player.removeSkill(skill.getSkillId()); + final Skill skill = player.getKnownSkill(skillLearn.getSkillId()); + if (skill != null) + { + player.removeSkill(skill); + } } for (String varName : varNames) { diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/ai/areas/TalkingIsland/Hardin/Hardin.java b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/ai/areas/TalkingIsland/Hardin/Hardin.java index 2b66a29fc6..da8b2102aa 100644 --- a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/ai/areas/TalkingIsland/Hardin/Hardin.java +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/ai/areas/TalkingIsland/Hardin/Hardin.java @@ -31,6 +31,7 @@ import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; import org.l2jmobius.gameserver.model.base.ClassId; import org.l2jmobius.gameserver.model.olympiad.Olympiad; import org.l2jmobius.gameserver.model.quest.QuestState; +import org.l2jmobius.gameserver.model.skills.Skill; import org.l2jmobius.gameserver.network.serverpackets.ExSubjobInfo; import org.l2jmobius.gameserver.network.serverpackets.ExUserInfoInvenWeight; import org.l2jmobius.gameserver.network.serverpackets.NpcHtmlMessage; @@ -160,7 +161,11 @@ public final class Hardin extends AbstractNpcAI { for (int skillId : removedSkillIds) { - player.removeSkill(skillId); + final Skill skill = player.getKnownSkill(skillId); + if (skill != null) + { + player.removeSkill(skill); + } } } player.store(false); diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java index b3a974402c..2967d2ca0c 100644 --- a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java @@ -25,6 +25,7 @@ import org.l2jmobius.gameserver.model.SkillLearn; import org.l2jmobius.gameserver.model.actor.Npc; import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; import org.l2jmobius.gameserver.model.base.AcquireSkillType; +import org.l2jmobius.gameserver.model.skills.Skill; import org.l2jmobius.gameserver.model.variables.PlayerVariables; import org.l2jmobius.gameserver.network.SystemMessageId; import org.l2jmobius.gameserver.network.serverpackets.ExAcquirableSkillListByClass; @@ -145,9 +146,13 @@ public final class MonkOfChaos extends AbstractNpcAI } takeItems(player, 57, CANCEL_FEE); - for (SkillLearn skill : SkillTreesData.getInstance().getAllRevelationSkills(player, player.isDualClassActive() ? SubclassType.DUALCLASS : SubclassType.BASECLASS)) + for (SkillLearn skillLearn : SkillTreesData.getInstance().getAllRevelationSkills(player, player.isDualClassActive() ? SubclassType.DUALCLASS : SubclassType.BASECLASS)) { - player.removeSkill(skill.getSkillId()); + final Skill skill = player.getKnownSkill(skillLearn.getSkillId()); + if (skill != null) + { + player.removeSkill(skill); + } } for (String varName : varNames) { diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/ai/areas/TalkingIsland/Hardin/Hardin.java b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/ai/areas/TalkingIsland/Hardin/Hardin.java index 2b66a29fc6..da8b2102aa 100644 --- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/ai/areas/TalkingIsland/Hardin/Hardin.java +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/ai/areas/TalkingIsland/Hardin/Hardin.java @@ -31,6 +31,7 @@ import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; import org.l2jmobius.gameserver.model.base.ClassId; import org.l2jmobius.gameserver.model.olympiad.Olympiad; import org.l2jmobius.gameserver.model.quest.QuestState; +import org.l2jmobius.gameserver.model.skills.Skill; import org.l2jmobius.gameserver.network.serverpackets.ExSubjobInfo; import org.l2jmobius.gameserver.network.serverpackets.ExUserInfoInvenWeight; import org.l2jmobius.gameserver.network.serverpackets.NpcHtmlMessage; @@ -160,7 +161,11 @@ public final class Hardin extends AbstractNpcAI { for (int skillId : removedSkillIds) { - player.removeSkill(skillId); + final Skill skill = player.getKnownSkill(skillId); + if (skill != null) + { + player.removeSkill(skill); + } } } player.store(false); diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java index b3a974402c..2967d2ca0c 100644 --- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java @@ -25,6 +25,7 @@ import org.l2jmobius.gameserver.model.SkillLearn; import org.l2jmobius.gameserver.model.actor.Npc; import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; import org.l2jmobius.gameserver.model.base.AcquireSkillType; +import org.l2jmobius.gameserver.model.skills.Skill; import org.l2jmobius.gameserver.model.variables.PlayerVariables; import org.l2jmobius.gameserver.network.SystemMessageId; import org.l2jmobius.gameserver.network.serverpackets.ExAcquirableSkillListByClass; @@ -145,9 +146,13 @@ public final class MonkOfChaos extends AbstractNpcAI } takeItems(player, 57, CANCEL_FEE); - for (SkillLearn skill : SkillTreesData.getInstance().getAllRevelationSkills(player, player.isDualClassActive() ? SubclassType.DUALCLASS : SubclassType.BASECLASS)) + for (SkillLearn skillLearn : SkillTreesData.getInstance().getAllRevelationSkills(player, player.isDualClassActive() ? SubclassType.DUALCLASS : SubclassType.BASECLASS)) { - player.removeSkill(skill.getSkillId()); + final Skill skill = player.getKnownSkill(skillLearn.getSkillId()); + if (skill != null) + { + player.removeSkill(skill); + } } for (String varName : varNames) { diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/ai/areas/TalkingIsland/Hardin/Hardin.java b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/ai/areas/TalkingIsland/Hardin/Hardin.java index 2b66a29fc6..da8b2102aa 100644 --- a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/ai/areas/TalkingIsland/Hardin/Hardin.java +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/ai/areas/TalkingIsland/Hardin/Hardin.java @@ -31,6 +31,7 @@ import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; import org.l2jmobius.gameserver.model.base.ClassId; import org.l2jmobius.gameserver.model.olympiad.Olympiad; import org.l2jmobius.gameserver.model.quest.QuestState; +import org.l2jmobius.gameserver.model.skills.Skill; import org.l2jmobius.gameserver.network.serverpackets.ExSubjobInfo; import org.l2jmobius.gameserver.network.serverpackets.ExUserInfoInvenWeight; import org.l2jmobius.gameserver.network.serverpackets.NpcHtmlMessage; @@ -160,7 +161,11 @@ public final class Hardin extends AbstractNpcAI { for (int skillId : removedSkillIds) { - player.removeSkill(skillId); + final Skill skill = player.getKnownSkill(skillId); + if (skill != null) + { + player.removeSkill(skill); + } } } player.store(false); diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java index b3a974402c..2967d2ca0c 100644 --- a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/ai/areas/TalkingIsland/MonkOfChaos/MonkOfChaos.java @@ -25,6 +25,7 @@ import org.l2jmobius.gameserver.model.SkillLearn; import org.l2jmobius.gameserver.model.actor.Npc; import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance; import org.l2jmobius.gameserver.model.base.AcquireSkillType; +import org.l2jmobius.gameserver.model.skills.Skill; import org.l2jmobius.gameserver.model.variables.PlayerVariables; import org.l2jmobius.gameserver.network.SystemMessageId; import org.l2jmobius.gameserver.network.serverpackets.ExAcquirableSkillListByClass; @@ -145,9 +146,13 @@ public final class MonkOfChaos extends AbstractNpcAI } takeItems(player, 57, CANCEL_FEE); - for (SkillLearn skill : SkillTreesData.getInstance().getAllRevelationSkills(player, player.isDualClassActive() ? SubclassType.DUALCLASS : SubclassType.BASECLASS)) + for (SkillLearn skillLearn : SkillTreesData.getInstance().getAllRevelationSkills(player, player.isDualClassActive() ? SubclassType.DUALCLASS : SubclassType.BASECLASS)) { - player.removeSkill(skill.getSkillId()); + final Skill skill = player.getKnownSkill(skillLearn.getSkillId()); + if (skill != null) + { + player.removeSkill(skill); + } } for (String varName : varNames) {