[C21] Implemented Yedora, Grave Gardener

This commit is contained in:
Evan Kranzler 2021-04-28 09:21:39 -04:00
parent 7778e867f8
commit bf2e90feae
9 changed files with 193 additions and 87 deletions

View file

@ -991,7 +991,13 @@ public class ContinuousEffects implements Serializable {
for (ContinuousEffect effect : layer) {
Set<Ability> abilities = layeredEffects.getAbility(effect.getId());
for (Ability ability : abilities) {
effect.apply(Layer.CopyEffects_1, SubLayer.NA, ability, game);
effect.apply(Layer.CopyEffects_1, SubLayer.CopyEffects_1a, ability, game);
}
}
for (ContinuousEffect effect : layer) {
Set<Ability> abilities = layeredEffects.getAbility(effect.getId());
for (Ability ability : abilities) {
effect.apply(Layer.CopyEffects_1, SubLayer.FaceDownEffects_1b, ability, game);
}
}
//Reload layerEffect if copy effects were applied

View file

@ -12,7 +12,7 @@ public class CopyTokenEffect extends ContinuousEffectImpl {
protected Token token;
public CopyTokenEffect(Token token) {
super(Duration.WhileOnBattlefield, Layer.CopyEffects_1, SubLayer.NA, Outcome.BecomeCreature);
super(Duration.WhileOnBattlefield, Layer.CopyEffects_1, SubLayer.CopyEffects_1a, Outcome.BecomeCreature);
this.token = token.copy();
staticText = "You may have {this} enter the battlefield as a copy of " + token.getDescription() + " on the battlefield";
}

View file

@ -71,7 +71,7 @@ public class TransformAbility extends SimpleStaticAbility {
class TransformEffect extends ContinuousEffectImpl {
TransformEffect() {
super(Duration.WhileOnBattlefield, Layer.CopyEffects_1, SubLayer.NA, Outcome.BecomeCreature);
super(Duration.WhileOnBattlefield, Layer.CopyEffects_1, SubLayer.CopyEffects_1a, Outcome.BecomeCreature);
staticText = "";
}

View file

@ -1,10 +1,11 @@
package mage.constants;
/**
*
* @author North
*/
public enum SubLayer {
CopyEffects_1a,
FaceDownEffects_1b,
CharacteristicDefining_7a,
SetPT_7b,
ModifyPT_7c,

View file

@ -9,10 +9,7 @@ import mage.constants.Zone;
import mage.game.Game;
import mage.game.permanent.Permanent;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
import java.util.UUID;
import java.util.*;
/**
* @author LevelX2
@ -61,6 +58,13 @@ public class FixedTargets extends TargetPointerImpl {
this.initialized = true;
}
public FixedTargets(Collection<MageObjectReference> morSet, Game game) {
super();
targets.addAll(morSet);
this.initialized = true;
}
private FixedTargets(final FixedTargets targetPointer) {
super(targetPointer);