fix bug where player always discards down to 7
parent
6f84a5c8ea
commit
c8df9144cb
|
@ -243,8 +243,8 @@ public class MagicPlayer implements MagicTarget {
|
||||||
return hand.size();
|
return hand.size();
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean handSizeExceedMax() {
|
public int getNumExcessCards() {
|
||||||
return getHandSize() > maxHandSize;
|
return Math.max(0, getHandSize() - maxHandSize);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void noMaxHandSize() {
|
public void noMaxHandSize() {
|
||||||
|
|
|
@ -33,9 +33,9 @@ public class MagicCleanupPhase extends MagicPhase {
|
||||||
|
|
||||||
private static void nextTurn(final MagicGame game) {
|
private static void nextTurn(final MagicGame game) {
|
||||||
MagicPlayer turnPlayer=game.getTurnPlayer();
|
MagicPlayer turnPlayer=game.getTurnPlayer();
|
||||||
// discard down to 7 cards
|
// discard excess cards
|
||||||
if (turnPlayer.handSizeExceedMax()) {
|
if (turnPlayer.getNumExcessCards() > 0) {
|
||||||
final int amount = turnPlayer.getHandSize() - 7;
|
final int amount = turnPlayer.getNumExcessCards();
|
||||||
game.addEvent(new MagicDiscardEvent(MagicEvent.NO_SOURCE,turnPlayer,amount,false));
|
game.addEvent(new MagicDiscardEvent(MagicEvent.NO_SOURCE,turnPlayer,amount,false));
|
||||||
}
|
}
|
||||||
if (turnPlayer.getExtraTurns()>0) {
|
if (turnPlayer.getExtraTurns()>0) {
|
||||||
|
|
Loading…
Reference in New Issue