Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/person.py
diff options
context:
space:
mode:
Diffstat (limited to 'person.py')
-rw-r--r--person.py36
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)