Merge pull request #338 from Northmoc/nccChangeOfPlans

NCC: Change of Plans and support
This commit is contained in:
Agetian
2022-05-13 06:51:30 +03:00
committed by GitHub
9 changed files with 31 additions and 1 deletions

View File

@@ -9,8 +9,10 @@ import forge.game.ability.AbilityUtils;
import forge.game.ability.SpellAbilityEffect;
import forge.game.card.Card;
import forge.game.card.CardCollectionView;
import forge.game.player.Player;
import forge.game.spellability.SpellAbility;
import forge.game.zone.ZoneType;
import forge.util.Localizer;
public class PhasesEffect extends SpellAbilityEffect {
@@ -36,7 +38,8 @@ public class PhasesEffect extends SpellAbilityEffect {
@Override
public void resolve(SpellAbility sa) {
CardCollectionView tgtCards;
final Game game = sa.getActivatingPlayer().getGame();
final Player activator = sa.getActivatingPlayer();
final Game game = activator.getGame();
final Card source = sa.getHostCard();
final boolean phaseInOrOut = sa.hasParam("PhaseInOrOut");
final boolean wontPhaseInNormal = sa.hasParam("WontPhaseInNormal");
@@ -53,6 +56,11 @@ public class PhasesEffect extends SpellAbilityEffect {
} else {
tgtCards = getTargetCards(sa);
}
if (sa.hasParam("AnyNumber")) {
tgtCards = activator.getController().chooseCardsForEffect(tgtCards, sa,
Localizer.getInstance().getMessage("lblChooseAnyNumberToPhase"),
0, tgtCards.size(), true, null);
}
if (phaseInOrOut) { // Time and Tide and Oubliette
for (final Card tgtC : tgtCards) {
tgtC.phase(false);

View File

@@ -0,0 +1,8 @@
Name:Change of Plans
ManaCost:X 1 U
Types:Instant
A:SP$ Connive | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select X target creatures you control | TargetMin$ X | TargetMax$ X | SubAbility$ DBPhase | SpellDescription$ Each of X target creatures you control connive.
SVar:DBPhase:DB$ Phases | Defined$ Targeted | AnyNumber$ True | StackDescription$ {p:You} may have any number of them phase out. | SpellDescription$ You may have any number of them phase out. (To have a creature connive, draw a card, then discard a card. If you discarded a nonland card, put a +1/+1 counter on that creature. Treat phased out permanents and anything attached to them as though they don't exist until their controller's next turn.)
SVar:X:Count$xPaid
DeckHas:Ability$Discard|Counters
Oracle:Each of X target creatures you control connive. You may have any number of them phase out. (To have a creature connive, draw a card, then discard a card. If you discarded a nonland card, put a +1/+1 counter on that creature. Treat phased out permanents and anything attached to them as though they don't exist until their controller's next turn.)

View File

@@ -1989,6 +1989,8 @@ lblChooseCreatureToBeTop=Welche Kreatur soll oben liegen?
lblLookingCardFrom=Karten ansehen von
lblRevealingCardFrom=Zeige Karten von
lblRevealCardToOtherPlayers=Zeige die Karten den anderen Spielern?
#PhasesEffect.java
lblChooseAnyNumberToPhase=Choose any number to phase out
#PlayEffect.java
lblChooseUpTo=Wähle bis zu
lblSelectCardToPlay=Wähle Karte zum Spielen

View File

@@ -1990,6 +1990,8 @@ lblChooseCreatureToBeTop=Choose which creature to be the top
lblLookingCardFrom=Looking at cards from
lblRevealingCardFrom=Revealing cards from
lblRevealCardToOtherPlayers=Reveal cards to other players?
#PhasesEffect.java
lblChooseAnyNumberToPhase=Choose any number to phase out
#PlayEffect.java
lblChooseUpTo=Choose up to
lblSelectCardToPlay=Select a card to play

View File

@@ -1988,6 +1988,8 @@ lblChooseCreatureToBeTop=Elige qué criatura estará en la parte superior
lblLookingCardFrom=Mirando las cartas de
lblRevealingCardFrom=Mostrando las cartas de
lblRevealCardToOtherPlayers=¿Mostrar las cartas a otros jugadores?
#PhasesEffect.java
lblChooseAnyNumberToPhase=Choose any number to phase out
#PlayEffect.java
lblChooseUpTo=Elige hasta
lblSelectCardToPlay=Selecciona una carta para jugar

View File

@@ -1987,6 +1987,8 @@ lblChooseCreatureToBeTop=Scegli quale creatura mettere sopra
lblLookingCardFrom=Guardando le carte da
lblRevealingCardFrom=Sto mostrando le carte da
lblRevealCardToOtherPlayers=Rivela carte agli altri giocatori?
#PhasesEffect.java
lblChooseAnyNumberToPhase=Choose any number to phase out
#PlayEffect.java
lblChooseUpTo=Scegli fino a
lblSelectCardToPlay=Seleziona una carta da giocare

View File

@@ -1987,6 +1987,8 @@ lblChooseCreatureToBeTop=トップに置けるクリーチャーをを選ぶ
lblLookingCardFrom=からカードを見ています
lblRevealingCardFrom=カードを公開:
lblRevealCardToOtherPlayers=カードを他のプレイヤーに公開しますか?
#PhasesEffect.java
lblChooseAnyNumberToPhase=Choose any number to phase out
#PlayEffect.java
lblChooseUpTo=選択、最大
lblSelectCardToPlay=プレイするカードを選ぶ

View File

@@ -2049,6 +2049,8 @@ lblChooseCreatureToBeTop=Escolha qual criatura será o topo
lblLookingCardFrom=Olhando para cartões de
lblRevealingCardFrom=Revelando cartas de
lblRevealCardToOtherPlayers=Revelar cartas a outros jogadores?
#PhasesEffect.java
lblChooseAnyNumberToPhase=Choose any number to phase out
#PlayEffect.java
lblChooseUpTo=Escolha até
lblSelectCardToPlay=Escolha uma carta para jogar

View File

@@ -1991,6 +1991,8 @@ lblChooseCreatureToBeTop=选择哪个生物放在上面
lblLookingCardFrom=看卡
lblRevealingCardFrom=展示牌自
lblRevealCardToOtherPlayers=向其他玩家展示牌?
#PhasesEffect.java
lblChooseAnyNumberToPhase=Choose any number to phase out
#PlayEffect.java
lblChooseUpTo=最多选择
lblSelectCardToPlay=选择要使用的牌