* Fixed some problems with creating additional colorless mana.

This commit is contained in:
LevelX2 2016-01-15 19:48:40 +01:00
parent 17108786e7
commit acb57c0fc8
5 changed files with 20 additions and 21 deletions

View file

@ -135,7 +135,7 @@ class StarCompassManaEffect extends ManaEffect {
if (types.getWhite() > 0) {
choice.getChoices().add("White");
}
if (types.getGeneric() > 0) {
if (types.getColorless() > 0) {
choice.getChoices().add("Colorless");
}
if (types.getAny() > 0) {
@ -172,7 +172,7 @@ class StarCompassManaEffect extends ManaEffect {
mana.setWhite(1);
break;
case "Colorless":
mana.setGeneric(1);
mana.setColorless(1);
break;
}
checkToFirePossibleEvents(mana, game, source);

View file

@ -77,7 +77,7 @@ public class SasayaOrochiAscendant extends CardImpl {
this.flipCardName = "Sasaya's Essence";
// Reveal your hand: If you have seven or more land cards in your hand, flip Sasaya, Orochi Ascendant.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new SasayaOrochiAscendantFlipEffect(), new RevealHandSourceControllerCost() ));
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new SasayaOrochiAscendantFlipEffect(), new RevealHandSourceControllerCost()));
}
public SasayaOrochiAscendant(final SasayaOrochiAscendant card) {
@ -91,21 +91,21 @@ public class SasayaOrochiAscendant extends CardImpl {
}
class SasayaOrochiAscendantFlipEffect extends OneShotEffect {
public SasayaOrochiAscendantFlipEffect() {
super(Outcome.Benefit);
this.staticText = "If you have seven or more land cards in your hand, flip {this}";
}
public SasayaOrochiAscendantFlipEffect(final SasayaOrochiAscendantFlipEffect effect) {
super(effect);
}
@Override
public SasayaOrochiAscendantFlipEffect copy() {
return new SasayaOrochiAscendantFlipEffect(this);
}
@Override
public boolean apply(Game game, Ability source) {
Player controller = game.getPlayer(source.getControllerId());
@ -121,7 +121,7 @@ class SasayaOrochiAscendantFlipEffect extends OneShotEffect {
class SasayasEssence extends Token {
SasayasEssence () {
SasayasEssence() {
super("Sasaya's Essence", "");
supertype.add("Legendary");
cardType.add(CardType.ENCHANTMENT);
@ -179,7 +179,7 @@ class SasayasEssenceManaEffectEffect extends ManaEffect {
if (mana.getWhite() > 0) {
choice.getChoices().add("White");
}
if (mana.getGeneric() > 0) {
if (mana.getColorless() > 0) {
choice.getChoices().add("Colorless");
}
@ -190,7 +190,7 @@ class SasayasEssenceManaEffectEffect extends ManaEffect {
if (choice.getChoices().size() == 1) {
choice.setChoice(choice.getChoices().iterator().next());
} else {
while(!choice.isChosen()) {
while (!choice.isChosen()) {
controller.choose(outcome, choice, game);
if (!controller.canRespond()) {
return false;
@ -217,7 +217,7 @@ class SasayasEssenceManaEffectEffect extends ManaEffect {
newMana.increaseWhite();
break;
case "Colorless":
newMana.increaseGeneric();
newMana.increaseColorless();
break;
}
}

View file

@ -53,7 +53,6 @@ public class ManaReflection extends CardImpl {
super(ownerId, 122, "Mana Reflection", Rarity.RARE, new CardType[]{CardType.ENCHANTMENT}, "{4}{G}{G}");
this.expansionSetCode = "SHM";
// If you tap a permanent for mana, it produces twice as much of that mana instead.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ManaReflectionReplacementEffect()));
@ -89,7 +88,7 @@ class ManaReflectionReplacementEffect extends ReplacementEffectImpl {
public boolean replaceEvent(GameEvent event, Ability source, Game game) {
Mana mana = ((ManaEvent) event).getMana();
if (mana.getBlack() > 0) {
mana.set(ManaType.BLACK, mana.getBlack()* 2);
mana.set(ManaType.BLACK, mana.getBlack() * 2);
}
if (mana.getBlue() > 0) {
mana.set(ManaType.BLUE, mana.getBlue() * 2);
@ -103,8 +102,8 @@ class ManaReflectionReplacementEffect extends ReplacementEffectImpl {
if (mana.getRed() > 0) {
mana.set(ManaType.RED, mana.getRed() * 2);
}
if (mana.getGeneric() > 0) {
mana.set(ManaType.COLORLESS, mana.getGeneric() * 2);
if (mana.getColorless() > 0) {
mana.set(ManaType.COLORLESS, mana.getColorless() * 2);
}
return false;
}
@ -115,7 +114,7 @@ class ManaReflectionReplacementEffect extends ReplacementEffectImpl {
}
@Override
public boolean applies(GameEvent event, Ability source, Game game) {
public boolean applies(GameEvent event, Ability source, Game game) {
return event.getPlayerId().equals(source.getControllerId())
&& game.getPermanentOrLKIBattlefield(event.getSourceId()) != null;
}
@ -124,4 +123,4 @@ class ManaReflectionReplacementEffect extends ReplacementEffectImpl {
public ManaReflectionReplacementEffect copy() {
return new ManaReflectionReplacementEffect(this);
}
}
}

View file

@ -127,7 +127,7 @@ class ReflectingPoolEffect extends ManaEffect {
if (types.getWhite() > 0) {
choice.getChoices().add("White");
}
if (types.getGeneric() > 0) {
if (types.getColorless() > 0) {
choice.getChoices().add("Colorless");
}
if (types.getAny() > 0) {
@ -164,7 +164,7 @@ class ReflectingPoolEffect extends ManaEffect {
mana.setWhite(1);
break;
case "Colorless":
mana.setGeneric(1);
mana.setColorless(1);
break;
}
checkToFirePossibleEvents(mana, game, source);
@ -198,7 +198,7 @@ class ReflectingPoolEffect extends ManaEffect {
if (types.getWhite() > 0) {
netManas.add(new Mana(ColoredManaSymbol.W));
}
if (types.getGeneric() > 0) {
if (types.getColorless() > 0) {
netManas.add(new Mana(0, 0, 0, 0, 0, 0, 0, 1));
}
return netManas;

View file

@ -76,7 +76,7 @@ public class AddManaOfAnyTypeProducedEffect extends ManaEffect {
if (types.getWhite() > 0) {
choice.getChoices().add("White");
}
if (types.getGeneric() > 0) {
if (types.getColorless() > 0) {
choice.getChoices().add("Colorless");
}
if (choice.getChoices().size() > 0) {