Fixed an exploit allowing players to enchant any skill on any subclass.

Contributed by Sahar.
This commit is contained in:
MobiusDevelopment
2019-12-28 13:27:46 +00:00
parent a81d475623
commit 943af0c13d
4 changed files with 4 additions and 4 deletions

View File

@@ -82,7 +82,7 @@ public class EnchantSkillLearn
public int getMinSkillLevel(int level) public int getMinSkillLevel(int level)
{ {
return (level % 1000) == 1 ? _baseLvl : level - 1; return (level % 100) == 1 ? _baseLvl : level - 1;
} }
public boolean isMaxEnchant(int level) public boolean isMaxEnchant(int level)

View File

@@ -108,7 +108,7 @@ public class RequestExEnchantSkill implements IClientIncomingPacket
} }
final EnchantSkillHolder esd = s.getEnchantSkillHolder(_skillLvl); final EnchantSkillHolder esd = s.getEnchantSkillHolder(_skillLvl);
final int beforeEnchantSkillLevel = player.getSkillLevel(_skillId); final int beforeEnchantSkillLevel = player.getSkillLevel(_skillId);
if (beforeEnchantSkillLevel == -1) if (beforeEnchantSkillLevel != s.getMinSkillLevel(_skillLvl))
{ {
return; return;
} }

View File

@@ -82,7 +82,7 @@ public class EnchantSkillLearn
public int getMinSkillLevel(int level) public int getMinSkillLevel(int level)
{ {
return (level % 1000) == 1 ? _baseLvl : level - 1; return (level % 100) == 1 ? _baseLvl : level - 1;
} }
public boolean isMaxEnchant(int level) public boolean isMaxEnchant(int level)

View File

@@ -108,7 +108,7 @@ public class RequestExEnchantSkill implements IClientIncomingPacket
} }
final EnchantSkillHolder esd = s.getEnchantSkillHolder(_skillLvl); final EnchantSkillHolder esd = s.getEnchantSkillHolder(_skillLvl);
final int beforeEnchantSkillLevel = player.getSkillLevel(_skillId); final int beforeEnchantSkillLevel = player.getSkillLevel(_skillId);
if (beforeEnchantSkillLevel == -1) if (beforeEnchantSkillLevel != s.getMinSkillLevel(_skillLvl))
{ {
return; return;
} }