Mercurial > pyntnclick
comparison gamelib/cursor.py @ 66:05346a412b55
A sprite cursor attempt
author | Stefano Rivera <stefano@rivera.za.net> |
---|---|
date | Mon, 23 Aug 2010 19:50:45 +0200 |
parents | |
children | 213e47dea4d0 |
comparison
equal
deleted
inserted
replaced
65:cab924519037 | 66:05346a412b55 |
---|---|
1 # cursor.py | |
2 # Copyright Boomslang team, 2010 (see COPYING File) | |
3 # Sprite Cursor | |
4 | |
5 from albow.screen import Screen | |
6 from albow.resource import get_image | |
7 import pygame.mouse as mouse | |
8 from pygame.sprite import Sprite, RenderUpdates | |
9 | |
10 class CursorSprite(Sprite): | |
11 "A Sprite that follows the Cursor" | |
12 | |
13 def __init__(self, filename): | |
14 Sprite.__init__(self) | |
15 self.image = get_image('items', filename + '.png') | |
16 self.rect = self.image.get_rect() | |
17 | |
18 def update(self): | |
19 self.rect.midtop = mouse.get_pos() | |
20 | |
21 | |
22 class CursorSpriteScreen(Screen): | |
23 "A Screen with a CursorSprite" | |
24 | |
25 def __init__(self, shell): | |
26 Screen.__init__(self, shell) | |
27 | |
28 sprite = CursorSprite('hand') | |
29 self.cursor_group = RenderUpdates(sprite) | |
30 | |
31 def draw(self, surface): | |
32 self.cursor_group.update() | |
33 self.cursor_group.draw(surface) | |
34 | |
35 def mouse_move(self, event): | |
36 self.invalidate() |