@@ -4,40 +4,49 @@ import (
4
4
"os"
5
5
"fmt"
6
6
"flag"
7
+ "./match"
7
8
"./board"
8
9
"./player"
9
10
"./server"
10
11
"./console_player"
11
12
//"./auto_player"
12
13
)
13
14
14
- func startConsole (b * board.Board , ps [2 ]player.Player ) {
15
+ func startConsole (b * board.Board ) {
16
+ players := [2 ]player.Player {
17
+ console_player .New ("ando" , player .SENTE ),
18
+ console_player .New ("yasushi" , player .GOTE )}
19
+ m := match .New (b , players )
20
+
15
21
fmt .Printf ("%v" , b )
16
- turn := 0
17
- pass := false
18
22
for {
19
- switch ps [turn ].Next (b ) {
23
+ matchStatus , playerStatus := m .Next ()
24
+ switch playerStatus {
20
25
case player .PUT :
21
26
fmt .Printf ("%v" , b )
22
- pass = false
27
+ case player .KO :
28
+ fmt .Printf ("Ko" , b )
29
+ case player .FORBIDDEN :
30
+ fmt .Printf ("Forbidden" , b )
23
31
case player .PASS :
24
- if pass {
32
+ if matchStatus == match . FINISH {
25
33
fmt .Println ("Finish!" )
26
34
os .Exit (0 )
27
- } else {
28
- pass = true
29
35
}
30
36
case player .GIVEUP :
31
- fmt .Printf ("%s Win!\n " , ps [ turn ] .Name ())
37
+ fmt .Printf ("%s Win!\n " , ( * m . Winner ) .Name ())
32
38
os .Exit (0 )
33
39
}
34
- turn ++
35
- turn %= 2
36
40
}
37
41
}
38
42
39
- func startServer (port int , b * board.Board , ps [2 ]player.Player ) {
40
- s := server .New (b , ps )
43
+ func startServer (port int , b * board.Board ) {
44
+ players := [2 ]player.Player {
45
+ //http_player.New("ando", player.SENTE),
46
+ //http_player.New("yasushi", player.GOTE)}
47
+ console_player .New ("ando" , player .SENTE ),
48
+ console_player .New ("yasushi" , player .GOTE )}
49
+ s := server .New (b , players )
41
50
s .Start (port )
42
51
}
43
52
@@ -55,16 +64,8 @@ func main() {
55
64
}
56
65
57
66
if * server {
58
- players := [2 ]player.Player {
59
- //http_player.New("ando", player.SENTE),
60
- //http_player.New("yasushi", player.GOTE)}
61
- console_player .New ("ando" , player .SENTE ),
62
- console_player .New ("yasushi" , player .GOTE )}
63
- startServer (* port , b , players )
67
+ startServer (* port , b )
64
68
} else {
65
- players := [2 ]player.Player {
66
- console_player .New ("ando" , player .SENTE ),
67
- console_player .New ("yasushi" , player .GOTE )}
68
- startConsole (b , players )
69
+ startConsole (b )
69
70
}
70
71
}
0 commit comments