
    IiO                     f    S r SSKJr  \(       a  SSKJrJr  SSSSS	\S
-  4S jrSSS	\S
-  4S jr	g
)zBot AI for Ludo.    )TYPE_CHECKING   )LudoGame
LudoPlayergamer   playerr   returnNc                 r    XR                   :w  a  gUR                  (       a  [        U5      nUb  SUS-    3$ g)zReturn the bot's next action.Nmove_token_r   	roll_dice)current_playermove_options_best_move_index)r   r   
best_indexs      4c:\Users\dbart\PlayPalace11\server\games\ludo\bot.py	bot_thinkr   	   s?    $$$%f-
! a 011    c                 P   U R                   (       d  gSnSnU R                   R                  5        Hq  nU R                  U   nSnUR                  S:X  a  SUR                  -   nO2UR                  S:X  a  SUR                  -   nOUR                  S:X  a  S	nXR:  d  Mm  UnUnMs     U$ )
z#Pick the best move index for a bot.Nr   home_columni  tracki  yardi,  )r   keystokensstateposition)r   r   
best_scoreidxtokenscores         r   r   r      s    JJ""'')c";;-'5>>)E[[G#%..(E[[F"EJJ * r   )
__doc__typingr   r   r   r   strr   intr    r   r   <module>r&      sF      *J  t \ cDj r   