home · contact · privacy
Register game commands and tasks outside of game module.
[plomrogue2-experiments] / new2 / rogue_chat.py
index afaeef9835a52a96f23638d46bd1ce93982f04b4..026fcdf2be073689378385fb7d3d2aba7ef643d5 100755 (executable)
@@ -1,6 +1,12 @@
 #!/usr/bin/env python3
-from plomrogue.game import Game 
+from plomrogue.game import Game
 from plomrogue.io_websocket import PlomWebSocketServer
+from plomrogue.io_tcp import PlomTCPServer
+from plomrogue.commands import (cmd_ALL, cmd_LOGIN, cmd_QUERY, cmd_PING, cmd_MAP,
+                                cmd_TURN, cmd_MAP_LINE, cmd_GET_ANNOTATION,
+                                cmd_ANNOTATE, cmd_PORTAL, cmd_GET_GAMESTATE)
+from plomrogue.tasks import (Task_WAIT, Task_MOVE, Task_WRITE,
+                             Task_FLATTEN_SURROUNDINGS)
 import sys
 
 if len(sys.argv) != 2:
@@ -8,4 +14,21 @@ if len(sys.argv) != 2:
     exit(1)
 savefile = sys.argv[1]
 game = Game(savefile)
-game.io.run_loop_with_server(8000, PlomWebSocketServer)
+game.register_command(cmd_PING)
+game.register_command(cmd_LOGIN)
+game.register_command(cmd_QUERY)
+game.register_command(cmd_TURN)
+game.register_command(cmd_MAP)
+game.register_command(cmd_MAP_LINE)
+game.register_command(cmd_GET_ANNOTATION)
+game.register_command(cmd_ANNOTATE)
+game.register_command(cmd_PORTAL)
+game.register_command(cmd_GET_GAMESTATE)
+game.register_task(Task_WAIT)
+game.register_task(Task_MOVE)
+game.register_task(Task_WRITE)
+game.register_task(Task_FLATTEN_SURROUNDINGS)
+game.read_savefile()
+game.io.start_loop()
+game.io.start_server(8000, PlomWebSocketServer)
+game.io.start_server(5000, PlomTCPServer)