forked from External/mage
Added an additional parameter to BecomesBasicLandTargetEffect to allow it to keep it's other land types; Updated Aquitect's Will to actually make the card an island, not just granting it the mana ability
This commit is contained in:
parent
6d036a6085
commit
e5ef66a3cf
2 changed files with 27 additions and 10 deletions
|
|
@ -59,6 +59,7 @@ public class BecomesBasicLandTargetEffect extends ContinuousEffectImpl {
|
|||
|
||||
protected boolean chooseLandType;
|
||||
protected ArrayList<String> landTypes = new ArrayList();
|
||||
protected boolean loseOther; // loses all other abilities, card types, and creature types
|
||||
|
||||
public BecomesBasicLandTargetEffect(Duration duration) {
|
||||
this(duration, true, new String[0]);
|
||||
|
|
@ -69,10 +70,15 @@ public class BecomesBasicLandTargetEffect extends ContinuousEffectImpl {
|
|||
}
|
||||
|
||||
public BecomesBasicLandTargetEffect(Duration duration, boolean chooseLandType, String... landNames) {
|
||||
this(duration, chooseLandType, true, landNames);
|
||||
}
|
||||
|
||||
public BecomesBasicLandTargetEffect(Duration duration, boolean chooseLandType, boolean loseOther, String... landNames) {
|
||||
super(duration, Outcome.Detriment);
|
||||
this.landTypes.addAll(Arrays.asList(landNames));
|
||||
this.chooseLandType = chooseLandType;
|
||||
this.staticText = setText();
|
||||
this.loseOther = loseOther;
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -105,6 +111,19 @@ public class BecomesBasicLandTargetEffect extends ContinuousEffectImpl {
|
|||
this.discard();
|
||||
}
|
||||
}
|
||||
|
||||
if(!loseOther) {
|
||||
for (UUID targetPermanent : targetPointer.getTargets(game, source)) {
|
||||
Permanent land = game.getPermanent(targetPermanent);
|
||||
if (land != null) {
|
||||
for(String type : land.getSubtype()) {
|
||||
if(!landTypes.contains(type)) {
|
||||
landTypes.add(type);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue