comparison pyntnclick/gamescreen.py @ 659:363b603794f5 pyntnclick

Re-add animations (and also fix some enter/leave event stuff)
author Neil Muller <neil@dip.sun.ac.za>
date Sun, 12 Feb 2012 14:45:06 +0200
parents 2703924c8c70
children 12149ea1c18e
comparison
equal deleted inserted replaced
658:2703924c8c70 659:363b603794f5
125 # self.invalidate() 125 # self.invalidate()
126 # We do this here so we can get enter and leave events regardless 126 # We do this here so we can get enter and leave events regardless
127 # of what happens 127 # of what happens
128 result = self.game.check_enter_leave(self.screen) 128 result = self.game.check_enter_leave(self.screen)
129 handle_result(result, self) 129 handle_result(result, self)
130 if self.game.current_detail:
131 self.game.current_detail.animate()
132 else:
133 self.game.current_scene.animate()
130 134
131 def mouse_move(self, event, widget): 135 def mouse_move(self, event, widget):
132 if self.game.current_detail: 136 if self.game.current_detail:
133 return self.detail.mouse_move(event, widget) 137 return self.detail.mouse_move(event, widget)
134 self.game.highlight_override = False 138 self.game.highlight_override = False
273 def setup(self): 277 def setup(self):
274 super(GameScreen, self).setup() 278 super(GameScreen, self).setup()
275 self.running = False 279 self.running = False
276 self.create_initial_state = self.gd.initial_state 280 self.create_initial_state = self.gd.initial_state
277 self.container.add_callback(KEYDOWN, self.key_pressed) 281 self.container.add_callback(KEYDOWN, self.key_pressed)
282 self.state_widget = None
278 283
279 def _clear_all(self): 284 def _clear_all(self):
280 for widget in self.container.children[:]: 285 for widget in self.container.children[:]:
281 self.container.remove(widget) 286 self.container.remove(widget)
282 287
297 self.inventory = self.toolbar.inventory 302 self.inventory = self.toolbar.inventory
298 self.container.add(self.toolbar) 303 self.container.add(self.toolbar)
299 304
300 self.running = True 305 self.running = True
301 306
307 def animate(self):
308 """Animate the state widget"""
309 if self.state_widget:
310 self.state_widget.animate()
311
302 def key_pressed(self, event, widget): 312 def key_pressed(self, event, widget):
303 if event.key == K_ESCAPE: 313 if event.key == K_ESCAPE:
304 self.change_screen('menu') 314 self.change_screen('menu')
305 315
306 # albow callback: 316 # albow callback: