Assignment 1 commit: Moon & Apollo - code quality improvements and implementation of .env file

This commit is contained in:
Brockmann
2025-10-26 15:53:16 +01:00
parent bf74311add
commit 4ab9122c3e
10 changed files with 149 additions and 69 deletions
View File
+40
View File
@@ -0,0 +1,40 @@
import os
import pygame
from moon.moon import Moon
from numeric.compute import rot_2D, matmul
class Apollo(Moon):
def __init__(self, orbiter_size: int=None, orbiter_distance:int=None, orbiter_speed:float=None):
super().__init__()
if orbiter_size is None:
self.orbiter_size = int(os.getenv("ORBITER_SIZE", "4"))
else:
self.orbiter_size = orbiter_size
if orbiter_distance is None:
self.orbiter_distance = int(os.getenv("ORBITER_DISTANCE", "50"))
else:
self.orbiter_distance = orbiter_distance
if orbiter_speed is None:
self.orbiter_speed = float(os.getenv("ORBITER_SPEED", "1"))
else:
self.orbiter_speed = orbiter_speed
self.orbiter_position = None
def update_game(self):
super().update_game()
self.orbiter_position = self.get_orbit_position(
self.orbiter_distance,
bary_center=self.moon_position,
angle=-self.angle
)
return True
def draw_game(self):
super().draw_game()
pygame.draw.circle(self.screen, (255,0,0), self.orbiter_position, self.orbiter_size)
pygame.display.flip()
+5
View File
@@ -0,0 +1,5 @@
from apollo import Apollo
if __name__ == '__main__':
game = Apollo()
game.run()