"vertices": [
[200, 350], [250, 350], [250, 400], [200, 400]
]
+ },
+ {
+ "type": "shrub",
+ "shrublets": [
+ [600, 100, 50], [700, 200, 100]
+ ]
}
],
"lights": [
def render(self, surface):
surface.blit(self.get_image(), (0, 0), None, 0)
+
+
+class Shrub(BaseObstacle):
+
+ def __init__(self, shrublets):
+ super(Shrub, self).__init__()
+ for [x, y, r] in shrublets:
+ self.shapes.append(pymunk.Circle(self.body, r, offset=(x, y)))
+ self._image = None
+
+ def get_image(self):
+ if self._image is None:
+ self._image = pygame.surface.Surface(SCREEN_SIZE).convert_alpha()
+ self._image.fill((0,0,0,0))
+
+ for shape in self.shapes:
+ centre = pymunk.pygame_util.to_pygame(shape.offset, self._image)
+ pygame.draw.circle(self._image, (255, 255, 255), centre, int(shape.radius))
+
+ shrub_texture = loader.load_image("textures", "shrub.png").convert_alpha()
+ self._image.blit(shrub_texture, (0, 0), None, pgl.BLEND_RGBA_MULT)
+
+ return self._image
+
+ def render(self, surface):
+ surface.blit(self.get_image(), (0, 0), None, 0)