7
7
import signal
8
8
9
9
import SocketControl
10
- import Logger
10
+ import DumpSystem
11
11
import BoardManager
12
12
13
13
signal .signal (signal .SIGINT , signal .SIG_DFL )
@@ -19,26 +19,26 @@ def main():
19
19
description = "このプログラムはコマンドライン上で簡単にCHaserの対戦を行うためのものです"
20
20
)
21
21
"""
22
- py server.py {map_path} --cport {cool_port} --hport {hot_port} --log {log_path }
23
- py server.py {map_path} -c {cool_port} -h {hot_port} -l {log_path }
22
+ py server.py {map_path} --cport {cool_port} --hport {hot_port} --dump {dump_path }
23
+ py server.py {map_path} -c {cool_port} -h {hot_port} -d {dump_path }
24
24
"""
25
25
parser .add_argument ("mappath" , help = "マップのパス(実行ディレクトリから相対)" )
26
26
parser .add_argument ("-f" , "--firstport" , default = 2009 , help = "先攻のポート" )
27
27
parser .add_argument ("-s" , "--secondport" , default = 2010 , help = "後攻のポート" )
28
- parser .add_argument ("-l " , "--log " , default = "./chaser.log " , help = "logの出力先 (実行ディレクトリから相対)" )
28
+ parser .add_argument ("-d " , "--dump " , default = "./chaser.dump " , help = "dumpの出力先 (実行ディレクトリから相対)" )
29
29
30
30
args = parser .parse_args ()
31
31
32
32
base_path = os .getcwd ()
33
33
map_path = os .path .join (base_path , args .mappath )
34
- log_path = os .path .join (base_path , args .log )
34
+ dump_path = os .path .join (base_path , args .dump )
35
35
36
36
if not os .path .exists (map_path ):
37
37
print (f"Error: map file not exists\n path: { map_path } " , file = sys .stderr )
38
38
sys .exit (1 )
39
39
40
40
#ロガーの準備
41
- logger = Logger . Logger ( log_path ,map_path )
41
+ dump_system = DumpSystem . DumpSystem ( dump_path ,map_path )
42
42
43
43
#ゲームマネージャーの初期化
44
44
board_manager = BoardManager .BoardManager (map_path )
@@ -48,7 +48,7 @@ def main():
48
48
cool = SocketControl .Socket (args .firstport ,"cool" )
49
49
hot = SocketControl .Socket (args .secondport ,"hot" )
50
50
51
- print (f"cool port: { args .firstport } \n hot port: { args .secondport } \n map path: { map_path } \n log path: { log_path } " )
51
+ print (f"cool port: { args .firstport } \n hot port: { args .secondport } \n map path: { map_path } \n dump path: { dump_path } " )
52
52
print (f"connect wait..." )
53
53
54
54
setup (cool ,hot )
@@ -58,7 +58,7 @@ def main():
58
58
hot_name = hot .recieve ()
59
59
60
60
#名前をログに記録
61
- logger .set_name (cool_name , hot_name )
61
+ dump_system .set_name (cool_name , hot_name )
62
62
63
63
print ("ready" )
64
64
print (f"cool: \" { cool_name } \" vs hot: \" { hot_name } \" \n start!!" )
@@ -68,19 +68,19 @@ def main():
68
68
try :
69
69
if turn & 1 == 1 :
70
70
tag = hot .tag
71
- battle (hot ,logger ,board_manager )
71
+ battle (hot ,dump_system ,board_manager )
72
72
else :
73
73
tag = cool .tag
74
- battle (cool ,logger ,board_manager )
74
+ battle (cool ,dump_system ,board_manager )
75
75
except ConnectionAbortedError :
76
76
print (f"{ tag } is lose\n reason: lost connection" )
77
- logger .result (character .tag ,"lose" ,f"{ tag } lost connection" )
77
+ dump_system .result (character .tag ,"lose" ,f"{ tag } lost connection" )
78
78
return
79
79
80
80
#試合終了の処理
81
81
if board_manager .game_over :
82
82
print (f"{ tag } is lose\n reason: { board_manager .go_reason } " , file = sys .stderr )
83
- logger .result (tag ,"lose" ,f"{ board_manager .go_reason } " )
83
+ dump_system .result (tag ,"lose" ,f"{ board_manager .go_reason } " )
84
84
break
85
85
86
86
turn -= 1
@@ -95,7 +95,7 @@ def main():
95
95
print (f"{ player } { result } \n reason: score cool { cool_item } : hot { hot_item } " )
96
96
else :
97
97
print (f"{ result } \n reason: score cool { cool_item } : hot { hot_item } " )
98
- logger .result (player ,result ,f"cool { cool_item } : hot { hot_item } " )
98
+ dump_system .result (player ,result ,f"cool { cool_item } : hot { hot_item } " )
99
99
100
100
hot .send ("@" ) #開始の合図
101
101
hot .recieve ()
@@ -128,7 +128,7 @@ def setup(cool,hot):
128
128
break
129
129
130
130
#キャラクター行動処理一回分
131
- def battle (character ,logger ,board_manager ):
131
+ def battle (character ,dump_system ,board_manager ):
132
132
character .send ("@" ) #開始の合図
133
133
recieve = recieve_action (character )
134
134
if recieve != "gr" :
@@ -142,7 +142,7 @@ def battle(character,logger,board_manager):
142
142
return
143
143
recieve = recieve_action (character ) # walk look search put
144
144
data = board_manager .char_action (character .tag ,recieve )
145
- logger .action (board_manager .get_map_str (),"," .join (map (str ,reversed (board_manager .cool_position ))),"," .join (map (str ,reversed (board_manager .hot_position ))),board_manager .cool_item ,board_manager .hot_item )
145
+ dump_system .action (board_manager .get_map_str (),"," .join (map (str ,reversed (board_manager .cool_position ))),"," .join (map (str ,reversed (board_manager .hot_position ))),board_manager .cool_item ,board_manager .hot_item )
146
146
result = "" .join (map (str ,data ))
147
147
character .send (result )
148
148
if board_manager .game_over :
@@ -153,11 +153,11 @@ def recieve_action(character):
153
153
recieve = character .recieve ()
154
154
if not recieve :
155
155
print (f"{ character .tag } is lose\n reason: lost connection" , file = sys .stderr )
156
- logger .result (character .tag ,"lose" ,f"{ character .tag } lost connection" )
156
+ dump_system .result (character .tag ,"lose" ,f"{ character .tag } lost connection" )
157
157
sys .exit (1 )
158
158
if not len (recieve ) == 2 :
159
159
print (f"{ character .tag } is lose\n reason: command { recieve } does not exists" , file = sys .stderr )
160
- logger .result (character .tag ,"lose" ,f"{ character .tag } sent a command that does not exist. command: { recieve } " )
160
+ dump_system .result (character .tag ,"lose" ,f"{ character .tag } sent a command that does not exist. command: { recieve } " )
161
161
sys .exit (1 )
162
162
return recieve
163
163
0 commit comments