mirror of
https://github.com/magefree/mage.git
synced 2025-12-22 03:22:00 -08:00
Basic groundwork for extra decks (contraptions, attractions) (#10378)
* extra deck cards not counted in deck size * extra deck handling in deckbuilder * move responsibility for extraDeckCard boolean to CardImpl * remove redundant field copy
This commit is contained in:
parent
978ebfc873
commit
9ba0da00ff
29 changed files with 97 additions and 47 deletions
|
|
@ -43,8 +43,8 @@ public class PlayGameTest extends MageTestBase {
|
|||
// Deck deck = Deck.load(Sets.loadDeck("RB Aggro.dck"));
|
||||
Deck deck = generateRandomDeck();
|
||||
|
||||
if (deck.getCards().size() < DECK_SIZE) {
|
||||
throw new IllegalArgumentException("Couldn't load deck, deck size = " + deck.getCards().size() + ", but must be " + DECK_SIZE);
|
||||
if (deck.getMaindeckCards().size() < DECK_SIZE) {
|
||||
throw new IllegalArgumentException("Couldn't load deck, deck size = " + deck.getMaindeckCards().size() + ", but must be " + DECK_SIZE);
|
||||
}
|
||||
game.addPlayer(computerA, deck);
|
||||
game.loadCards(deck.getCards(), computerA.getId());
|
||||
|
|
@ -53,8 +53,8 @@ public class PlayGameTest extends MageTestBase {
|
|||
// Player playerB = createPlayer("ComputerB", "Computer - mad");
|
||||
// Deck deck2 = Deck.load(Sets.loadDeck("RB Aggro.dck"));
|
||||
Deck deck2 = generateRandomDeck();
|
||||
if (deck2.getCards().size() < DECK_SIZE) {
|
||||
throw new IllegalArgumentException("Couldn't load deck, deck size = " + deck2.getCards().size() + ", but must be " + DECK_SIZE);
|
||||
if (deck2.getMaindeckCards().size() < DECK_SIZE) {
|
||||
throw new IllegalArgumentException("Couldn't load deck, deck size = " + deck2.getMaindeckCards().size() + ", but must be " + DECK_SIZE);
|
||||
}
|
||||
game.addPlayer(computerB, deck2);
|
||||
game.loadCards(deck2.getCards(), computerB.getId());
|
||||
|
|
|
|||
|
|
@ -219,8 +219,8 @@ public abstract class CardTestPlayerAPIImpl extends MageTestPlayerBase implement
|
|||
}
|
||||
Deck deck = Deck.load(list, false, false, loadedCardInfo);
|
||||
logger.debug("Done!");
|
||||
if (deck.getCards().size() < 40) {
|
||||
throw new IllegalArgumentException("Couldn't load deck, deck size=" + deck.getCards().size());
|
||||
if (deck.getMaindeckCards().size() < 40) {
|
||||
throw new IllegalArgumentException("Couldn't load deck, deck size=" + deck.getMaindeckCards().size());
|
||||
}
|
||||
|
||||
game.loadCards(deck.getCards(), player.getId());
|
||||
|
|
|
|||
|
|
@ -144,7 +144,7 @@ public class RandomTest {
|
|||
Player player = new HumanPlayer("random", RangeOfInfluence.ALL, 1);
|
||||
Game game = new TwoPlayerDuel(MultiplayerAttackOption.MULTIPLE, RangeOfInfluence.ALL, MulliganType.GAME_DEFAULT.getMulligan(0), 50);
|
||||
Deck deck = DeckTestUtils.buildRandomDeck("WGUBR", false, "GRN");
|
||||
player.getLibrary().addAll(deck.getCards(), game);
|
||||
player.getLibrary().addAll(deck.getMaindeckCards(), game);
|
||||
|
||||
// multiple cards analyze
|
||||
for (int i = 0; i < player.getLibrary().size(); i++) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue