From 03c2028fc11ba6d70ba8f8997b84f53dd7f0fd2c Mon Sep 17 00:00:00 2001 From: Jeremy Thurgood Date: Tue, 13 May 2014 23:07:04 +0200 Subject: [PATCH] Update info display when card changes. --- naja/widgets/info_area.py | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/naja/widgets/info_area.py b/naja/widgets/info_area.py index 0bb02f4..e092330 100644 --- a/naja/widgets/info_area.py +++ b/naja/widgets/info_area.py @@ -45,14 +45,16 @@ class InfoAreaWidget(Widget): y_offset = title.surface.get_rect().height + 8 for choice, action in enumerate(self.card.actions): if action.required_bits: - img_name = BIT_MAP[action.required_bits].replace('.png', '_small.png') + img_name = BIT_MAP[action.required_bits].replace( + '.png', '_small.png') img = resources.get_image(img_name, transforms=(EIGHT_BIT,)) self.surface.blit(img, (0, y_offset)) y_offset += 8 - text = TextBoxWidget((12, y_offset), action.TEXT, - box_width=(INFO_SIZE[0] - 12) // EIGHT_BIT_SCALE, - fontsize=28) + text = TextBoxWidget( + (12, y_offset), action.TEXT, + box_width=(INFO_SIZE[0] - 12) // EIGHT_BIT_SCALE, + fontsize=28) text.render(self.surface) if choice == self.chosen: colour = (255, 255, 0, 128) @@ -64,7 +66,7 @@ class InfoAreaWidget(Widget): y_offset += text.surface.get_rect().height + 16 # We cheat horribly for layout reasons hint = TextBoxWidget((0, 0), HINTS[self.state.gameboard.player_mode], - box_width = INFO_SIZE[0] // EIGHT_BIT_SCALE) + box_width=INFO_SIZE[0] // EIGHT_BIT_SCALE) hint.prepare() y_offset = INFO_SIZE[1] - hint.surface.get_rect().height self.surface.blit(hint.surface, (0, y_offset)) @@ -93,7 +95,8 @@ class InfoAreaWidget(Widget): action.perform_action(self.state.gameboard, self.card) self.state.gameboard.replace_card(player.position) self.state.gameboard.change_mode() - return finish_event() + # We haven't moved, but the card may have changed under us. + return finish_event(events=[PlayerMoved]) if ev.key in KEYS.UP: if self.chosen > 0: self.chosen -= 1 -- 2.34.1