public SetPowerSourceEffect(DynamicValue amount, Duration duration, SubLayer subLayer) { super(duration, Layer.PTChangingEffects_7, subLayer, Outcome.BoostCreature); this.amount = amount; staticText = "{this}'s power is equal to the number of " + amount.getMessage(); }
@Override public String getMessage() { return value.getMessage(); } }
public SetToughnessSourceEffect(DynamicValue amount, Duration duration, SubLayer subLayer) { super(duration, Layer.PTChangingEffects_7, subLayer, Outcome.BoostCreature); this.amount = amount; staticText = "{this}'s toughness is equal to the number of " + amount.getMessage(); }
@Override public String getMessage() { return value.getMessage(); } }
@Override public String getMessage() { return value.getMessage(); } }
@Override public String getMessage() { return basicDynamicValue.getMessage(); }
@Override public String getRule() { if (amount instanceof StaticValue) { return "Soulshift " + amount.toString() + " <i>(When this creature dies, you may return target Spirit card with converted mana cost " + amount.toString() + " or less from your graveyard to your hand.)</i>"; } else { return "{this} has soulshift X, where X is the number of " + amount.getMessage() + ". <i>(When this creature dies, you may return target Spirit card with converted mana cost X or less from your graveyard to your hand.)</i>"; } } }
@Override public String getMessage() { StringBuilder sb = new StringBuilder(); sb.append("half ").append(value.getMessage()); if (roundedUp) { sb.append(", rounded up"); } else { sb.append(", rounded down"); } return sb.toString(); }
private void setText() { StringBuilder sb = new StringBuilder(); sb.append("its controller loses ").append(amount.toString()).append(" life"); String message = amount.getMessage(); if (!message.isEmpty()) { sb.append(" for each "); sb.append(message); } staticText = sb.toString(); } }
private void setText() { StringBuilder sb = new StringBuilder(); sb.append("you lose ").append(amount.toString()).append(" life"); String message = amount.getMessage(); if (!message.isEmpty()) { sb.append(" for each "); } sb.append(message); staticText = sb.toString(); }
private String setText() { StringBuilder sb = new StringBuilder("bolster "); if (amount instanceof StaticValue) { sb.append(amount); sb.append(". <i>(Choose a creature with the least toughness or tied with the least toughness among creatures you control. Put "); sb.append(amount).append(" +1/+1 counters on it.)</i>"); } else { sb.append("X, where X is the number of "); sb.append(amount.getMessage()); sb.append(" (Choose a creature with the least toughness among creatures you control and put X +1/+1 counters on it.)"); } return sb.toString(); } }
@Override public String getText(Mode mode) { if (text != null && !text.isEmpty()) { return text; } return super.getText(mode) + " for each " + amount.getMessage(); }
public SetPowerToughnessSourceEffect(DynamicValue amount, Duration duration, SubLayer subLayer) { super(duration, Layer.PTChangingEffects_7, subLayer, Outcome.BoostCreature); setCharacterDefining(subLayer == SubLayer.CharacteristicDefining_7a); this.amount = amount; staticText = "{this}'s power and toughness are each equal to the number of " + amount.getMessage(); }
private void setText() { StringBuilder sb = new StringBuilder("As long as "); sb.append(dynamicValue.getMessage()).append(" is less than "); sb.append(CardUtil.numberToText(lessThan)).append(", {this} isn't a creature"); staticText = sb.toString(); }
@Override public String getText(Mode mode) { StringBuilder sb = new StringBuilder(); String message = amount.getMessage(); sb.append("each opponent loses "); if (message.isEmpty() || !message.equals("1")) { sb.append(amount).append(' '); } sb.append("life"); if (!message.isEmpty()) { sb.append(message.equals("1") || message.startsWith("the ") ? " equal to the number of " : " for each "); sb.append(message); } return sb.toString(); } }
public void setText() { StringBuilder sb = new StringBuilder(); sb.append(this.sourceName).append(" deals ").append(amount.toString()).append(" damage to each ").append(filter.getMessage()); String message = amount.getMessage(); if (!message.isEmpty()) { if (amount.toString().equals("X")) { sb.append(", where X is "); } else { sb.append(" for each "); } sb.append(message); } staticText = sb.toString(); }
private void setText() { StringBuilder sb = new StringBuilder(); boolean oneCard = (amount instanceof StaticValue && amount.calculate(null, null, this) == 1) || amount instanceof PermanentsOnBattlefieldCount || amount.toString().equals("1") || amount.toString().equals("a"); sb.append(whoDrawCard.isEmpty() ? "" : whoDrawCard + " ").append("draw ").append(oneCard ? "a" : CardUtil.numberToText(amount.toString())).append(" card"); if (!oneCard) { sb.append('s'); } String message = amount.getMessage(); if (!message.isEmpty()) { sb.append(" for each "); } sb.append(message); staticText = sb.toString(); }
private void setText() { StringBuilder sb = new StringBuilder(); // put a +1/+1 counter on it sb.append("put "); if (counter.getCount() > 1) { sb.append(CardUtil.numberToText(counter.getCount())).append(' '); } else { sb.append("a "); } sb.append(counter.getName().toLowerCase(Locale.ENGLISH)).append(" counter on "); sb.append(textEnchanted); if (!amount.getMessage().isEmpty()) { sb.append(" for each ").append(amount.getMessage()); } staticText = sb.toString(); }
public BushidoAbility(DynamicValue value) { super(Zone.BATTLEFIELD, new BoostSourceEffect(value, value, Duration.EndOfTurn, true), false); if (!(value instanceof StaticValue)) { rulesText = "{this} has bushido X, where X is " + value.getMessage() + getReminder(value.toString()); } this.value = value; }
@Override public String getText(Mode mode) { if (staticText != null && !staticText.isEmpty()) { return staticText; } String text = "{this} deals " + amount.getMessage() + " damage to target " + mode.getTargets().get(0).getTargetName() + "'s controller"; if(!preventable) { text += ". The damage can't be prevented"; } return text; } }