-from plomrogue.errors import PlayError
+from plomrogue.errors import PlayError, GameError
from plomrogue.mapping import YX
class Task_WRITE(Task):
todo = 1
- argtypes = 'string:char'
+ argtypes = 'string:char string'
def check(self):
- pass
+ tile_class = self.thing.game.map_control[self.thing.position]
+ if tile_class in self.thing.game.map_control_passwords:
+ tile_pw = self.thing.game.map_control_passwords[tile_class]
+ if self.args[1] != tile_pw:
+ raise GameError('wrong password for tile')
def do(self):
self.thing.game.map[self.thing.position] = self.args[0]