projects
/
tabakrolletjie.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
9f403d3
)
Refactor mould drawing code. Use shape_query for lighting information
author
Neil
<neil@dip.sun.ac.za>
Wed, 7 Sep 2016 13:32:41 +0000
(15:32 +0200)
committer
Neil
<neil@dip.sun.ac.za>
Wed, 7 Sep 2016 13:32:41 +0000
(15:32 +0200)
tabakrolletjie/enemies.py
patch
|
blob
|
history
diff --git
a/tabakrolletjie/enemies.py
b/tabakrolletjie/enemies.py
index c76e2b2f85c32c400257621f5c32661788810c31..76616ab515db1151f3ffaf86c3d007d957f025f8 100644
(file)
--- a/
tabakrolletjie/enemies.py
+++ b/
tabakrolletjie/enemies.py
@@
-112,10
+112,14
@@
class Boyd(object):
self._moulds = [seed]
self._image = pygame.surface.Surface(SCREEN_SIZE)
self._image.convert_alpha(pygame.display.get_surface())
self._moulds = [seed]
self._image = pygame.surface.Surface(SCREEN_SIZE)
self._image.convert_alpha(pygame.display.get_surface())
+ self._draw_moulds()
+
+ def _draw_moulds(self):
self._image.fill((0, 0, 0, 0))
self._image.fill((0, 0, 0, 0))
- self._image.blit(seed.get_image(),
- seed.pygame_pos(self._image), None,
- pgl.BLEND_RGBA_ADD)
+ for m in self._moulds:
+ self._image.blit(m.get_image(),
+ m.pygame_pos(self._image), None,
+ pgl.BLEND_RGBA_ADD)
def tick(self, gamestate, space, lights):
redraw = False
def tick(self, gamestate, space, lights):
redraw = False
@@
-125,15
+129,14
@@
class Boyd(object):
if mould.tick(gamestate, space, self._moulds):
redraw = True
# Check for damage
if mould.tick(gamestate, space, self._moulds):
redraw = True
# Check for damage
- if lights.lit_by(mould.position):
+ lit_by = lights.light_query(mould._shape)
+ for light in lit_by:
+ # Todo: extract colour and intensity from light
if mould.damage(None, None, space, self._moulds):
redraw = True
if mould.damage(None, None, space, self._moulds):
redraw = True
+ break # we only die once
if redraw:
if redraw:
- self._image.fill((0, 0, 0, 0))
- for mould in self._moulds:
- self._image.blit(mould.get_image(),
- mould.pygame_pos(self._image), None,
- pgl.BLEND_RGBA_ADD)
+ self._draw_moulds()
def render(self, surface):
"""Draw ourselves"""
def render(self, surface):
"""Draw ourselves"""