* Summon the Pack - fixed that it gives black color to cards (#4905);

This commit is contained in:
Oleg Agafonov 2018-05-06 19:47:00 +04:00
parent f7a4e75909
commit 721f37c5ae
2 changed files with 23 additions and 3 deletions

View file

@ -115,7 +115,7 @@ class SummonThePackEffect extends OneShotEffect {
message.append(c.getName()).append(" "); message.append(c.getName()).append(" ");
if (c != null && c.isCreature()) { if (c != null && c.isCreature()) {
message.append(" (creature card) "); message.append(" (creature card) ");
ContinuousEffect effect2 = new BecomesBlackZombieAdditionEffect(); ContinuousEffect effect2 = new BecomesBlackZombieAdditionEffect(false);
effect2.setTargetPointer(new FixedTarget(c.getId())); effect2.setTargetPointer(new FixedTarget(c.getId()));
game.addEffect(effect2, source); game.addEffect(effect2, source);
creatureCards.add(c); creatureCards.add(c);

View file

@ -38,13 +38,33 @@ import mage.game.permanent.Permanent;
*/ */
public class BecomesBlackZombieAdditionEffect extends ContinuousEffectImpl { public class BecomesBlackZombieAdditionEffect extends ContinuousEffectImpl {
private boolean giveBlackColor = true;
public BecomesBlackZombieAdditionEffect() { public BecomesBlackZombieAdditionEffect() {
super(Duration.Custom, Outcome.Neutral); super(Duration.Custom, Outcome.Neutral);
staticText = "That creature is a black Zombie in addition to its other colors and types"; this.giveBlackColor = true;
updateText();
} }
public BecomesBlackZombieAdditionEffect(boolean giveBlackColor) {
this();
this.giveBlackColor = giveBlackColor;
updateText();
}
public BecomesBlackZombieAdditionEffect(final BecomesBlackZombieAdditionEffect effect) { public BecomesBlackZombieAdditionEffect(final BecomesBlackZombieAdditionEffect effect) {
super(effect); super(effect);
this.giveBlackColor = effect.giveBlackColor;
updateText();
}
private void updateText() {
if (this.giveBlackColor) {
this.staticText = "That creature is a black Zombie in addition to its other colors and types";
} else {
this.staticText = "That creature is a Zombie in addition to its other types";
}
} }
@Override @Override
@ -73,7 +93,7 @@ public class BecomesBlackZombieAdditionEffect extends ContinuousEffectImpl {
} }
break; break;
case ColorChangingEffects_5: case ColorChangingEffects_5:
if (sublayer == SubLayer.NA) { if (sublayer == SubLayer.NA && this.giveBlackColor) {
creature.getColor(game).setBlack(true); creature.getColor(game).setBlack(true);
} }
break; break;