diff options
Diffstat (limited to 'ltg.ml')
| -rw-r--r-- | ltg.ml | 56 |
1 files changed, 0 insertions, 56 deletions
@@ -1,56 +0,0 @@ -open Game - -let _ = if Array.length Sys.argv < 2 then begin - Printf.printf "You must specify the player number\n"; - exit 1 -end - -let me = int_of_string Sys.argv.(1) - -let opponent = match me with - | 0 -> 1 - | 1 -> 0 - | _ -> failwith "Wrong player_number" - -let read_move () = Scanf.scanf "%d\n" (fun d -> match d with - | 1 -> Scanf.scanf "%s\n%d\n" (fun s d -> - Game.left_apply opponent (card_of_string s) d) - | 2 -> Scanf.scanf "%d\n%s\n" (fun d s -> - Game.right_apply opponent (card_of_string s) d) - | _ -> failwith "Wrong move number" -) - -(* important print newline to flush output *) -let play_move () = - Printf.printf "1"; - print_newline (); - Printf.printf "I"; - print_newline(); - Printf.printf "1"; - print_newline () - -let automatic player = - let aux i slot = - if slot.vitality = -1 then begin - Game.right_apply_bis player I i; - slot.vitality <- 0; - slot.field <- id - end - in - if player = 0 then - Array.iteri aux player0 - else - Array.iteri aux player1 - -let do_round = - if me = 0 - then fun () -> automatic 0; play_move (); automatic 1; read_move () - else fun () -> automatic 0; read_move (); automatic 1; play_move () - - -let _ = - let round = ref 1 in - while !round <= 100000 do - do_round (); - incr round - done
\ No newline at end of file |
