Support for multiple TargetRace skill condition.
This commit is contained in:
@@ -16,6 +16,10 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.skillconditionhandlers;
|
package handlers.skillconditionhandlers;
|
||||||
|
|
||||||
|
import java.util.EnumSet;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.Race;
|
import org.l2jmobius.gameserver.enums.Race;
|
||||||
import org.l2jmobius.gameserver.model.StatSet;
|
import org.l2jmobius.gameserver.model.StatSet;
|
||||||
import org.l2jmobius.gameserver.model.WorldObject;
|
import org.l2jmobius.gameserver.model.WorldObject;
|
||||||
@@ -24,15 +28,23 @@ import org.l2jmobius.gameserver.model.skill.ISkillCondition;
|
|||||||
import org.l2jmobius.gameserver.model.skill.Skill;
|
import org.l2jmobius.gameserver.model.skill.Skill;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author UnAfraid
|
* @author UnAfraid, Mobius
|
||||||
*/
|
*/
|
||||||
public class TargetRaceSkillCondition implements ISkillCondition
|
public class TargetRaceSkillCondition implements ISkillCondition
|
||||||
{
|
{
|
||||||
private final Race _race;
|
private final Set<Race> _races = EnumSet.noneOf(Race.class);
|
||||||
|
|
||||||
public TargetRaceSkillCondition(StatSet params)
|
public TargetRaceSkillCondition(StatSet params)
|
||||||
{
|
{
|
||||||
_race = params.getEnum("race", Race.class);
|
final List<Race> races = params.getEnumList("race", Race.class);
|
||||||
|
if (races != null)
|
||||||
|
{
|
||||||
|
_races.addAll(races);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_races.add(params.getEnum("race", Race.class));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -42,7 +54,7 @@ public class TargetRaceSkillCondition implements ISkillCondition
|
|||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
final Creature targetCreature = (Creature) target;
|
|
||||||
return targetCreature.getRace() == _race;
|
return _races.contains(((Creature) target).getRace());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -16,6 +16,10 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.skillconditionhandlers;
|
package handlers.skillconditionhandlers;
|
||||||
|
|
||||||
|
import java.util.EnumSet;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.Race;
|
import org.l2jmobius.gameserver.enums.Race;
|
||||||
import org.l2jmobius.gameserver.model.StatSet;
|
import org.l2jmobius.gameserver.model.StatSet;
|
||||||
import org.l2jmobius.gameserver.model.WorldObject;
|
import org.l2jmobius.gameserver.model.WorldObject;
|
||||||
@@ -24,15 +28,23 @@ import org.l2jmobius.gameserver.model.skill.ISkillCondition;
|
|||||||
import org.l2jmobius.gameserver.model.skill.Skill;
|
import org.l2jmobius.gameserver.model.skill.Skill;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author UnAfraid
|
* @author UnAfraid, Mobius
|
||||||
*/
|
*/
|
||||||
public class TargetRaceSkillCondition implements ISkillCondition
|
public class TargetRaceSkillCondition implements ISkillCondition
|
||||||
{
|
{
|
||||||
private final Race _race;
|
private final Set<Race> _races = EnumSet.noneOf(Race.class);
|
||||||
|
|
||||||
public TargetRaceSkillCondition(StatSet params)
|
public TargetRaceSkillCondition(StatSet params)
|
||||||
{
|
{
|
||||||
_race = params.getEnum("race", Race.class);
|
final List<Race> races = params.getEnumList("race", Race.class);
|
||||||
|
if (races != null)
|
||||||
|
{
|
||||||
|
_races.addAll(races);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_races.add(params.getEnum("race", Race.class));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -42,7 +54,7 @@ public class TargetRaceSkillCondition implements ISkillCondition
|
|||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
final Creature targetCreature = (Creature) target;
|
|
||||||
return targetCreature.getRace() == _race;
|
return _races.contains(((Creature) target).getRace());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -16,6 +16,10 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.skillconditionhandlers;
|
package handlers.skillconditionhandlers;
|
||||||
|
|
||||||
|
import java.util.EnumSet;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.Race;
|
import org.l2jmobius.gameserver.enums.Race;
|
||||||
import org.l2jmobius.gameserver.model.StatSet;
|
import org.l2jmobius.gameserver.model.StatSet;
|
||||||
import org.l2jmobius.gameserver.model.WorldObject;
|
import org.l2jmobius.gameserver.model.WorldObject;
|
||||||
@@ -24,15 +28,23 @@ import org.l2jmobius.gameserver.model.skill.ISkillCondition;
|
|||||||
import org.l2jmobius.gameserver.model.skill.Skill;
|
import org.l2jmobius.gameserver.model.skill.Skill;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author UnAfraid
|
* @author UnAfraid, Mobius
|
||||||
*/
|
*/
|
||||||
public class TargetRaceSkillCondition implements ISkillCondition
|
public class TargetRaceSkillCondition implements ISkillCondition
|
||||||
{
|
{
|
||||||
private final Race _race;
|
private final Set<Race> _races = EnumSet.noneOf(Race.class);
|
||||||
|
|
||||||
public TargetRaceSkillCondition(StatSet params)
|
public TargetRaceSkillCondition(StatSet params)
|
||||||
{
|
{
|
||||||
_race = params.getEnum("race", Race.class);
|
final List<Race> races = params.getEnumList("race", Race.class);
|
||||||
|
if (races != null)
|
||||||
|
{
|
||||||
|
_races.addAll(races);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_races.add(params.getEnum("race", Race.class));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -42,7 +54,7 @@ public class TargetRaceSkillCondition implements ISkillCondition
|
|||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
final Creature targetCreature = (Creature) target;
|
|
||||||
return targetCreature.getRace() == _race;
|
return _races.contains(((Creature) target).getRace());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -16,6 +16,10 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.skillconditionhandlers;
|
package handlers.skillconditionhandlers;
|
||||||
|
|
||||||
|
import java.util.EnumSet;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.Race;
|
import org.l2jmobius.gameserver.enums.Race;
|
||||||
import org.l2jmobius.gameserver.model.StatSet;
|
import org.l2jmobius.gameserver.model.StatSet;
|
||||||
import org.l2jmobius.gameserver.model.WorldObject;
|
import org.l2jmobius.gameserver.model.WorldObject;
|
||||||
@@ -24,15 +28,23 @@ import org.l2jmobius.gameserver.model.skill.ISkillCondition;
|
|||||||
import org.l2jmobius.gameserver.model.skill.Skill;
|
import org.l2jmobius.gameserver.model.skill.Skill;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author UnAfraid
|
* @author UnAfraid, Mobius
|
||||||
*/
|
*/
|
||||||
public class TargetRaceSkillCondition implements ISkillCondition
|
public class TargetRaceSkillCondition implements ISkillCondition
|
||||||
{
|
{
|
||||||
private final Race _race;
|
private final Set<Race> _races = EnumSet.noneOf(Race.class);
|
||||||
|
|
||||||
public TargetRaceSkillCondition(StatSet params)
|
public TargetRaceSkillCondition(StatSet params)
|
||||||
{
|
{
|
||||||
_race = params.getEnum("race", Race.class);
|
final List<Race> races = params.getEnumList("race", Race.class);
|
||||||
|
if (races != null)
|
||||||
|
{
|
||||||
|
_races.addAll(races);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_races.add(params.getEnum("race", Race.class));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -42,7 +54,7 @@ public class TargetRaceSkillCondition implements ISkillCondition
|
|||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
final Creature targetCreature = (Creature) target;
|
|
||||||
return targetCreature.getRace() == _race;
|
return _races.contains(((Creature) target).getRace());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -16,6 +16,10 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.skillconditionhandlers;
|
package handlers.skillconditionhandlers;
|
||||||
|
|
||||||
|
import java.util.EnumSet;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.Race;
|
import org.l2jmobius.gameserver.enums.Race;
|
||||||
import org.l2jmobius.gameserver.model.StatSet;
|
import org.l2jmobius.gameserver.model.StatSet;
|
||||||
import org.l2jmobius.gameserver.model.WorldObject;
|
import org.l2jmobius.gameserver.model.WorldObject;
|
||||||
@@ -24,15 +28,23 @@ import org.l2jmobius.gameserver.model.skill.ISkillCondition;
|
|||||||
import org.l2jmobius.gameserver.model.skill.Skill;
|
import org.l2jmobius.gameserver.model.skill.Skill;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author UnAfraid
|
* @author UnAfraid, Mobius
|
||||||
*/
|
*/
|
||||||
public class TargetRaceSkillCondition implements ISkillCondition
|
public class TargetRaceSkillCondition implements ISkillCondition
|
||||||
{
|
{
|
||||||
private final Race _race;
|
private final Set<Race> _races = EnumSet.noneOf(Race.class);
|
||||||
|
|
||||||
public TargetRaceSkillCondition(StatSet params)
|
public TargetRaceSkillCondition(StatSet params)
|
||||||
{
|
{
|
||||||
_race = params.getEnum("race", Race.class);
|
final List<Race> races = params.getEnumList("race", Race.class);
|
||||||
|
if (races != null)
|
||||||
|
{
|
||||||
|
_races.addAll(races);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_races.add(params.getEnum("race", Race.class));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -42,7 +54,7 @@ public class TargetRaceSkillCondition implements ISkillCondition
|
|||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
final Creature targetCreature = (Creature) target;
|
|
||||||
return targetCreature.getRace() == _race;
|
return _races.contains(((Creature) target).getRace());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -16,6 +16,10 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.skillconditionhandlers;
|
package handlers.skillconditionhandlers;
|
||||||
|
|
||||||
|
import java.util.EnumSet;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.Race;
|
import org.l2jmobius.gameserver.enums.Race;
|
||||||
import org.l2jmobius.gameserver.model.StatSet;
|
import org.l2jmobius.gameserver.model.StatSet;
|
||||||
import org.l2jmobius.gameserver.model.WorldObject;
|
import org.l2jmobius.gameserver.model.WorldObject;
|
||||||
@@ -24,15 +28,23 @@ import org.l2jmobius.gameserver.model.skill.ISkillCondition;
|
|||||||
import org.l2jmobius.gameserver.model.skill.Skill;
|
import org.l2jmobius.gameserver.model.skill.Skill;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author UnAfraid
|
* @author UnAfraid, Mobius
|
||||||
*/
|
*/
|
||||||
public class TargetRaceSkillCondition implements ISkillCondition
|
public class TargetRaceSkillCondition implements ISkillCondition
|
||||||
{
|
{
|
||||||
private final Race _race;
|
private final Set<Race> _races = EnumSet.noneOf(Race.class);
|
||||||
|
|
||||||
public TargetRaceSkillCondition(StatSet params)
|
public TargetRaceSkillCondition(StatSet params)
|
||||||
{
|
{
|
||||||
_race = params.getEnum("race", Race.class);
|
final List<Race> races = params.getEnumList("race", Race.class);
|
||||||
|
if (races != null)
|
||||||
|
{
|
||||||
|
_races.addAll(races);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_races.add(params.getEnum("race", Race.class));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -42,7 +54,7 @@ public class TargetRaceSkillCondition implements ISkillCondition
|
|||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
final Creature targetCreature = (Creature) target;
|
|
||||||
return targetCreature.getRace() == _race;
|
return _races.contains(((Creature) target).getRace());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user