mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-20 12:48:00 +00:00
add Rag Man (from The Dark)
This commit is contained in:
1
.gitattributes
vendored
1
.gitattributes
vendored
@@ -6190,6 +6190,7 @@ res/cardsfolder/r/radiants_dragoons.txt svneol=native#text/plain
|
|||||||
res/cardsfolder/r/radiants_judgment.txt svneol=native#text/plain
|
res/cardsfolder/r/radiants_judgment.txt svneol=native#text/plain
|
||||||
res/cardsfolder/r/radjan_spirit.txt svneol=native#text/plain
|
res/cardsfolder/r/radjan_spirit.txt svneol=native#text/plain
|
||||||
res/cardsfolder/r/rafiq_of_the_many.txt svneol=native#text/plain
|
res/cardsfolder/r/rafiq_of_the_many.txt svneol=native#text/plain
|
||||||
|
res/cardsfolder/r/rag_man.txt -text
|
||||||
res/cardsfolder/r/ragamuffyn.txt svneol=native#text/plain
|
res/cardsfolder/r/ragamuffyn.txt svneol=native#text/plain
|
||||||
res/cardsfolder/r/rage_extractor.txt svneol=native#text/plain
|
res/cardsfolder/r/rage_extractor.txt svneol=native#text/plain
|
||||||
res/cardsfolder/r/rage_forger.txt svneol=native#text/plain
|
res/cardsfolder/r/rage_forger.txt svneol=native#text/plain
|
||||||
|
|||||||
10
res/cardsfolder/r/rag_man.txt
Normal file
10
res/cardsfolder/r/rag_man.txt
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
Name:Rag Man
|
||||||
|
ManaCost:2 B B
|
||||||
|
Types:Creature Human Minion
|
||||||
|
Text:no text
|
||||||
|
PT:2/1
|
||||||
|
A:AB$ RevealHand | Cost$ B B B T | ValidTgts$ Player | TgtPrompt$ Select target player | PlayerTurn$ True | SubAbility$ DBDiscard | SpellDescription$ Target opponent reveals his or her hand and discards a creature card at random. Activate this ability only during your turn.
|
||||||
|
SVar:DBDiscard:DB$ Discard | Defined$ Targeted | NumCards$ 1 | Mode$ Random | DiscardValid$ Creature
|
||||||
|
SVar:Rarity:Rare
|
||||||
|
SVar:Picture:http://www.wizards.com/global/images/magic/general/rag_man.jpg
|
||||||
|
End
|
||||||
@@ -1071,9 +1071,10 @@ public abstract class Player extends GameEntity {
|
|||||||
* <p>discardRandom.</p>
|
* <p>discardRandom.</p>
|
||||||
*
|
*
|
||||||
* @param sa a {@link forge.card.spellability.SpellAbility} object.
|
* @param sa a {@link forge.card.spellability.SpellAbility} object.
|
||||||
|
* @return a CardList of cards discarded
|
||||||
*/
|
*/
|
||||||
public void discardRandom(SpellAbility sa) {
|
public CardList discardRandom(SpellAbility sa) {
|
||||||
discardRandom(1, sa);
|
return discardRandom(1, sa);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -1081,12 +1082,25 @@ public abstract class Player extends GameEntity {
|
|||||||
*
|
*
|
||||||
* @param num a int.
|
* @param num a int.
|
||||||
* @param sa a {@link forge.card.spellability.SpellAbility} object.
|
* @param sa a {@link forge.card.spellability.SpellAbility} object.
|
||||||
* @return
|
* @return a CardList of cards discarded
|
||||||
*/
|
*/
|
||||||
public CardList discardRandom(final int num, final SpellAbility sa) {
|
public CardList discardRandom(final int num, final SpellAbility sa) {
|
||||||
|
return discardRandom(num, sa, "Card");
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <p>discardRandom.</p>
|
||||||
|
*
|
||||||
|
* @param num a int.
|
||||||
|
* @param sa a {@link forge.card.spellability.SpellAbility} object.
|
||||||
|
* @param valid a valid expression
|
||||||
|
* @return a CardList of cards discarded
|
||||||
|
*/
|
||||||
|
public CardList discardRandom(final int num, final SpellAbility sa, String valid) {
|
||||||
CardList discarded = new CardList();
|
CardList discarded = new CardList();
|
||||||
for (int i = 0; i < num; i++) {
|
for (int i = 0; i < num; i++) {
|
||||||
CardList list = this.getCardsIn(Zone.Hand);
|
CardList list = this.getCardsIn(Zone.Hand);
|
||||||
|
list = list.getValidCards(valid, sa.getSourceCard().getController(), sa.getSourceCard());
|
||||||
if (list.size() != 0){
|
if (list.size() != 0){
|
||||||
Card disc = CardUtil.getRandom(list.toArray());
|
Card disc = CardUtil.getRandom(list.toArray());
|
||||||
discarded.add(disc);
|
discarded.add(disc);
|
||||||
|
|||||||
@@ -1126,6 +1126,7 @@ public final class AbilityFactory_Reveal {
|
|||||||
*/
|
*/
|
||||||
private static void revealHandResolve(final AbilityFactory af, final SpellAbility sa) {
|
private static void revealHandResolve(final AbilityFactory af, final SpellAbility sa) {
|
||||||
HashMap<String, String> params = af.getMapParams();
|
HashMap<String, String> params = af.getMapParams();
|
||||||
|
Card host = af.getHostCard();
|
||||||
|
|
||||||
ArrayList<Player> tgtPlayers;
|
ArrayList<Player> tgtPlayers;
|
||||||
|
|
||||||
@@ -1151,7 +1152,11 @@ public final class AbilityFactory_Reveal {
|
|||||||
} else {
|
} else {
|
||||||
//reveal to Computer (when computer can keep track of seen cards...)
|
//reveal to Computer (when computer can keep track of seen cards...)
|
||||||
}
|
}
|
||||||
|
if (params.containsKey("RememberRevealed")) {
|
||||||
|
for (Card c : hand) {
|
||||||
|
host.addRemembered(c);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -950,7 +950,8 @@ public class AbilityFactory_ZoneAffecting {
|
|||||||
numCards = AbilityFactory.calculateAmount(sa.getSourceCard(), params.get("NumCards"), sa);
|
numCards = AbilityFactory.calculateAmount(sa.getSourceCard(), params.get("NumCards"), sa);
|
||||||
|
|
||||||
if (mode.equals("Random")) {
|
if (mode.equals("Random")) {
|
||||||
discarded.addAll(p.discardRandom(numCards, sa));
|
String valid = params.containsKey("DiscardValid") ? params.get("DiscardValid") : "Card";
|
||||||
|
discarded.addAll(p.discardRandom(numCards, sa, valid));
|
||||||
} else if (mode.equals("TgtChoose")) {
|
} else if (mode.equals("TgtChoose")) {
|
||||||
if (params.containsKey("UnlessType")) {
|
if (params.containsKey("UnlessType")) {
|
||||||
p.discardUnless(numCards, params.get("UnlessType"), sa);
|
p.discardUnless(numCards, params.get("UnlessType"), sa);
|
||||||
|
|||||||
Reference in New Issue
Block a user