Send partial InventoryUpdate with VitalityPointUp effect.
This commit is contained in:
@@ -16,12 +16,19 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
|
import java.util.LinkedList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.l2jmobius.commons.threads.ThreadPool;
|
||||||
import org.l2jmobius.gameserver.enums.UserInfoType;
|
import org.l2jmobius.gameserver.enums.UserInfoType;
|
||||||
import org.l2jmobius.gameserver.model.StatSet;
|
import org.l2jmobius.gameserver.model.StatSet;
|
||||||
import org.l2jmobius.gameserver.model.actor.Creature;
|
import org.l2jmobius.gameserver.model.actor.Creature;
|
||||||
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
|
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
|
||||||
|
import org.l2jmobius.gameserver.model.effects.EffectType;
|
||||||
|
import org.l2jmobius.gameserver.model.holders.ItemSkillHolder;
|
||||||
import org.l2jmobius.gameserver.model.item.instance.Item;
|
import org.l2jmobius.gameserver.model.item.instance.Item;
|
||||||
import org.l2jmobius.gameserver.model.skill.Skill;
|
import org.l2jmobius.gameserver.model.skill.Skill;
|
||||||
|
import org.l2jmobius.gameserver.network.serverpackets.InventoryUpdate;
|
||||||
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
|
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -37,6 +44,12 @@ public class VitalityPointUp extends AbstractEffect
|
|||||||
_value = params.getInt("value", 0);
|
_value = params.getInt("value", 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public EffectType getEffectType()
|
||||||
|
{
|
||||||
|
return EffectType.VITALITY_POINT_UP;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean canStart(Creature effector, Creature effected, Skill skill)
|
public boolean canStart(Creature effector, Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
@@ -59,6 +72,30 @@ public class VitalityPointUp extends AbstractEffect
|
|||||||
effected.getActingPlayer().sendPacket(ui);
|
effected.getActingPlayer().sendPacket(ui);
|
||||||
|
|
||||||
// Send item list to update vitality items with red icons in inventory.
|
// Send item list to update vitality items with red icons in inventory.
|
||||||
effected.getActingPlayer().sendItemList();
|
ThreadPool.schedule(() ->
|
||||||
|
{
|
||||||
|
final List<Item> items = new LinkedList<>();
|
||||||
|
ITEMS: for (Item i : effected.getActingPlayer().getInventory().getItems())
|
||||||
|
{
|
||||||
|
if (i.getTemplate().hasSkills())
|
||||||
|
{
|
||||||
|
for (ItemSkillHolder s : i.getTemplate().getAllSkills())
|
||||||
|
{
|
||||||
|
if (s.getSkill().hasEffectType(EffectType.VITALITY_POINT_UP))
|
||||||
|
{
|
||||||
|
items.add(i);
|
||||||
|
continue ITEMS;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!items.isEmpty())
|
||||||
|
{
|
||||||
|
final InventoryUpdate iu = new InventoryUpdate();
|
||||||
|
iu.addItems(items);
|
||||||
|
effected.getActingPlayer().sendInventoryUpdate(iu);
|
||||||
|
}
|
||||||
|
}, 1000);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -62,5 +62,6 @@ public enum EffectType
|
|||||||
SUMMON_NPC,
|
SUMMON_NPC,
|
||||||
TELEPORT,
|
TELEPORT,
|
||||||
TELEPORT_TO_TARGET,
|
TELEPORT_TO_TARGET,
|
||||||
ABNORMAL_SHIELD
|
ABNORMAL_SHIELD,
|
||||||
|
VITALITY_POINT_UP
|
||||||
}
|
}
|
@@ -16,12 +16,19 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
|
import java.util.LinkedList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.l2jmobius.commons.threads.ThreadPool;
|
||||||
import org.l2jmobius.gameserver.enums.UserInfoType;
|
import org.l2jmobius.gameserver.enums.UserInfoType;
|
||||||
import org.l2jmobius.gameserver.model.StatSet;
|
import org.l2jmobius.gameserver.model.StatSet;
|
||||||
import org.l2jmobius.gameserver.model.actor.Creature;
|
import org.l2jmobius.gameserver.model.actor.Creature;
|
||||||
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
|
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
|
||||||
|
import org.l2jmobius.gameserver.model.effects.EffectType;
|
||||||
|
import org.l2jmobius.gameserver.model.holders.ItemSkillHolder;
|
||||||
import org.l2jmobius.gameserver.model.item.instance.Item;
|
import org.l2jmobius.gameserver.model.item.instance.Item;
|
||||||
import org.l2jmobius.gameserver.model.skill.Skill;
|
import org.l2jmobius.gameserver.model.skill.Skill;
|
||||||
|
import org.l2jmobius.gameserver.network.serverpackets.InventoryUpdate;
|
||||||
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
|
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -37,6 +44,12 @@ public class VitalityPointUp extends AbstractEffect
|
|||||||
_value = params.getInt("value", 0);
|
_value = params.getInt("value", 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public EffectType getEffectType()
|
||||||
|
{
|
||||||
|
return EffectType.VITALITY_POINT_UP;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean canStart(Creature effector, Creature effected, Skill skill)
|
public boolean canStart(Creature effector, Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
@@ -59,6 +72,30 @@ public class VitalityPointUp extends AbstractEffect
|
|||||||
effected.getActingPlayer().sendPacket(ui);
|
effected.getActingPlayer().sendPacket(ui);
|
||||||
|
|
||||||
// Send item list to update vitality items with red icons in inventory.
|
// Send item list to update vitality items with red icons in inventory.
|
||||||
effected.getActingPlayer().sendItemList();
|
ThreadPool.schedule(() ->
|
||||||
|
{
|
||||||
|
final List<Item> items = new LinkedList<>();
|
||||||
|
ITEMS: for (Item i : effected.getActingPlayer().getInventory().getItems())
|
||||||
|
{
|
||||||
|
if (i.getTemplate().hasSkills())
|
||||||
|
{
|
||||||
|
for (ItemSkillHolder s : i.getTemplate().getAllSkills())
|
||||||
|
{
|
||||||
|
if (s.getSkill().hasEffectType(EffectType.VITALITY_POINT_UP))
|
||||||
|
{
|
||||||
|
items.add(i);
|
||||||
|
continue ITEMS;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!items.isEmpty())
|
||||||
|
{
|
||||||
|
final InventoryUpdate iu = new InventoryUpdate();
|
||||||
|
iu.addItems(items);
|
||||||
|
effected.getActingPlayer().sendInventoryUpdate(iu);
|
||||||
|
}
|
||||||
|
}, 1000);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -63,5 +63,6 @@ public enum EffectType
|
|||||||
TELEPORT,
|
TELEPORT,
|
||||||
TELEPORT_TO_TARGET,
|
TELEPORT_TO_TARGET,
|
||||||
ABNORMAL_SHIELD,
|
ABNORMAL_SHIELD,
|
||||||
DUAL_RANGE
|
DUAL_RANGE,
|
||||||
|
VITALITY_POINT_UP
|
||||||
}
|
}
|
@@ -16,12 +16,19 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
|
import java.util.LinkedList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.l2jmobius.commons.threads.ThreadPool;
|
||||||
import org.l2jmobius.gameserver.enums.UserInfoType;
|
import org.l2jmobius.gameserver.enums.UserInfoType;
|
||||||
import org.l2jmobius.gameserver.model.StatSet;
|
import org.l2jmobius.gameserver.model.StatSet;
|
||||||
import org.l2jmobius.gameserver.model.actor.Creature;
|
import org.l2jmobius.gameserver.model.actor.Creature;
|
||||||
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
|
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
|
||||||
|
import org.l2jmobius.gameserver.model.effects.EffectType;
|
||||||
|
import org.l2jmobius.gameserver.model.holders.ItemSkillHolder;
|
||||||
import org.l2jmobius.gameserver.model.item.instance.Item;
|
import org.l2jmobius.gameserver.model.item.instance.Item;
|
||||||
import org.l2jmobius.gameserver.model.skill.Skill;
|
import org.l2jmobius.gameserver.model.skill.Skill;
|
||||||
|
import org.l2jmobius.gameserver.network.serverpackets.InventoryUpdate;
|
||||||
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
|
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -37,6 +44,12 @@ public class VitalityPointUp extends AbstractEffect
|
|||||||
_value = params.getInt("value", 0);
|
_value = params.getInt("value", 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public EffectType getEffectType()
|
||||||
|
{
|
||||||
|
return EffectType.VITALITY_POINT_UP;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean canStart(Creature effector, Creature effected, Skill skill)
|
public boolean canStart(Creature effector, Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
@@ -59,6 +72,30 @@ public class VitalityPointUp extends AbstractEffect
|
|||||||
effected.getActingPlayer().sendPacket(ui);
|
effected.getActingPlayer().sendPacket(ui);
|
||||||
|
|
||||||
// Send item list to update vitality items with red icons in inventory.
|
// Send item list to update vitality items with red icons in inventory.
|
||||||
effected.getActingPlayer().sendItemList();
|
ThreadPool.schedule(() ->
|
||||||
|
{
|
||||||
|
final List<Item> items = new LinkedList<>();
|
||||||
|
ITEMS: for (Item i : effected.getActingPlayer().getInventory().getItems())
|
||||||
|
{
|
||||||
|
if (i.getTemplate().hasSkills())
|
||||||
|
{
|
||||||
|
for (ItemSkillHolder s : i.getTemplate().getAllSkills())
|
||||||
|
{
|
||||||
|
if (s.getSkill().hasEffectType(EffectType.VITALITY_POINT_UP))
|
||||||
|
{
|
||||||
|
items.add(i);
|
||||||
|
continue ITEMS;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!items.isEmpty())
|
||||||
|
{
|
||||||
|
final InventoryUpdate iu = new InventoryUpdate();
|
||||||
|
iu.addItems(items);
|
||||||
|
effected.getActingPlayer().sendInventoryUpdate(iu);
|
||||||
|
}
|
||||||
|
}, 1000);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -63,5 +63,6 @@ public enum EffectType
|
|||||||
TELEPORT,
|
TELEPORT,
|
||||||
TELEPORT_TO_TARGET,
|
TELEPORT_TO_TARGET,
|
||||||
ABNORMAL_SHIELD,
|
ABNORMAL_SHIELD,
|
||||||
DUAL_RANGE
|
DUAL_RANGE,
|
||||||
|
VITALITY_POINT_UP
|
||||||
}
|
}
|
@@ -16,12 +16,19 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
|
import java.util.LinkedList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.l2jmobius.commons.threads.ThreadPool;
|
||||||
import org.l2jmobius.gameserver.enums.UserInfoType;
|
import org.l2jmobius.gameserver.enums.UserInfoType;
|
||||||
import org.l2jmobius.gameserver.model.StatSet;
|
import org.l2jmobius.gameserver.model.StatSet;
|
||||||
import org.l2jmobius.gameserver.model.actor.Creature;
|
import org.l2jmobius.gameserver.model.actor.Creature;
|
||||||
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
|
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
|
||||||
|
import org.l2jmobius.gameserver.model.effects.EffectType;
|
||||||
|
import org.l2jmobius.gameserver.model.holders.ItemSkillHolder;
|
||||||
import org.l2jmobius.gameserver.model.item.instance.Item;
|
import org.l2jmobius.gameserver.model.item.instance.Item;
|
||||||
import org.l2jmobius.gameserver.model.skill.Skill;
|
import org.l2jmobius.gameserver.model.skill.Skill;
|
||||||
|
import org.l2jmobius.gameserver.network.serverpackets.InventoryUpdate;
|
||||||
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
|
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -37,6 +44,12 @@ public class VitalityPointUp extends AbstractEffect
|
|||||||
_value = params.getInt("value", 0);
|
_value = params.getInt("value", 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public EffectType getEffectType()
|
||||||
|
{
|
||||||
|
return EffectType.VITALITY_POINT_UP;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean canStart(Creature effector, Creature effected, Skill skill)
|
public boolean canStart(Creature effector, Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
@@ -59,6 +72,30 @@ public class VitalityPointUp extends AbstractEffect
|
|||||||
effected.getActingPlayer().sendPacket(ui);
|
effected.getActingPlayer().sendPacket(ui);
|
||||||
|
|
||||||
// Send item list to update vitality items with red icons in inventory.
|
// Send item list to update vitality items with red icons in inventory.
|
||||||
effected.getActingPlayer().sendItemList();
|
ThreadPool.schedule(() ->
|
||||||
|
{
|
||||||
|
final List<Item> items = new LinkedList<>();
|
||||||
|
ITEMS: for (Item i : effected.getActingPlayer().getInventory().getItems())
|
||||||
|
{
|
||||||
|
if (i.getTemplate().hasSkills())
|
||||||
|
{
|
||||||
|
for (ItemSkillHolder s : i.getTemplate().getAllSkills())
|
||||||
|
{
|
||||||
|
if (s.getSkill().hasEffectType(EffectType.VITALITY_POINT_UP))
|
||||||
|
{
|
||||||
|
items.add(i);
|
||||||
|
continue ITEMS;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!items.isEmpty())
|
||||||
|
{
|
||||||
|
final InventoryUpdate iu = new InventoryUpdate();
|
||||||
|
iu.addItems(items);
|
||||||
|
effected.getActingPlayer().sendInventoryUpdate(iu);
|
||||||
|
}
|
||||||
|
}, 1000);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -63,5 +63,6 @@ public enum EffectType
|
|||||||
TELEPORT,
|
TELEPORT,
|
||||||
TELEPORT_TO_TARGET,
|
TELEPORT_TO_TARGET,
|
||||||
ABNORMAL_SHIELD,
|
ABNORMAL_SHIELD,
|
||||||
DUAL_RANGE
|
DUAL_RANGE,
|
||||||
|
VITALITY_POINT_UP
|
||||||
}
|
}
|
@@ -16,12 +16,19 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
|
import java.util.LinkedList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.l2jmobius.commons.threads.ThreadPool;
|
||||||
import org.l2jmobius.gameserver.enums.UserInfoType;
|
import org.l2jmobius.gameserver.enums.UserInfoType;
|
||||||
import org.l2jmobius.gameserver.model.StatSet;
|
import org.l2jmobius.gameserver.model.StatSet;
|
||||||
import org.l2jmobius.gameserver.model.actor.Creature;
|
import org.l2jmobius.gameserver.model.actor.Creature;
|
||||||
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
|
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
|
||||||
|
import org.l2jmobius.gameserver.model.effects.EffectType;
|
||||||
|
import org.l2jmobius.gameserver.model.holders.ItemSkillHolder;
|
||||||
import org.l2jmobius.gameserver.model.item.instance.Item;
|
import org.l2jmobius.gameserver.model.item.instance.Item;
|
||||||
import org.l2jmobius.gameserver.model.skill.Skill;
|
import org.l2jmobius.gameserver.model.skill.Skill;
|
||||||
|
import org.l2jmobius.gameserver.network.serverpackets.InventoryUpdate;
|
||||||
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
|
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -37,6 +44,12 @@ public class VitalityPointUp extends AbstractEffect
|
|||||||
_value = params.getInt("value", 0);
|
_value = params.getInt("value", 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public EffectType getEffectType()
|
||||||
|
{
|
||||||
|
return EffectType.VITALITY_POINT_UP;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean canStart(Creature effector, Creature effected, Skill skill)
|
public boolean canStart(Creature effector, Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
@@ -59,6 +72,30 @@ public class VitalityPointUp extends AbstractEffect
|
|||||||
effected.getActingPlayer().sendPacket(ui);
|
effected.getActingPlayer().sendPacket(ui);
|
||||||
|
|
||||||
// Send item list to update vitality items with red icons in inventory.
|
// Send item list to update vitality items with red icons in inventory.
|
||||||
effected.getActingPlayer().sendItemList();
|
ThreadPool.schedule(() ->
|
||||||
|
{
|
||||||
|
final List<Item> items = new LinkedList<>();
|
||||||
|
ITEMS: for (Item i : effected.getActingPlayer().getInventory().getItems())
|
||||||
|
{
|
||||||
|
if (i.getTemplate().hasSkills())
|
||||||
|
{
|
||||||
|
for (ItemSkillHolder s : i.getTemplate().getAllSkills())
|
||||||
|
{
|
||||||
|
if (s.getSkill().hasEffectType(EffectType.VITALITY_POINT_UP))
|
||||||
|
{
|
||||||
|
items.add(i);
|
||||||
|
continue ITEMS;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!items.isEmpty())
|
||||||
|
{
|
||||||
|
final InventoryUpdate iu = new InventoryUpdate();
|
||||||
|
iu.addItems(items);
|
||||||
|
effected.getActingPlayer().sendInventoryUpdate(iu);
|
||||||
|
}
|
||||||
|
}, 1000);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -62,5 +62,6 @@ public enum EffectType
|
|||||||
SUMMON_NPC,
|
SUMMON_NPC,
|
||||||
TELEPORT,
|
TELEPORT,
|
||||||
TELEPORT_TO_TARGET,
|
TELEPORT_TO_TARGET,
|
||||||
ABNORMAL_SHIELD
|
ABNORMAL_SHIELD,
|
||||||
|
VITALITY_POINT_UP
|
||||||
}
|
}
|
@@ -16,12 +16,19 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
|
import java.util.LinkedList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.l2jmobius.commons.threads.ThreadPool;
|
||||||
import org.l2jmobius.gameserver.enums.UserInfoType;
|
import org.l2jmobius.gameserver.enums.UserInfoType;
|
||||||
import org.l2jmobius.gameserver.model.StatSet;
|
import org.l2jmobius.gameserver.model.StatSet;
|
||||||
import org.l2jmobius.gameserver.model.actor.Creature;
|
import org.l2jmobius.gameserver.model.actor.Creature;
|
||||||
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
|
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
|
||||||
|
import org.l2jmobius.gameserver.model.effects.EffectType;
|
||||||
|
import org.l2jmobius.gameserver.model.holders.ItemSkillHolder;
|
||||||
import org.l2jmobius.gameserver.model.item.instance.Item;
|
import org.l2jmobius.gameserver.model.item.instance.Item;
|
||||||
import org.l2jmobius.gameserver.model.skill.Skill;
|
import org.l2jmobius.gameserver.model.skill.Skill;
|
||||||
|
import org.l2jmobius.gameserver.network.serverpackets.InventoryUpdate;
|
||||||
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
|
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -37,6 +44,12 @@ public class VitalityPointUp extends AbstractEffect
|
|||||||
_value = params.getInt("value", 0);
|
_value = params.getInt("value", 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public EffectType getEffectType()
|
||||||
|
{
|
||||||
|
return EffectType.VITALITY_POINT_UP;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean canStart(Creature effector, Creature effected, Skill skill)
|
public boolean canStart(Creature effector, Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
@@ -59,6 +72,30 @@ public class VitalityPointUp extends AbstractEffect
|
|||||||
effected.getActingPlayer().sendPacket(ui);
|
effected.getActingPlayer().sendPacket(ui);
|
||||||
|
|
||||||
// Send item list to update vitality items with red icons in inventory.
|
// Send item list to update vitality items with red icons in inventory.
|
||||||
effected.getActingPlayer().sendItemList();
|
ThreadPool.schedule(() ->
|
||||||
|
{
|
||||||
|
final List<Item> items = new LinkedList<>();
|
||||||
|
ITEMS: for (Item i : effected.getActingPlayer().getInventory().getItems())
|
||||||
|
{
|
||||||
|
if (i.getTemplate().hasSkills())
|
||||||
|
{
|
||||||
|
for (ItemSkillHolder s : i.getTemplate().getAllSkills())
|
||||||
|
{
|
||||||
|
if (s.getSkill().hasEffectType(EffectType.VITALITY_POINT_UP))
|
||||||
|
{
|
||||||
|
items.add(i);
|
||||||
|
continue ITEMS;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!items.isEmpty())
|
||||||
|
{
|
||||||
|
final InventoryUpdate iu = new InventoryUpdate();
|
||||||
|
iu.addItems(items);
|
||||||
|
effected.getActingPlayer().sendInventoryUpdate(iu);
|
||||||
|
}
|
||||||
|
}, 1000);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -63,5 +63,6 @@ public enum EffectType
|
|||||||
TELEPORT,
|
TELEPORT,
|
||||||
TELEPORT_TO_TARGET,
|
TELEPORT_TO_TARGET,
|
||||||
ABNORMAL_SHIELD,
|
ABNORMAL_SHIELD,
|
||||||
DUAL_RANGE
|
DUAL_RANGE,
|
||||||
|
VITALITY_POINT_UP
|
||||||
}
|
}
|
@@ -16,12 +16,19 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
|
import java.util.LinkedList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.l2jmobius.commons.threads.ThreadPool;
|
||||||
import org.l2jmobius.gameserver.enums.UserInfoType;
|
import org.l2jmobius.gameserver.enums.UserInfoType;
|
||||||
import org.l2jmobius.gameserver.model.StatSet;
|
import org.l2jmobius.gameserver.model.StatSet;
|
||||||
import org.l2jmobius.gameserver.model.actor.Creature;
|
import org.l2jmobius.gameserver.model.actor.Creature;
|
||||||
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
|
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
|
||||||
|
import org.l2jmobius.gameserver.model.effects.EffectType;
|
||||||
|
import org.l2jmobius.gameserver.model.holders.ItemSkillHolder;
|
||||||
import org.l2jmobius.gameserver.model.item.instance.Item;
|
import org.l2jmobius.gameserver.model.item.instance.Item;
|
||||||
import org.l2jmobius.gameserver.model.skill.Skill;
|
import org.l2jmobius.gameserver.model.skill.Skill;
|
||||||
|
import org.l2jmobius.gameserver.network.serverpackets.InventoryUpdate;
|
||||||
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
|
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -37,6 +44,12 @@ public class VitalityPointUp extends AbstractEffect
|
|||||||
_value = params.getInt("value", 0);
|
_value = params.getInt("value", 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public EffectType getEffectType()
|
||||||
|
{
|
||||||
|
return EffectType.VITALITY_POINT_UP;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean canStart(Creature effector, Creature effected, Skill skill)
|
public boolean canStart(Creature effector, Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
@@ -59,6 +72,30 @@ public class VitalityPointUp extends AbstractEffect
|
|||||||
effected.getActingPlayer().sendPacket(ui);
|
effected.getActingPlayer().sendPacket(ui);
|
||||||
|
|
||||||
// Send item list to update vitality items with red icons in inventory.
|
// Send item list to update vitality items with red icons in inventory.
|
||||||
effected.getActingPlayer().sendItemList();
|
ThreadPool.schedule(() ->
|
||||||
|
{
|
||||||
|
final List<Item> items = new LinkedList<>();
|
||||||
|
ITEMS: for (Item i : effected.getActingPlayer().getInventory().getItems())
|
||||||
|
{
|
||||||
|
if (i.getTemplate().hasSkills())
|
||||||
|
{
|
||||||
|
for (ItemSkillHolder s : i.getTemplate().getAllSkills())
|
||||||
|
{
|
||||||
|
if (s.getSkill().hasEffectType(EffectType.VITALITY_POINT_UP))
|
||||||
|
{
|
||||||
|
items.add(i);
|
||||||
|
continue ITEMS;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!items.isEmpty())
|
||||||
|
{
|
||||||
|
final InventoryUpdate iu = new InventoryUpdate();
|
||||||
|
iu.addItems(items);
|
||||||
|
effected.getActingPlayer().sendInventoryUpdate(iu);
|
||||||
|
}
|
||||||
|
}, 1000);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -63,5 +63,6 @@ public enum EffectType
|
|||||||
TELEPORT,
|
TELEPORT,
|
||||||
TELEPORT_TO_TARGET,
|
TELEPORT_TO_TARGET,
|
||||||
ABNORMAL_SHIELD,
|
ABNORMAL_SHIELD,
|
||||||
DUAL_RANGE
|
DUAL_RANGE,
|
||||||
|
VITALITY_POINT_UP
|
||||||
}
|
}
|
@@ -16,12 +16,19 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
|
import java.util.LinkedList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.l2jmobius.commons.threads.ThreadPool;
|
||||||
import org.l2jmobius.gameserver.enums.UserInfoType;
|
import org.l2jmobius.gameserver.enums.UserInfoType;
|
||||||
import org.l2jmobius.gameserver.model.StatSet;
|
import org.l2jmobius.gameserver.model.StatSet;
|
||||||
import org.l2jmobius.gameserver.model.actor.Creature;
|
import org.l2jmobius.gameserver.model.actor.Creature;
|
||||||
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
|
import org.l2jmobius.gameserver.model.effects.AbstractEffect;
|
||||||
|
import org.l2jmobius.gameserver.model.effects.EffectType;
|
||||||
|
import org.l2jmobius.gameserver.model.holders.ItemSkillHolder;
|
||||||
import org.l2jmobius.gameserver.model.item.instance.Item;
|
import org.l2jmobius.gameserver.model.item.instance.Item;
|
||||||
import org.l2jmobius.gameserver.model.skill.Skill;
|
import org.l2jmobius.gameserver.model.skill.Skill;
|
||||||
|
import org.l2jmobius.gameserver.network.serverpackets.InventoryUpdate;
|
||||||
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
|
import org.l2jmobius.gameserver.network.serverpackets.UserInfo;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -37,6 +44,12 @@ public class VitalityPointUp extends AbstractEffect
|
|||||||
_value = params.getInt("value", 0);
|
_value = params.getInt("value", 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public EffectType getEffectType()
|
||||||
|
{
|
||||||
|
return EffectType.VITALITY_POINT_UP;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean canStart(Creature effector, Creature effected, Skill skill)
|
public boolean canStart(Creature effector, Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
@@ -59,6 +72,30 @@ public class VitalityPointUp extends AbstractEffect
|
|||||||
effected.getActingPlayer().sendPacket(ui);
|
effected.getActingPlayer().sendPacket(ui);
|
||||||
|
|
||||||
// Send item list to update vitality items with red icons in inventory.
|
// Send item list to update vitality items with red icons in inventory.
|
||||||
effected.getActingPlayer().sendItemList();
|
ThreadPool.schedule(() ->
|
||||||
|
{
|
||||||
|
final List<Item> items = new LinkedList<>();
|
||||||
|
ITEMS: for (Item i : effected.getActingPlayer().getInventory().getItems())
|
||||||
|
{
|
||||||
|
if (i.getTemplate().hasSkills())
|
||||||
|
{
|
||||||
|
for (ItemSkillHolder s : i.getTemplate().getAllSkills())
|
||||||
|
{
|
||||||
|
if (s.getSkill().hasEffectType(EffectType.VITALITY_POINT_UP))
|
||||||
|
{
|
||||||
|
items.add(i);
|
||||||
|
continue ITEMS;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!items.isEmpty())
|
||||||
|
{
|
||||||
|
final InventoryUpdate iu = new InventoryUpdate();
|
||||||
|
iu.addItems(items);
|
||||||
|
effected.getActingPlayer().sendInventoryUpdate(iu);
|
||||||
|
}
|
||||||
|
}, 1000);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -63,5 +63,6 @@ public enum EffectType
|
|||||||
TELEPORT,
|
TELEPORT,
|
||||||
TELEPORT_TO_TARGET,
|
TELEPORT_TO_TARGET,
|
||||||
ABNORMAL_SHIELD,
|
ABNORMAL_SHIELD,
|
||||||
DUAL_RANGE
|
DUAL_RANGE,
|
||||||
|
VITALITY_POINT_UP
|
||||||
}
|
}
|
Reference in New Issue
Block a user