Removed stream usage from AbstractStatEffect.

This commit is contained in:
MobiusDevelopment 2023-01-08 13:11:39 +00:00
parent 9affd41455
commit 4bf8062fd4
26 changed files with 494 additions and 286 deletions

View File

@ -32,7 +32,7 @@ import org.l2jmobius.gameserver.model.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public abstract class AbstractStatEffect extends AbstractEffect
{
@ -111,21 +111,29 @@ public abstract class AbstractStatEffect extends AbstractEffect
@Override
public void pump(Creature effected, Skill skill)
{
if (_conditions.isEmpty() || _conditions.stream().allMatch(cond -> cond.test(effected, effected, skill)))
if (!_conditions.isEmpty())
{
switch (_mode)
for (Condition cond : _conditions)
{
case DIFF:
if (!cond.test(effected, effected, skill))
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
return;
}
}
}
switch (_mode)
{
case DIFF:
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
}
}
}
}

View File

@ -32,7 +32,7 @@ import org.l2jmobius.gameserver.model.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public abstract class AbstractStatEffect extends AbstractEffect
{
@ -111,21 +111,29 @@ public abstract class AbstractStatEffect extends AbstractEffect
@Override
public void pump(Creature effected, Skill skill)
{
if (_conditions.isEmpty() || _conditions.stream().allMatch(cond -> cond.test(effected, effected, skill)))
if (!_conditions.isEmpty())
{
switch (_mode)
for (Condition cond : _conditions)
{
case DIFF:
if (!cond.test(effected, effected, skill))
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
return;
}
}
}
switch (_mode)
{
case DIFF:
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
}
}
}
}

View File

@ -32,7 +32,7 @@ import org.l2jmobius.gameserver.model.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public abstract class AbstractStatEffect extends AbstractEffect
{
@ -111,21 +111,29 @@ public abstract class AbstractStatEffect extends AbstractEffect
@Override
public void pump(Creature effected, Skill skill)
{
if (_conditions.isEmpty() || _conditions.stream().allMatch(cond -> cond.test(effected, effected, skill)))
if (!_conditions.isEmpty())
{
switch (_mode)
for (Condition cond : _conditions)
{
case DIFF:
if (!cond.test(effected, effected, skill))
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
return;
}
}
}
switch (_mode)
{
case DIFF:
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
}
}
}
}

View File

@ -32,7 +32,7 @@ import org.l2jmobius.gameserver.model.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public abstract class AbstractStatEffect extends AbstractEffect
{
@ -111,21 +111,29 @@ public abstract class AbstractStatEffect extends AbstractEffect
@Override
public void pump(Creature effected, Skill skill)
{
if (_conditions.isEmpty() || _conditions.stream().allMatch(cond -> cond.test(effected, effected, skill)))
if (!_conditions.isEmpty())
{
switch (_mode)
for (Condition cond : _conditions)
{
case DIFF:
if (!cond.test(effected, effected, skill))
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
return;
}
}
}
switch (_mode)
{
case DIFF:
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
}
}
}
}

View File

@ -32,7 +32,7 @@ import org.l2jmobius.gameserver.model.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public abstract class AbstractStatEffect extends AbstractEffect
{
@ -111,21 +111,29 @@ public abstract class AbstractStatEffect extends AbstractEffect
@Override
public void pump(Creature effected, Skill skill)
{
if (_conditions.isEmpty() || _conditions.stream().allMatch(cond -> cond.test(effected, effected, skill)))
if (!_conditions.isEmpty())
{
switch (_mode)
for (Condition cond : _conditions)
{
case DIFF:
if (!cond.test(effected, effected, skill))
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
return;
}
}
}
switch (_mode)
{
case DIFF:
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
}
}
}
}

View File

@ -32,7 +32,7 @@ import org.l2jmobius.gameserver.model.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public abstract class AbstractStatEffect extends AbstractEffect
{
@ -111,21 +111,29 @@ public abstract class AbstractStatEffect extends AbstractEffect
@Override
public void pump(Creature effected, Skill skill)
{
if (_conditions.isEmpty() || _conditions.stream().allMatch(cond -> cond.test(effected, effected, skill)))
if (!_conditions.isEmpty())
{
switch (_mode)
for (Condition cond : _conditions)
{
case DIFF:
if (!cond.test(effected, effected, skill))
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
return;
}
}
}
switch (_mode)
{
case DIFF:
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
}
}
}
}

View File

@ -32,7 +32,7 @@ import org.l2jmobius.gameserver.model.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public abstract class AbstractStatEffect extends AbstractEffect
{
@ -111,21 +111,29 @@ public abstract class AbstractStatEffect extends AbstractEffect
@Override
public void pump(Creature effected, Skill skill)
{
if (_conditions.isEmpty() || _conditions.stream().allMatch(cond -> cond.test(effected, effected, skill)))
if (!_conditions.isEmpty())
{
switch (_mode)
for (Condition cond : _conditions)
{
case DIFF:
if (!cond.test(effected, effected, skill))
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
return;
}
}
}
switch (_mode)
{
case DIFF:
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
}
}
}
}

View File

@ -32,7 +32,7 @@ import org.l2jmobius.gameserver.model.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public abstract class AbstractStatEffect extends AbstractEffect
{
@ -111,21 +111,29 @@ public abstract class AbstractStatEffect extends AbstractEffect
@Override
public void pump(Creature effected, Skill skill)
{
if (_conditions.isEmpty() || _conditions.stream().allMatch(cond -> cond.test(effected, effected, skill)))
if (!_conditions.isEmpty())
{
switch (_mode)
for (Condition cond : _conditions)
{
case DIFF:
if (!cond.test(effected, effected, skill))
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
return;
}
}
}
switch (_mode)
{
case DIFF:
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
}
}
}
}

View File

@ -32,7 +32,7 @@ import org.l2jmobius.gameserver.model.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public abstract class AbstractStatEffect extends AbstractEffect
{
@ -111,21 +111,29 @@ public abstract class AbstractStatEffect extends AbstractEffect
@Override
public void pump(Creature effected, Skill skill)
{
if (_conditions.isEmpty() || _conditions.stream().allMatch(cond -> cond.test(effected, effected, skill)))
if (!_conditions.isEmpty())
{
switch (_mode)
for (Condition cond : _conditions)
{
case DIFF:
if (!cond.test(effected, effected, skill))
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
return;
}
}
}
switch (_mode)
{
case DIFF:
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
}
}
}
}

View File

@ -32,7 +32,7 @@ import org.l2jmobius.gameserver.model.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public abstract class AbstractStatEffect extends AbstractEffect
{
@ -111,21 +111,29 @@ public abstract class AbstractStatEffect extends AbstractEffect
@Override
public void pump(Creature effected, Skill skill)
{
if (_conditions.isEmpty() || _conditions.stream().allMatch(cond -> cond.test(effected, effected, skill)))
if (!_conditions.isEmpty())
{
switch (_mode)
for (Condition cond : _conditions)
{
case DIFF:
if (!cond.test(effected, effected, skill))
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
return;
}
}
}
switch (_mode)
{
case DIFF:
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
}
}
}
}

View File

@ -32,7 +32,7 @@ import org.l2jmobius.gameserver.model.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public abstract class AbstractStatEffect extends AbstractEffect
{
@ -111,21 +111,29 @@ public abstract class AbstractStatEffect extends AbstractEffect
@Override
public void pump(Creature effected, Skill skill)
{
if (_conditions.isEmpty() || _conditions.stream().allMatch(cond -> cond.test(effected, effected, skill)))
if (!_conditions.isEmpty())
{
switch (_mode)
for (Condition cond : _conditions)
{
case DIFF:
if (!cond.test(effected, effected, skill))
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
return;
}
}
}
switch (_mode)
{
case DIFF:
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
}
}
}
}

View File

@ -32,7 +32,7 @@ import org.l2jmobius.gameserver.model.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public abstract class AbstractStatEffect extends AbstractEffect
{
@ -111,21 +111,29 @@ public abstract class AbstractStatEffect extends AbstractEffect
@Override
public void pump(Creature effected, Skill skill)
{
if (_conditions.isEmpty() || _conditions.stream().allMatch(cond -> cond.test(effected, effected, skill)))
if (!_conditions.isEmpty())
{
switch (_mode)
for (Condition cond : _conditions)
{
case DIFF:
if (!cond.test(effected, effected, skill))
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
return;
}
}
}
switch (_mode)
{
case DIFF:
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
}
}
}
}

View File

@ -32,7 +32,7 @@ import org.l2jmobius.gameserver.model.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public abstract class AbstractStatEffect extends AbstractEffect
{
@ -111,21 +111,29 @@ public abstract class AbstractStatEffect extends AbstractEffect
@Override
public void pump(Creature effected, Skill skill)
{
if (_conditions.isEmpty() || _conditions.stream().allMatch(cond -> cond.test(effected, effected, skill)))
if (!_conditions.isEmpty())
{
switch (_mode)
for (Condition cond : _conditions)
{
case DIFF:
if (!cond.test(effected, effected, skill))
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
return;
}
}
}
switch (_mode)
{
case DIFF:
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
}
}
}
}

View File

@ -32,7 +32,7 @@ import org.l2jmobius.gameserver.model.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public abstract class AbstractStatEffect extends AbstractEffect
{
@ -111,21 +111,29 @@ public abstract class AbstractStatEffect extends AbstractEffect
@Override
public void pump(Creature effected, Skill skill)
{
if (_conditions.isEmpty() || _conditions.stream().allMatch(cond -> cond.test(effected, effected, skill)))
if (!_conditions.isEmpty())
{
switch (_mode)
for (Condition cond : _conditions)
{
case DIFF:
if (!cond.test(effected, effected, skill))
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
return;
}
}
}
switch (_mode)
{
case DIFF:
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
}
}
}
}

View File

@ -32,7 +32,7 @@ import org.l2jmobius.gameserver.model.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public abstract class AbstractStatEffect extends AbstractEffect
{
@ -111,21 +111,29 @@ public abstract class AbstractStatEffect extends AbstractEffect
@Override
public void pump(Creature effected, Skill skill)
{
if (_conditions.isEmpty() || _conditions.stream().allMatch(cond -> cond.test(effected, effected, skill)))
if (!_conditions.isEmpty())
{
switch (_mode)
for (Condition cond : _conditions)
{
case DIFF:
if (!cond.test(effected, effected, skill))
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
return;
}
}
}
switch (_mode)
{
case DIFF:
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
}
}
}
}

View File

@ -32,7 +32,7 @@ import org.l2jmobius.gameserver.model.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public abstract class AbstractStatEffect extends AbstractEffect
{
@ -111,21 +111,29 @@ public abstract class AbstractStatEffect extends AbstractEffect
@Override
public void pump(Creature effected, Skill skill)
{
if (_conditions.isEmpty() || _conditions.stream().allMatch(cond -> cond.test(effected, effected, skill)))
if (!_conditions.isEmpty())
{
switch (_mode)
for (Condition cond : _conditions)
{
case DIFF:
if (!cond.test(effected, effected, skill))
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
return;
}
}
}
switch (_mode)
{
case DIFF:
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
}
}
}
}

View File

@ -32,7 +32,7 @@ import org.l2jmobius.gameserver.model.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public abstract class AbstractStatEffect extends AbstractEffect
{
@ -111,21 +111,29 @@ public abstract class AbstractStatEffect extends AbstractEffect
@Override
public void pump(Creature effected, Skill skill)
{
if (_conditions.isEmpty() || _conditions.stream().allMatch(cond -> cond.test(effected, effected, skill)))
if (!_conditions.isEmpty())
{
switch (_mode)
for (Condition cond : _conditions)
{
case DIFF:
if (!cond.test(effected, effected, skill))
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
return;
}
}
}
switch (_mode)
{
case DIFF:
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
}
}
}
}

View File

@ -32,7 +32,7 @@ import org.l2jmobius.gameserver.model.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public abstract class AbstractStatEffect extends AbstractEffect
{
@ -111,21 +111,29 @@ public abstract class AbstractStatEffect extends AbstractEffect
@Override
public void pump(Creature effected, Skill skill)
{
if (_conditions.isEmpty() || _conditions.stream().allMatch(cond -> cond.test(effected, effected, skill)))
if (!_conditions.isEmpty())
{
switch (_mode)
for (Condition cond : _conditions)
{
case DIFF:
if (!cond.test(effected, effected, skill))
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
return;
}
}
}
switch (_mode)
{
case DIFF:
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
}
}
}
}

View File

@ -32,7 +32,7 @@ import org.l2jmobius.gameserver.model.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public abstract class AbstractStatEffect extends AbstractEffect
{
@ -111,21 +111,29 @@ public abstract class AbstractStatEffect extends AbstractEffect
@Override
public void pump(Creature effected, Skill skill)
{
if (_conditions.isEmpty() || _conditions.stream().allMatch(cond -> cond.test(effected, effected, skill)))
if (!_conditions.isEmpty())
{
switch (_mode)
for (Condition cond : _conditions)
{
case DIFF:
if (!cond.test(effected, effected, skill))
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
return;
}
}
}
switch (_mode)
{
case DIFF:
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
}
}
}
}

View File

@ -32,7 +32,7 @@ import org.l2jmobius.gameserver.model.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public abstract class AbstractStatEffect extends AbstractEffect
{
@ -111,21 +111,29 @@ public abstract class AbstractStatEffect extends AbstractEffect
@Override
public void pump(Creature effected, Skill skill)
{
if (_conditions.isEmpty() || _conditions.stream().allMatch(cond -> cond.test(effected, effected, skill)))
if (!_conditions.isEmpty())
{
switch (_mode)
for (Condition cond : _conditions)
{
case DIFF:
if (!cond.test(effected, effected, skill))
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
return;
}
}
}
switch (_mode)
{
case DIFF:
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
}
}
}
}

View File

@ -32,7 +32,7 @@ import org.l2jmobius.gameserver.model.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public abstract class AbstractStatEffect extends AbstractEffect
{
@ -111,21 +111,29 @@ public abstract class AbstractStatEffect extends AbstractEffect
@Override
public void pump(Creature effected, Skill skill)
{
if (_conditions.isEmpty() || _conditions.stream().allMatch(cond -> cond.test(effected, effected, skill)))
if (!_conditions.isEmpty())
{
switch (_mode)
for (Condition cond : _conditions)
{
case DIFF:
if (!cond.test(effected, effected, skill))
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
return;
}
}
}
switch (_mode)
{
case DIFF:
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
}
}
}
}

View File

@ -32,7 +32,7 @@ import org.l2jmobius.gameserver.model.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public abstract class AbstractStatEffect extends AbstractEffect
{
@ -111,21 +111,29 @@ public abstract class AbstractStatEffect extends AbstractEffect
@Override
public void pump(Creature effected, Skill skill)
{
if (_conditions.isEmpty() || _conditions.stream().allMatch(cond -> cond.test(effected, effected, skill)))
if (!_conditions.isEmpty())
{
switch (_mode)
for (Condition cond : _conditions)
{
case DIFF:
if (!cond.test(effected, effected, skill))
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
return;
}
}
}
switch (_mode)
{
case DIFF:
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
}
}
}
}

View File

@ -32,7 +32,7 @@ import org.l2jmobius.gameserver.model.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public abstract class AbstractStatEffect extends AbstractEffect
{
@ -111,21 +111,29 @@ public abstract class AbstractStatEffect extends AbstractEffect
@Override
public void pump(Creature effected, Skill skill)
{
if (_conditions.isEmpty() || _conditions.stream().allMatch(cond -> cond.test(effected, effected, skill)))
if (!_conditions.isEmpty())
{
switch (_mode)
for (Condition cond : _conditions)
{
case DIFF:
if (!cond.test(effected, effected, skill))
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
return;
}
}
}
switch (_mode)
{
case DIFF:
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
}
}
}
}

View File

@ -32,7 +32,7 @@ import org.l2jmobius.gameserver.model.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public abstract class AbstractStatEffect extends AbstractEffect
{
@ -111,21 +111,29 @@ public abstract class AbstractStatEffect extends AbstractEffect
@Override
public void pump(Creature effected, Skill skill)
{
if (_conditions.isEmpty() || _conditions.stream().allMatch(cond -> cond.test(effected, effected, skill)))
if (!_conditions.isEmpty())
{
switch (_mode)
for (Condition cond : _conditions)
{
case DIFF:
if (!cond.test(effected, effected, skill))
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
return;
}
}
}
switch (_mode)
{
case DIFF:
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
}
}
}
}

View File

@ -32,7 +32,7 @@ import org.l2jmobius.gameserver.model.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public abstract class AbstractStatEffect extends AbstractEffect
{
@ -111,21 +111,29 @@ public abstract class AbstractStatEffect extends AbstractEffect
@Override
public void pump(Creature effected, Skill skill)
{
if (_conditions.isEmpty() || _conditions.stream().allMatch(cond -> cond.test(effected, effected, skill)))
if (!_conditions.isEmpty())
{
switch (_mode)
for (Condition cond : _conditions)
{
case DIFF:
if (!cond.test(effected, effected, skill))
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
return;
}
}
}
switch (_mode)
{
case DIFF:
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
}
}
}
}

View File

@ -32,7 +32,7 @@ import org.l2jmobius.gameserver.model.skill.Skill;
import org.l2jmobius.gameserver.model.stats.Stat;
/**
* @author Sdw
* @author Sdw, Mobius
*/
public abstract class AbstractStatEffect extends AbstractEffect
{
@ -111,21 +111,29 @@ public abstract class AbstractStatEffect extends AbstractEffect
@Override
public void pump(Creature effected, Skill skill)
{
if (_conditions.isEmpty() || _conditions.stream().allMatch(cond -> cond.test(effected, effected, skill)))
if (!_conditions.isEmpty())
{
switch (_mode)
for (Condition cond : _conditions)
{
case DIFF:
if (!cond.test(effected, effected, skill))
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
return;
}
}
}
switch (_mode)
{
case DIFF:
{
effected.getStat().mergeAdd(_addStat, _amount);
break;
}
case PER:
{
effected.getStat().mergeMul(_mulStat, (_amount / 100) + 1);
break;
}
}
}
}