def hand_evaluate_preflop(self, card_holding, name): he = Hand.HandEvaluation(card_holding, name, event='Preflop') #Unique to player instance evaluation, rc, score_desc, event = he.get_evaluation() self.take_action_flop(he, evaluation, rc, score_desc) return he, evaluation, rc, score_desc, event
def hand_evaluate_flop(self, card_holding, name): limit = 5 he = Hand.HandEvaluation(self.card_holding, name, event='Flop') #Unique to player instance #print(he) # for starting training, if hand is "sufficiently good" (If evaluation score is good), then c/r. # Otherwise fold. my_eval_score = he.get_evaluation()[0] if my_eval_score < 3000: ## Account for position act = Bet(limit, self) elif my_eval_score >= 3000 and my_eval_score < 7000: act = Call(limit, self) else: #First check if free to fold but do this in subclass act = Fold()
def hand_evaluate(self, card_holding, name, event, first_meeting, first_player): if first_player: Player.level_raises = {0:0, 1:0, 2:0} if self.is_new_game: print("\n\n******************************\n\n") self.make_new_game() self.make_new_round() if self.is_new_round(first_meeting): self.make_new_round() he = Hand.HandEvaluation(card_holding, name, event) #Unique to player instance evaluation, rc, score_desc, hand, board = he.get_evaluation() self.set_attributes(evaluation, he, rc, score_desc, event) self.populatePlayerPossibleMoves(event) self.calc_raises_i_face() #self.getPerceivedRange(player1, player2) # Only use this if coming from CTB0 (learner) player_action = self.take_action(he, rc, score_desc, event) self.set_player_action(event, player_action) self.debug_print(player_action, hand, board) return he, rc, score_desc, player_action