From cdb887efaebf236a85fe139ae79d3cc2935a9773 Mon Sep 17 00:00:00 2001 From: MobiusDevelopment <8391001+MobiusDevelopment@users.noreply.github.com> Date: Fri, 1 Nov 2019 12:42:15 +0000 Subject: [PATCH] Fixed skill channeling trying to get non-existent skill level. Contributed by Sahar. --- .../l2jmobius/gameserver/model/skills/SkillChannelizer.java | 5 +++++ .../l2jmobius/gameserver/model/skills/SkillChannelizer.java | 5 +++++ .../l2jmobius/gameserver/model/skills/SkillChannelizer.java | 5 +++++ .../l2jmobius/gameserver/model/skills/SkillChannelizer.java | 5 +++++ .../l2jmobius/gameserver/model/skills/SkillChannelizer.java | 5 +++++ .../l2jmobius/gameserver/model/skills/SkillChannelizer.java | 5 +++++ .../l2jmobius/gameserver/model/skills/SkillChannelizer.java | 5 +++++ .../l2jmobius/gameserver/model/skills/SkillChannelizer.java | 5 +++++ .../l2jmobius/gameserver/model/skills/SkillChannelizer.java | 6 +++++- .../l2jmobius/gameserver/model/skills/SkillChannelizer.java | 6 +++++- .../l2jmobius/gameserver/model/skills/SkillChannelizer.java | 5 +++++ .../l2jmobius/gameserver/model/skills/SkillChannelizer.java | 5 +++++ .../l2jmobius/gameserver/model/skills/SkillChannelizer.java | 5 +++++ .../l2jmobius/gameserver/model/skills/SkillChannelizer.java | 5 +++++ .../l2jmobius/gameserver/model/skills/SkillChannelizer.java | 5 +++++ .../l2jmobius/gameserver/model/skills/SkillChannelizer.java | 5 +++++ .../l2jmobius/gameserver/model/skills/SkillChannelizer.java | 5 +++++ 17 files changed, 85 insertions(+), 2 deletions(-) diff --git a/L2J_Mobius_1.0_Ertheia/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java b/L2J_Mobius_1.0_Ertheia/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java index dcc3400c3a..de8f42867b 100644 --- a/L2J_Mobius_1.0_Ertheia/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java +++ b/L2J_Mobius_1.0_Ertheia/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java @@ -184,6 +184,11 @@ public class SkillChannelizer implements Runnable { final int maxSkillLevel = SkillData.getInstance().getMaxLevel(skill.getChannelingSkillId()); final int skillLevel = Math.min(creature.getSkillChannelized().getChannerlizersSize(skill.getChannelingSkillId()), maxSkillLevel); + if (skillLevel == 0) + { + continue; + } + final BuffInfo info = creature.getEffectList().getBuffInfoBySkillId(skill.getChannelingSkillId()); if ((info == null) || (info.getSkill().getLevel() < skillLevel)) diff --git a/L2J_Mobius_2.5_Underground/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java b/L2J_Mobius_2.5_Underground/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java index dcc3400c3a..de8f42867b 100644 --- a/L2J_Mobius_2.5_Underground/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java +++ b/L2J_Mobius_2.5_Underground/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java @@ -184,6 +184,11 @@ public class SkillChannelizer implements Runnable { final int maxSkillLevel = SkillData.getInstance().getMaxLevel(skill.getChannelingSkillId()); final int skillLevel = Math.min(creature.getSkillChannelized().getChannerlizersSize(skill.getChannelingSkillId()), maxSkillLevel); + if (skillLevel == 0) + { + continue; + } + final BuffInfo info = creature.getEffectList().getBuffInfoBySkillId(skill.getChannelingSkillId()); if ((info == null) || (info.getSkill().getLevel() < skillLevel)) diff --git a/L2J_Mobius_3.0_Helios/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java b/L2J_Mobius_3.0_Helios/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java index dcc3400c3a..de8f42867b 100644 --- a/L2J_Mobius_3.0_Helios/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java +++ b/L2J_Mobius_3.0_Helios/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java @@ -184,6 +184,11 @@ public class SkillChannelizer implements Runnable { final int maxSkillLevel = SkillData.getInstance().getMaxLevel(skill.getChannelingSkillId()); final int skillLevel = Math.min(creature.getSkillChannelized().getChannerlizersSize(skill.getChannelingSkillId()), maxSkillLevel); + if (skillLevel == 0) + { + continue; + } + final BuffInfo info = creature.getEffectList().getBuffInfoBySkillId(skill.getChannelingSkillId()); if ((info == null) || (info.getSkill().getLevel() < skillLevel)) diff --git a/L2J_Mobius_4.0_GrandCrusade/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java b/L2J_Mobius_4.0_GrandCrusade/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java index dcc3400c3a..de8f42867b 100644 --- a/L2J_Mobius_4.0_GrandCrusade/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java +++ b/L2J_Mobius_4.0_GrandCrusade/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java @@ -184,6 +184,11 @@ public class SkillChannelizer implements Runnable { final int maxSkillLevel = SkillData.getInstance().getMaxLevel(skill.getChannelingSkillId()); final int skillLevel = Math.min(creature.getSkillChannelized().getChannerlizersSize(skill.getChannelingSkillId()), maxSkillLevel); + if (skillLevel == 0) + { + continue; + } + final BuffInfo info = creature.getEffectList().getBuffInfoBySkillId(skill.getChannelingSkillId()); if ((info == null) || (info.getSkill().getLevel() < skillLevel)) diff --git a/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java b/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java index dcc3400c3a..de8f42867b 100644 --- a/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java +++ b/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java @@ -184,6 +184,11 @@ public class SkillChannelizer implements Runnable { final int maxSkillLevel = SkillData.getInstance().getMaxLevel(skill.getChannelingSkillId()); final int skillLevel = Math.min(creature.getSkillChannelized().getChannerlizersSize(skill.getChannelingSkillId()), maxSkillLevel); + if (skillLevel == 0) + { + continue; + } + final BuffInfo info = creature.getEffectList().getBuffInfoBySkillId(skill.getChannelingSkillId()); if ((info == null) || (info.getSkill().getLevel() < skillLevel)) diff --git a/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java b/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java index dcc3400c3a..de8f42867b 100644 --- a/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java +++ b/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java @@ -184,6 +184,11 @@ public class SkillChannelizer implements Runnable { final int maxSkillLevel = SkillData.getInstance().getMaxLevel(skill.getChannelingSkillId()); final int skillLevel = Math.min(creature.getSkillChannelized().getChannerlizersSize(skill.getChannelingSkillId()), maxSkillLevel); + if (skillLevel == 0) + { + continue; + } + final BuffInfo info = creature.getEffectList().getBuffInfoBySkillId(skill.getChannelingSkillId()); if ((info == null) || (info.getSkill().getLevel() < skillLevel)) diff --git a/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java b/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java index dcc3400c3a..de8f42867b 100644 --- a/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java +++ b/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java @@ -184,6 +184,11 @@ public class SkillChannelizer implements Runnable { final int maxSkillLevel = SkillData.getInstance().getMaxLevel(skill.getChannelingSkillId()); final int skillLevel = Math.min(creature.getSkillChannelized().getChannerlizersSize(skill.getChannelingSkillId()), maxSkillLevel); + if (skillLevel == 0) + { + continue; + } + final BuffInfo info = creature.getEffectList().getBuffInfoBySkillId(skill.getChannelingSkillId()); if ((info == null) || (info.getSkill().getLevel() < skillLevel)) diff --git a/L2J_Mobius_7.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java b/L2J_Mobius_7.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java index dcc3400c3a..de8f42867b 100644 --- a/L2J_Mobius_7.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java +++ b/L2J_Mobius_7.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java @@ -184,6 +184,11 @@ public class SkillChannelizer implements Runnable { final int maxSkillLevel = SkillData.getInstance().getMaxLevel(skill.getChannelingSkillId()); final int skillLevel = Math.min(creature.getSkillChannelized().getChannerlizersSize(skill.getChannelingSkillId()), maxSkillLevel); + if (skillLevel == 0) + { + continue; + } + final BuffInfo info = creature.getEffectList().getBuffInfoBySkillId(skill.getChannelingSkillId()); if ((info == null) || (info.getSkill().getLevel() < skillLevel)) diff --git a/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java b/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java index b7a167ef78..be8d8a10b0 100644 --- a/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java +++ b/L2J_Mobius_CT_2.4_Epilogue/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java @@ -193,8 +193,12 @@ public class SkillChannelizer implements Runnable { final int maxSkillLevel = SkillData.getInstance().getMaxLevel(skill.getChannelingSkillId()); final int skillLevel = Math.min(creature.getSkillChannelized().getChannerlizersSize(skill.getChannelingSkillId()), maxSkillLevel); - final BuffInfo info = creature.getEffectList().getBuffInfoBySkillId(skill.getChannelingSkillId()); + if (skillLevel == 0) + { + continue; + } + final BuffInfo info = creature.getEffectList().getBuffInfoBySkillId(skill.getChannelingSkillId()); if ((info == null) || (info.getSkill().getLevel() < skillLevel)) { final Skill channelingSkill = SkillData.getInstance().getSkill(skill.getChannelingSkillId(), skillLevel); diff --git a/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java b/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java index b7a167ef78..be8d8a10b0 100644 --- a/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java +++ b/L2J_Mobius_CT_2.6_HighFive/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java @@ -193,8 +193,12 @@ public class SkillChannelizer implements Runnable { final int maxSkillLevel = SkillData.getInstance().getMaxLevel(skill.getChannelingSkillId()); final int skillLevel = Math.min(creature.getSkillChannelized().getChannerlizersSize(skill.getChannelingSkillId()), maxSkillLevel); - final BuffInfo info = creature.getEffectList().getBuffInfoBySkillId(skill.getChannelingSkillId()); + if (skillLevel == 0) + { + continue; + } + final BuffInfo info = creature.getEffectList().getBuffInfoBySkillId(skill.getChannelingSkillId()); if ((info == null) || (info.getSkill().getLevel() < skillLevel)) { final Skill channelingSkill = SkillData.getInstance().getSkill(skill.getChannelingSkillId(), skillLevel); diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java b/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java index dcc3400c3a..de8f42867b 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java @@ -184,6 +184,11 @@ public class SkillChannelizer implements Runnable { final int maxSkillLevel = SkillData.getInstance().getMaxLevel(skill.getChannelingSkillId()); final int skillLevel = Math.min(creature.getSkillChannelized().getChannerlizersSize(skill.getChannelingSkillId()), maxSkillLevel); + if (skillLevel == 0) + { + continue; + } + final BuffInfo info = creature.getEffectList().getBuffInfoBySkillId(skill.getChannelingSkillId()); if ((info == null) || (info.getSkill().getLevel() < skillLevel)) diff --git a/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java b/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java index dcc3400c3a..de8f42867b 100644 --- a/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java +++ b/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java @@ -184,6 +184,11 @@ public class SkillChannelizer implements Runnable { final int maxSkillLevel = SkillData.getInstance().getMaxLevel(skill.getChannelingSkillId()); final int skillLevel = Math.min(creature.getSkillChannelized().getChannerlizersSize(skill.getChannelingSkillId()), maxSkillLevel); + if (skillLevel == 0) + { + continue; + } + final BuffInfo info = creature.getEffectList().getBuffInfoBySkillId(skill.getChannelingSkillId()); if ((info == null) || (info.getSkill().getLevel() < skillLevel)) diff --git a/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java b/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java index dcc3400c3a..de8f42867b 100644 --- a/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java +++ b/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java @@ -184,6 +184,11 @@ public class SkillChannelizer implements Runnable { final int maxSkillLevel = SkillData.getInstance().getMaxLevel(skill.getChannelingSkillId()); final int skillLevel = Math.min(creature.getSkillChannelized().getChannerlizersSize(skill.getChannelingSkillId()), maxSkillLevel); + if (skillLevel == 0) + { + continue; + } + final BuffInfo info = creature.getEffectList().getBuffInfoBySkillId(skill.getChannelingSkillId()); if ((info == null) || (info.getSkill().getLevel() < skillLevel)) diff --git a/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java b/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java index dcc3400c3a..de8f42867b 100644 --- a/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java +++ b/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java @@ -184,6 +184,11 @@ public class SkillChannelizer implements Runnable { final int maxSkillLevel = SkillData.getInstance().getMaxLevel(skill.getChannelingSkillId()); final int skillLevel = Math.min(creature.getSkillChannelized().getChannerlizersSize(skill.getChannelingSkillId()), maxSkillLevel); + if (skillLevel == 0) + { + continue; + } + final BuffInfo info = creature.getEffectList().getBuffInfoBySkillId(skill.getChannelingSkillId()); if ((info == null) || (info.getSkill().getLevel() < skillLevel)) diff --git a/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java b/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java index dcc3400c3a..de8f42867b 100644 --- a/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java +++ b/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java @@ -184,6 +184,11 @@ public class SkillChannelizer implements Runnable { final int maxSkillLevel = SkillData.getInstance().getMaxLevel(skill.getChannelingSkillId()); final int skillLevel = Math.min(creature.getSkillChannelized().getChannerlizersSize(skill.getChannelingSkillId()), maxSkillLevel); + if (skillLevel == 0) + { + continue; + } + final BuffInfo info = creature.getEffectList().getBuffInfoBySkillId(skill.getChannelingSkillId()); if ((info == null) || (info.getSkill().getLevel() < skillLevel)) diff --git a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java index dcc3400c3a..de8f42867b 100644 --- a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java +++ b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java @@ -184,6 +184,11 @@ public class SkillChannelizer implements Runnable { final int maxSkillLevel = SkillData.getInstance().getMaxLevel(skill.getChannelingSkillId()); final int skillLevel = Math.min(creature.getSkillChannelized().getChannerlizersSize(skill.getChannelingSkillId()), maxSkillLevel); + if (skillLevel == 0) + { + continue; + } + final BuffInfo info = creature.getEffectList().getBuffInfoBySkillId(skill.getChannelingSkillId()); if ((info == null) || (info.getSkill().getLevel() < skillLevel)) diff --git a/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java b/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java index dcc3400c3a..de8f42867b 100644 --- a/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java +++ b/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/skills/SkillChannelizer.java @@ -184,6 +184,11 @@ public class SkillChannelizer implements Runnable { final int maxSkillLevel = SkillData.getInstance().getMaxLevel(skill.getChannelingSkillId()); final int skillLevel = Math.min(creature.getSkillChannelized().getChannerlizersSize(skill.getChannelingSkillId()), maxSkillLevel); + if (skillLevel == 0) + { + continue; + } + final BuffInfo info = creature.getEffectList().getBuffInfoBySkillId(skill.getChannelingSkillId()); if ((info == null) || (info.getSkill().getLevel() < skillLevel))