mirror of
https://github.com/correl/mage.git
synced 2025-03-17 01:06:26 -09:00
Fixed missing override, restored and additional comments
This commit is contained in:
parent
f307bffcda
commit
05b1366c39
3 changed files with 22 additions and 2 deletions
|
@ -1,4 +1,3 @@
|
||||||
|
|
||||||
package mage.game;
|
package mage.game;
|
||||||
|
|
||||||
import mage.game.match.MatchImpl;
|
import mage.game.match.MatchImpl;
|
||||||
|
@ -17,7 +16,12 @@ public class TwoPlayerMatch extends MatchImpl {
|
||||||
@Override
|
@Override
|
||||||
public void startGame() throws GameException {
|
public void startGame() throws GameException {
|
||||||
Mulligan mulligan = options.getMulliganType().getMulligan(options.getFreeMulligans());
|
Mulligan mulligan = options.getMulliganType().getMulligan(options.getFreeMulligans());
|
||||||
TwoPlayerDuel game = new TwoPlayerDuel(options.getAttackOption(), options.getRange(), mulligan, 20, options.isLimited() || "Limited".equals(options.getDeckType()) ? 40 : 60);
|
|
||||||
|
// workaround to enable limited deck size in limited set as deck type (Yorion, Sky Nomad)
|
||||||
|
// see comments from https://github.com/magefree/mage/commit/4874ad31c199ea573187ea2790268be3a4d4c95a
|
||||||
|
boolean isLimitedDeck = options.isLimited() || "Limited".equals(options.getDeckType());
|
||||||
|
|
||||||
|
TwoPlayerDuel game = new TwoPlayerDuel(options.getAttackOption(), options.getRange(), mulligan, 20, isLimitedDeck ? 40 : 60);
|
||||||
// Sets a start message about the match score
|
// Sets a start message about the match score
|
||||||
game.setStartMessage(this.createGameStartMessage());
|
game.setStartMessage(this.createGameStartMessage());
|
||||||
initGame(game);
|
initGame(game);
|
||||||
|
|
|
@ -106,6 +106,21 @@ public interface MageObject extends MageItem, Serializable {
|
||||||
|
|
||||||
void setStartingLoyalty(int startingLoyalty);
|
void setStartingLoyalty(int startingLoyalty);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Dynamic cost modification for card (process only OWN abilities).
|
||||||
|
* <p>
|
||||||
|
* Usage example: if it need stack related info (like real targets) then must check two
|
||||||
|
* states (game.inCheckPlayableState):
|
||||||
|
* <p>
|
||||||
|
* 1. In playable state it must check all possible use cases (e.g. allow to
|
||||||
|
* reduce on any available target and modes)
|
||||||
|
* <p>
|
||||||
|
* 2. In real cast state it must check current use case (e.g. real selected
|
||||||
|
* targets and modes)
|
||||||
|
*
|
||||||
|
* @param ability
|
||||||
|
* @param game
|
||||||
|
*/
|
||||||
void adjustCosts(Ability ability, Game game);
|
void adjustCosts(Ability ability, Game game);
|
||||||
|
|
||||||
void adjustTargets(Ability ability, Game game);
|
void adjustTargets(Ability ability, Game game);
|
||||||
|
|
|
@ -101,6 +101,7 @@ public class ModalDoubleFacesCardHalfImpl extends CardImpl implements ModalDoubl
|
||||||
this.setPT(new MageInt(power), new MageInt(toughness));
|
this.setPT(new MageInt(power), new MageInt(toughness));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void setPT(MageInt power, MageInt toughness) {
|
public void setPT(MageInt power, MageInt toughness) {
|
||||||
this.power = power;
|
this.power = power;
|
||||||
this.toughness = toughness;
|
this.toughness = toughness;
|
||||||
|
|
Loading…
Add table
Reference in a new issue