mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-20 04:38:00 +00:00
add Rag Man (from The Dark)
This commit is contained in:
@@ -1071,9 +1071,10 @@ public abstract class Player extends GameEntity {
|
||||
* <p>discardRandom.</p>
|
||||
*
|
||||
* @param sa a {@link forge.card.spellability.SpellAbility} object.
|
||||
* @return a CardList of cards discarded
|
||||
*/
|
||||
public void discardRandom(SpellAbility sa) {
|
||||
discardRandom(1, sa);
|
||||
public CardList discardRandom(SpellAbility sa) {
|
||||
return discardRandom(1, sa);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -1081,12 +1082,25 @@ public abstract class Player extends GameEntity {
|
||||
*
|
||||
* @param num a int.
|
||||
* @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) {
|
||||
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();
|
||||
for (int i = 0; i < num; i++) {
|
||||
CardList list = this.getCardsIn(Zone.Hand);
|
||||
list = list.getValidCards(valid, sa.getSourceCard().getController(), sa.getSourceCard());
|
||||
if (list.size() != 0){
|
||||
Card disc = CardUtil.getRandom(list.toArray());
|
||||
discarded.add(disc);
|
||||
|
||||
@@ -1126,6 +1126,7 @@ public final class AbilityFactory_Reveal {
|
||||
*/
|
||||
private static void revealHandResolve(final AbilityFactory af, final SpellAbility sa) {
|
||||
HashMap<String, String> params = af.getMapParams();
|
||||
Card host = af.getHostCard();
|
||||
|
||||
ArrayList<Player> tgtPlayers;
|
||||
|
||||
@@ -1151,7 +1152,11 @@ public final class AbilityFactory_Reveal {
|
||||
} else {
|
||||
//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);
|
||||
|
||||
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")) {
|
||||
if (params.containsKey("UnlessType")) {
|
||||
p.discardUnless(numCards, params.get("UnlessType"), sa);
|
||||
|
||||
Reference in New Issue
Block a user