home · contact · privacy
Refactor.
[plomrogue2-experiments] / server.py
1 #!/usr/bin/env python3
2 import sys
3 import os
4 import server_.game
5 import server_.io
6
7
8 if len(sys.argv) != 2:
9     print('wrong number of arguments, expected one (game file)')
10     exit(1)
11 game_file_name = sys.argv[1]
12 game = server_.game.Game(game_file_name)
13 if os.path.exists(game_file_name):
14     if not os.path.isfile(game_file_name):
15         print('game file name does not refer to a valid game file')
16     else:
17         with open(game_file_name, 'r') as f:
18             lines = f.readlines()
19         for i in range(len(lines)):
20             line = lines[i]
21             print("FILE INPUT LINE %s: %s" % (i, line), end='')
22             game.io.handle_input(line, store=False)
23 else:
24     game.io.handle_input('MAP_SIZE Y:5,X:5')
25     game.io.handle_input('TERRAIN_LINE 0 "xxxxx"')
26     game.io.handle_input('TERRAIN_LINE 1 "x...x"')
27     game.io.handle_input('TERRAIN_LINE 2 "x.X.x"')
28     game.io.handle_input('TERRAIN_LINE 3 "x...x"')
29     game.io.handle_input('TERRAIN_LINE 4 "xxxxx"')
30     game.io.handle_input('THING_TYPE 0 human')
31     game.io.handle_input('THING_POS 0 Y:3,X:3')
32     game.io.handle_input('THING_TYPE 1 monster')
33     game.io.handle_input('THING_POS 1 Y:1,X:1')
34
35
36 server_.io.run_server_with_io_loop(game)