Mercurial > skaapsteker
comparison skaapsteker/sprites/player.py @ 362:02bf05964619
FIREBALLS!
author | Simon Cross <hodgestar@gmail.com> |
---|---|
date | Sat, 09 Apr 2011 14:25:45 +0200 |
parents | eacb3e1bc1d1 |
children | 249ba3bd6904 |
comparison
equal
deleted
inserted
replaced
361:75dc259b41f5 | 362:02bf05964619 |
---|---|
1 """Class for dealing with the player""" | 1 """Class for dealing with the player""" |
2 | 2 |
3 import pygame.transform | 3 import pygame.transform |
4 import time | 4 import time |
5 | 5 |
6 from ..sprites.base import find_sprite, TILE_SIZE, PC_LAYER, MONSTER_LAYER | 6 from ..sprites.base import find_sprite, Monster, TILE_SIZE, PC_LAYER, MONSTER_LAYER, PROJECTILE_LAYER |
7 from ..sprites.projectiles import Fireball | 7 from ..sprites.projectiles import Fireball |
8 from ..physics import Sprite | 8 from ..physics import Sprite |
9 from ..constants import Layers, FoxHud | 9 from ..constants import Layers, FoxHud |
10 from ..data import get_files, load_image | 10 from ..data import get_files, load_image |
11 from ..engine import PlayerDied, AddSpriteEvent | 11 from ..engine import PlayerDied, AddSpriteEvent |
12 | 12 |
13 | 13 |
14 class Player(Sprite): | 14 class Player(Sprite): |
15 | 15 |
16 collision_layer = PC_LAYER | 16 collision_layer = PC_LAYER |
17 collides_with = set([MONSTER_LAYER]) | 17 collides_with = set([MONSTER_LAYER, PROJECTILE_LAYER]) |
18 wants_updates = True | 18 wants_updates = True |
19 | 19 |
20 block = True | 20 block = True |
21 | 21 |
22 _max_sprint_time = 2 | 22 _max_sprint_time = 2 |
275 self._last_time = time.time() # Reset the animation clock | 275 self._last_time = time.time() # Reset the animation clock |
276 if self.facing == 'left': | 276 if self.facing == 'left': |
277 pos = pygame.Rect(self.rect.midleft, (0, 0)) | 277 pos = pygame.Rect(self.rect.midleft, (0, 0)) |
278 else: | 278 else: |
279 pos = pygame.Rect(self.rect.midright, (0, 0)) | 279 pos = pygame.Rect(self.rect.midright, (0, 0)) |
280 fireball = Fireball(pos, direction=self.facing) | 280 fireball = Fireball(pos, direction=self.facing, hits=Monster) |
281 AddSpriteEvent.post(fireball) | 281 AddSpriteEvent.post(fireball) |
282 | 282 |
283 def _lightning_attack(self): | 283 def _lightning_attack(self): |
284 print 'thunderbolts and lightning' | 284 print 'thunderbolts and lightning' |
285 self.attacking = 2 | 285 self.attacking = 2 |