Improved AttackAttribute and DefenceAttribute logic.
This commit is contained in:
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class AttackAttribute extends AbstractEffect
|
public class AttackAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public AttackAttribute(StatSet params)
|
public AttackAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_POWER"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_POWER");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_POWER;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_POWER;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -54,6 +54,11 @@ public class AttackAttributeAdd extends AbstractEffect
|
|||||||
|
|
||||||
switch (maxAttribute)
|
switch (maxAttribute)
|
||||||
{
|
{
|
||||||
|
case FIRE:
|
||||||
|
{
|
||||||
|
stat = Stat.FIRE_POWER;
|
||||||
|
break;
|
||||||
|
}
|
||||||
case WATER:
|
case WATER:
|
||||||
{
|
{
|
||||||
stat = Stat.WATER_POWER;
|
stat = Stat.WATER_POWER;
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class DefenceAttribute extends AbstractEffect
|
public class DefenceAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public DefenceAttribute(StatSet params)
|
public DefenceAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_RES"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_RES");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_RES;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_RES;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class AttackAttribute extends AbstractEffect
|
public class AttackAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public AttackAttribute(StatSet params)
|
public AttackAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_POWER"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_POWER");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_POWER;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_POWER;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -54,6 +54,11 @@ public class AttackAttributeAdd extends AbstractEffect
|
|||||||
|
|
||||||
switch (maxAttribute)
|
switch (maxAttribute)
|
||||||
{
|
{
|
||||||
|
case FIRE:
|
||||||
|
{
|
||||||
|
stat = Stat.FIRE_POWER;
|
||||||
|
break;
|
||||||
|
}
|
||||||
case WATER:
|
case WATER:
|
||||||
{
|
{
|
||||||
stat = Stat.WATER_POWER;
|
stat = Stat.WATER_POWER;
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class DefenceAttribute extends AbstractEffect
|
public class DefenceAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public DefenceAttribute(StatSet params)
|
public DefenceAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_RES"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_RES");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_RES;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_RES;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class AttackAttribute extends AbstractEffect
|
public class AttackAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public AttackAttribute(StatSet params)
|
public AttackAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_POWER"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_POWER");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_POWER;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_POWER;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -54,6 +54,11 @@ public class AttackAttributeAdd extends AbstractEffect
|
|||||||
|
|
||||||
switch (maxAttribute)
|
switch (maxAttribute)
|
||||||
{
|
{
|
||||||
|
case FIRE:
|
||||||
|
{
|
||||||
|
stat = Stat.FIRE_POWER;
|
||||||
|
break;
|
||||||
|
}
|
||||||
case WATER:
|
case WATER:
|
||||||
{
|
{
|
||||||
stat = Stat.WATER_POWER;
|
stat = Stat.WATER_POWER;
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class DefenceAttribute extends AbstractEffect
|
public class DefenceAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public DefenceAttribute(StatSet params)
|
public DefenceAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_RES"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_RES");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_RES;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_RES;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class AttackAttribute extends AbstractEffect
|
public class AttackAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public AttackAttribute(StatSet params)
|
public AttackAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_POWER"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_POWER");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_POWER;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_POWER;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -54,6 +54,11 @@ public class AttackAttributeAdd extends AbstractEffect
|
|||||||
|
|
||||||
switch (maxAttribute)
|
switch (maxAttribute)
|
||||||
{
|
{
|
||||||
|
case FIRE:
|
||||||
|
{
|
||||||
|
stat = Stat.FIRE_POWER;
|
||||||
|
break;
|
||||||
|
}
|
||||||
case WATER:
|
case WATER:
|
||||||
{
|
{
|
||||||
stat = Stat.WATER_POWER;
|
stat = Stat.WATER_POWER;
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class DefenceAttribute extends AbstractEffect
|
public class DefenceAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public DefenceAttribute(StatSet params)
|
public DefenceAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_RES"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_RES");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_RES;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_RES;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class AttackAttribute extends AbstractEffect
|
public class AttackAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public AttackAttribute(StatSet params)
|
public AttackAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_POWER"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_POWER");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_POWER;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_POWER;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -54,6 +54,11 @@ public class AttackAttributeAdd extends AbstractEffect
|
|||||||
|
|
||||||
switch (maxAttribute)
|
switch (maxAttribute)
|
||||||
{
|
{
|
||||||
|
case FIRE:
|
||||||
|
{
|
||||||
|
stat = Stat.FIRE_POWER;
|
||||||
|
break;
|
||||||
|
}
|
||||||
case WATER:
|
case WATER:
|
||||||
{
|
{
|
||||||
stat = Stat.WATER_POWER;
|
stat = Stat.WATER_POWER;
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class DefenceAttribute extends AbstractEffect
|
public class DefenceAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public DefenceAttribute(StatSet params)
|
public DefenceAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_RES"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_RES");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_RES;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_RES;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class AttackAttribute extends AbstractEffect
|
public class AttackAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public AttackAttribute(StatSet params)
|
public AttackAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_POWER"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_POWER");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_POWER;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_POWER;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -54,6 +54,11 @@ public class AttackAttributeAdd extends AbstractEffect
|
|||||||
|
|
||||||
switch (maxAttribute)
|
switch (maxAttribute)
|
||||||
{
|
{
|
||||||
|
case FIRE:
|
||||||
|
{
|
||||||
|
stat = Stat.FIRE_POWER;
|
||||||
|
break;
|
||||||
|
}
|
||||||
case WATER:
|
case WATER:
|
||||||
{
|
{
|
||||||
stat = Stat.WATER_POWER;
|
stat = Stat.WATER_POWER;
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class DefenceAttribute extends AbstractEffect
|
public class DefenceAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public DefenceAttribute(StatSet params)
|
public DefenceAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_RES"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_RES");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_RES;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_RES;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class AttackAttribute extends AbstractEffect
|
public class AttackAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public AttackAttribute(StatSet params)
|
public AttackAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_POWER"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_POWER");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_POWER;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_POWER;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -54,6 +54,11 @@ public class AttackAttributeAdd extends AbstractEffect
|
|||||||
|
|
||||||
switch (maxAttribute)
|
switch (maxAttribute)
|
||||||
{
|
{
|
||||||
|
case FIRE:
|
||||||
|
{
|
||||||
|
stat = Stat.FIRE_POWER;
|
||||||
|
break;
|
||||||
|
}
|
||||||
case WATER:
|
case WATER:
|
||||||
{
|
{
|
||||||
stat = Stat.WATER_POWER;
|
stat = Stat.WATER_POWER;
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class DefenceAttribute extends AbstractEffect
|
public class DefenceAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public DefenceAttribute(StatSet params)
|
public DefenceAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_RES"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_RES");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_RES;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_RES;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class AttackAttribute extends AbstractEffect
|
public class AttackAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public AttackAttribute(StatSet params)
|
public AttackAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_POWER"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_POWER");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_POWER;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_POWER;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -54,6 +54,11 @@ public class AttackAttributeAdd extends AbstractEffect
|
|||||||
|
|
||||||
switch (maxAttribute)
|
switch (maxAttribute)
|
||||||
{
|
{
|
||||||
|
case FIRE:
|
||||||
|
{
|
||||||
|
stat = Stat.FIRE_POWER;
|
||||||
|
break;
|
||||||
|
}
|
||||||
case WATER:
|
case WATER:
|
||||||
{
|
{
|
||||||
stat = Stat.WATER_POWER;
|
stat = Stat.WATER_POWER;
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class DefenceAttribute extends AbstractEffect
|
public class DefenceAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public DefenceAttribute(StatSet params)
|
public DefenceAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_RES"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_RES");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_RES;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_RES;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class AttackAttribute extends AbstractEffect
|
public class AttackAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public AttackAttribute(StatSet params)
|
public AttackAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_POWER"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_POWER");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_POWER;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_POWER;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -54,6 +54,11 @@ public class AttackAttributeAdd extends AbstractEffect
|
|||||||
|
|
||||||
switch (maxAttribute)
|
switch (maxAttribute)
|
||||||
{
|
{
|
||||||
|
case FIRE:
|
||||||
|
{
|
||||||
|
stat = Stat.FIRE_POWER;
|
||||||
|
break;
|
||||||
|
}
|
||||||
case WATER:
|
case WATER:
|
||||||
{
|
{
|
||||||
stat = Stat.WATER_POWER;
|
stat = Stat.WATER_POWER;
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class DefenceAttribute extends AbstractEffect
|
public class DefenceAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public DefenceAttribute(StatSet params)
|
public DefenceAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_RES"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_RES");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_RES;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_RES;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class AttackAttribute extends AbstractEffect
|
public class AttackAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public AttackAttribute(StatSet params)
|
public AttackAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_POWER"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_POWER");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_POWER;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_POWER;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -54,6 +54,11 @@ public class AttackAttributeAdd extends AbstractEffect
|
|||||||
|
|
||||||
switch (maxAttribute)
|
switch (maxAttribute)
|
||||||
{
|
{
|
||||||
|
case FIRE:
|
||||||
|
{
|
||||||
|
stat = Stat.FIRE_POWER;
|
||||||
|
break;
|
||||||
|
}
|
||||||
case WATER:
|
case WATER:
|
||||||
{
|
{
|
||||||
stat = Stat.WATER_POWER;
|
stat = Stat.WATER_POWER;
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class DefenceAttribute extends AbstractEffect
|
public class DefenceAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public DefenceAttribute(StatSet params)
|
public DefenceAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_RES"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_RES");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_RES;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_RES;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class AttackAttribute extends AbstractEffect
|
public class AttackAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public AttackAttribute(StatSet params)
|
public AttackAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_POWER"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_POWER");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_POWER;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_POWER;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -54,6 +54,11 @@ public class AttackAttributeAdd extends AbstractEffect
|
|||||||
|
|
||||||
switch (maxAttribute)
|
switch (maxAttribute)
|
||||||
{
|
{
|
||||||
|
case FIRE:
|
||||||
|
{
|
||||||
|
stat = Stat.FIRE_POWER;
|
||||||
|
break;
|
||||||
|
}
|
||||||
case WATER:
|
case WATER:
|
||||||
{
|
{
|
||||||
stat = Stat.WATER_POWER;
|
stat = Stat.WATER_POWER;
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class DefenceAttribute extends AbstractEffect
|
public class DefenceAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public DefenceAttribute(StatSet params)
|
public DefenceAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_RES"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_RES");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_RES;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_RES;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -16,10 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import java.util.HashSet;
|
import java.util.EnumSet;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
|
||||||
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;
|
||||||
@@ -27,12 +26,13 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class AttackAttribute extends AbstractEffect
|
public class AttackAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final Set<AttributeType> _attributes = new HashSet<>();
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public AttackAttribute(StatSet params)
|
public AttackAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
@@ -40,55 +40,32 @@ public class AttackAttribute extends AbstractEffect
|
|||||||
final String attributes = params.getString("attribute", "FIRE");
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
if (attributes.contains(","))
|
if (attributes.contains(","))
|
||||||
{
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
for (String attribute : attributes.split(","))
|
for (String attribute : attributes.split(","))
|
||||||
{
|
{
|
||||||
_attributes.add(AttributeType.findByName(attribute.trim()));
|
_multipleStats.add(Stat.valueOf(attribute + "_POWER"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
_attributes.add(AttributeType.findByName(attributes));
|
_singleStat = Stat.valueOf(attributes + "_POWER");
|
||||||
|
_multipleStats = null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
for (AttributeType attribute : _attributes)
|
if (_singleStat != null)
|
||||||
{
|
{
|
||||||
switch (attribute)
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
case FIRE:
|
}
|
||||||
{
|
|
||||||
effected.getStat().mergeAdd(Stat.FIRE_POWER, _amount);
|
for (Stat stat : _multipleStats)
|
||||||
break;
|
{
|
||||||
}
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
case WATER:
|
|
||||||
{
|
|
||||||
effected.getStat().mergeAdd(Stat.WATER_POWER, _amount);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case WIND:
|
|
||||||
{
|
|
||||||
effected.getStat().mergeAdd(Stat.WIND_POWER, _amount);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
effected.getStat().mergeAdd(Stat.EARTH_POWER, _amount);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
effected.getStat().mergeAdd(Stat.HOLY_POWER, _amount);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
effected.getStat().mergeAdd(Stat.DARK_POWER, _amount);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -16,10 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import java.util.HashSet;
|
import java.util.EnumSet;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
|
||||||
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;
|
||||||
@@ -27,12 +26,13 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class DefenceAttribute extends AbstractEffect
|
public class DefenceAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final Set<AttributeType> _attributes = new HashSet<>();
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public DefenceAttribute(StatSet params)
|
public DefenceAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
@@ -40,55 +40,32 @@ public class DefenceAttribute extends AbstractEffect
|
|||||||
final String attributes = params.getString("attribute", "FIRE");
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
if (attributes.contains(","))
|
if (attributes.contains(","))
|
||||||
{
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
for (String attribute : attributes.split(","))
|
for (String attribute : attributes.split(","))
|
||||||
{
|
{
|
||||||
_attributes.add(AttributeType.findByName(attribute.trim()));
|
_multipleStats.add(Stat.valueOf(attribute + "_RES"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
_attributes.add(AttributeType.findByName(attributes));
|
_singleStat = Stat.valueOf(attributes + "_RES");
|
||||||
|
_multipleStats = null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
for (AttributeType attribute : _attributes)
|
if (_singleStat != null)
|
||||||
{
|
{
|
||||||
switch (attribute)
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
case FIRE:
|
}
|
||||||
{
|
|
||||||
effected.getStat().mergeAdd(Stat.FIRE_RES, _amount);
|
for (Stat stat : _multipleStats)
|
||||||
break;
|
{
|
||||||
}
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
case WATER:
|
|
||||||
{
|
|
||||||
effected.getStat().mergeAdd(Stat.WATER_RES, _amount);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case WIND:
|
|
||||||
{
|
|
||||||
effected.getStat().mergeAdd(Stat.WIND_RES, _amount);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
effected.getStat().mergeAdd(Stat.EARTH_RES, _amount);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
effected.getStat().mergeAdd(Stat.HOLY_RES, _amount);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
effected.getStat().mergeAdd(Stat.DARK_RES, _amount);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class AttackAttribute extends AbstractEffect
|
public class AttackAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public AttackAttribute(StatSet params)
|
public AttackAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_POWER"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_POWER");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_POWER;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_POWER;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -54,6 +54,11 @@ public class AttackAttributeAdd extends AbstractEffect
|
|||||||
|
|
||||||
switch (maxAttribute)
|
switch (maxAttribute)
|
||||||
{
|
{
|
||||||
|
case FIRE:
|
||||||
|
{
|
||||||
|
stat = Stat.FIRE_POWER;
|
||||||
|
break;
|
||||||
|
}
|
||||||
case WATER:
|
case WATER:
|
||||||
{
|
{
|
||||||
stat = Stat.WATER_POWER;
|
stat = Stat.WATER_POWER;
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class DefenceAttribute extends AbstractEffect
|
public class DefenceAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public DefenceAttribute(StatSet params)
|
public DefenceAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_RES"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_RES");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_RES;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_RES;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class AttackAttribute extends AbstractEffect
|
public class AttackAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public AttackAttribute(StatSet params)
|
public AttackAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_POWER"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_POWER");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_POWER;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_POWER;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -54,6 +54,11 @@ public class AttackAttributeAdd extends AbstractEffect
|
|||||||
|
|
||||||
switch (maxAttribute)
|
switch (maxAttribute)
|
||||||
{
|
{
|
||||||
|
case FIRE:
|
||||||
|
{
|
||||||
|
stat = Stat.FIRE_POWER;
|
||||||
|
break;
|
||||||
|
}
|
||||||
case WATER:
|
case WATER:
|
||||||
{
|
{
|
||||||
stat = Stat.WATER_POWER;
|
stat = Stat.WATER_POWER;
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class DefenceAttribute extends AbstractEffect
|
public class DefenceAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public DefenceAttribute(StatSet params)
|
public DefenceAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_RES"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_RES");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_RES;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_RES;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class AttackAttribute extends AbstractEffect
|
public class AttackAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public AttackAttribute(StatSet params)
|
public AttackAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_POWER"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_POWER");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_POWER;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_POWER;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -54,6 +54,11 @@ public class AttackAttributeAdd extends AbstractEffect
|
|||||||
|
|
||||||
switch (maxAttribute)
|
switch (maxAttribute)
|
||||||
{
|
{
|
||||||
|
case FIRE:
|
||||||
|
{
|
||||||
|
stat = Stat.FIRE_POWER;
|
||||||
|
break;
|
||||||
|
}
|
||||||
case WATER:
|
case WATER:
|
||||||
{
|
{
|
||||||
stat = Stat.WATER_POWER;
|
stat = Stat.WATER_POWER;
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class DefenceAttribute extends AbstractEffect
|
public class DefenceAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public DefenceAttribute(StatSet params)
|
public DefenceAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_RES"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_RES");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_RES;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_RES;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class AttackAttribute extends AbstractEffect
|
public class AttackAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public AttackAttribute(StatSet params)
|
public AttackAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_POWER"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_POWER");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_POWER;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_POWER;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -54,6 +54,11 @@ public class AttackAttributeAdd extends AbstractEffect
|
|||||||
|
|
||||||
switch (maxAttribute)
|
switch (maxAttribute)
|
||||||
{
|
{
|
||||||
|
case FIRE:
|
||||||
|
{
|
||||||
|
stat = Stat.FIRE_POWER;
|
||||||
|
break;
|
||||||
|
}
|
||||||
case WATER:
|
case WATER:
|
||||||
{
|
{
|
||||||
stat = Stat.WATER_POWER;
|
stat = Stat.WATER_POWER;
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class DefenceAttribute extends AbstractEffect
|
public class DefenceAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public DefenceAttribute(StatSet params)
|
public DefenceAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_RES"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_RES");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_RES;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_RES;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class AttackAttribute extends AbstractEffect
|
public class AttackAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public AttackAttribute(StatSet params)
|
public AttackAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_POWER"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_POWER");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_POWER;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_POWER;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -54,6 +54,11 @@ public class AttackAttributeAdd extends AbstractEffect
|
|||||||
|
|
||||||
switch (maxAttribute)
|
switch (maxAttribute)
|
||||||
{
|
{
|
||||||
|
case FIRE:
|
||||||
|
{
|
||||||
|
stat = Stat.FIRE_POWER;
|
||||||
|
break;
|
||||||
|
}
|
||||||
case WATER:
|
case WATER:
|
||||||
{
|
{
|
||||||
stat = Stat.WATER_POWER;
|
stat = Stat.WATER_POWER;
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class DefenceAttribute extends AbstractEffect
|
public class DefenceAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public DefenceAttribute(StatSet params)
|
public DefenceAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_RES"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_RES");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_RES;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_RES;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class AttackAttribute extends AbstractEffect
|
public class AttackAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public AttackAttribute(StatSet params)
|
public AttackAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_POWER"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_POWER");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_POWER;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_POWER;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -54,6 +54,11 @@ public class AttackAttributeAdd extends AbstractEffect
|
|||||||
|
|
||||||
switch (maxAttribute)
|
switch (maxAttribute)
|
||||||
{
|
{
|
||||||
|
case FIRE:
|
||||||
|
{
|
||||||
|
stat = Stat.FIRE_POWER;
|
||||||
|
break;
|
||||||
|
}
|
||||||
case WATER:
|
case WATER:
|
||||||
{
|
{
|
||||||
stat = Stat.WATER_POWER;
|
stat = Stat.WATER_POWER;
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class DefenceAttribute extends AbstractEffect
|
public class DefenceAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public DefenceAttribute(StatSet params)
|
public DefenceAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_RES"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_RES");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_RES;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_RES;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class AttackAttribute extends AbstractEffect
|
public class AttackAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public AttackAttribute(StatSet params)
|
public AttackAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_POWER"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_POWER");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_POWER;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_POWER;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -54,6 +54,11 @@ public class AttackAttributeAdd extends AbstractEffect
|
|||||||
|
|
||||||
switch (maxAttribute)
|
switch (maxAttribute)
|
||||||
{
|
{
|
||||||
|
case FIRE:
|
||||||
|
{
|
||||||
|
stat = Stat.FIRE_POWER;
|
||||||
|
break;
|
||||||
|
}
|
||||||
case WATER:
|
case WATER:
|
||||||
{
|
{
|
||||||
stat = Stat.WATER_POWER;
|
stat = Stat.WATER_POWER;
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class DefenceAttribute extends AbstractEffect
|
public class DefenceAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public DefenceAttribute(StatSet params)
|
public DefenceAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_RES"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_RES");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_RES;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_RES;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class AttackAttribute extends AbstractEffect
|
public class AttackAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public AttackAttribute(StatSet params)
|
public AttackAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_POWER"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_POWER");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_POWER;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_POWER;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -54,6 +54,11 @@ public class AttackAttributeAdd extends AbstractEffect
|
|||||||
|
|
||||||
switch (maxAttribute)
|
switch (maxAttribute)
|
||||||
{
|
{
|
||||||
|
case FIRE:
|
||||||
|
{
|
||||||
|
stat = Stat.FIRE_POWER;
|
||||||
|
break;
|
||||||
|
}
|
||||||
case WATER:
|
case WATER:
|
||||||
{
|
{
|
||||||
stat = Stat.WATER_POWER;
|
stat = Stat.WATER_POWER;
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class DefenceAttribute extends AbstractEffect
|
public class DefenceAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public DefenceAttribute(StatSet params)
|
public DefenceAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_RES"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_RES");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_RES;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_RES;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class AttackAttribute extends AbstractEffect
|
public class AttackAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public AttackAttribute(StatSet params)
|
public AttackAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_POWER"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_POWER");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_POWER;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_POWER;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -54,6 +54,11 @@ public class AttackAttributeAdd extends AbstractEffect
|
|||||||
|
|
||||||
switch (maxAttribute)
|
switch (maxAttribute)
|
||||||
{
|
{
|
||||||
|
case FIRE:
|
||||||
|
{
|
||||||
|
stat = Stat.FIRE_POWER;
|
||||||
|
break;
|
||||||
|
}
|
||||||
case WATER:
|
case WATER:
|
||||||
{
|
{
|
||||||
stat = Stat.WATER_POWER;
|
stat = Stat.WATER_POWER;
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class DefenceAttribute extends AbstractEffect
|
public class DefenceAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public DefenceAttribute(StatSet params)
|
public DefenceAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_RES"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_RES");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_RES;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_RES;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class AttackAttribute extends AbstractEffect
|
public class AttackAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public AttackAttribute(StatSet params)
|
public AttackAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_POWER"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_POWER");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_POWER;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_POWER;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -54,6 +54,11 @@ public class AttackAttributeAdd extends AbstractEffect
|
|||||||
|
|
||||||
switch (maxAttribute)
|
switch (maxAttribute)
|
||||||
{
|
{
|
||||||
|
case FIRE:
|
||||||
|
{
|
||||||
|
stat = Stat.FIRE_POWER;
|
||||||
|
break;
|
||||||
|
}
|
||||||
case WATER:
|
case WATER:
|
||||||
{
|
{
|
||||||
stat = Stat.WATER_POWER;
|
stat = Stat.WATER_POWER;
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class DefenceAttribute extends AbstractEffect
|
public class DefenceAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public DefenceAttribute(StatSet params)
|
public DefenceAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_RES"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_RES");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_RES;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_RES;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class AttackAttribute extends AbstractEffect
|
public class AttackAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public AttackAttribute(StatSet params)
|
public AttackAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_POWER"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_POWER");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_POWER;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_POWER;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -54,6 +54,11 @@ public class AttackAttributeAdd extends AbstractEffect
|
|||||||
|
|
||||||
switch (maxAttribute)
|
switch (maxAttribute)
|
||||||
{
|
{
|
||||||
|
case FIRE:
|
||||||
|
{
|
||||||
|
stat = Stat.FIRE_POWER;
|
||||||
|
break;
|
||||||
|
}
|
||||||
case WATER:
|
case WATER:
|
||||||
{
|
{
|
||||||
stat = Stat.WATER_POWER;
|
stat = Stat.WATER_POWER;
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class DefenceAttribute extends AbstractEffect
|
public class DefenceAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public DefenceAttribute(StatSet params)
|
public DefenceAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_RES"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_RES");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_RES;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_RES;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class AttackAttribute extends AbstractEffect
|
public class AttackAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public AttackAttribute(StatSet params)
|
public AttackAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_POWER"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_POWER");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_POWER;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_POWER;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -54,6 +54,11 @@ public class AttackAttributeAdd extends AbstractEffect
|
|||||||
|
|
||||||
switch (maxAttribute)
|
switch (maxAttribute)
|
||||||
{
|
{
|
||||||
|
case FIRE:
|
||||||
|
{
|
||||||
|
stat = Stat.FIRE_POWER;
|
||||||
|
break;
|
||||||
|
}
|
||||||
case WATER:
|
case WATER:
|
||||||
{
|
{
|
||||||
stat = Stat.WATER_POWER;
|
stat = Stat.WATER_POWER;
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class DefenceAttribute extends AbstractEffect
|
public class DefenceAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public DefenceAttribute(StatSet params)
|
public DefenceAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_RES"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_RES");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_RES;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_RES;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class AttackAttribute extends AbstractEffect
|
public class AttackAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public AttackAttribute(StatSet params)
|
public AttackAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_POWER"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_POWER");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_POWER;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_POWER;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_POWER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -54,6 +54,11 @@ public class AttackAttributeAdd extends AbstractEffect
|
|||||||
|
|
||||||
switch (maxAttribute)
|
switch (maxAttribute)
|
||||||
{
|
{
|
||||||
|
case FIRE:
|
||||||
|
{
|
||||||
|
stat = Stat.FIRE_POWER;
|
||||||
|
break;
|
||||||
|
}
|
||||||
case WATER:
|
case WATER:
|
||||||
{
|
{
|
||||||
stat = Stat.WATER_POWER;
|
stat = Stat.WATER_POWER;
|
||||||
|
@@ -16,7 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
import java.util.EnumSet;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
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;
|
||||||
@@ -24,52 +26,46 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class DefenceAttribute extends AbstractEffect
|
public class DefenceAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final AttributeType _attribute;
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public DefenceAttribute(StatSet params)
|
public DefenceAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
_amount = params.getDouble("amount", 0);
|
_amount = params.getDouble("amount", 0);
|
||||||
_attribute = params.getEnum("attribute", AttributeType.class, AttributeType.FIRE);
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
|
if (attributes.contains(","))
|
||||||
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
|
for (String attribute : attributes.split(","))
|
||||||
|
{
|
||||||
|
_multipleStats.add(Stat.valueOf(attribute + "_RES"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_singleStat = Stat.valueOf(attributes + "_RES");
|
||||||
|
_multipleStats = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
Stat stat = Stat.FIRE_RES;
|
if (_singleStat != null)
|
||||||
|
|
||||||
switch (_attribute)
|
|
||||||
{
|
{
|
||||||
case WATER:
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
stat = Stat.WATER_RES;
|
}
|
||||||
break;
|
|
||||||
}
|
for (Stat stat : _multipleStats)
|
||||||
case WIND:
|
{
|
||||||
{
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
stat = Stat.WIND_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
stat = Stat.EARTH_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
stat = Stat.HOLY_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
stat = Stat.DARK_RES;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
effected.getStat().mergeAdd(stat, _amount);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -16,10 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import java.util.HashSet;
|
import java.util.EnumSet;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
|
||||||
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;
|
||||||
@@ -27,12 +26,13 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class AttackAttribute extends AbstractEffect
|
public class AttackAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final Set<AttributeType> _attributes = new HashSet<>();
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public AttackAttribute(StatSet params)
|
public AttackAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
@@ -40,55 +40,32 @@ public class AttackAttribute extends AbstractEffect
|
|||||||
final String attributes = params.getString("attribute", "FIRE");
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
if (attributes.contains(","))
|
if (attributes.contains(","))
|
||||||
{
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
for (String attribute : attributes.split(","))
|
for (String attribute : attributes.split(","))
|
||||||
{
|
{
|
||||||
_attributes.add(AttributeType.findByName(attribute.trim()));
|
_multipleStats.add(Stat.valueOf(attribute + "_POWER"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
_attributes.add(AttributeType.findByName(attributes));
|
_singleStat = Stat.valueOf(attributes + "_POWER");
|
||||||
|
_multipleStats = null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
for (AttributeType attribute : _attributes)
|
if (_singleStat != null)
|
||||||
{
|
{
|
||||||
switch (attribute)
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
case FIRE:
|
}
|
||||||
{
|
|
||||||
effected.getStat().mergeAdd(Stat.FIRE_POWER, _amount);
|
for (Stat stat : _multipleStats)
|
||||||
break;
|
{
|
||||||
}
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
case WATER:
|
|
||||||
{
|
|
||||||
effected.getStat().mergeAdd(Stat.WATER_POWER, _amount);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case WIND:
|
|
||||||
{
|
|
||||||
effected.getStat().mergeAdd(Stat.WIND_POWER, _amount);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
effected.getStat().mergeAdd(Stat.EARTH_POWER, _amount);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
effected.getStat().mergeAdd(Stat.HOLY_POWER, _amount);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
effected.getStat().mergeAdd(Stat.DARK_POWER, _amount);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -16,10 +16,9 @@
|
|||||||
*/
|
*/
|
||||||
package handlers.effecthandlers;
|
package handlers.effecthandlers;
|
||||||
|
|
||||||
import java.util.HashSet;
|
import java.util.EnumSet;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
import org.l2jmobius.gameserver.enums.AttributeType;
|
|
||||||
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;
|
||||||
@@ -27,12 +26,13 @@ import org.l2jmobius.gameserver.model.skill.Skill;
|
|||||||
import org.l2jmobius.gameserver.model.stats.Stat;
|
import org.l2jmobius.gameserver.model.stats.Stat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Sdw
|
* @author Mobius
|
||||||
*/
|
*/
|
||||||
public class DefenceAttribute extends AbstractEffect
|
public class DefenceAttribute extends AbstractEffect
|
||||||
{
|
{
|
||||||
private final Set<AttributeType> _attributes = new HashSet<>();
|
|
||||||
private final double _amount;
|
private final double _amount;
|
||||||
|
private final Stat _singleStat;
|
||||||
|
private final Set<Stat> _multipleStats;
|
||||||
|
|
||||||
public DefenceAttribute(StatSet params)
|
public DefenceAttribute(StatSet params)
|
||||||
{
|
{
|
||||||
@@ -40,55 +40,32 @@ public class DefenceAttribute extends AbstractEffect
|
|||||||
final String attributes = params.getString("attribute", "FIRE");
|
final String attributes = params.getString("attribute", "FIRE");
|
||||||
if (attributes.contains(","))
|
if (attributes.contains(","))
|
||||||
{
|
{
|
||||||
|
_singleStat = null;
|
||||||
|
_multipleStats = EnumSet.noneOf(Stat.class);
|
||||||
for (String attribute : attributes.split(","))
|
for (String attribute : attributes.split(","))
|
||||||
{
|
{
|
||||||
_attributes.add(AttributeType.findByName(attribute.trim()));
|
_multipleStats.add(Stat.valueOf(attribute + "_RES"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
_attributes.add(AttributeType.findByName(attributes));
|
_singleStat = Stat.valueOf(attributes + "_RES");
|
||||||
|
_multipleStats = null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void pump(Creature effected, Skill skill)
|
public void pump(Creature effected, Skill skill)
|
||||||
{
|
{
|
||||||
for (AttributeType attribute : _attributes)
|
if (_singleStat != null)
|
||||||
{
|
{
|
||||||
switch (attribute)
|
effected.getStat().mergeAdd(_singleStat, _amount);
|
||||||
{
|
return;
|
||||||
case FIRE:
|
}
|
||||||
{
|
|
||||||
effected.getStat().mergeAdd(Stat.FIRE_RES, _amount);
|
for (Stat stat : _multipleStats)
|
||||||
break;
|
{
|
||||||
}
|
effected.getStat().mergeAdd(stat, _amount);
|
||||||
case WATER:
|
|
||||||
{
|
|
||||||
effected.getStat().mergeAdd(Stat.WATER_RES, _amount);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case WIND:
|
|
||||||
{
|
|
||||||
effected.getStat().mergeAdd(Stat.WIND_RES, _amount);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case EARTH:
|
|
||||||
{
|
|
||||||
effected.getStat().mergeAdd(Stat.EARTH_RES, _amount);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case HOLY:
|
|
||||||
{
|
|
||||||
effected.getStat().mergeAdd(Stat.HOLY_RES, _amount);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DARK:
|
|
||||||
{
|
|
||||||
effected.getStat().mergeAdd(Stat.DARK_RES, _amount);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user