diff options
Diffstat (limited to 'person.py')
-rw-r--r-- | person.py | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/person.py b/person.py new file mode 100644 index 0000000..4243677 --- /dev/null +++ b/person.py @@ -0,0 +1,36 @@ +import pygame +from random import randint + + +person_number = 4 +persons = ["images/person_%02d.png" % person_number for person_number in xrange(1, person_number + 1) ] + +class Person: + def __init__(self, screen_w, screen_h, unit, speed): + self.unit = unit + self.speed = speed + self.image = pygame.image.load(persons[randint(0, person_number - 1)]) + image_rect = self.image.get_rect() + size_reduction = 20*unit + self.collision_rect = pygame.Rect(image_rect.left + size_reduction, \ + image_rect.top + size_reduction, \ + image_rect.width - size_reduction, \ + image_rect.height - size_reduction) + + self.position = [ 0, randint(0, screen_h -1)] + self.screen_h = screen_h + self.screen_w = screen_w + + def update(self): + image_center = self.image.get_width()/2 + # Move the person + self.position = [ (self.position[0] + self.speed ), self.position[1] ] + + def draw(self, on_surface): + on_surface.blit(self.image, self.position) + + def died(self): + return self.position[0] > self.screen_w + + def get_absolute_rect(self): + return self.collision_rect.move(self.position) |