Restructured Mage module

This commit is contained in:
poixen 2015-11-29 21:56:49 +01:00
parent 727d62babb
commit 46eb6c0525
1502 changed files with 11 additions and 9 deletions

View file

@ -0,0 +1,35 @@
package mage.abilities.effects;
import mage.abilities.Ability;
import mage.abilities.condition.Condition;
import mage.constants.Duration;
import mage.constants.Layer;
import mage.constants.Outcome;
import mage.constants.SubLayer;
import mage.game.Game;
public abstract class WhileConditionContinuousEffect extends ContinuousEffectImpl {
protected Condition condition;
public WhileConditionContinuousEffect(Duration duration, Layer layer, SubLayer sublayer, Condition condition, Outcome outcome) {
super(duration, outcome);
this.condition = condition;
this.layer = layer;
this.sublayer = sublayer;
}
public WhileConditionContinuousEffect(final WhileConditionContinuousEffect effect) {
super(effect);
this.condition = effect.condition;
}
@Override
public boolean apply(Game game, Ability source) {
if (condition.apply(game, source)) {
return applyEffect(game, source);
}
return false;
}
protected abstract boolean applyEffect(Game game, Ability source);
}