Posted to tcl by aspect at Thu May 19 02:36:34 GMT 2011view raw
- #!/usr/bin/tclsh
- package require Tk
- set whos_turn 0 ;# players are numbered 0 and 1 - player 0 goes first
- # this is our event, called when a button is pressed
- proc take_turn {player} {
- global whos_turn
- if {$whos_turn != $player} {
- .text insert end "Not player $player's turn!"
- } else {
- .text insert end "Player $player takes a turn"
- set whos_turn [expr {1-$player}]
- }
- }
- # create the GUI
- button .p1 -text "Player 0 go" -command {take_turn 0}
- button .p2 -text "Player 1 go" -command {take_turn 1}
- frame .f
- text .text
- .text insert end "Game started! Player $whos_turn goes first"
- grid .f
- grid .text
- grid .p1 .p2 -in .f
- # now enter the event loop
- vwait forever