[DOM] Added Rona, Disciple of Gix.

This commit is contained in:
LevelX2 2018-04-18 17:12:27 +02:00
parent 26ce05b42d
commit 1eaa12aca4
3 changed files with 182 additions and 0 deletions

View file

@ -30,6 +30,7 @@ package mage.abilities.effects.common;
import java.util.LinkedHashSet;
import java.util.Set;
import java.util.UUID;
import mage.MageObject;
import mage.abilities.Ability;
import mage.abilities.Mode;
import mage.abilities.effects.OneShotEffect;
@ -56,6 +57,7 @@ public class ExileTargetEffect extends OneShotEffect {
private String exileZone = null;
private UUID exileId = null;
protected boolean multitargetHandling;
private boolean toSourceExileZone = false; // exile the targets to a source object specific exile zone (takes care of zone change counter)
public ExileTargetEffect(String effectText) {
this(effectText, false);
@ -93,6 +95,7 @@ public class ExileTargetEffect extends OneShotEffect {
this.exileId = effect.exileId;
this.onlyFromZone = effect.onlyFromZone;
this.multitargetHandling = effect.multitargetHandling;
this.toSourceExileZone = effect.toSourceExileZone;
}
@Override
@ -100,6 +103,11 @@ public class ExileTargetEffect extends OneShotEffect {
return new ExileTargetEffect(this);
}
public ExileTargetEffect setToSourceExileZone(boolean toSourceExileZone) {
this.toSourceExileZone = toSourceExileZone;
return this;
}
@Override
public boolean apply(Game game, Ability source) {
Player controller = game.getPlayer(source.getControllerId());
@ -156,6 +164,13 @@ public class ExileTargetEffect extends OneShotEffect {
}
}
}
if (toSourceExileZone) {
MageObject sourceObject = source.getSourceObject(game);
exileId = CardUtil.getExileZoneId(game, source.getSourceId(), source.getSourceObjectZoneChangeCounter());
if (sourceObject != null) {
exileZone = sourceObject.getIdName();
}
}
controller.moveCardsToExile(toExile, source, game, true, exileId, exileZone);
return true;
}