private Action raise(int amount) { if (canRaise) return ActionUtils.raise( HelperUtils.minMax(amount, raiseAction.getMin(), raiseAction.getMax())); else if (canCall) return call(); else return fold(); }
public Action act() { reset(); for (LegalAction legalAction : legalActions) { if (legalAction.getType().equalsIgnoreCase("RAISE")) { raiseAction = legalAction; canRaise = true; } else if (legalAction.getType().equalsIgnoreCase("BET")) { betAction = legalAction; canBet = true; } else if (legalAction.getType().equalsIgnoreCase("CHECK")) { canCheck = true; } else if (legalAction.getType().equalsIgnoreCase("CALL")) { canCall = true; } else if (legalAction.getType().equalsIgnoreCase("DISCARD")) { canDiscard = true; if (chosenDiscardCard == null) chooseDiscardCard(); return discardCard(); } } for (PerformedAction performedAction : lastActions) { if (performedAction.getType().equalsIgnoreCase("DEAL")) { ec.setBoard(board); if (performedAction.getStreet().equalsIgnoreCase("FLOP")) { chooseDiscardCard(); // this will also update equity } else { equity = ec.calculateTotalEquity(); } } else if (performedAction.getType().equalsIgnoreCase("POST") && performedAction.getActor().equalsIgnoreCase(maj.myName)) { equity = ec.calculateTotalEquity(); } } maj.update(lastActions); dory.update(); if (board[2] == null) return actPreFlop(); else if (board[3] == null) { return actPostFlop(); } else if (board[4] == null) return actPostTurn(); else return actPostRiver(); }
private Action betMin() { return bet(betAction.getMin()); }
private Action betAllinMinusOne() { return bet(betAction.getMax() - 1); }
private Action betAllin() { return bet(betAction.getMax()); }
////////////// /////// BETTING ////////////// private Action bet(int amount) { if (canBet) return ActionUtils.bet(HelperUtils.minMax(amount, betAction.getMin(), betAction.getMax())); else if (canCall) return call(); else return fold(); }
private Action raiseMin() { return raise(raiseAction.getMin()); }
private Action raiseAllinMinusOne() { return raise(raiseAction.getMax()); }
private Action raiseAllin() { return raise(raiseAction.getMax()); }