Mercurial > fife-parpg
comparison demos/shooter/scripts/ships/enemies.py @ 453:cf53848fb187
Scene now gets updated when an object moves from one node to another.
Player is now part of the scene.
Projectiles can be files by both player and enemies.
Some code cleanup.
author | prock@33b003aa-7bff-0310-803a-e67f0ece8222 |
---|---|
date | Tue, 06 Apr 2010 19:12:41 +0000 |
parents | f07d779362da |
children | bd7e8f708adf |
comparison
equal
deleted
inserted
replaced
452:f07d779362da | 453:cf53848fb187 |
---|---|
26 from scripts.common.helpers import Rect | 26 from scripts.common.helpers import Rect |
27 from scripts.weapons import Weapon | 27 from scripts.weapons import Weapon |
28 | 28 |
29 | 29 |
30 class Saucer1(Ship): | 30 class Saucer1(Ship): |
31 def __init__(self, model, name, layer, findInstance=True): | 31 def __init__(self, scene, name, findInstance=True): |
32 super(Saucer1, self).__init__(model, name, layer, findInstance) | 32 super(Saucer1, self).__init__(scene, name, findInstance) |
33 self._dir = 0 | 33 self._dir = 0 |
34 self._time = 500 | 34 self._time = 500 |
35 self.width = 0.075 | 35 self.width = 0.075 |
36 self.height = 0.075 | 36 self.height = 0.075 |
37 self.velocity.x = -0.5 | 37 self.velocity.x = -0.5 |
38 | |
39 self.weapon = Weapon(self._scene, self, 1000) | |
38 | 40 |
39 def update(self, timedelta): | 41 def update(self, timedelta): |
40 if self._dir == 1: | 42 if self._dir == 1: |
41 self.applyThrust(fife.DoublePoint(0,-0.5), timedelta) | 43 self.applyThrust(fife.DoublePoint(0,-0.5), timedelta) |
42 elif self._dir == 0: | 44 elif self._dir == 0: |
53 self._time += timedelta | 55 self._time += timedelta |
54 | 56 |
55 super(Saucer1, self).update(timedelta) | 57 super(Saucer1, self).update(timedelta) |
56 | 58 |
57 class Saucer2(Ship): | 59 class Saucer2(Ship): |
58 def __init__(self, model, name, layer, findInstance=True): | 60 def __init__(self, scene, name, findInstance=True): |
59 super(Saucer2, self).__init__(model, name, layer, findInstance) | 61 super(Saucer2, self).__init__(scene, name, findInstance) |
60 self._dir = 0 | 62 self._dir = 0 |
61 self._time = 1000 | 63 self._time = 1000 |
62 self.width = 0.2 | 64 self.width = 0.2 |
63 self.height = 0.2 | 65 self.height = 0.2 |
64 self.velocity.x = -0.1 | 66 self.velocity.x = -0.1 |
67 | |
68 self.weapon = Weapon(self._scene, self, 2000) | |
65 | 69 |
66 def update(self, timedelta): | 70 def update(self, timedelta): |
67 if self._dir == 1: | 71 if self._dir == 1: |
68 self.applyThrust(fife.DoublePoint(0,-0.25), timedelta) | 72 self.applyThrust(fife.DoublePoint(0,-0.25), timedelta) |
69 elif self._dir == 0: | 73 elif self._dir == 0: |