import json
self.mode_play.available_modes = ["chat", "study", "edit", "admin_enter"]
self.mode_play.available_actions = ["move", "take_thing", "drop_thing",
- "teleport"]
+ "teleport", "door"]
self.mode_study.available_modes = ["chat", "play", "admin_enter", "edit"]
self.mode_study.available_actions = ["toggle_map_mode", "move_explorer"]
self.mode_admin.available_modes = ["admin_thing_protect", "control_pw_type",
"control_tile_type", "chat",
"study", "play", "edit"]
self.mode_admin.available_actions = ["move"]
- self.mode_edit.available_actions = ["move", "flatten", "toggle_map_mode"]
- self.mode_control_tile_draw.available_actions = ["toggle_tile_draw"]
self.mode_control_tile_draw.available_modes = ["admin_enter"]
+ self.mode_control_tile_draw.available_actions = ["move_explorer",
+ "toggle_tile_draw"]
self.mode_edit.available_modes = ["write", "annotate", "portal", "name_thing",
"password", "chat", "study", "play",
"admin_enter"]
+ self.mode_edit.available_actions = ["move", "flatten", "toggle_map_mode"]
self.mode = None
self.host = host
self.game = Game()
'take_thing': 'z',
'drop_thing': 'u',
'teleport': 'p',
+ 'door': 'D',
'help': 'h',
'toggle_map_mode': 'L',
'toggle_tile_draw': 'm',
'drop_thing': 'drop thing',
'toggle_map_mode': 'toggle map view',
'toggle_tile_draw': 'toggle protection character drawing',
+ 'door': 'open/close',
}
action_tasks = {
'flatten': 'FLATTEN_SURROUNDINGS',
'take_thing': 'PICK_UP',
'drop_thing': 'DROP',
- 'move': 'MOVE'
+ 'door': 'DOOR',
+ 'move': 'MOVE',
}
curses.curs_set(False) # hide cursor
self.send('TASK:PICK_UP')
elif key == self.keys['drop_thing'] and task_action_on('drop_thing'):
self.send('TASK:DROP')
+ elif key == self.keys['door'] and task_action_on('door'):
+ self.send('TASK:DOOR')
elif key == self.keys['teleport']:
player = self.game.get_thing(self.game.player_id)
if player.position in self.game.portals:
else:
self.flash = True
self.log_msg('? not standing on portal')
- elif key in self.movement_keys and task_action_on('move'):# 'MOVE' in self.game.tasks:
+ elif key in self.movement_keys and task_action_on('move'):
self.send('TASK:MOVE ' + self.movement_keys[key])
elif self.mode.name == 'write':
self.send('TASK:WRITE %s %s' % (key, quote(self.password)))