Merge branch 'targetAdjustment' into master

This commit is contained in:
Evan Kranzler 2019-01-12 14:42:58 -05:00 committed by GitHub
commit 3483b3a181
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
154 changed files with 3062 additions and 2964 deletions

View file

@ -1,9 +1,5 @@
package mage.abilities;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.UUID;
import mage.MageObject;
import mage.Mana;
import mage.abilities.costs.*;
@ -37,6 +33,11 @@ import mage.util.ThreadLocalStringBuilder;
import mage.watchers.Watcher;
import org.apache.log4j.Logger;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.UUID;
/**
* @author BetaSteward_at_googlemail.com
*/
@ -71,6 +72,7 @@ public abstract class AbilityImpl implements Ability {
protected List<Ability> subAbilities = null;
protected boolean canFizzle = true;
protected TargetAdjuster targetAdjuster = null;
protected CostAdjuster costAdjuster = null;
public AbilityImpl(AbilityType abilityType, Zone zone) {
this.id = UUID.randomUUID();
@ -1223,4 +1225,21 @@ public abstract class AbilityImpl implements Ability {
targetAdjuster.adjustTargets(this, game);
}
}
@Override
public void setCostAdjuster(CostAdjuster costAdjuster) {
this.costAdjuster = costAdjuster;
}
@Override
public CostAdjuster getCostAdjuster() {
return costAdjuster;
}
@Override
public void adjustCosts(Game game) {
if (costAdjuster != null) {
costAdjuster.adjustCosts(this, game);
}
}
}