X-Git-Url: https://plomlompom.com/repos/?a=blobdiff_plain;f=new2%2Fplomrogue%2Fcommands.py;h=df347289f64459ce4718df6aefb6a87a6ec920d2;hb=47d047c10bacf2463f48aec3e7f3cc3b92a78198;hp=79a4678b1b8133b969e589729d90498e235a2dc8;hpb=a0afb82a75abf2907e57ba5e6d2244fb02613a7c;p=plomrogue2-experiments diff --git a/new2/plomrogue/commands.py b/new2/plomrogue/commands.py index 79a4678..df34728 100644 --- a/new2/plomrogue/commands.py +++ b/new2/plomrogue/commands.py @@ -34,3 +34,26 @@ def cmd_QUERY(game, target_nick, msg, connection_id): raise GameError('target user offline') raise GameError('can only query with registered nicknames') cmd_QUERY.argtypes = 'string string' + +def cmd_PING(game, connection_id): + game.io.send('PONG') +cmd_PING.argtypes = '' + +def cmd_SAVE(game): + + def write(f, msg): + f.write(msg + '\n') + + with open(game.io.save_file, 'w') as f: + write(f, 'TURN %s' % game.turn) + for y, line in game.map.lines(): + write(f, 'MAP_LINE %5s %s' % (y, quote(line))) +cmd_SAVE.argtypes = '' + +def cmd_TURN(game, n): + game.turn = n +cmd_TURN.argtypes = 'int:nonneg' + +def cmd_MAP_LINE(game, y, line): + game.map.set_line(y, line) +cmd_MAP_LINE.argtypes = 'int:nonneg string'