1
0
Fork 0
mirror of https://github.com/correl/mage.git synced 2025-04-13 01:01:11 -09:00

Some minor fixes to Riptide Replicator and Elvish Guidance.

This commit is contained in:
LevelX2 2016-09-29 12:58:56 +02:00
parent cd1832ecc4
commit 289606d25e
2 changed files with 9 additions and 16 deletions
Mage.Sets/src/mage/sets/onslaught

View file

@ -41,7 +41,6 @@ import mage.constants.Outcome;
import mage.constants.Rarity; import mage.constants.Rarity;
import mage.constants.Zone; import mage.constants.Zone;
import mage.filter.common.FilterCreaturePermanent; import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.mageobject.SubtypePredicate;
import mage.game.Game; import mage.game.Game;
import mage.game.events.GameEvent; import mage.game.events.GameEvent;
import mage.game.permanent.Permanent; import mage.game.permanent.Permanent;
@ -60,12 +59,12 @@ public class ElvishGuidance extends CardImpl {
this.subtype.add("Aura"); this.subtype.add("Aura");
// Enchant land // Enchant land
TargetPermanent auraTarget = new TargetLandPermanent(); TargetPermanent auraTarget = new TargetLandPermanent();
this.getSpellAbility().addTarget(auraTarget); this.getSpellAbility().addTarget(auraTarget);
this.getSpellAbility().addEffect(new AttachEffect(Outcome.AddAbility)); this.getSpellAbility().addEffect(new AttachEffect(Outcome.PutManaInPool));
Ability ability = new EnchantAbility(auraTarget.getTargetName()); Ability ability = new EnchantAbility(auraTarget.getTargetName());
this.addAbility(ability); this.addAbility(ability);
// Whenever enchanted land is tapped for mana, its controller adds {G} to his or her mana pool for each Elf on the battlefield. // Whenever enchanted land is tapped for mana, its controller adds {G} to his or her mana pool for each Elf on the battlefield.
this.addAbility(new ElvishGuidanceTriggeredAbility()); this.addAbility(new ElvishGuidanceTriggeredAbility());
} }
@ -82,14 +81,8 @@ public class ElvishGuidance extends CardImpl {
class ElvishGuidanceTriggeredAbility extends TriggeredManaAbility { class ElvishGuidanceTriggeredAbility extends TriggeredManaAbility {
private static final FilterCreaturePermanent elvesFilter = new FilterCreaturePermanent();
static {
elvesFilter.add(new SubtypePredicate("Elf"));
}
public ElvishGuidanceTriggeredAbility() { public ElvishGuidanceTriggeredAbility() {
super(Zone.BATTLEFIELD, new DynamicManaEffect(Mana.GreenMana(1), new PermanentsOnBattlefieldCount(elvesFilter))); super(Zone.BATTLEFIELD, new DynamicManaEffect(Mana.GreenMana(1), new PermanentsOnBattlefieldCount(new FilterCreaturePermanent("Elf", "Elf"))));
} }
public ElvishGuidanceTriggeredAbility(final ElvishGuidanceTriggeredAbility ability) { public ElvishGuidanceTriggeredAbility(final ElvishGuidanceTriggeredAbility ability) {
@ -114,6 +107,6 @@ class ElvishGuidanceTriggeredAbility extends TriggeredManaAbility {
@Override @Override
public String getRule() { public String getRule() {
return "Whenever enchanted land is tapped for mana, its controller adds {G} to his or her mana pool for each Elf on the battlefield"; return "Whenever enchanted land is tapped for mana, its controller adds {G} to his or her mana pool for each Elf on the battlefield.";
} }
} }

View file

@ -62,11 +62,11 @@ public class RiptideReplicator extends CardImpl {
// As Riptide Replicator enters the battlefield, choose a color and a creature type. // As Riptide Replicator enters the battlefield, choose a color and a creature type.
Ability ability = new EntersBattlefieldAbility(new ChooseColorEffect(Outcome.Neutral)); Ability ability = new EntersBattlefieldAbility(new ChooseColorEffect(Outcome.Neutral));
Effect effect = new ChooseColorEffect(Outcome.Neutral); Effect effect = new ChooseCreatureTypeEffect(Outcome.Neutral);
effect.setText("and a creature type"); effect.setText("and a creature type");
ability.addEffect(new ChooseCreatureTypeEffect(Outcome.Neutral)); ability.addEffect(effect);
this.addAbility(ability); this.addAbility(ability);
// Riptide Replicator enters the battlefield with X charge counters on it. // Riptide Replicator enters the battlefield with X charge counters on it.
this.addAbility(new EntersBattlefieldAbility(new EntersBattlefieldWithXCountersEffect(CounterType.CHARGE.createInstance()))); this.addAbility(new EntersBattlefieldAbility(new EntersBattlefieldWithXCountersEffect(CounterType.CHARGE.createInstance())));
@ -90,7 +90,7 @@ class RiptideReplicatorEffect extends OneShotEffect {
RiptideReplicatorEffect() { RiptideReplicatorEffect() {
super(Outcome.PutCreatureInPlay); super(Outcome.PutCreatureInPlay);
this.staticText = "Put an X/X creature token of the chosen color and type onto the battlefield, where X is the number of charge counters on Riptide Replicator."; this.staticText = "Put an X/X creature token of the chosen color and type onto the battlefield, where X is the number of charge counters on {this}.";
} }
RiptideReplicatorEffect(final RiptideReplicatorEffect effect) { RiptideReplicatorEffect(final RiptideReplicatorEffect effect) {