From 294d29c3eaea3f3db1c2134b052ee471c2bf8851 Mon Sep 17 00:00:00 2001 From: yuzu-eva Date: Fri, 20 Sep 2024 19:21:36 +0200 Subject: initial push to GitHub --- asteroid.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'asteroid.py') diff --git a/asteroid.py b/asteroid.py index 3ab16d9..b59f3ff 100644 --- a/asteroid.py +++ b/asteroid.py @@ -1,4 +1,6 @@ +import random from circleshape import * +from constants import * class Asteroid(CircleShape): def __init__(self, x, y, radius): @@ -9,3 +11,18 @@ class Asteroid(CircleShape): def update(self, dt): self.position += self.velocity * dt + + def split(self): + self.kill() + if self.radius <= ASTEROID_MIN_RADIUS: + return + rand_angle = random.uniform(20, 50) + new_radius = self.radius - ASTEROID_MIN_RADIUS + a = self.velocity.rotate(rand_angle) + b = self.velocity.rotate(-rand_angle) + asteroid = Asteroid(self.position.x, self.position.y, new_radius) + asteroid.velocity = a * 1.2 + asteroid = Asteroid(self.position.x, self.position.y, new_radius) + asteroid.velocity = b * 1.2 + + -- cgit v1.2.3