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