Mercurial > boomslang
diff gamelib/cursor.py @ 187:fbfd8e748ac0
Remove screen reference from State.
author | Jeremy Thurgood <firxen@gmail.com> |
---|---|
date | Wed, 25 Aug 2010 16:45:06 +0200 |
parents | 3b5cfb3f794e |
children | 6d93e04036c9 |
line wrap: on
line diff
--- a/gamelib/cursor.py Wed Aug 25 16:24:55 2010 +0200 +++ b/gamelib/cursor.py Wed Aug 25 16:45:06 2010 +0200 @@ -52,10 +52,11 @@ cursor = HAND - def __init__(self, *args, **kwargs): + def __init__(self, screen, *args, **kwargs): Widget.__init__(self, *args, **kwargs) self._cursor_group = RenderUpdates() self._loaded_cursor = None + self.screen = screen def enter_screen(self): pygame.mouse.set_visible(0) @@ -65,6 +66,11 @@ def draw_all(self, _surface): Widget.draw_all(self, _surface) + item = self.screen.state.tool + if item is None: + self.set_cursor(HAND) + else: + self.set_cursor(item.CURSOR) surface = self.get_root().surface if self.cursor != self._loaded_cursor: self._loaded_cursor = self.cursor