def player_icons(self, batch=None): self._life_icons = set() WIDTH = self.win_size[0] HEIGHT = self.win_size[1] for idx in range(self._num_lives): new_sprite = Sprite(img=resources.get_image('engine_stop'), x=WIDTH - 15 - idx * 30, y=HEIGHT - 15, batch=batch) new_sprite.scale = 0.3 new_sprite.rotation = -90 self._life_icons.add(new_sprite) return self._life_icons
def draw(self, group): batch = Batch() ss = [] for particle in group: s = Sprite(self.image, batch=batch) s.position = list(particle.position)[:2] s.color = [c * 255 for c in list(particle.color)[:3]] s.scale = particle.size[0] / 64.0 s.rotation = particle.age * 720 s.opacity = particle.color[3] * 255 ss.append(s) batch.draw()
def asteroids(num_asteroids, player_location) -> List[Sprite]: """ Initialize a number of randomly located asteroids :param num_asteroids :param player_location: """ _asteroids = [] for i in range(num_asteroids): asteroid_x, asteroid_y = player_location while distance((asteroid_x, asteroid_y), player_location) < 100: asteroid_x = random.randint(0, 800) asteroid_y = random.randint(0, 600) new_asteroid = Sprite(img=asteroid_image, x=asteroid_x, y=asteroid_y) new_asteroid.rotation = random.randint(0, 360) _asteroids.append(new_asteroid) return _asteroids