
    Ii                    H    S r SSKJr  SSKJr  \(       a  SSKJrJr  SS jrg)	zTwentyOne bot decision logic.    )annotations)TYPE_CHECKING   )TwentyOneGameTwentyOnePlayerc                   U R                   S:w  d  U R                  U:w  a  gU R                  U5      nU(       d  gU R                  5       nU R	                  U5      nU R                  X5      nU R                  U5      (       d(  UR                  (       a  U R                  U5      (       a  gU R                  U5      (       a  gU R                  X$XS5      $ )z3Return a bot action for the current TwentyOne turn.turnsNstandplay_modifier)phasecurrent_player_opponent_of_current_target_hand_total_bot_estimate_opponent_total_modifiers_locked_for	modifiers_bot_choose_modifier_to_play_draws_locked_for_bot_choose_hit_or_stand)gameplayeropponenttargettotalestimated_opp_totals         9c:\Users\dbart\PlayPalace11\server\games\twentyone\bot.py	bot_thinkr      s    zzW 3 3v =  (H!!#FV$E;;FM%%f--&2B2B,,V44" f%%((:MVV    N)r   z'TwentyOneGame'r   z'TwentyOnePlayer'returnz
str | None)	__doc__
__future__r   typingr   r   r   r   r    r   r   <module>r%      s    # "  4Wr   