Support for OpEquipItem multiple item ids.
This commit is contained in:
@@ -16,6 +16,10 @@
|
||||
*/
|
||||
package handlers.skillconditionhandlers;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.SkillConditionAffectType;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
@@ -28,12 +32,20 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
||||
*/
|
||||
public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
private final int _itemId;
|
||||
private final Set<Integer> _itemIds = new HashSet<>();
|
||||
private final SkillConditionAffectType _affectType;
|
||||
|
||||
public OpEquipItemSkillCondition(StatSet params)
|
||||
{
|
||||
_itemId = params.getInt("itemId");
|
||||
final List<Integer> itemIds = params.getList("itemIds", Integer.class);
|
||||
if (itemIds != null)
|
||||
{
|
||||
_itemIds.addAll(itemIds);
|
||||
}
|
||||
else
|
||||
{
|
||||
_itemIds.add(params.getInt("itemId"));
|
||||
}
|
||||
_affectType = params.getEnum("affectType", SkillConditionAffectType.class);
|
||||
}
|
||||
|
||||
@@ -44,15 +56,48 @@ public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
case CASTER:
|
||||
{
|
||||
return caster.getInventory().isItemEquipped(_itemId);
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case TARGET:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case BOTH:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId) && caster.getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
for (int id : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(id))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
|
@@ -2157,6 +2157,13 @@
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element minOccurs="0" name="itemIds">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element maxOccurs="unbounded" name="item" type="xs:unsignedInt" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element minOccurs="0" name="classIds">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
|
@@ -16,6 +16,10 @@
|
||||
*/
|
||||
package handlers.skillconditionhandlers;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.SkillConditionAffectType;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
@@ -28,12 +32,20 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
||||
*/
|
||||
public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
private final int _itemId;
|
||||
private final Set<Integer> _itemIds = new HashSet<>();
|
||||
private final SkillConditionAffectType _affectType;
|
||||
|
||||
public OpEquipItemSkillCondition(StatSet params)
|
||||
{
|
||||
_itemId = params.getInt("itemId");
|
||||
final List<Integer> itemIds = params.getList("itemIds", Integer.class);
|
||||
if (itemIds != null)
|
||||
{
|
||||
_itemIds.addAll(itemIds);
|
||||
}
|
||||
else
|
||||
{
|
||||
_itemIds.add(params.getInt("itemId"));
|
||||
}
|
||||
_affectType = params.getEnum("affectType", SkillConditionAffectType.class);
|
||||
}
|
||||
|
||||
@@ -44,15 +56,48 @@ public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
case CASTER:
|
||||
{
|
||||
return caster.getInventory().isItemEquipped(_itemId);
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case TARGET:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case BOTH:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId) && caster.getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
for (int id : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(id))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
|
@@ -2217,6 +2217,13 @@
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element minOccurs="0" name="itemIds">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element maxOccurs="unbounded" name="item" type="xs:unsignedInt" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element minOccurs="0" name="classIds">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
|
@@ -16,6 +16,10 @@
|
||||
*/
|
||||
package handlers.skillconditionhandlers;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.SkillConditionAffectType;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
@@ -28,12 +32,20 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
||||
*/
|
||||
public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
private final int _itemId;
|
||||
private final Set<Integer> _itemIds = new HashSet<>();
|
||||
private final SkillConditionAffectType _affectType;
|
||||
|
||||
public OpEquipItemSkillCondition(StatSet params)
|
||||
{
|
||||
_itemId = params.getInt("itemId");
|
||||
final List<Integer> itemIds = params.getList("itemIds", Integer.class);
|
||||
if (itemIds != null)
|
||||
{
|
||||
_itemIds.addAll(itemIds);
|
||||
}
|
||||
else
|
||||
{
|
||||
_itemIds.add(params.getInt("itemId"));
|
||||
}
|
||||
_affectType = params.getEnum("affectType", SkillConditionAffectType.class);
|
||||
}
|
||||
|
||||
@@ -44,15 +56,48 @@ public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
case CASTER:
|
||||
{
|
||||
return caster.getInventory().isItemEquipped(_itemId);
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case TARGET:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case BOTH:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId) && caster.getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
for (int id : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(id))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
|
@@ -2249,6 +2249,13 @@
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element minOccurs="0" name="itemIds">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element maxOccurs="unbounded" name="item" type="xs:unsignedInt" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element minOccurs="0" name="classIds">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
|
@@ -16,6 +16,10 @@
|
||||
*/
|
||||
package handlers.skillconditionhandlers;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.SkillConditionAffectType;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
@@ -28,12 +32,20 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
||||
*/
|
||||
public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
private final int _itemId;
|
||||
private final Set<Integer> _itemIds = new HashSet<>();
|
||||
private final SkillConditionAffectType _affectType;
|
||||
|
||||
public OpEquipItemSkillCondition(StatSet params)
|
||||
{
|
||||
_itemId = params.getInt("itemId");
|
||||
final List<Integer> itemIds = params.getList("itemIds", Integer.class);
|
||||
if (itemIds != null)
|
||||
{
|
||||
_itemIds.addAll(itemIds);
|
||||
}
|
||||
else
|
||||
{
|
||||
_itemIds.add(params.getInt("itemId"));
|
||||
}
|
||||
_affectType = params.getEnum("affectType", SkillConditionAffectType.class);
|
||||
}
|
||||
|
||||
@@ -44,15 +56,48 @@ public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
case CASTER:
|
||||
{
|
||||
return caster.getInventory().isItemEquipped(_itemId);
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case TARGET:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case BOTH:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId) && caster.getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
for (int id : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(id))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
|
@@ -2307,6 +2307,13 @@
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="itemIds">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element maxOccurs="unbounded" name="item" type="xs:unsignedInt" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="amount" type="xs:unsignedByte" />
|
||||
<xs:element name="percentType" type="xs:string" />
|
||||
<xs:element name="alignment" type="xs:string" />
|
||||
|
@@ -16,6 +16,10 @@
|
||||
*/
|
||||
package handlers.skillconditionhandlers;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.SkillConditionAffectType;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
@@ -28,12 +32,20 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
||||
*/
|
||||
public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
private final int _itemId;
|
||||
private final Set<Integer> _itemIds = new HashSet<>();
|
||||
private final SkillConditionAffectType _affectType;
|
||||
|
||||
public OpEquipItemSkillCondition(StatSet params)
|
||||
{
|
||||
_itemId = params.getInt("itemId");
|
||||
final List<Integer> itemIds = params.getList("itemIds", Integer.class);
|
||||
if (itemIds != null)
|
||||
{
|
||||
_itemIds.addAll(itemIds);
|
||||
}
|
||||
else
|
||||
{
|
||||
_itemIds.add(params.getInt("itemId"));
|
||||
}
|
||||
_affectType = params.getEnum("affectType", SkillConditionAffectType.class);
|
||||
}
|
||||
|
||||
@@ -44,15 +56,48 @@ public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
case CASTER:
|
||||
{
|
||||
return caster.getInventory().isItemEquipped(_itemId);
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case TARGET:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case BOTH:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId) && caster.getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
for (int id : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(id))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
|
@@ -2277,6 +2277,7 @@
|
||||
<xs:element maxOccurs="unbounded" name="condition">
|
||||
<xs:complexType>
|
||||
<xs:sequence minOccurs="0">
|
||||
<xs:element minOccurs="0" name="itemId" type="xs:unsignedInt" />
|
||||
<xs:element minOccurs="0" name="socialClass" type="xs:byte" />
|
||||
<xs:element minOccurs="0" name="type" type="xs:string" />
|
||||
<xs:element minOccurs="0" name="level" type="xs:unsignedByte" />
|
||||
@@ -2291,6 +2292,13 @@
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="itemIds">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element maxOccurs="unbounded" name="item" type="xs:unsignedInt" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element minOccurs="0" name="classIds">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
|
@@ -16,6 +16,10 @@
|
||||
*/
|
||||
package handlers.skillconditionhandlers;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.SkillConditionAffectType;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
@@ -28,12 +32,20 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
||||
*/
|
||||
public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
private final int _itemId;
|
||||
private final Set<Integer> _itemIds = new HashSet<>();
|
||||
private final SkillConditionAffectType _affectType;
|
||||
|
||||
public OpEquipItemSkillCondition(StatSet params)
|
||||
{
|
||||
_itemId = params.getInt("itemId");
|
||||
final List<Integer> itemIds = params.getList("itemIds", Integer.class);
|
||||
if (itemIds != null)
|
||||
{
|
||||
_itemIds.addAll(itemIds);
|
||||
}
|
||||
else
|
||||
{
|
||||
_itemIds.add(params.getInt("itemId"));
|
||||
}
|
||||
_affectType = params.getEnum("affectType", SkillConditionAffectType.class);
|
||||
}
|
||||
|
||||
@@ -44,15 +56,48 @@ public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
case CASTER:
|
||||
{
|
||||
return caster.getInventory().isItemEquipped(_itemId);
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case TARGET:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case BOTH:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId) && caster.getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
for (int id : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(id))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
|
@@ -2277,7 +2277,7 @@
|
||||
<xs:element maxOccurs="unbounded" name="condition">
|
||||
<xs:complexType>
|
||||
<xs:sequence minOccurs="0">
|
||||
<xs:element minOccurs="0" name="itemId" type="xs:unsignedShort" />
|
||||
<xs:element minOccurs="0" name="itemId" type="xs:unsignedInt" />
|
||||
<xs:element minOccurs="0" name="skillId" type="xs:unsignedShort" />
|
||||
<xs:element minOccurs="0" name="hasLearned" type="xs:boolean" />
|
||||
<xs:element minOccurs="0" name="socialClass" type="xs:byte" />
|
||||
@@ -2294,6 +2294,13 @@
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="itemIds">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element maxOccurs="unbounded" name="item" type="xs:unsignedInt" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element minOccurs="0" name="classIds">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
|
@@ -16,6 +16,10 @@
|
||||
*/
|
||||
package handlers.skillconditionhandlers;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.SkillConditionAffectType;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
@@ -28,12 +32,20 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
||||
*/
|
||||
public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
private final int _itemId;
|
||||
private final Set<Integer> _itemIds = new HashSet<>();
|
||||
private final SkillConditionAffectType _affectType;
|
||||
|
||||
public OpEquipItemSkillCondition(StatSet params)
|
||||
{
|
||||
_itemId = params.getInt("itemId");
|
||||
final List<Integer> itemIds = params.getList("itemIds", Integer.class);
|
||||
if (itemIds != null)
|
||||
{
|
||||
_itemIds.addAll(itemIds);
|
||||
}
|
||||
else
|
||||
{
|
||||
_itemIds.add(params.getInt("itemId"));
|
||||
}
|
||||
_affectType = params.getEnum("affectType", SkillConditionAffectType.class);
|
||||
}
|
||||
|
||||
@@ -44,15 +56,48 @@ public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
case CASTER:
|
||||
{
|
||||
return caster.getInventory().isItemEquipped(_itemId);
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case TARGET:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case BOTH:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId) && caster.getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
for (int id : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(id))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
|
@@ -2277,7 +2277,7 @@
|
||||
<xs:element maxOccurs="unbounded" name="condition">
|
||||
<xs:complexType>
|
||||
<xs:sequence minOccurs="0">
|
||||
<xs:element minOccurs="0" name="itemId" type="xs:unsignedShort" />
|
||||
<xs:element minOccurs="0" name="itemId" type="xs:unsignedInt" />
|
||||
<xs:element minOccurs="0" name="skillId" type="xs:unsignedShort" />
|
||||
<xs:element minOccurs="0" name="hasLearned" type="xs:boolean" />
|
||||
<xs:element minOccurs="0" name="socialClass" type="xs:byte" />
|
||||
@@ -2294,6 +2294,13 @@
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="itemIds">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element maxOccurs="unbounded" name="item" type="xs:unsignedInt" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element minOccurs="0" name="classIds">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
|
@@ -16,6 +16,10 @@
|
||||
*/
|
||||
package handlers.skillconditionhandlers;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.SkillConditionAffectType;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
@@ -28,12 +32,20 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
||||
*/
|
||||
public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
private final int _itemId;
|
||||
private final Set<Integer> _itemIds = new HashSet<>();
|
||||
private final SkillConditionAffectType _affectType;
|
||||
|
||||
public OpEquipItemSkillCondition(StatSet params)
|
||||
{
|
||||
_itemId = params.getInt("itemId");
|
||||
final List<Integer> itemIds = params.getList("itemIds", Integer.class);
|
||||
if (itemIds != null)
|
||||
{
|
||||
_itemIds.addAll(itemIds);
|
||||
}
|
||||
else
|
||||
{
|
||||
_itemIds.add(params.getInt("itemId"));
|
||||
}
|
||||
_affectType = params.getEnum("affectType", SkillConditionAffectType.class);
|
||||
}
|
||||
|
||||
@@ -44,15 +56,48 @@ public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
case CASTER:
|
||||
{
|
||||
return caster.getInventory().isItemEquipped(_itemId);
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case TARGET:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case BOTH:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId) && caster.getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
for (int id : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(id))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
|
@@ -2341,7 +2341,7 @@
|
||||
<xs:element maxOccurs="unbounded" name="condition">
|
||||
<xs:complexType>
|
||||
<xs:sequence minOccurs="0">
|
||||
<xs:element minOccurs="0" name="itemId" type="xs:unsignedShort" />
|
||||
<xs:element minOccurs="0" name="itemId" type="xs:unsignedInt" />
|
||||
<xs:element minOccurs="0" name="socialClass" type="xs:byte" />
|
||||
<xs:element minOccurs="0" name="skillId" type="xs:unsignedShort" />
|
||||
<xs:element minOccurs="0" name="hasLearned" type="xs:boolean" />
|
||||
@@ -2358,6 +2358,13 @@
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="itemIds">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element maxOccurs="unbounded" name="item" type="xs:unsignedInt" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element minOccurs="0" name="classIds">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
|
@@ -16,6 +16,10 @@
|
||||
*/
|
||||
package handlers.skillconditionhandlers;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.SkillConditionAffectType;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
@@ -28,12 +32,20 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
||||
*/
|
||||
public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
private final int _itemId;
|
||||
private final Set<Integer> _itemIds = new HashSet<>();
|
||||
private final SkillConditionAffectType _affectType;
|
||||
|
||||
public OpEquipItemSkillCondition(StatSet params)
|
||||
{
|
||||
_itemId = params.getInt("itemId");
|
||||
final List<Integer> itemIds = params.getList("itemIds", Integer.class);
|
||||
if (itemIds != null)
|
||||
{
|
||||
_itemIds.addAll(itemIds);
|
||||
}
|
||||
else
|
||||
{
|
||||
_itemIds.add(params.getInt("itemId"));
|
||||
}
|
||||
_affectType = params.getEnum("affectType", SkillConditionAffectType.class);
|
||||
}
|
||||
|
||||
@@ -44,15 +56,48 @@ public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
case CASTER:
|
||||
{
|
||||
return caster.getInventory().isItemEquipped(_itemId);
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case TARGET:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case BOTH:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId) && caster.getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
for (int id : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(id))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
|
@@ -2386,6 +2386,13 @@
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="itemIds">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element maxOccurs="unbounded" name="item" type="xs:unsignedInt" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="amount" type="xs:unsignedByte" />
|
||||
<xs:element name="percentType" type="xs:string" />
|
||||
<xs:element name="alignment" type="xs:string" />
|
||||
@@ -2396,7 +2403,7 @@
|
||||
<xs:element name="skillLevel" type="xs:unsignedByte" />
|
||||
<xs:element name="hasLearned" type="xs:boolean" />
|
||||
<xs:element name="socialClass" type="xs:byte" />
|
||||
<xs:element name="itemId" type="xs:unsignedShort" />
|
||||
<xs:element name="itemId" type="xs:unsignedInt" />
|
||||
</xs:choice>
|
||||
</xs:sequence>
|
||||
<xs:attribute name="name" type="xs:string" use="required" />
|
||||
|
@@ -16,6 +16,10 @@
|
||||
*/
|
||||
package handlers.skillconditionhandlers;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.SkillConditionAffectType;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
@@ -28,12 +32,20 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
||||
*/
|
||||
public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
private final int _itemId;
|
||||
private final Set<Integer> _itemIds = new HashSet<>();
|
||||
private final SkillConditionAffectType _affectType;
|
||||
|
||||
public OpEquipItemSkillCondition(StatSet params)
|
||||
{
|
||||
_itemId = params.getInt("itemId");
|
||||
final List<Integer> itemIds = params.getList("itemIds", Integer.class);
|
||||
if (itemIds != null)
|
||||
{
|
||||
_itemIds.addAll(itemIds);
|
||||
}
|
||||
else
|
||||
{
|
||||
_itemIds.add(params.getInt("itemId"));
|
||||
}
|
||||
_affectType = params.getEnum("affectType", SkillConditionAffectType.class);
|
||||
}
|
||||
|
||||
@@ -44,15 +56,48 @@ public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
case CASTER:
|
||||
{
|
||||
return caster.getInventory().isItemEquipped(_itemId);
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case TARGET:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case BOTH:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId) && caster.getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
for (int id : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(id))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
|
@@ -2400,6 +2400,13 @@
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="itemIds">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element maxOccurs="unbounded" name="item" type="xs:unsignedInt" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="amount" type="xs:unsignedByte" />
|
||||
<xs:element name="percentType" type="xs:string" />
|
||||
<xs:element name="alignment" type="xs:string" />
|
||||
@@ -2410,7 +2417,7 @@
|
||||
<xs:element name="skillLevel" type="xs:unsignedByte" />
|
||||
<xs:element name="hasLearned" type="xs:boolean" />
|
||||
<xs:element name="socialClass" type="xs:byte" />
|
||||
<xs:element name="itemId" type="xs:unsignedShort" />
|
||||
<xs:element name="itemId" type="xs:unsignedInt" />
|
||||
</xs:choice>
|
||||
</xs:sequence>
|
||||
<xs:attribute name="name" type="xs:string" use="required" />
|
||||
|
@@ -16,6 +16,10 @@
|
||||
*/
|
||||
package handlers.skillconditionhandlers;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.SkillConditionAffectType;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
@@ -28,12 +32,20 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
||||
*/
|
||||
public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
private final int _itemId;
|
||||
private final Set<Integer> _itemIds = new HashSet<>();
|
||||
private final SkillConditionAffectType _affectType;
|
||||
|
||||
public OpEquipItemSkillCondition(StatSet params)
|
||||
{
|
||||
_itemId = params.getInt("itemId");
|
||||
final List<Integer> itemIds = params.getList("itemIds", Integer.class);
|
||||
if (itemIds != null)
|
||||
{
|
||||
_itemIds.addAll(itemIds);
|
||||
}
|
||||
else
|
||||
{
|
||||
_itemIds.add(params.getInt("itemId"));
|
||||
}
|
||||
_affectType = params.getEnum("affectType", SkillConditionAffectType.class);
|
||||
}
|
||||
|
||||
@@ -44,15 +56,48 @@ public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
case CASTER:
|
||||
{
|
||||
return caster.getInventory().isItemEquipped(_itemId);
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case TARGET:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case BOTH:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId) && caster.getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
for (int id : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(id))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
|
@@ -349,7 +349,7 @@
|
||||
<xs:element minOccurs="0" name="summonPoints" type="xs:unsignedByte" />
|
||||
<xs:element minOccurs="0" maxOccurs="unbounded" name="npcId" type="xs:unsignedShort" />
|
||||
<xs:element minOccurs="0" name="instanceId" type="xs:unsignedByte" />
|
||||
<xs:element minOccurs="0" name="itemId" type="xs:unsignedShort" />
|
||||
<xs:element minOccurs="0" name="itemId" type="xs:unsignedInt />
|
||||
<xs:element minOccurs="0" name="socialClass" type="xs:byte" />
|
||||
<xs:element minOccurs="0" name="teleportBookmarkSlots" type="xs:unsignedByte" />
|
||||
<xs:element minOccurs="0" name="classIds">
|
||||
@@ -2419,6 +2419,13 @@
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="itemIds">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element maxOccurs="unbounded" name="item" type="xs:unsignedInt" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="amount" type="xs:unsignedByte" />
|
||||
<xs:element name="percentType" type="xs:string" />
|
||||
<xs:element name="alignment" type="xs:string" />
|
||||
@@ -2429,7 +2436,7 @@
|
||||
<xs:element name="skillLevel" type="xs:unsignedByte" />
|
||||
<xs:element name="hasLearned" type="xs:boolean" />
|
||||
<xs:element name="socialClass" type="xs:byte" />
|
||||
<xs:element name="itemId" type="xs:unsignedShort" />
|
||||
<xs:element name="itemId" type="xs:unsignedInt" />
|
||||
</xs:choice>
|
||||
</xs:sequence>
|
||||
<xs:attribute name="name" type="xs:string" use="required" />
|
||||
|
@@ -16,6 +16,10 @@
|
||||
*/
|
||||
package handlers.skillconditionhandlers;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.SkillConditionAffectType;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
@@ -28,12 +32,20 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
||||
*/
|
||||
public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
private final int _itemId;
|
||||
private final Set<Integer> _itemIds = new HashSet<>();
|
||||
private final SkillConditionAffectType _affectType;
|
||||
|
||||
public OpEquipItemSkillCondition(StatSet params)
|
||||
{
|
||||
_itemId = params.getInt("itemId");
|
||||
final List<Integer> itemIds = params.getList("itemIds", Integer.class);
|
||||
if (itemIds != null)
|
||||
{
|
||||
_itemIds.addAll(itemIds);
|
||||
}
|
||||
else
|
||||
{
|
||||
_itemIds.add(params.getInt("itemId"));
|
||||
}
|
||||
_affectType = params.getEnum("affectType", SkillConditionAffectType.class);
|
||||
}
|
||||
|
||||
@@ -44,15 +56,48 @@ public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
case CASTER:
|
||||
{
|
||||
return caster.getInventory().isItemEquipped(_itemId);
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case TARGET:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case BOTH:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId) && caster.getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
for (int id : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(id))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
|
@@ -16,6 +16,10 @@
|
||||
*/
|
||||
package handlers.skillconditionhandlers;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.SkillConditionAffectType;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
@@ -28,12 +32,20 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
||||
*/
|
||||
public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
private final int _itemId;
|
||||
private final Set<Integer> _itemIds = new HashSet<>();
|
||||
private final SkillConditionAffectType _affectType;
|
||||
|
||||
public OpEquipItemSkillCondition(StatSet params)
|
||||
{
|
||||
_itemId = params.getInt("itemId");
|
||||
final List<Integer> itemIds = params.getList("itemIds", Integer.class);
|
||||
if (itemIds != null)
|
||||
{
|
||||
_itemIds.addAll(itemIds);
|
||||
}
|
||||
else
|
||||
{
|
||||
_itemIds.add(params.getInt("itemId"));
|
||||
}
|
||||
_affectType = params.getEnum("affectType", SkillConditionAffectType.class);
|
||||
}
|
||||
|
||||
@@ -44,15 +56,48 @@ public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
case CASTER:
|
||||
{
|
||||
return caster.getInventory().isItemEquipped(_itemId);
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case TARGET:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case BOTH:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId) && caster.getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
for (int id : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(id))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
|
@@ -16,6 +16,10 @@
|
||||
*/
|
||||
package handlers.skillconditionhandlers;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.SkillConditionAffectType;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
@@ -28,12 +32,20 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
||||
*/
|
||||
public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
private final int _itemId;
|
||||
private final Set<Integer> _itemIds = new HashSet<>();
|
||||
private final SkillConditionAffectType _affectType;
|
||||
|
||||
public OpEquipItemSkillCondition(StatSet params)
|
||||
{
|
||||
_itemId = params.getInt("itemId");
|
||||
final List<Integer> itemIds = params.getList("itemIds", Integer.class);
|
||||
if (itemIds != null)
|
||||
{
|
||||
_itemIds.addAll(itemIds);
|
||||
}
|
||||
else
|
||||
{
|
||||
_itemIds.add(params.getInt("itemId"));
|
||||
}
|
||||
_affectType = params.getEnum("affectType", SkillConditionAffectType.class);
|
||||
}
|
||||
|
||||
@@ -44,15 +56,48 @@ public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
case CASTER:
|
||||
{
|
||||
return caster.getInventory().isItemEquipped(_itemId);
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case TARGET:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case BOTH:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId) && caster.getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
for (int id : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(id))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
|
@@ -16,6 +16,10 @@
|
||||
*/
|
||||
package handlers.skillconditionhandlers;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.SkillConditionAffectType;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
@@ -28,12 +32,20 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
||||
*/
|
||||
public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
private final int _itemId;
|
||||
private final Set<Integer> _itemIds = new HashSet<>();
|
||||
private final SkillConditionAffectType _affectType;
|
||||
|
||||
public OpEquipItemSkillCondition(StatSet params)
|
||||
{
|
||||
_itemId = params.getInt("itemId");
|
||||
final List<Integer> itemIds = params.getList("itemIds", Integer.class);
|
||||
if (itemIds != null)
|
||||
{
|
||||
_itemIds.addAll(itemIds);
|
||||
}
|
||||
else
|
||||
{
|
||||
_itemIds.add(params.getInt("itemId"));
|
||||
}
|
||||
_affectType = params.getEnum("affectType", SkillConditionAffectType.class);
|
||||
}
|
||||
|
||||
@@ -44,15 +56,48 @@ public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
case CASTER:
|
||||
{
|
||||
return caster.getInventory().isItemEquipped(_itemId);
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case TARGET:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case BOTH:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId) && caster.getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
for (int id : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(id))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
|
@@ -16,6 +16,10 @@
|
||||
*/
|
||||
package handlers.skillconditionhandlers;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.SkillConditionAffectType;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
@@ -28,12 +32,20 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
||||
*/
|
||||
public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
private final int _itemId;
|
||||
private final Set<Integer> _itemIds = new HashSet<>();
|
||||
private final SkillConditionAffectType _affectType;
|
||||
|
||||
public OpEquipItemSkillCondition(StatSet params)
|
||||
{
|
||||
_itemId = params.getInt("itemId");
|
||||
final List<Integer> itemIds = params.getList("itemIds", Integer.class);
|
||||
if (itemIds != null)
|
||||
{
|
||||
_itemIds.addAll(itemIds);
|
||||
}
|
||||
else
|
||||
{
|
||||
_itemIds.add(params.getInt("itemId"));
|
||||
}
|
||||
_affectType = params.getEnum("affectType", SkillConditionAffectType.class);
|
||||
}
|
||||
|
||||
@@ -44,15 +56,48 @@ public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
case CASTER:
|
||||
{
|
||||
return caster.getInventory().isItemEquipped(_itemId);
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case TARGET:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case BOTH:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId) && caster.getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
for (int id : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(id))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
|
@@ -16,6 +16,10 @@
|
||||
*/
|
||||
package handlers.skillconditionhandlers;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.SkillConditionAffectType;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
@@ -28,12 +32,20 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
||||
*/
|
||||
public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
private final int _itemId;
|
||||
private final Set<Integer> _itemIds = new HashSet<>();
|
||||
private final SkillConditionAffectType _affectType;
|
||||
|
||||
public OpEquipItemSkillCondition(StatSet params)
|
||||
{
|
||||
_itemId = params.getInt("itemId");
|
||||
final List<Integer> itemIds = params.getList("itemIds", Integer.class);
|
||||
if (itemIds != null)
|
||||
{
|
||||
_itemIds.addAll(itemIds);
|
||||
}
|
||||
else
|
||||
{
|
||||
_itemIds.add(params.getInt("itemId"));
|
||||
}
|
||||
_affectType = params.getEnum("affectType", SkillConditionAffectType.class);
|
||||
}
|
||||
|
||||
@@ -44,15 +56,48 @@ public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
case CASTER:
|
||||
{
|
||||
return caster.getInventory().isItemEquipped(_itemId);
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case TARGET:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case BOTH:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId) && caster.getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
for (int id : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(id))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
|
@@ -16,6 +16,10 @@
|
||||
*/
|
||||
package handlers.skillconditionhandlers;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.SkillConditionAffectType;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
@@ -28,12 +32,20 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
||||
*/
|
||||
public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
private final int _itemId;
|
||||
private final Set<Integer> _itemIds = new HashSet<>();
|
||||
private final SkillConditionAffectType _affectType;
|
||||
|
||||
public OpEquipItemSkillCondition(StatSet params)
|
||||
{
|
||||
_itemId = params.getInt("itemId");
|
||||
final List<Integer> itemIds = params.getList("itemIds", Integer.class);
|
||||
if (itemIds != null)
|
||||
{
|
||||
_itemIds.addAll(itemIds);
|
||||
}
|
||||
else
|
||||
{
|
||||
_itemIds.add(params.getInt("itemId"));
|
||||
}
|
||||
_affectType = params.getEnum("affectType", SkillConditionAffectType.class);
|
||||
}
|
||||
|
||||
@@ -44,15 +56,48 @@ public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
case CASTER:
|
||||
{
|
||||
return caster.getInventory().isItemEquipped(_itemId);
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case TARGET:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case BOTH:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId) && caster.getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
for (int id : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(id))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
|
@@ -16,6 +16,10 @@
|
||||
*/
|
||||
package handlers.skillconditionhandlers;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.SkillConditionAffectType;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
@@ -28,12 +32,20 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
||||
*/
|
||||
public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
private final int _itemId;
|
||||
private final Set<Integer> _itemIds = new HashSet<>();
|
||||
private final SkillConditionAffectType _affectType;
|
||||
|
||||
public OpEquipItemSkillCondition(StatSet params)
|
||||
{
|
||||
_itemId = params.getInt("itemId");
|
||||
final List<Integer> itemIds = params.getList("itemIds", Integer.class);
|
||||
if (itemIds != null)
|
||||
{
|
||||
_itemIds.addAll(itemIds);
|
||||
}
|
||||
else
|
||||
{
|
||||
_itemIds.add(params.getInt("itemId"));
|
||||
}
|
||||
_affectType = params.getEnum("affectType", SkillConditionAffectType.class);
|
||||
}
|
||||
|
||||
@@ -44,15 +56,48 @@ public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
case CASTER:
|
||||
{
|
||||
return caster.getInventory().isItemEquipped(_itemId);
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case TARGET:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case BOTH:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId) && caster.getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
for (int id : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(id))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
|
@@ -16,6 +16,10 @@
|
||||
*/
|
||||
package handlers.skillconditionhandlers;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.SkillConditionAffectType;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
@@ -28,12 +32,20 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
||||
*/
|
||||
public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
private final int _itemId;
|
||||
private final Set<Integer> _itemIds = new HashSet<>();
|
||||
private final SkillConditionAffectType _affectType;
|
||||
|
||||
public OpEquipItemSkillCondition(StatSet params)
|
||||
{
|
||||
_itemId = params.getInt("itemId");
|
||||
final List<Integer> itemIds = params.getList("itemIds", Integer.class);
|
||||
if (itemIds != null)
|
||||
{
|
||||
_itemIds.addAll(itemIds);
|
||||
}
|
||||
else
|
||||
{
|
||||
_itemIds.add(params.getInt("itemId"));
|
||||
}
|
||||
_affectType = params.getEnum("affectType", SkillConditionAffectType.class);
|
||||
}
|
||||
|
||||
@@ -44,15 +56,48 @@ public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
case CASTER:
|
||||
{
|
||||
return caster.getInventory().isItemEquipped(_itemId);
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case TARGET:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case BOTH:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId) && caster.getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
for (int id : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(id))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
|
@@ -16,6 +16,10 @@
|
||||
*/
|
||||
package handlers.skillconditionhandlers;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.SkillConditionAffectType;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
@@ -28,12 +32,20 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
||||
*/
|
||||
public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
private final int _itemId;
|
||||
private final Set<Integer> _itemIds = new HashSet<>();
|
||||
private final SkillConditionAffectType _affectType;
|
||||
|
||||
public OpEquipItemSkillCondition(StatSet params)
|
||||
{
|
||||
_itemId = params.getInt("itemId");
|
||||
final List<Integer> itemIds = params.getList("itemIds", Integer.class);
|
||||
if (itemIds != null)
|
||||
{
|
||||
_itemIds.addAll(itemIds);
|
||||
}
|
||||
else
|
||||
{
|
||||
_itemIds.add(params.getInt("itemId"));
|
||||
}
|
||||
_affectType = params.getEnum("affectType", SkillConditionAffectType.class);
|
||||
}
|
||||
|
||||
@@ -44,15 +56,48 @@ public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
case CASTER:
|
||||
{
|
||||
return caster.getInventory().isItemEquipped(_itemId);
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case TARGET:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case BOTH:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId) && caster.getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
for (int id : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(id))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
|
@@ -2293,6 +2293,13 @@
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="itemIds">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element maxOccurs="unbounded" name="item" type="xs:unsignedInt" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="amount" type="xs:unsignedByte" />
|
||||
<xs:element name="percentType" type="xs:string" />
|
||||
<xs:element name="alignment" type="xs:string" />
|
||||
|
@@ -16,6 +16,10 @@
|
||||
*/
|
||||
package handlers.skillconditionhandlers;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.SkillConditionAffectType;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
@@ -28,12 +32,20 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
||||
*/
|
||||
public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
private final int _itemId;
|
||||
private final Set<Integer> _itemIds = new HashSet<>();
|
||||
private final SkillConditionAffectType _affectType;
|
||||
|
||||
public OpEquipItemSkillCondition(StatSet params)
|
||||
{
|
||||
_itemId = params.getInt("itemId");
|
||||
final List<Integer> itemIds = params.getList("itemIds", Integer.class);
|
||||
if (itemIds != null)
|
||||
{
|
||||
_itemIds.addAll(itemIds);
|
||||
}
|
||||
else
|
||||
{
|
||||
_itemIds.add(params.getInt("itemId"));
|
||||
}
|
||||
_affectType = params.getEnum("affectType", SkillConditionAffectType.class);
|
||||
}
|
||||
|
||||
@@ -44,15 +56,48 @@ public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
case CASTER:
|
||||
{
|
||||
return caster.getInventory().isItemEquipped(_itemId);
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case TARGET:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case BOTH:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId) && caster.getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
for (int id : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(id))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
|
@@ -320,7 +320,15 @@
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="itemIds">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element maxOccurs="unbounded" name="item" type="xs:unsignedInt" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="skillId" type="xs:unsignedShort" />
|
||||
<xs:element name="skillId" type="xs:unsignedInt" />
|
||||
<xs:element name="affectType" type="xs:string" />
|
||||
<xs:element name="race">
|
||||
<xs:complexType mixed="true">
|
||||
|
@@ -16,6 +16,10 @@
|
||||
*/
|
||||
package handlers.skillconditionhandlers;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.SkillConditionAffectType;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
@@ -28,12 +32,20 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
||||
*/
|
||||
public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
private final int _itemId;
|
||||
private final Set<Integer> _itemIds = new HashSet<>();
|
||||
private final SkillConditionAffectType _affectType;
|
||||
|
||||
public OpEquipItemSkillCondition(StatSet params)
|
||||
{
|
||||
_itemId = params.getInt("itemId");
|
||||
final List<Integer> itemIds = params.getList("itemIds", Integer.class);
|
||||
if (itemIds != null)
|
||||
{
|
||||
_itemIds.addAll(itemIds);
|
||||
}
|
||||
else
|
||||
{
|
||||
_itemIds.add(params.getInt("itemId"));
|
||||
}
|
||||
_affectType = params.getEnum("affectType", SkillConditionAffectType.class);
|
||||
}
|
||||
|
||||
@@ -44,15 +56,48 @@ public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
case CASTER:
|
||||
{
|
||||
return caster.getInventory().isItemEquipped(_itemId);
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case TARGET:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case BOTH:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId) && caster.getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
for (int id : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(id))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
|
@@ -320,7 +320,15 @@
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="itemIds">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element maxOccurs="unbounded" name="item" type="xs:unsignedInt" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="skillId" type="xs:unsignedShort" />
|
||||
<xs:element name="skillId" type="xs:unsignedInt" />
|
||||
<xs:element name="affectType" type="xs:string" />
|
||||
<xs:element name="race">
|
||||
<xs:complexType mixed="true">
|
||||
|
@@ -16,6 +16,10 @@
|
||||
*/
|
||||
package handlers.skillconditionhandlers;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import org.l2jmobius.gameserver.enums.SkillConditionAffectType;
|
||||
import org.l2jmobius.gameserver.model.StatSet;
|
||||
import org.l2jmobius.gameserver.model.WorldObject;
|
||||
@@ -28,12 +32,20 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
||||
*/
|
||||
public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
private final int _itemId;
|
||||
private final Set<Integer> _itemIds = new HashSet<>();
|
||||
private final SkillConditionAffectType _affectType;
|
||||
|
||||
public OpEquipItemSkillCondition(StatSet params)
|
||||
{
|
||||
_itemId = params.getInt("itemId");
|
||||
final List<Integer> itemIds = params.getList("itemIds", Integer.class);
|
||||
if (itemIds != null)
|
||||
{
|
||||
_itemIds.addAll(itemIds);
|
||||
}
|
||||
else
|
||||
{
|
||||
_itemIds.add(params.getInt("itemId"));
|
||||
}
|
||||
_affectType = params.getEnum("affectType", SkillConditionAffectType.class);
|
||||
}
|
||||
|
||||
@@ -44,15 +56,48 @@ public class OpEquipItemSkillCondition implements ISkillCondition
|
||||
{
|
||||
case CASTER:
|
||||
{
|
||||
return caster.getInventory().isItemEquipped(_itemId);
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case TARGET:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case BOTH:
|
||||
{
|
||||
return (target != null) && target.isPlayer() && target.getActingPlayer().getInventory().isItemEquipped(_itemId) && caster.getInventory().isItemEquipped(_itemId);
|
||||
if ((target != null) && target.isPlayer())
|
||||
{
|
||||
for (int itemId : _itemIds)
|
||||
{
|
||||
if (target.getActingPlayer().getInventory().isItemEquipped(itemId))
|
||||
{
|
||||
for (int id : _itemIds)
|
||||
{
|
||||
if (caster.getInventory().isItemEquipped(id))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
|
@@ -326,7 +326,15 @@
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="itemIds">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
<xs:element maxOccurs="unbounded" name="item" type="xs:unsignedInt" />
|
||||
</xs:sequence>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="skillId" type="xs:unsignedShort" />
|
||||
<xs:element name="skillId" type="xs:unsignedInt" />
|
||||
<xs:element name="affectType" type="xs:string" />
|
||||
<xs:element name="race">
|
||||
<xs:complexType mixed="true">
|
||||
|
Reference in New Issue
Block a user