Add custom options for starting life total and starting hand size (#11259)

* add startHandSize / startLife to the custom option panel

* use the custom startLife/startHandsize in all Game Modes
This commit is contained in:
Susucre 2023-10-07 05:22:48 +02:00 committed by GitHub
parent 3e6097b70e
commit f14479c53c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
76 changed files with 1230 additions and 929 deletions

View file

@ -2,22 +2,22 @@
package mage.game;
import java.util.UUID;
import mage.constants.MultiplayerAttackOption;
import mage.constants.RangeOfInfluence;
import mage.game.match.MatchType;
import mage.game.mulligan.Mulligan;
import java.util.UUID;
/**
*
* @author spjspj
*/
public class BrawlFreeForAll extends GameCommanderImpl {
private int numPlayers;
public BrawlFreeForAll(MultiplayerAttackOption attackOption, RangeOfInfluence range, Mulligan mulligan, int startLife) {
super(attackOption, range, mulligan, startLife, 60);
public BrawlFreeForAll(MultiplayerAttackOption attackOption, RangeOfInfluence range, Mulligan mulligan, int startLife, int startHandSize) {
super(attackOption, range, mulligan, 60, startLife, startHandSize);
}
public BrawlFreeForAll(final BrawlFreeForAll game) {
@ -28,7 +28,7 @@ public class BrawlFreeForAll extends GameCommanderImpl {
@Override
protected void init(UUID choosingPlayerId) {
startingPlayerSkipsDraw = false;
super.init(choosingPlayerId);
super.init(choosingPlayerId);
}
@Override

View file

@ -17,7 +17,12 @@ public class BrawlFreeForAllMatch extends MatchImpl {
public void startGame() throws GameException {
int startLife = 30;
Mulligan mulligan = options.getMulliganType().getMulligan(options.getFreeMulligans());
BrawlFreeForAll game = new BrawlFreeForAll(options.getAttackOption(), options.getRange(), mulligan, startLife);
startLife = options.isCustomStartLifeEnabled() ? options.getCustomStartLife() : startLife;
int startHandSize = options.isCustomStartHandSizeEnabled() ? options.getCustomStartHandSize() : 7;
BrawlFreeForAll game = new BrawlFreeForAll(
options.getAttackOption(), options.getRange(),
mulligan, startLife, startHandSize
);
game.setStartMessage(this.createGameStartMessage());
game.setCheckCommanderDamage(false);
initGame(game);