Reworked Item giveSkillsToOwner method.

Thanks to veriongt.
This commit is contained in:
MobiusDevelopment
2024-04-15 00:33:41 +03:00
parent de4e7e7ae7
commit 19522ce00e
31 changed files with 633 additions and 316 deletions

View File

@ -2085,23 +2085,34 @@ public class Item extends WorldObject
public void giveSkillsToOwner()
{
if (!hasPassiveSkills())
if (!isEquipped() && !hasPassiveSkills())
{
return;
}
final Player player = getActingPlayer();
if (player != null)
if (player == null)
{
_itemTemplate.forEachSkill(ItemSkillType.NORMAL, holder ->
{
final Skill skill = holder.getSkill();
if (skill.isPassive())
{
player.addSkill(skill, false);
}
});
return;
}
_itemTemplate.forEachSkill(ItemSkillType.NORMAL, holder ->
{
final Skill skill = holder.getSkill();
if (skill.isPassive())
{
player.addSkill(skill, false);
}
});
_itemTemplate.forEachSkill(ItemSkillType.ON_ENCHANT, holder ->
{
final Skill skill = holder.getSkill();
if (skill.isPassive() && (getEnchantLevel() >= holder.getValue()))
{
player.addSkill(skill, false);
}
});
}
public void removeSkillsFromOwner()