add a better rule system, and part of the functionality works now.

This commit is contained in:
csd4ni3l
2025-11-23 14:50:32 +01:00
parent 9106a5887b
commit daa13e5814
4 changed files with 263 additions and 65 deletions

View File

@@ -4,6 +4,7 @@ from utils.constants import DEFAULT_X_VELOCITY, DEFAULT_Y_VELOCITY
class BaseShape():
def __init__(self):
self.shape_type = ""
self.x_velocity = DEFAULT_X_VELOCITY
self.y_velocity = DEFAULT_Y_VELOCITY
@@ -15,11 +16,29 @@ class BaseShape():
class Circle(pyglet.shapes.Circle, BaseShape):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
BaseShape.__init__(self)
self.shape_type = "circle"
@property
def shape_size(self):
return self.radius
class Rectangle(pyglet.shapes.Rectangle, BaseShape):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
BaseShape.__init__(self)
self.shape_type = "rectangle"
@property
def shape_size(self):
return self.width
class Triangle(pyglet.shapes.Triangle, BaseShape):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
super().__init__(*args, **kwargs)
BaseShape.__init__(self)
self.shape_type = "triangle"
@property
def shape_size(self):
return self.x2 - self.x