37 lines
1.1 KiB
Java
37 lines
1.1 KiB
Java
package cards.maumau.model;
|
|
|
|
public class WaitForNextTurnState implements PlayerState {
|
|
private final PlayerHandler handler;
|
|
|
|
public WaitForNextTurnState(PlayerHandler handler) {
|
|
this.handler = handler;
|
|
}
|
|
|
|
@Override
|
|
public void nextTurn(int n) {
|
|
// Logic for next turn
|
|
if (handler.getCurrentPlayer().getCards().isEmpty()) {
|
|
handler.setRemember(handler.getCurrentPlayer());
|
|
handler.localNextTurn(n);
|
|
handler.setCurrentState(handler.getWaitForMauMauState());
|
|
} else if (handler.getCurrentPlayer().getCards().size() == 1) {
|
|
handler.setRemember(handler.getCurrentPlayer());
|
|
handler.localNextTurn(n);
|
|
handler.setCurrentState(handler.getWaitForMauState());
|
|
} else {
|
|
handler.localNextTurn(n);
|
|
handler.setCurrentState(handler.getWaitForNextTurnState());
|
|
}
|
|
}
|
|
|
|
@Override
|
|
public void mau(Player p) {
|
|
// Do nothing or handle invalid state transition
|
|
}
|
|
|
|
@Override
|
|
public void maumau(Player p) {
|
|
// Do nothing or handle invalid state transition
|
|
}
|
|
}
|