mirror of
https://github.com/correl/mage.git
synced 2024-12-25 11:11:16 +00:00
updated language for various user choices
This commit is contained in:
parent
e2e7df6af2
commit
a6255402e3
43 changed files with 66 additions and 99 deletions
|
@ -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) {
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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),
|
||||
|
|
|
@ -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 {
|
||||
|
|
|
@ -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());
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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 {
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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());
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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
|
||||
|
@ -28,17 +23,23 @@ import mage.players.Player;
|
|||
public final class IzzetKeyrune extends CardImpl {
|
||||
|
||||
public IzzetKeyrune(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{3}");
|
||||
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{3}");
|
||||
|
||||
// {T}: Add {U} or {R}.
|
||||
this.addAbility(new BlueManaAbility());
|
||||
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 {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -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.");
|
||||
|
|
|
@ -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)) {
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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) {
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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.");
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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.");
|
||||
|
|
|
@ -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) {
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
|
||||
|
|
|
@ -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)) {
|
||||
|
|
|
@ -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));
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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();
|
||||
|
|
|
@ -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.");
|
||||
|
|
|
@ -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());
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue