- Added Rise//Fall

This commit is contained in:
swordshine
2013-03-08 07:35:31 +00:00
parent 6b17e28d90
commit d467b3392a
3 changed files with 36 additions and 3 deletions

1
.gitattributes vendored
View File

@@ -8638,6 +8638,7 @@ res/cardsfolder/r/riptide_pilferer.txt svneol=native#text/plain
res/cardsfolder/r/riptide_replicator.txt -text
res/cardsfolder/r/riptide_shapeshifter.txt -text svneol=unset#text/plain
res/cardsfolder/r/riptide_survivor.txt svneol=native#text/plain
res/cardsfolder/r/rise_fall.txt -text
res/cardsfolder/r/rise_from_the_grave.txt svneol=native#text/plain
res/cardsfolder/r/rise_of_the_hobgoblins.txt svneol=native#text/plain
res/cardsfolder/r/risen_sanctuary.txt -text

View File

@@ -0,0 +1,21 @@
Name:Rise
ManaCost:U B
AlternateMode: Split
Types:Sorcery
A:SP$ ChangeZone | Cost$ U B | ValidTgts$ Creature | TgtPrompt$ Select target creature in a graveyard | Origin$ Graveyard | Destination$ Hand | SubAbility$ DBChangeZone | SpellDescription$ Return target creature card from a graveyard and target creature on the battlefield to their owners' hands.
SVar:DBChangeZone:DB$ ChangeZone | ValidTgts$ Creature | TgtPrompt$ Select target creature on the battlefield | Origin$ Battlefield | Destination$ Hand | IsCurse$ True
SVar:Picture:http://www.wizards.com/global/images/magic/general/risefall.jpg
Oracle:Return target creature card from a graveyard and target creature on the battlefield to their owners' hands.
ALTERNATE
Name:Fall
ManaCost:B R
Types:Sorcery
A:SP$ Reveal | Cost$ B R | ValidTgts$ Player | IsCurse$ True | Random$ True | NumCards$ 2 | RememberRevealed$ True | SubAbility$ DBDiscard | SpellDescription$ Target player reveals two cards at random from his or her hand, then discards each nonland card revealed this way.
SVar:DBDiscard:DB$ Discard | Mode$ Defined | Defined$ Targeted | DefinedCards$ ValidHand Card.nonLand+IsRemembered | SubAbility$ DBCleanup
SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True
Oracle:Target player reveals two cards at random from his or her hand, then discards each nonland card revealed this way.
SetInfo:DDH Uncommon
SetInfo:DIS Uncommon

View File

@@ -28,19 +28,30 @@ public class RevealEffect extends RevealEffectBase {
if (handChoices.size() > 0) {
final List<Card> revealed = new ArrayList<Card>();
if (sa.hasParam("Random")) {
if (sa.hasParam("NumCards")) {
final int num = AbilityUtils.calculateAmount(host, sa.getParam("NumCards"), sa);
final int revealnum = Math.min(handChoices.size(), num);
final List<Card> hand = new ArrayList<Card>(handChoices);
for (int i = 0; i < revealnum; i++) {
final Card random = Aggregates.random(hand);
revealed.add(random);
hand.remove(random);
}
} else {
revealed.add(Aggregates.random(handChoices));
}
GuiChoose.oneOrNone("Revealed card(s)", revealed);
} else {
List<Card> valid = new ArrayList<Card>(handChoices);
int max = 1;
if (sa.hasParam("RevealValid")) {
if (anyNumber) {
valid = CardLists.getValidCards(valid, sa.getParam("RevealValid"), p, host);
}
if (sa.hasParam("AnyNumber")) {
max = valid.size();
}
else if (sa.hasParam("NumCards")) {
max = Math.min(valid.size(), AbilityUtils.calculateAmount(sa.getSourceCard(), sa.getParam("NumCards"), sa));
max = Math.min(valid.size(), AbilityUtils.calculateAmount(host, sa.getParam("NumCards"), sa));
}
//revealed.addAll(getRevealedList(sa.getActivatingPlayer(), valid, max, anyNumber));
revealed.addAll(getRevealedList(p, valid, max, anyNumber));