mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-17 03:08:02 +00:00
@@ -172,7 +172,7 @@ public class ChangeZoneEffect extends SpellAbilityEffect {
|
||||
}
|
||||
final String cardTag = type.contains("card") ? "" : " card";
|
||||
sb.append(Lang.nounWithNumeralExceptOne(num, type + cardTag)).append(", ");
|
||||
if (!sa.hasParam("NoReveal") || !destination.equals("Battlefield")) {
|
||||
if (!sa.hasParam("NoReveal") && !destination.equals("Battlefield")) {
|
||||
if (choosers.size() == 1) {
|
||||
sb.append(num > 1 ? "reveals them, " : "reveals it, ");
|
||||
} else {
|
||||
@@ -294,6 +294,14 @@ public class ChangeZoneEffect extends SpellAbilityEffect {
|
||||
// for the non-targeted SAs when you choose what is returned on resolution
|
||||
sb.append("Return ").append(num).append(" ").append(type).append(" card(s) ");
|
||||
sb.append(" to your ").append(destination);
|
||||
} else if (origin.equals("Graveyard")) {
|
||||
// for non-targeted SAs when you choose what is moved on resolution
|
||||
// this will need expansion as more cards use it
|
||||
sb.append(chooserNames).append(" puts ");
|
||||
final String cardTag = type.contains("card") ? "" : " card";
|
||||
sb.append(num != 0 ? Lang.nounWithNumeralExceptOne(num, type + cardTag) :
|
||||
sa.getParamOrDefault("ChangeNumDesc", "") + " " + type + cardTag);
|
||||
sb.append(" into their ").append(destination.toLowerCase()).append(".");
|
||||
}
|
||||
|
||||
return sb.toString();
|
||||
|
||||
@@ -213,6 +213,10 @@ public class SacrificeEffect extends SpellAbilityEffect {
|
||||
String valid = sa.getParamOrDefault("SacValid", "Self");
|
||||
String num = sa.getParamOrDefault("Amount", "1");
|
||||
|
||||
if (sa.hasParam("Optional")) { // TODO make boolean and handle verb reconjugation throughout
|
||||
sb.append("(OPTIONAL) ");
|
||||
}
|
||||
|
||||
final int amount = AbilityUtils.calculateAmount(sa.getHostCard(), num, sa);
|
||||
|
||||
if (valid.equals("Self")) {
|
||||
@@ -228,9 +232,9 @@ public class SacrificeEffect extends SpellAbilityEffect {
|
||||
msg = CardType.CoreType.isValidEnum(msg) ? msg.toLowerCase() : msg;
|
||||
|
||||
if (sa.hasParam("Destroy")) {
|
||||
sb.append(oneTgtP ? "destroys " : " destroys ");
|
||||
sb.append(oneTgtP ? "destroys " : " destroy ");
|
||||
} else {
|
||||
sb.append(oneTgtP ? "sacrifices " : "sacrifices ");
|
||||
sb.append(oneTgtP ? "sacrifices " : "sacrifice ");
|
||||
}
|
||||
sb.append(Lang.nounWithNumeralExceptOne(amount, msg)).append(".");
|
||||
}
|
||||
|
||||
14
forge-gui/res/cardsfolder/upcoming/vivien_on_the_hunt.txt
Normal file
14
forge-gui/res/cardsfolder/upcoming/vivien_on_the_hunt.txt
Normal file
@@ -0,0 +1,14 @@
|
||||
Name:Vivien on the Hunt
|
||||
ManaCost:4 G G
|
||||
Types:Legendary Planeswalker Vivien
|
||||
Loyalty: 4
|
||||
A:AB$ Sacrifice | Cost$ AddCounter<2/LOYALTY> | Planeswalker$ True | Optional$ True | SacValid$ Creature | RememberSacrificed$ True | SubAbility$ DBChangeZone | SpellDescription$ You may sacrifice a creature. If you do, search your library for a creature card with mana value equal to 1 plus the sacrificed creature's mana value, put it onto the battlefield, then shuffle.
|
||||
SVar:DBChangeZone:DB$ ChangeZone | ConditionDefined$ Remembered | ConditionPresent$ Card | Origin$ Library | Destination$ Battlefield | ChangeType$ Creature.cmcEQX | ChangeTypeDesc$ creature card with mana value equal to 1 plus the sacrificed creature's mana value | ChangeNum$ 1 | SubAbility$ DBCleanup
|
||||
SVar:X:Remembered$CardManaCost/Plus.1
|
||||
SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True
|
||||
A:AB$ Mill | Cost$ AddCounter<1/LOYALTY> | Planeswalker$ True | Defined$ You | NumCards$ 5 | RememberMilled$ True | SubAbility$ DBChangeZone2 | SpellDescription$ Mill five cards, then put any number of creature cards milled this way into your hand.
|
||||
SVar:DBChangeZone2:DB$ ChangeZone | Origin$ Graveyard | Destination$ Hand | Hidden$ True | ChangeType$ Creature.IsRemembered | ChangeTypeDesc$ creature cards milled this way | ChangeNum$ Z | ChangeNumDesc$ any number of | SelectPrompt$ Select any number of creature cards milled this way | SubAbility$ DBCleanup
|
||||
SVar:Z:Remembered$Valid Creature
|
||||
A:AB$ Token | Cost$ SubCounter<1/LOYALTY> | Planeswalker$ True | TokenScript$ g_4_4_rhino_warrior | SpellDescription$ Create a 4/4 green Rhino Warrior creature token.
|
||||
DeckHas:Ability$Sacrifice|Token|Mill|Graveyard & Type$Rhino
|
||||
Oracle:[+2]: You may sacrifice a creature. If you do, search your library for a creature card with mana value equal to 1 plus the sacrificed creature's mana value, put it onto the battlefield, then shuffle.\n[+1]: Mill five cards, then put any number of creature cards milled this way into your hand.\n[−1]: Create a 4/4 green Rhino Warrior creature token.
|
||||
6
forge-gui/res/tokenscripts/g_4_4_rhino_warrior.txt
Normal file
6
forge-gui/res/tokenscripts/g_4_4_rhino_warrior.txt
Normal file
@@ -0,0 +1,6 @@
|
||||
Name:Rhino Warrior Token
|
||||
ManaCost:no cost
|
||||
Colors:green
|
||||
Types:Creature Rhino Warrior
|
||||
PT:4/4
|
||||
Oracle:
|
||||
Reference in New Issue
Block a user