X-Git-Url: https://plomlompom.com/repos/foo.html?a=blobdiff_plain;f=rogue_chat.py;h=7bd86edc6ef5d522d88da351881de3923af50550;hb=6f5e2612e8d2b2515612e3dee6dc5ab115f0c1a3;hp=026fcdf2be073689378385fb7d3d2aba7ef643d5;hpb=540aec0e9bf55d0452cffda4b34e1995d3724abf;p=plomrogue2 diff --git a/rogue_chat.py b/rogue_chat.py index 026fcdf..7bd86ed 100755 --- a/rogue_chat.py +++ b/rogue_chat.py @@ -1,34 +1,67 @@ #!/usr/bin/env python3 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 +from plomrogue.commands import (cmd_ALL, cmd_LOGIN, cmd_NICK, cmd_PING, cmd_THING, + cmd_MAP, cmd_TURN, cmd_MAP_LINE, cmd_GET_ANNOTATION, + cmd_ANNOTATE, cmd_PORTAL, cmd_GET_GAMESTATE, + cmd_TASKS, cmd_MAP_CONTROL_LINE, cmd_MAP_CONTROL_PW, + cmd_GOD_ANNOTATE, cmd_GOD_PORTAL, cmd_THING_TYPES, + cmd_THING_NAME, cmd_TERRAINS, cmd_ADMIN_PASSWORD, + cmd_BECOME_ADMIN, cmd_SET_TILE_CONTROL, + cmd_GOD_THING_NAME, + cmd_GOD_THING_PROTECTION, cmd_THING_PROTECTION, + cmd_SET_MAP_CONTROL_PASSWORD, cmd_SPAWN_POINT) +from plomrogue.tasks import (Task_WAIT, Task_MOVE, Task_WRITE, Task_PICK_UP, + Task_DROP, Task_FLATTEN_SURROUNDINGS, Task_DOOR) +from plomrogue.things import (Thing_Player, Thing_Item, Thing_ItemSpawner, + Thing_SpawnPoint, Thing_SpawnPointSpawner, + Thing_Door, Thing_DoorSpawner) -if len(sys.argv) != 2: - print('wrong number of arguments, expected one (save file)') - exit(1) -savefile = sys.argv[1] -game = Game(savefile) +from plomrogue.config import config +game = Game(config['savefile']) game.register_command(cmd_PING) +game.register_command(cmd_ALL) game.register_command(cmd_LOGIN) -game.register_command(cmd_QUERY) +game.register_command(cmd_NICK) game.register_command(cmd_TURN) game.register_command(cmd_MAP) game.register_command(cmd_MAP_LINE) +game.register_command(cmd_MAP_CONTROL_LINE) +game.register_command(cmd_MAP_CONTROL_PW) game.register_command(cmd_GET_ANNOTATION) game.register_command(cmd_ANNOTATE) game.register_command(cmd_PORTAL) +game.register_command(cmd_GOD_ANNOTATE) +game.register_command(cmd_GOD_PORTAL) game.register_command(cmd_GET_GAMESTATE) +game.register_command(cmd_TASKS) +game.register_command(cmd_THING_TYPES) +game.register_command(cmd_TERRAINS) +game.register_command(cmd_THING) +game.register_command(cmd_THING_PROTECTION) +game.register_command(cmd_GOD_THING_PROTECTION) +game.register_command(cmd_THING_NAME) +game.register_command(cmd_GOD_THING_NAME) +game.register_command(cmd_ADMIN_PASSWORD) +game.register_command(cmd_SET_TILE_CONTROL) +game.register_command(cmd_SET_MAP_CONTROL_PASSWORD) +game.register_command(cmd_BECOME_ADMIN) +game.register_command(cmd_SPAWN_POINT) game.register_task(Task_WAIT) game.register_task(Task_MOVE) game.register_task(Task_WRITE) game.register_task(Task_FLATTEN_SURROUNDINGS) +game.register_task(Task_PICK_UP) +game.register_task(Task_DROP) +game.register_task(Task_DOOR) +game.register_thing_type(Thing_Player) +game.register_thing_type(Thing_Item) +game.register_thing_type(Thing_ItemSpawner) +game.register_thing_type(Thing_SpawnPoint) +game.register_thing_type(Thing_SpawnPointSpawner) +game.register_thing_type(Thing_Door) +game.register_thing_type(Thing_DoorSpawner) game.read_savefile() game.io.start_loop() -game.io.start_server(8000, PlomWebSocketServer) -game.io.start_server(5000, PlomTCPServer) +for port in config['servers']: + game.io.start_server(port, config['servers'][port], + config['certfile'], config['keyfile'])