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

@@ -2008,23 +2008,34 @@ public class Item extends WorldObject
public void giveSkillsToOwner() public void giveSkillsToOwner()
{ {
if (!hasPassiveSkills()) if (!isEquipped() && !hasPassiveSkills())
{ {
return; return;
} }
final Player player = getActingPlayer(); final Player player = getActingPlayer();
if (player != null) if (player == null)
{ {
_itemTemplate.forEachSkill(ItemSkillType.NORMAL, holder -> return;
{
final Skill skill = holder.getSkill();
if (skill.isPassive())
{
player.addSkill(skill, false);
}
});
} }
_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() public void removeSkillsFromOwner()

View File

@@ -2019,23 +2019,34 @@ public class Item extends WorldObject
public void giveSkillsToOwner() public void giveSkillsToOwner()
{ {
if (!hasPassiveSkills()) if (!isEquipped() && !hasPassiveSkills())
{ {
return; return;
} }
final Player player = getActingPlayer(); final Player player = getActingPlayer();
if (player != null) if (player == null)
{ {
_itemTemplate.forEachSkill(ItemSkillType.NORMAL, holder -> return;
{
final Skill skill = holder.getSkill();
if (skill.isPassive())
{
player.addSkill(skill, false);
}
});
} }
_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() public void removeSkillsFromOwner()

View File

@@ -2019,23 +2019,34 @@ public class Item extends WorldObject
public void giveSkillsToOwner() public void giveSkillsToOwner()
{ {
if (!hasPassiveSkills()) if (!isEquipped() && !hasPassiveSkills())
{ {
return; return;
} }
final Player player = getActingPlayer(); final Player player = getActingPlayer();
if (player != null) if (player == null)
{ {
_itemTemplate.forEachSkill(ItemSkillType.NORMAL, holder -> return;
{
final Skill skill = holder.getSkill();
if (skill.isPassive())
{
player.addSkill(skill, false);
}
});
} }
_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() public void removeSkillsFromOwner()

View File

@@ -2019,23 +2019,34 @@ public class Item extends WorldObject
public void giveSkillsToOwner() public void giveSkillsToOwner()
{ {
if (!hasPassiveSkills()) if (!isEquipped() && !hasPassiveSkills())
{ {
return; return;
} }
final Player player = getActingPlayer(); final Player player = getActingPlayer();
if (player != null) if (player == null)
{ {
_itemTemplate.forEachSkill(ItemSkillType.NORMAL, holder -> return;
{
final Skill skill = holder.getSkill();
if (skill.isPassive())
{
player.addSkill(skill, false);
}
});
} }
_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() public void removeSkillsFromOwner()

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@@ -2094,23 +2094,34 @@ public class Item extends WorldObject
public void giveSkillsToOwner() public void giveSkillsToOwner()
{ {
if (!hasPassiveSkills()) if (!isEquipped() && !hasPassiveSkills())
{ {
return; return;
} }
final Player player = getActingPlayer(); final Player player = getActingPlayer();
if (player != null) if (player == null)
{ {
_itemTemplate.forEachSkill(ItemSkillType.NORMAL, holder -> return;
{
final Skill skill = holder.getSkill();
if (skill.isPassive())
{
player.addSkill(skill, false);
}
});
} }
_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() public void removeSkillsFromOwner()

View File

@@ -2097,23 +2097,34 @@ public class Item extends WorldObject
public void giveSkillsToOwner() public void giveSkillsToOwner()
{ {
if (!hasPassiveSkills()) if (!isEquipped() && !hasPassiveSkills())
{ {
return; return;
} }
final Player player = getActingPlayer(); final Player player = getActingPlayer();
if (player != null) if (player == null)
{ {
_itemTemplate.forEachSkill(ItemSkillType.NORMAL, holder -> return;
{
final Skill skill = holder.getSkill();
if (skill.isPassive())
{
player.addSkill(skill, false);
}
});
} }
_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() public void removeSkillsFromOwner()

View File

@@ -2097,23 +2097,34 @@ public class Item extends WorldObject
public void giveSkillsToOwner() public void giveSkillsToOwner()
{ {
if (!hasPassiveSkills()) if (!isEquipped() && !hasPassiveSkills())
{ {
return; return;
} }
final Player player = getActingPlayer(); final Player player = getActingPlayer();
if (player != null) if (player == null)
{ {
_itemTemplate.forEachSkill(ItemSkillType.NORMAL, holder -> return;
{
final Skill skill = holder.getSkill();
if (skill.isPassive())
{
player.addSkill(skill, false);
}
});
} }
_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() public void removeSkillsFromOwner()

View File

@@ -68,6 +68,7 @@ import org.l2jmobius.gameserver.model.item.type.ItemType;
import org.l2jmobius.gameserver.model.options.EnchantOptions; import org.l2jmobius.gameserver.model.options.EnchantOptions;
import org.l2jmobius.gameserver.model.options.Options; import org.l2jmobius.gameserver.model.options.Options;
import org.l2jmobius.gameserver.model.quest.QuestState; import org.l2jmobius.gameserver.model.quest.QuestState;
import org.l2jmobius.gameserver.model.skill.Skill;
import org.l2jmobius.gameserver.model.stats.functions.AbstractFunction; import org.l2jmobius.gameserver.model.stats.functions.AbstractFunction;
import org.l2jmobius.gameserver.network.SystemMessageId; import org.l2jmobius.gameserver.network.SystemMessageId;
import org.l2jmobius.gameserver.network.serverpackets.DropItem; import org.l2jmobius.gameserver.network.serverpackets.DropItem;
@@ -1741,21 +1742,23 @@ public class Item extends WorldObject
public void giveSkillsToOwner() public void giveSkillsToOwner()
{ {
if (!hasPassiveSkills()) if (!isEquipped() && !hasPassiveSkills())
{ {
return; return;
} }
final Player player = getActingPlayer(); final Player player = getActingPlayer();
if (player == null)
if (player != null)
{ {
for (SkillHolder sh : _itemTemplate.getSkills()) return;
}
for (SkillHolder holder : _itemTemplate.getSkills())
{
final Skill skill = holder.getSkill();
if (skill.isPassive())
{ {
if (sh.getSkill().isPassive()) player.addSkill(skill, false);
{
player.addSkill(sh.getSkill(), false);
}
} }
} }
} }
@@ -1768,14 +1771,14 @@ public class Item extends WorldObject
} }
final Player player = getActingPlayer(); final Player player = getActingPlayer();
if (player != null) if (player != null)
{ {
for (SkillHolder sh : _itemTemplate.getSkills()) for (SkillHolder holder : _itemTemplate.getSkills())
{ {
if (sh.getSkill().isPassive()) final Skill skill = holder.getSkill();
if (skill.isPassive())
{ {
player.removeSkill(sh.getSkill(), false, true); player.removeSkill(skill, false, true);
} }
} }
} }

View File

@@ -69,6 +69,7 @@ import org.l2jmobius.gameserver.model.item.type.ItemType;
import org.l2jmobius.gameserver.model.options.EnchantOptions; import org.l2jmobius.gameserver.model.options.EnchantOptions;
import org.l2jmobius.gameserver.model.options.Options; import org.l2jmobius.gameserver.model.options.Options;
import org.l2jmobius.gameserver.model.quest.QuestState; import org.l2jmobius.gameserver.model.quest.QuestState;
import org.l2jmobius.gameserver.model.skill.Skill;
import org.l2jmobius.gameserver.model.stats.functions.AbstractFunction; import org.l2jmobius.gameserver.model.stats.functions.AbstractFunction;
import org.l2jmobius.gameserver.network.SystemMessageId; import org.l2jmobius.gameserver.network.SystemMessageId;
import org.l2jmobius.gameserver.network.serverpackets.DropItem; import org.l2jmobius.gameserver.network.serverpackets.DropItem;
@@ -1996,21 +1997,23 @@ public class Item extends WorldObject
public void giveSkillsToOwner() public void giveSkillsToOwner()
{ {
if (!hasPassiveSkills()) if (!isEquipped() && !hasPassiveSkills())
{ {
return; return;
} }
final Player player = getActingPlayer(); final Player player = getActingPlayer();
if (player == null)
if (player != null)
{ {
for (SkillHolder sh : _itemTemplate.getSkills()) return;
}
for (SkillHolder holder : _itemTemplate.getSkills())
{
final Skill skill = holder.getSkill();
if (skill.isPassive())
{ {
if (sh.getSkill().isPassive()) player.addSkill(skill, false);
{
player.addSkill(sh.getSkill(), false);
}
} }
} }
} }
@@ -2023,14 +2026,14 @@ public class Item extends WorldObject
} }
final Player player = getActingPlayer(); final Player player = getActingPlayer();
if (player != null) if (player != null)
{ {
for (SkillHolder sh : _itemTemplate.getSkills()) for (SkillHolder holder : _itemTemplate.getSkills())
{ {
if (sh.getSkill().isPassive()) final Skill skill = holder.getSkill();
if (skill.isPassive())
{ {
player.removeSkill(sh.getSkill(), false, true); player.removeSkill(skill, false, true);
} }
} }
} }

View File

@@ -69,6 +69,7 @@ import org.l2jmobius.gameserver.model.item.type.ItemType;
import org.l2jmobius.gameserver.model.options.EnchantOptions; import org.l2jmobius.gameserver.model.options.EnchantOptions;
import org.l2jmobius.gameserver.model.options.Options; import org.l2jmobius.gameserver.model.options.Options;
import org.l2jmobius.gameserver.model.quest.QuestState; import org.l2jmobius.gameserver.model.quest.QuestState;
import org.l2jmobius.gameserver.model.skill.Skill;
import org.l2jmobius.gameserver.model.stats.functions.AbstractFunction; import org.l2jmobius.gameserver.model.stats.functions.AbstractFunction;
import org.l2jmobius.gameserver.network.SystemMessageId; import org.l2jmobius.gameserver.network.SystemMessageId;
import org.l2jmobius.gameserver.network.serverpackets.DropItem; import org.l2jmobius.gameserver.network.serverpackets.DropItem;
@@ -1996,21 +1997,23 @@ public class Item extends WorldObject
public void giveSkillsToOwner() public void giveSkillsToOwner()
{ {
if (!hasPassiveSkills()) if (!isEquipped() && !hasPassiveSkills())
{ {
return; return;
} }
final Player player = getActingPlayer(); final Player player = getActingPlayer();
if (player == null)
if (player != null)
{ {
for (SkillHolder sh : _itemTemplate.getSkills()) return;
}
for (SkillHolder holder : _itemTemplate.getSkills())
{
final Skill skill = holder.getSkill();
if (skill.isPassive())
{ {
if (sh.getSkill().isPassive()) player.addSkill(skill, false);
{
player.addSkill(sh.getSkill(), false);
}
} }
} }
} }
@@ -2023,14 +2026,14 @@ public class Item extends WorldObject
} }
final Player player = getActingPlayer(); final Player player = getActingPlayer();
if (player != null) if (player != null)
{ {
for (SkillHolder sh : _itemTemplate.getSkills()) for (SkillHolder holder : _itemTemplate.getSkills())
{ {
if (sh.getSkill().isPassive()) final Skill skill = holder.getSkill();
if (skill.isPassive())
{ {
player.removeSkill(sh.getSkill(), false, true); player.removeSkill(skill, false, true);
} }
} }
} }

View File

@@ -2010,23 +2010,34 @@ public class Item extends WorldObject
public void giveSkillsToOwner() public void giveSkillsToOwner()
{ {
if (!hasPassiveSkills()) if (!isEquipped() && !hasPassiveSkills())
{ {
return; return;
} }
final Player player = getActingPlayer(); final Player player = getActingPlayer();
if (player != null) if (player == null)
{ {
_itemTemplate.forEachSkill(ItemSkillType.NORMAL, holder -> return;
{
final Skill skill = holder.getSkill();
if (skill.isPassive())
{
player.addSkill(skill, false);
}
});
} }
_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() public void removeSkillsFromOwner()

View File

@@ -2010,23 +2010,34 @@ public class Item extends WorldObject
public void giveSkillsToOwner() public void giveSkillsToOwner()
{ {
if (!hasPassiveSkills()) if (!isEquipped() && !hasPassiveSkills())
{ {
return; return;
} }
final Player player = getActingPlayer(); final Player player = getActingPlayer();
if (player != null) if (player == null)
{ {
_itemTemplate.forEachSkill(ItemSkillType.NORMAL, holder -> return;
{
final Skill skill = holder.getSkill();
if (skill.isPassive())
{
player.addSkill(skill, false);
}
});
} }
_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() public void removeSkillsFromOwner()

View File

@@ -2019,23 +2019,34 @@ public class Item extends WorldObject
public void giveSkillsToOwner() public void giveSkillsToOwner()
{ {
if (!hasPassiveSkills()) if (!isEquipped() && !hasPassiveSkills())
{ {
return; return;
} }
final Player player = getActingPlayer(); final Player player = getActingPlayer();
if (player != null) if (player == null)
{ {
_itemTemplate.forEachSkill(ItemSkillType.NORMAL, holder -> return;
{
final Skill skill = holder.getSkill();
if (skill.isPassive())
{
player.addSkill(skill, false);
}
});
} }
_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() public void removeSkillsFromOwner()

View File

@@ -2019,23 +2019,34 @@ public class Item extends WorldObject
public void giveSkillsToOwner() public void giveSkillsToOwner()
{ {
if (!hasPassiveSkills()) if (!isEquipped() && !hasPassiveSkills())
{ {
return; return;
} }
final Player player = getActingPlayer(); final Player player = getActingPlayer();
if (player != null) if (player == null)
{ {
_itemTemplate.forEachSkill(ItemSkillType.NORMAL, holder -> return;
{
final Skill skill = holder.getSkill();
if (skill.isPassive())
{
player.addSkill(skill, false);
}
});
} }
_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() public void removeSkillsFromOwner()

View File

@@ -2070,23 +2070,34 @@ public class Item extends WorldObject
public void giveSkillsToOwner() public void giveSkillsToOwner()
{ {
if (!hasPassiveSkills()) if (!isEquipped() && !hasPassiveSkills())
{ {
return; return;
} }
final Player player = getActingPlayer(); final Player player = getActingPlayer();
if (player != null) if (player == null)
{ {
_itemTemplate.forEachSkill(ItemSkillType.NORMAL, holder -> return;
{
final Skill skill = holder.getSkill();
if (skill.isPassive())
{
player.addSkill(skill, false);
}
});
} }
_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() public void removeSkillsFromOwner()

View File

@@ -2070,23 +2070,34 @@ public class Item extends WorldObject
public void giveSkillsToOwner() public void giveSkillsToOwner()
{ {
if (!hasPassiveSkills()) if (!isEquipped() && !hasPassiveSkills())
{ {
return; return;
} }
final Player player = getActingPlayer(); final Player player = getActingPlayer();
if (player != null) if (player == null)
{ {
_itemTemplate.forEachSkill(ItemSkillType.NORMAL, holder -> return;
{
final Skill skill = holder.getSkill();
if (skill.isPassive())
{
player.addSkill(skill, false);
}
});
} }
_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() public void removeSkillsFromOwner()

View File

@@ -2070,23 +2070,34 @@ public class Item extends WorldObject
public void giveSkillsToOwner() public void giveSkillsToOwner()
{ {
if (!hasPassiveSkills()) if (!isEquipped() && !hasPassiveSkills())
{ {
return; return;
} }
final Player player = getActingPlayer(); final Player player = getActingPlayer();
if (player != null) if (player == null)
{ {
_itemTemplate.forEachSkill(ItemSkillType.NORMAL, holder -> return;
{
final Skill skill = holder.getSkill();
if (skill.isPassive())
{
player.addSkill(skill, false);
}
});
} }
_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() public void removeSkillsFromOwner()

View File

@@ -2070,23 +2070,34 @@ public class Item extends WorldObject
public void giveSkillsToOwner() public void giveSkillsToOwner()
{ {
if (!hasPassiveSkills()) if (!isEquipped() && !hasPassiveSkills())
{ {
return; return;
} }
final Player player = getActingPlayer(); final Player player = getActingPlayer();
if (player != null) if (player == null)
{ {
_itemTemplate.forEachSkill(ItemSkillType.NORMAL, holder -> return;
{
final Skill skill = holder.getSkill();
if (skill.isPassive())
{
player.addSkill(skill, false);
}
});
} }
_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() public void removeSkillsFromOwner()

View File

@@ -2070,23 +2070,34 @@ public class Item extends WorldObject
public void giveSkillsToOwner() public void giveSkillsToOwner()
{ {
if (!hasPassiveSkills()) if (!isEquipped() && !hasPassiveSkills())
{ {
return; return;
} }
final Player player = getActingPlayer(); final Player player = getActingPlayer();
if (player != null) if (player == null)
{ {
_itemTemplate.forEachSkill(ItemSkillType.NORMAL, holder -> return;
{
final Skill skill = holder.getSkill();
if (skill.isPassive())
{
player.addSkill(skill, false);
}
});
} }
_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() public void removeSkillsFromOwner()

View File

@@ -2002,23 +2002,34 @@ public class Item extends WorldObject
public void giveSkillsToOwner() public void giveSkillsToOwner()
{ {
if (!hasPassiveSkills()) if (!isEquipped() && !hasPassiveSkills())
{ {
return; return;
} }
final Player player = getActingPlayer(); final Player player = getActingPlayer();
if (player != null) if (player == null)
{ {
_itemTemplate.forEachSkill(ItemSkillType.NORMAL, holder -> return;
{
final Skill skill = holder.getSkill();
if (skill.isPassive())
{
player.addSkill(skill, false);
}
});
} }
_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() public void removeSkillsFromOwner()

View File

@@ -2073,23 +2073,34 @@ public class Item extends WorldObject
public void giveSkillsToOwner() public void giveSkillsToOwner()
{ {
if (!hasPassiveSkills()) if (!isEquipped() && !hasPassiveSkills())
{ {
return; return;
} }
final Player player = getActingPlayer(); final Player player = getActingPlayer();
if (player != null) if (player == null)
{ {
_itemTemplate.forEachSkill(ItemSkillType.NORMAL, holder -> return;
{
final Skill skill = holder.getSkill();
if (skill.isPassive())
{
player.addSkill(skill, false);
}
});
} }
_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() public void removeSkillsFromOwner()

View File

@@ -2073,23 +2073,34 @@ public class Item extends WorldObject
public void giveSkillsToOwner() public void giveSkillsToOwner()
{ {
if (!hasPassiveSkills()) if (!isEquipped() && !hasPassiveSkills())
{ {
return; return;
} }
final Player player = getActingPlayer(); final Player player = getActingPlayer();
if (player != null) if (player == null)
{ {
_itemTemplate.forEachSkill(ItemSkillType.NORMAL, holder -> return;
{
final Skill skill = holder.getSkill();
if (skill.isPassive())
{
player.addSkill(skill, false);
}
});
} }
_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() public void removeSkillsFromOwner()

View File

@@ -2083,23 +2083,34 @@ public class Item extends WorldObject
public void giveSkillsToOwner() public void giveSkillsToOwner()
{ {
if (!hasPassiveSkills()) if (!isEquipped() && !hasPassiveSkills())
{ {
return; return;
} }
final Player player = getActingPlayer(); final Player player = getActingPlayer();
if (player != null) if (player == null)
{ {
_itemTemplate.forEachSkill(ItemSkillType.NORMAL, holder -> return;
{
final Skill skill = holder.getSkill();
if (skill.isPassive())
{
player.addSkill(skill, false);
}
});
} }
_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() public void removeSkillsFromOwner()

View File

@@ -2086,23 +2086,34 @@ public class Item extends WorldObject
public void giveSkillsToOwner() public void giveSkillsToOwner()
{ {
if (!hasPassiveSkills()) if (!isEquipped() && !hasPassiveSkills())
{ {
return; return;
} }
final Player player = getActingPlayer(); final Player player = getActingPlayer();
if (player != null) if (player == null)
{ {
_itemTemplate.forEachSkill(ItemSkillType.NORMAL, holder -> return;
{
final Skill skill = holder.getSkill();
if (skill.isPassive())
{
player.addSkill(skill, false);
}
});
} }
_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() public void removeSkillsFromOwner()

View File

@@ -2086,23 +2086,34 @@ public class Item extends WorldObject
public void giveSkillsToOwner() public void giveSkillsToOwner()
{ {
if (!hasPassiveSkills()) if (!isEquipped() && !hasPassiveSkills())
{ {
return; return;
} }
final Player player = getActingPlayer(); final Player player = getActingPlayer();
if (player != null) if (player == null)
{ {
_itemTemplate.forEachSkill(ItemSkillType.NORMAL, holder -> return;
{
final Skill skill = holder.getSkill();
if (skill.isPassive())
{
player.addSkill(skill, false);
}
});
} }
_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() public void removeSkillsFromOwner()