updated language for various user choices

This commit is contained in:
Evan Kranzler 2021-02-15 10:19:43 -05:00
parent e2e7df6af2
commit a6255402e3
43 changed files with 66 additions and 99 deletions

View file

@ -105,7 +105,7 @@ class AsForetoldAlternativeCost extends AlternativeCostSourceAbility {
Permanent asForetold = game.getPermanent(getSourceId());
if (controller != null
&& asForetold != null) {
if (controller.chooseUse(Outcome.Neutral, "Do you wish to use "
if (controller.chooseUse(Outcome.Neutral, "Use "
+ asForetold.getLogName() + " to pay the alternative cost ?", ability, game)) {
wasActivated = super.askToActivateAlternativeCosts(ability, game);
if (wasActivated) {

View file

@ -74,7 +74,7 @@ class AssassinsTrophyEffect extends OneShotEffect {
if (permanent != null) {
Player controller = game.getPlayer(permanent.getControllerId());
if (controller != null) {
if (controller.chooseUse(Outcome.PutLandInPlay, "Do you wish to search for a basic land, put it onto the battlefield and then shuffle your library?", source, game)) {
if (controller.chooseUse(Outcome.PutLandInPlay, "Search for a basic land, put it onto the battlefield and then shuffle your library?", source, game)) {
TargetCardInLibrary target = new TargetCardInLibrary(StaticFilters.FILTER_CARD_BASIC_LAND);
if (controller.searchLibrary(target, source, game)) {
Card card = controller.getLibrary().getCard(target.getFirstTarget(), game);

View file

@ -67,7 +67,7 @@ class CaravanVigilEffect extends OneShotEffect {
if (card != null) {
Cards cards = new CardsImpl(card);
if (MorbidCondition.instance.apply(game, source)
&& controller.chooseUse(Outcome.PutLandInPlay, "Do you wish to put the card onto the battlefield instead?", source, game)) {
&& controller.chooseUse(Outcome.PutLandInPlay, "Put the card onto the battlefield instead?", source, game)) {
controller.moveCards(card, Zone.BATTLEFIELD, source, game);
} else {
controller.moveCards(card, Zone.HAND, source, game);

View file

@ -231,21 +231,21 @@ class ChandraPyromasterEffect3 extends OneShotEffect {
Card card = cards.get(target.getFirstTarget(), game);
if (card != null) {
ApprovingObject approvingObject = new ApprovingObject(source, game);
if (controller.chooseUse(outcome, "Do you wish to cast copy 1 of " + card.getName(), source, game)) {
if (controller.chooseUse(outcome, "Cast copy 1 of " + card.getName(), source, game)) {
Card copy1 = game.copyCard(card, source, source.getControllerId());
game.getState().setValue("PlayFromNotOwnHandZone" + copy1.getId(), Boolean.TRUE);
controller.cast(controller.chooseAbilityForCast(copy1, game, true),
game, true, approvingObject);
game.getState().setValue("PlayFromNotOwnHandZone" + copy1.getId(), null);
}
if (controller.chooseUse(outcome, "Do you wish to cast copy 2 of " + card.getName(), source, game)) {
if (controller.chooseUse(outcome, "Cast copy 2 of " + card.getName(), source, game)) {
Card copy2 = game.copyCard(card, source, source.getControllerId());
game.getState().setValue("PlayFromNotOwnHandZone" + copy2.getId(), Boolean.TRUE);
controller.cast(controller.chooseAbilityForCast(copy2, game, true),
game, true, approvingObject);
game.getState().setValue("PlayFromNotOwnHandZone" + copy2.getId(), null);
}
if (controller.chooseUse(outcome, "Do you wish to cast copy 3 of " + card.getName(), source, game)) {
if (controller.chooseUse(outcome, "Cast copy 3 of " + card.getName(), source, game)) {
Card copy3 = game.copyCard(card, source, source.getControllerId());
game.getState().setValue("PlayFromNotOwnHandZone" + copy3.getId(), Boolean.TRUE);
controller.cast(controller.chooseAbilityForCast(copy3, game, true),

View file

@ -90,7 +90,7 @@ class ChecksAndBalancesEffect extends OneShotEffect {
for (UUID uuid : game.getOpponents(spell.getControllerId())) {
Player player = game.getPlayer(uuid);
if (player != null) {
if (!player.chooseUse(outcome, "Do you wish to discard a card to counter " + spell.getLogName() + '?', source, game)) {
if (!player.chooseUse(outcome, "Discard a card to counter " + spell.getLogName() + '?', source, game)) {
game.informPlayers(player.getLogName() + " refuses to discard a card to counter " + spell.getLogName());
return true;
} else {

View file

@ -90,7 +90,7 @@ class ChorusOfTheConclaveReplacementEffect extends ReplacementEffectImpl {
int xCost = 0;
Player controller = game.getPlayer(source.getControllerId());
if (controller != null) {
if (controller.chooseUse(Outcome.Benefit, "Do you wish to pay the additonal cost to add +1/+1 counters to the creature you cast?", source, game)) {
if (controller.chooseUse(Outcome.Benefit, "Pay the additonal cost to add +1/+1 counters to the creature you cast?", source, game)) {
xCost += ManaUtil.playerPaysXGenericMana(false, "Chorus of the Conclave", controller, source, game);
// save the x value to be available for ETB replacement effect
Object object = game.getState().getValue("spellX" + source.getSourceId());

View file

@ -124,8 +124,7 @@ class CloakOfConfusionEffect extends OneShotEffect {
public boolean apply(Game game, Ability source) {
Player controller = game.getPlayer(source.getControllerId());
Permanent enchantedCreature = game.getPermanent(game.getPermanent(source.getSourceId()).getAttachedTo());
if (controller != null && controller.chooseUse(outcome, "Do you wish to not assign combat damage from "
+ enchantedCreature.getName() + " and have the defending player discard a card at random?", source, game)) {
if (controller != null && controller.chooseUse(outcome, "Have defending player discard a card at random? " + enchantedCreature.getName() + " will not assign combat damage.", source, game)) {
ContinuousEffect effect = new AssignNoCombatDamageTargetEffect();
effect.setTargetPointer(new FixedTarget(enchantedCreature.getId()));
game.addEffect(effect, source);

View file

@ -66,7 +66,7 @@ class CoralFightersEffect extends OneShotEffect {
if(card != null) {
Cards cards = new CardsImpl(card);
controller.lookAtCards("Coral Fighters", cards, game);
if (controller.chooseUse(outcome, "Do you wish to put card on the bottom of player's library?", source, game)) {
if (controller.chooseUse(outcome, "Put that card on the bottom of its owner's library?", source, game)) {
controller.moveCardToLibraryWithInfo(card, source, game, Zone.LIBRARY, false, false);
}
else {

View file

@ -82,7 +82,7 @@ class DelverOfSecretsEffect extends OneShotEffect {
Cards cards = new CardsImpl();
cards.add(card);
player.lookAtCards(sourcePermanent.getName(), cards, game);
if (player.chooseUse(Outcome.DrawCard, "Do you wish to reveal the card at the top of the library?", source, game)) {
if (player.chooseUse(Outcome.DrawCard, "Reveal the top card of your library?", source, game)) {
player.revealCards(sourcePermanent.getName(), cards, game);
if (filter.match(card, game)) {
return new TransformSourceEffect(true, true).apply(game, source);

View file

@ -83,7 +83,7 @@ class BecomesColorOrColorsEnchantedEffect extends OneShotEffect {
}
for (int i = 0; i < 5; i++) {
if (i > 0) {
if (!controller.chooseUse(Outcome.Neutral, "Do you wish to choose another color?", source, game)) {
if (!controller.chooseUse(Outcome.Neutral, "Choose another color?", source, game)) {
break;
}
}

View file

@ -84,7 +84,7 @@ class ElderSpawnEffect extends OneShotEffect {
if (controller != null && sourcePermanent != null) {
TargetControlledPermanent target = new TargetControlledPermanent(1, 1, filter, true);
SacrificeTargetCost cost = new SacrificeTargetCost(target);
if (!controller.chooseUse(Outcome.AIDontUseIt, "Do you wish to sacrifice an Island?", source, game)
if (!controller.chooseUse(Outcome.AIDontUseIt, "Sacrifice an Island?", source, game)
|| !cost.canPay(source, source, source.getControllerId(), game)
|| !cost.pay(source, game, source, source.getControllerId(), true)) {
sourcePermanent.sacrifice(source, game);

View file

@ -84,7 +84,7 @@ class EtherwroughtPageEffect extends OneShotEffect {
CardsImpl cards = new CardsImpl();
cards.add(card);
controller.lookAtCards("Etherwrought Page", cards, game);
if (controller.chooseUse(Outcome.Neutral, "Do you wish to put the card into your graveyard?", source, game)) {
if (controller.chooseUse(Outcome.Neutral, "Put that card into your graveyard?", source, game)) {
return controller.moveCards(card, Zone.GRAVEYARD, source, game);
}
return true;

View file

@ -87,7 +87,7 @@ class EvershrikeEffect extends OneShotEffect {
filterAuraCard.add(new AuraCardCanAttachToPermanentId(evershrikePermanent.getId()));
filterAuraCard.add(new ConvertedManaCostPredicate(ComparisonType.FEWER_THAN, xAmount));
int count = controller.getHand().count(filterAuraCard, game);
if (count > 0 && controller.chooseUse(Outcome.Benefit, "Do you wish to put an Aura card from your hand onto " + evershrikeCard.getIdName() + "?", source, game)) {
if (count > 0 && controller.chooseUse(Outcome.Benefit, "Put an Aura card from your hand onto the battlefield attached to " + evershrikeCard.getIdName() + "?", source, game)) {
TargetCard targetAura = new TargetCard(Zone.HAND, filterAuraCard);
if (controller.choose(Outcome.Benefit, controller.getHand(), targetAura, game)) {
Card aura = game.getCard(targetAura.getFirstTarget());

View file

@ -88,7 +88,7 @@ class GargantuanGorillaSacrificeEffect extends OneShotEffect {
if (controller != null && sourcePermanent != null) {
TargetControlledPermanent target = new TargetControlledPermanent(1, 1, filter, true);
SacrificeTargetCost cost = new SacrificeTargetCost(target);
if (!controller.chooseUse(Outcome.Benefit, "Do you wish to sacrifice a Forest?", source, game)
if (!controller.chooseUse(Outcome.Benefit, "Sacrifice a Forest?", source, game)
|| !cost.canPay(source, source, source.getControllerId(), game)
|| !cost.pay(source, game, source, source.getControllerId(), true)) {
sourcePermanent.sacrifice(source, game);

View file

@ -87,7 +87,7 @@ class GemstoneCavernsAbility extends StaticAbility implements OpeningHandAction
@Override
public boolean askUseOpeningHandAction(Card card, Player player, Game game) {
return player.chooseUse(Outcome.PutCardInPlay, "Do you wish to put " + card.getIdName() + " into play?", this, game);
return player.chooseUse(Outcome.PutCardInPlay, "Put " + card.getIdName() + " onto the battlefield?", this, game);
}
@Override

View file

@ -74,7 +74,7 @@ class GeomancersGambitEffect extends OneShotEffect {
if (controller == null) {
return false;
}
if (!controller.chooseUse(Outcome.PutLandInPlay, "Do you wish to search for a basic land, put it onto the battlefield and then shuffle your library?", source, game)) {
if (!controller.chooseUse(Outcome.PutLandInPlay, "Search for a basic land, put it onto the battlefield, and then shuffle your library?", source, game)) {
return true;
}
TargetCardInLibrary target = new TargetCardInLibrary(StaticFilters.FILTER_CARD_BASIC_LAND);

View file

@ -71,7 +71,7 @@ class GhostQuarterEffect extends OneShotEffect {
Permanent permanent = getTargetPointer().getFirstTargetPermanentOrLKI(game, source);
if (permanent != null) {
Player controller = game.getPlayer(permanent.getControllerId());
if (controller != null && controller.chooseUse(Outcome.PutLandInPlay, "Do you wish to search for a basic land, put it onto the battlefield and then shuffle your library?", source, game)) {
if (controller != null && controller.chooseUse(Outcome.PutLandInPlay, "Search for a basic land, put it onto the battlefield, and then shuffle your library?", source, game)) {
TargetCardInLibrary target = new TargetCardInLibrary(StaticFilters.FILTER_CARD_BASIC_LAND);
if (controller.searchLibrary(target, source, game)) {
Card card = controller.getLibrary().getCard(target.getFirstTarget(), game);

View file

@ -1,26 +1,21 @@
package mage.cards.i;
import java.util.UUID;
import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.DealsCombatDamageToAPlayerTriggeredAbility;
import mage.abilities.common.SimpleActivatedAbility;
import mage.abilities.costs.mana.ManaCostsImpl;
import mage.abilities.effects.OneShotEffect;
import mage.abilities.effects.common.DrawDiscardControllerEffect;
import mage.abilities.effects.common.continuous.BecomesCreatureSourceEffect;
import mage.abilities.mana.BlueManaAbility;
import mage.abilities.mana.RedManaAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Duration;
import mage.constants.Outcome;
import mage.constants.Zone;
import mage.game.Game;
import mage.constants.SubType;
import mage.game.permanent.token.TokenImpl;
import mage.players.Player;
import java.util.UUID;
/**
* @author LevelX2
@ -35,10 +30,16 @@ public final class IzzetKeyrune extends CardImpl {
this.addAbility(new RedManaAbility());
// {U}{R}: Until end of turn, Izzet Keyrune becomes a 2/1 blue and red Elemental artifact creature.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesCreatureSourceEffect(new IzzetKeyruneToken(), "", Duration.EndOfTurn), new ManaCostsImpl("{U}{R}")));
this.addAbility(new SimpleActivatedAbility(new BecomesCreatureSourceEffect(
new IzzetKeyruneToken(), "", Duration.EndOfTurn
), new ManaCostsImpl("{U}{R}")));
// Whenever Izzet Keyrune deals combat damage to a player, you may draw a card. If you do, discard a card.
this.addAbility(new DealsCombatDamageToAPlayerTriggeredAbility(new IzzetKeyruneEffect(), true));
this.addAbility(new DealsCombatDamageToAPlayerTriggeredAbility(
new DrawDiscardControllerEffect(1, 1, true)
.setText("you may draw a card. If you do, discard a card"),
false
));
}
private IzzetKeyrune(final IzzetKeyrune card) {
@ -50,37 +51,8 @@ public final class IzzetKeyrune extends CardImpl {
return new IzzetKeyrune(this);
}
private static class IzzetKeyruneEffect extends OneShotEffect {
public IzzetKeyruneEffect() {
super(Outcome.DrawCard);
this.staticText = "you may draw a card. If you do, discard a card";
}
public IzzetKeyruneEffect(final IzzetKeyruneEffect effect) {
super(effect);
}
@Override
public IzzetKeyruneEffect copy() {
return new IzzetKeyruneEffect(this);
}
@Override
public boolean apply(Game game, Ability source) {
Player player = game.getPlayer(source.getControllerId());
if (player != null && player.chooseUse(Outcome.DrawCard, "Do you wish to draw a card? If you do, discard a card.", source, game)) {
if (player.drawCards(1, source, game) > 0) {
player.discard(1, false, false, source, game);
}
return true;
}
return false;
}
}
private static class IzzetKeyruneToken extends TokenImpl {
IzzetKeyruneToken() {
private IzzetKeyruneToken() {
super("", "2/1 blue and red Elemental artifact creature");
cardType.add(CardType.ARTIFACT);
cardType.add(CardType.CREATURE);
@ -91,7 +63,7 @@ public final class IzzetKeyrune extends CardImpl {
toughness = new MageInt(1);
}
public IzzetKeyruneToken(final IzzetKeyruneToken token) {
private IzzetKeyruneToken(final IzzetKeyruneToken token) {
super(token);
}
@ -100,4 +72,3 @@ public final class IzzetKeyrune extends CardImpl {
}
}
}

View file

@ -92,7 +92,7 @@ class JaceTheMindSculptorEffect1 extends OneShotEffect {
if (card != null) {
Cards cards = new CardsImpl(card);
controller.lookAtCards("Jace, the Mind Sculptor", cards, game);
if (controller.chooseUse(outcome, "Do you wish to put card on the bottom of player's library?", source, game)) {
if (controller.chooseUse(outcome, "Put that card on the bottom of its owner's library?", source, game)) {
controller.moveCardToLibraryWithInfo(card, source, game, Zone.LIBRARY, false, false);
} else {
game.informPlayers(controller.getLogName() + " puts the card back on top of the library.");

View file

@ -77,7 +77,7 @@ class MetamorphoseEffect extends OneShotEffect {
Permanent permanent = getTargetPointer().getFirstTargetPermanentOrLKI(game, source);
if (permanent != null) {
Player controller = game.getPlayer(permanent.getControllerId());
if (controller != null && controller.canRespond() && controller.chooseUse(Outcome.PutCardInPlay, "Do you wish to put an artifact, creature, enchantment, or land card onto the battlefield?", source, game)) {
if (controller != null && controller.canRespond() && controller.chooseUse(Outcome.PutCardInPlay, "Put an artifact, creature, enchantment, or land card onto the battlefield?", source, game)) {
TargetCardInHand target = new TargetCardInHand(filter);
target.clearChosen();
if (controller.chooseTarget(outcome, target, source, game)) {

View file

@ -89,7 +89,7 @@ class MinionLeshracEffect extends OneShotEffect {
filterCreature.add(AnotherPredicate.instance);
TargetControlledPermanent target = new TargetControlledPermanent(filterCreature);
SacrificeTargetCost cost = new SacrificeTargetCost(target);
if (controller.chooseUse(Outcome.AIDontUseIt, "Do you wish to sacrifice another creature to prevent the 5 damage to you?", source, game)
if (controller.chooseUse(Outcome.AIDontUseIt, "Sacrifice another creature to prevent the damage?", source, game)
&& cost.canPay(source, source, source.getControllerId(), game)
&& cost.pay(source, game, source, source.getControllerId(), true)) {
return true;

View file

@ -66,7 +66,7 @@ class MishrasWarMachineEffect extends OneShotEffect {
if (controller != null
&& sourcePermanent != null) {
DiscardCardCost cost = new DiscardCardCost();
if (controller.chooseUse(Outcome.Benefit, "Do you wish to discard a card to prevent the 3 damage to you?", source, game)
if (controller.chooseUse(Outcome.Benefit, "Discard a card to prevent the damage?", source, game)
&& cost.canPay(source, source, source.getControllerId(), game)
&& cost.pay(source, game, source, source.getControllerId(), true)) {
return true;

View file

@ -81,7 +81,7 @@ class MitoticManipulationEffect extends OneShotEffect {
filter.add(Predicates.or(namePredicates));
TargetCard target = new TargetCard(Zone.LIBRARY, filter);
if (cardsFromTop.count(filter, source.getSourceId(), source.getControllerId(), game) > 0
&& controller.chooseUse(Outcome.PutCardInPlay, "Do you wish to put a card on the battlefield?", source, game)) {
&& controller.chooseUse(Outcome.PutCardInPlay, "Put a card on the battlefield?", source, game)) {
if (controller.choose(Outcome.PutCardInPlay, cardsFromTop, target, game)) {
Card card = cardsFromTop.get(target.getFirstTarget(), game);
if (card != null) {

View file

@ -62,7 +62,7 @@ class MurderOfCrowsEffect extends OneShotEffect {
@Override
public boolean apply(Game game, Ability source) {
Player player = game.getPlayer(source.getControllerId());
if (player != null && player.chooseUse(Outcome.DrawCard, "Do you wish to draw a card? If you do, discard a card.", source, game)) {
if (player != null && player.chooseUse(Outcome.DrawCard, "Draw a card? If you do, discard a card.", source, game)) {
if (player.drawCards(1, source, game) > 0) {
player.discard(1, false, false, source, game);
}

View file

@ -77,8 +77,8 @@ class OutmaneuverEffect extends AsThoughEffectImpl {
if (blockedCreature != null) {
Player controller = game.getPlayer(blockedCreature.getControllerId());
if (controller != null) {
return controller.chooseUse(Outcome.Damage, "Do you wish to assign combat damage for "
+ blockedCreature.getLogName() + " as though it weren't blocked?", source, game);
return controller.chooseUse(Outcome.Damage, "have "
+ blockedCreature.getLogName() + "assign combat damage as though it weren't blocked?", source, game);
}
}
return false;

View file

@ -70,7 +70,7 @@ class PrecognitionEffect extends OneShotEffect {
if (card != null) {
Cards cards = new CardsImpl(card);
controller.lookAtCards("Precognition", cards, game);
if (controller.chooseUse(outcome, "Do you wish to put card on the bottom of player's library?", source, game)) {
if (controller.chooseUse(outcome, "Put that card on the bottom of its owner's library?", source, game)) {
controller.moveCardToLibraryWithInfo(card, source, game, Zone.LIBRARY, false, false);
} else {
game.informPlayers(controller.getLogName() + " puts the card back on top of the library.");

View file

@ -104,7 +104,7 @@ class PsychicSurgeryEffect extends OneShotEffect {
if (controller != null && opponent != null) {
Cards cards = new CardsImpl(opponent.getLibrary().getTopCards(game, 2));
controller.lookAtCards(source, null, cards, game);
if (!cards.isEmpty() && controller.chooseUse(Outcome.Exile, "Do you wish to exile a card?", source, game)) {
if (!cards.isEmpty() && controller.chooseUse(Outcome.Exile, "Exile a card?", source, game)) {
TargetCard target = new TargetCard(Zone.LIBRARY, new FilterCard("card to exile"));
if (controller.choose(Outcome.Exile, cards, target, game)) {
Card card = cards.get(target.getFirstTarget(), game);

View file

@ -77,7 +77,7 @@ class PuresightMerrowEffect extends OneShotEffect {
if (card != null) {
Cards cards = new CardsImpl(card);
controller.lookAtCards("Puresight Merrow", cards, game);
if (controller.chooseUse(Outcome.Removal, "Do you wish to exile the card from the top of your library?", source, game)) {
if (controller.chooseUse(Outcome.Removal, "Exile the card from the top of your library?", source, game)) {
controller.moveCardToExileWithInfo(card, source.getSourceId(), sourceObject.getIdName(), source, game, Zone.LIBRARY, true);
} else {
game.informPlayers(controller.getLogName() + " puts the card back on top of their library.");

View file

@ -79,7 +79,7 @@ class QuestForUlasTempleEffect extends OneShotEffect {
Cards cards = new CardsImpl(card);
controller.lookAtCards(sourcePermanent.getName(), cards, game);
if (card.isCreature()) {
if (controller.chooseUse(Outcome.DrawCard, "Do you wish to reveal the creature card at the top of the library?", source, game)) {
if (controller.chooseUse(Outcome.DrawCard, "Reveal the top card of your library?", source, game)) {
controller.revealCards(sourcePermanent.getName(), cards, game);
Permanent questForUlasTemple = game.getPermanent(source.getSourceId());
if (questForUlasTemple != null) {

View file

@ -71,7 +71,7 @@ class RummagingWizardLookLibraryEffect extends OneShotEffect {
CardsImpl cards = new CardsImpl();
cards.add(card);
controller.lookAtCards("Rummaging Wizard", cards, game);
if (controller.chooseUse(Outcome.Neutral, "Do you wish to put the card into your graveyard?", source, game)) {
if (controller.chooseUse(Outcome.Neutral, "Put that card into your graveyard?", source, game)) {
return controller.moveCards(card, Zone.GRAVEYARD, source, game);
}

View file

@ -76,7 +76,7 @@ class SearchForAzcantaLookLibraryEffect extends OneShotEffect {
Card card = controller.getLibrary().getFromTop(game);
if (card != null) {
controller.lookAtCards(sourceObject.getIdName(), new CardsImpl(card), game);
if (controller.chooseUse(Outcome.Neutral, "Do you wish to put the card into your graveyard?", source, game)) {
if (controller.chooseUse(Outcome.Neutral, "Put that card into your graveyard?", source, game)) {
controller.moveCards(card, Zone.GRAVEYARD, source, game);
}
if (controller.getGraveyard().size() > 6 && controller.chooseUse(Outcome.Neutral, "Transform " + sourceObject.getLogName() + "?", source, game)) {

View file

@ -143,8 +143,7 @@ class ShellOfTheLastKappaCastEffect extends OneShotEffect {
sourcePermanent.getZoneChangeCounter(game))), target, game)) {
Card card = game.getCard(target.getFirstTarget());
if (card != null
&& controller.chooseUse(outcome, "Do you wish to cast card exiled with "
+ sourcePermanent.getLogName() + "?", source, game)) {
&& controller.chooseUse(outcome, "Cast " + card.getLogName() + " without paying its mana cost?", source, game)) {
game.getState().setValue("PlayFromNotOwnHandZone" + card.getId(), Boolean.TRUE);
Boolean cardWasCast = controller.cast(controller.chooseAbilityForCast(card, game, true),
game, true, new ApprovingObject(source, game));

View file

@ -65,8 +65,7 @@ class SiegeBehemothEffect extends AsThoughEffectImpl {
Player controller = game.getPlayer(source.getControllerId());
Permanent otherCreature = game.getPermanent(sourceId);
if (controller != null && otherCreature != null && otherCreature.isControlledBy(controller.getId())){
return controller.chooseUse(Outcome.Damage, "Do you wish to assign damage for "
+ otherCreature.getLogName() + " as though it weren't blocked?", source, game);
return controller.chooseUse(Outcome.Damage, "Have " + otherCreature.getLogName() + " assign damage as though it weren't blocked?", source, game);
}
}
return false;

View file

@ -67,7 +67,7 @@ class ThinkTankLookLibraryEffect extends OneShotEffect {
CardsImpl cards = new CardsImpl();
cards.add(card);
controller.lookAtCards("Think Tank", cards, game);
if (controller.chooseUse(Outcome.Neutral, "Do you wish to put the card into your graveyard?", source, game)) {
if (controller.chooseUse(Outcome.Neutral, "Put that card into your graveyard?", source, game)) {
return controller.moveCards(card, Zone.GRAVEYARD, source, game);
}

View file

@ -94,7 +94,7 @@ class PayLifeActivePlayerCost extends CostImpl {
}
int lifeToPayAmount = amount.calculate(game, ability, null);
if (activatingPlayer.chooseUse(Outcome.LoseLife, "Do you wish to pay " + lifeToPayAmount + " life?", ability, game)) {
if (activatingPlayer.chooseUse(Outcome.LoseLife, "Pay " + lifeToPayAmount + " life?", ability, game)) {
this.paid = CardUtil.tryPayLife(lifeToPayAmount, activatingPlayer, source, game);
return this.paid;
}

View file

@ -44,7 +44,7 @@ public class ChancellorAbility extends StaticAbility implements OpeningHandActio
@Override
public boolean askUseOpeningHandAction(Card card, Player player, Game game) {
return player.chooseUse(Outcome.PutCardInPlay, "Do you wish to reveal " + card.getIdName() + '?', this, game);
return player.chooseUse(Outcome.PutCardInPlay, "Reveal " + card.getIdName() + '?', this, game);
}
@Override

View file

@ -233,20 +233,20 @@ public class LookLibraryAndPickControllerEffect extends LookLibraryControllerEff
}
private String getMayText() {
StringBuilder sb = new StringBuilder("Do you wish to ");
StringBuilder sb = new StringBuilder();
switch (targetPickedCards) {
case HAND:
if (revealPickedCards) {
sb.append("reveal ").append(filter.getMessage()).append(" and put into your hand");
sb.append("Reveal ").append(filter.getMessage()).append(" and put into your hand");
} else {
sb.append("put ").append(filter.getMessage()).append(" into your hand");
sb.append("Put ").append(filter.getMessage()).append(" into your hand");
}
break;
case BATTLEFIELD:
sb.append("put ").append(filter.getMessage()).append(" onto the battlefield");
sb.append("Put ").append(filter.getMessage()).append(" onto the battlefield");
break;
case GRAVEYARD:
sb.append("put ").append(filter.getMessage()).append(" into your graveyard");
sb.append("Put ").append(filter.getMessage()).append(" into your graveyard");
break;
}
return sb.append('?').toString();

View file

@ -74,7 +74,7 @@ public class LookLibraryTopCardTargetPlayerEffect extends OneShotEffect {
player.lookAtCards(sourceObject.getIdName(), cards, game);
if (putToGraveyard) {
for (Card card : cards.getCards(game)) {
if (player.chooseUse(outcome, "Do you wish to put card into the player's graveyard?", source, game)) {
if (player.chooseUse(outcome, "Put that card into its owner's graveyard?", source, game)) {
player.moveCardToGraveyardWithInfo(card, source, game, Zone.LIBRARY);
} else {
game.informPlayers(player.getLogName() + " puts the card back on top of the library.");

View file

@ -42,7 +42,7 @@ public class ShuffleIntoLibraryTargetEffect extends OneShotEffect {
Player controller = game.getPlayer(source.getControllerId());
if (cardObject != null && controller != null && cardObject instanceof Card) {
if (!optional
|| controller.chooseUse(Outcome.Benefit, "Do you wish to shuffle " + cardObject.getIdName() + " into "
|| controller.chooseUse(Outcome.Benefit, "Shuffle " + cardObject.getIdName() + " into "
+ (((Card) cardObject).getOwnerId().equals(source.getControllerId()) ? "your" : "its owners")
+ " library?", source, game)) {
Player owner = game.getPlayer(((Card) cardObject).getOwnerId());

View file

@ -48,7 +48,7 @@ public class BecomesColorOrColorsTargetEffect extends OneShotEffect {
if (controller != null && target != null) {
for (int i = 0; i < 5; i++) {
if (i > 0) {
if (!controller.chooseUse(Outcome.Neutral, "Do you wish to choose another color?", source, game)) {
if (!controller.chooseUse(Outcome.Neutral, "Choose another color?", source, game)) {
break;
}
}

View file

@ -43,7 +43,7 @@ public class LeylineAbility extends StaticAbility implements MageSingleton, Open
@Override
public boolean askUseOpeningHandAction(Card card, Player player, Game game) {
return player.chooseUse(Outcome.PutCardInPlay, "Do you wish to put " + card.getName() + " on the battlefield?", this, game);
return player.chooseUse(Outcome.PutCardInPlay, "Put " + card.getName() + " on the battlefield?", this, game);
}
@Override

View file

@ -352,8 +352,8 @@ public class Combat implements Serializable, Copyable<Combat> {
if (game.replaceEvent(GameEvent.getEvent(GameEvent.EventType.DECLARING_ATTACKERS, attackingPlayerId, attackingPlayerId))
|| (!canBand && !canBandWithOther)
|| !player.chooseUse(Outcome.Benefit,
"Do you wish to " + (isBanded ? "band " + attacker.getLogName()
+ " with another " : "form a band with " + attacker.getLogName() + " and an ")
(isBanded ? "Band " + attacker.getLogName()
+ " with another " : "Form a band with " + attacker.getLogName() + " and an ")
+ "attacking creature?", null, game)) {
break;
}

View file

@ -167,8 +167,7 @@ public class CombatGroup implements Serializable, Copyable<CombatGroup> {
} else {
Player player = game.getPlayer(defenderAssignsCombatDamage(game) ? defendingPlayerId : attacker.getControllerId());
if ((attacker.getAbilities().containsKey(DamageAsThoughNotBlockedAbility.getInstance().getId()) &&
player.chooseUse(Outcome.Damage, "Do you wish to assign damage for "
+ attacker.getLogName() + " as though it weren't blocked?", null, game)) ||
player.chooseUse(Outcome.Damage, "Have " + attacker.getLogName() + " assign damage as though it weren't blocked?", null, game)) ||
game.getContinuousEffects().asThough(attacker.getId(), AsThoughEffectType.DAMAGE_NOT_BLOCKED,
null, attacker.getControllerId(), game) != null) {
// for handling creatures like Thorn Elemental
@ -887,7 +886,7 @@ public class CombatGroup implements Serializable, Copyable<CombatGroup> {
// 10/4/2004 If it is blocked but then all of its blockers are removed before combat damage is assigned, then it won't be able to deal combat damage and you won't be able to use its ability.
// (same principle should apply if it's blocking and its blocked attacker is removed from combat)
if (!((blocked && blockers.isEmpty() && isAttacking) || (attackers.isEmpty() && !isAttacking)) && canDamage(creature, first)) {
if (player.chooseUse(Outcome.Damage, "Do you wish to assign " + creature.getLogName() + "'s combat damage divided among defending player and/or any number of defending creatures?", null, game)) {
if (player.chooseUse(Outcome.Damage, "Have " + creature.getLogName() + " assign its combat damage divided among defending player and/or any number of defending creatures?", null, game)) {
defendingPlayerAndOrDefendingCreaturesDividedDamage(creature, player, first, game, isAttacking);
return true;
}