mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-18 11:48:02 +00:00
Merge branch 'reveal' into 'master'
allow "Random" and "RevealValid" in same Reveal See merge request core-developers/forge!5178
This commit is contained in:
@@ -36,16 +36,25 @@ public class RevealEffect extends SpellAbilityEffect {
|
|||||||
}
|
}
|
||||||
final CardCollection revealed = new CardCollection();
|
final CardCollection revealed = new CardCollection();
|
||||||
if (sa.hasParam("Random")) {
|
if (sa.hasParam("Random")) {
|
||||||
|
CardCollection valid = new CardCollection(cardsInHand);
|
||||||
|
|
||||||
|
if (sa.hasParam("RevealValid")) {
|
||||||
|
valid = CardLists.getValidCards(valid, sa.getParam("RevealValid"), p, host, sa);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (valid.isEmpty())
|
||||||
|
continue;
|
||||||
|
|
||||||
if (sa.hasParam("NumCards")) {
|
if (sa.hasParam("NumCards")) {
|
||||||
final int revealnum = Math.min(cardsInHand.size(), cnt);
|
final int revealnum = Math.min(cardsInHand.size(), cnt);
|
||||||
final CardCollection hand = new CardCollection(cardsInHand);
|
final CardCollection hand = new CardCollection(cardsInHand);
|
||||||
for (int i = 0; i < revealnum; i++) {
|
for (int i = 0; i < revealnum; i++) {
|
||||||
final Card random = Aggregates.random(hand);
|
final Card random = Aggregates.random(valid);
|
||||||
revealed.add(random);
|
revealed.add(random);
|
||||||
hand.remove(random);
|
valid.remove(random);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
revealed.add(Aggregates.random(cardsInHand));
|
revealed.add(Aggregates.random(valid));
|
||||||
}
|
}
|
||||||
|
|
||||||
} else if (sa.hasParam("RevealDefined")) {
|
} else if (sa.hasParam("RevealDefined")) {
|
||||||
|
|||||||
Reference in New Issue
Block a user