Adjustments for cleanSkillUponChangeClass calls.
This commit is contained in:
@@ -419,18 +419,21 @@ public class ClassMaster extends AbstractNpcAI implements IXmlReader
|
||||
{
|
||||
player.setBaseClass(player.getActiveClass());
|
||||
}
|
||||
SkillTreeData.getInstance().cleanSkillUponChangeClass(player, false);
|
||||
|
||||
if (player.isInCategory(CategoryType.SIXTH_CLASS_GROUP))
|
||||
{
|
||||
SkillTreeData.getInstance().cleanSkillUponChangeClass(player, false);
|
||||
for (SkillLearn skill : SkillTreeData.getInstance().getRaceSkillTree(player.getRace()))
|
||||
{
|
||||
player.addSkill(SkillData.getInstance().getSkill(skill.getSkillId(), skill.getSkillLevel()), true);
|
||||
}
|
||||
}
|
||||
|
||||
if (Config.AUTO_LEARN_SKILLS)
|
||||
{
|
||||
player.giveAvailableSkills(Config.AUTO_LEARN_FS_SKILLS, Config.AUTO_LEARN_FP_SKILLS, true);
|
||||
}
|
||||
|
||||
player.store(false); // Save player cause if server crashes before this char is saved, he will lose class and the money payed for class change.
|
||||
player.broadcastUserInfo();
|
||||
player.sendSkillList();
|
||||
@@ -858,18 +861,21 @@ public class ClassMaster extends AbstractNpcAI implements IXmlReader
|
||||
{
|
||||
player.setBaseClass(player.getActiveClass());
|
||||
}
|
||||
SkillTreeData.getInstance().cleanSkillUponChangeClass(player, false);
|
||||
|
||||
if (player.isInCategory(CategoryType.SIXTH_CLASS_GROUP))
|
||||
{
|
||||
SkillTreeData.getInstance().cleanSkillUponChangeClass(player, false);
|
||||
for (SkillLearn skill : SkillTreeData.getInstance().getRaceSkillTree(player.getRace()))
|
||||
{
|
||||
player.addSkill(SkillData.getInstance().getSkill(skill.getSkillId(), skill.getSkillLevel()), true);
|
||||
}
|
||||
}
|
||||
|
||||
if (Config.AUTO_LEARN_SKILLS)
|
||||
{
|
||||
player.giveAvailableSkills(Config.AUTO_LEARN_FS_SKILLS, Config.AUTO_LEARN_FP_SKILLS, true);
|
||||
}
|
||||
|
||||
player.store(false); // Save player cause if server crashes before this char is saved, he will lose class and the money payed for class change.
|
||||
player.broadcastUserInfo();
|
||||
player.sendSkillList();
|
||||
|
||||
@@ -421,14 +421,15 @@ public class AdminEditChar implements IAdminCommandHandler
|
||||
}
|
||||
|
||||
final String newclass = ClassListData.getInstance().getClass(player.getClassId()).getClassName();
|
||||
SkillTreeData.getInstance().cleanSkillUponChangeClass(player, true);
|
||||
if (player.isInCategory(CategoryType.SIXTH_CLASS_GROUP))
|
||||
{
|
||||
SkillTreeData.getInstance().cleanSkillUponChangeClass(player, true);
|
||||
for (SkillLearn skill : SkillTreeData.getInstance().getRaceSkillTree(player.getRace()))
|
||||
{
|
||||
player.addSkill(SkillData.getInstance().getSkill(skill.getSkillId(), skill.getSkillLevel()), true);
|
||||
}
|
||||
}
|
||||
|
||||
player.store(false);
|
||||
player.broadcastUserInfo();
|
||||
player.sendSkillList();
|
||||
|
||||
Reference in New Issue
Block a user