Fixed skills ignoring social class.
This commit is contained in:
@@ -41,6 +41,7 @@ import com.l2jmobius.gameserver.data.sql.impl.CharNameTable;
|
||||
import com.l2jmobius.gameserver.data.sql.impl.ClanTable;
|
||||
import com.l2jmobius.gameserver.data.sql.impl.CrestTable;
|
||||
import com.l2jmobius.gameserver.data.xml.impl.SkillData;
|
||||
import com.l2jmobius.gameserver.data.xml.impl.SkillTreesData;
|
||||
import com.l2jmobius.gameserver.instancemanager.CastleManager;
|
||||
import com.l2jmobius.gameserver.instancemanager.FortManager;
|
||||
import com.l2jmobius.gameserver.instancemanager.SiegeManager;
|
||||
@@ -1414,19 +1415,24 @@ public class L2Clan implements IIdentifiable, INamable
|
||||
return;
|
||||
}
|
||||
|
||||
final int playerSocialClass = player.getPledgeClass() + 1;
|
||||
for (Skill skill : _skills.values())
|
||||
{
|
||||
if (skill.getMinPledgeClass() <= player.getPledgeClass())
|
||||
final L2SkillLearn skillLearn = SkillTreesData.getInstance().getPledgeSkill(skill.getId(), skill.getLevel());
|
||||
if ((skillLearn == null) || (skillLearn.getSocialClass() == null) || (playerSocialClass >= skillLearn.getSocialClass().ordinal()))
|
||||
{
|
||||
player.addSkill(skill, false); // Skill is not saved to player DB
|
||||
}
|
||||
}
|
||||
|
||||
if (player.getPledgeType() == 0)
|
||||
{
|
||||
for (Skill skill : _subPledgeSkills.values())
|
||||
{
|
||||
player.addSkill(skill, false); // Skill is not saved to player DB
|
||||
final L2SkillLearn skillLearn = SkillTreesData.getInstance().getSubPledgeSkill(skill.getId(), skill.getLevel());
|
||||
if ((skillLearn == null) || (skillLearn.getSocialClass() == null) || (playerSocialClass >= skillLearn.getSocialClass().ordinal()))
|
||||
{
|
||||
player.addSkill(skill, false); // Skill is not saved to player DB
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
|
Reference in New Issue
Block a user