public bool execute(ModelContext model) { bool result = false; int playerTurn = model.getPlayerTurn(); PlayerEntity player = model.getPlayer(playerTurn); BetCommand command = player.getBetCommand(); if (command != null) { BetCommand resultCommand = command; player.setBetCommand(null); long betChips = 0; BetCommandType commandType = command.getType(); if (CHECKERS[commandType](model, player, command)) { betChips = command.getChips(); player.setState(TexasHoldEmUtil.convert(command.getType())); } else { commandType = BetCommandType.FOLD; player.setState(PlayerState.FOLD); if (command.getType() == BetCommandType.TIMEOUT) { resultCommand = new BetCommand(BetCommandType.TIMEOUT); } else { resultCommand = new BetCommand(BetCommandType.ERROR); } ModelUtil.incrementErrors(player, model.getSettings()); } ModelUtil.playerBet(model, player, commandType, betChips); model.lastResultCommand(player, resultCommand); model.setPlayerTurn(ModelUtil.nextPalyer(model, playerTurn)); result = true; } return(result); }
public bool isActive() { return(TexasHoldEmUtil.getPlayerState(state)); }