foul-magics/Mage/src/main/java/mage/abilities/dynamicvalue/IntPlusDynamicValue.java
2024-02-10 14:52:28 -05:00

53 lines
1.2 KiB
Java

package mage.abilities.dynamicvalue;
import mage.abilities.Ability;
import mage.abilities.effects.Effect;
import mage.game.Game;
/**
*
* @author LevelX2
*/
public class IntPlusDynamicValue implements DynamicValue {
private final DynamicValue value;
private final int baseValue;
public IntPlusDynamicValue(int baseValue, DynamicValue value) {
this.value = value;
this.baseValue = baseValue;
}
IntPlusDynamicValue(final IntPlusDynamicValue dynamicValue) {
this.value = dynamicValue.value;
this.baseValue = dynamicValue.baseValue;
}
@Override
public int calculate(Game game, Ability sourceAbility, Effect effect) {
return baseValue + value.calculate(game, sourceAbility, effect);
}
@Override
public IntPlusDynamicValue copy() {
return new IntPlusDynamicValue(this);
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append(baseValue).append(" plus ");
return sb.append(value.toString()).toString();
}
@Override
public String getMessage() {
return value.getMessage();
}
@Override
public int getSign() {
return value.getSign();
}
}