+
+
+class RotateLocations(LocationAction):
+ TEXT = "Rotate adjacent locations %(rot_direction_name)s."
+ GLYPHS = (ACTION_GLYPHS.CHANGE_BOARD,)
+
+ def perform_action(self, board, location):
+ sound.play_sound('change.ogg')
+ board.rotate_locations(self.data['rot_direction'])
+
+
+class AllowChessMove(LocationAction):
+ TEXT = "Move like a %(chesspiece_name)s for one turn."
+ GLYPHS = (ACTION_GLYPHS.MOVEMENT,)
+
+ def perform_action(self, board, location):
+ if self.data['chesspiece'] in CHESS_PIECES:
+ chesspiece = CHESS_PIECES[self.data['chesspiece']]
+ board.allow_chess_move(chesspiece)