diff --git a/game/osu.py b/game/osu.py index e915412..f2b454f 100644 --- a/game/osu.py +++ b/game/osu.py @@ -1,9 +1,61 @@ import tkinter as tk +import color + +class Circle: + def __init__(self, canvas: tk.Canvas, x, y, radius): + self.canvas = canvas + self.x = x + self.y = y + self.radius = radius + self.value = 9 + + self.circle_id = canvas.create_oval(x - radius, y - radius, x + radius, y + radius, outline = color.PURPLE, width = 2) + self.text_id = canvas.create_text(x, y, text = self.value, fill = color.PURPLE, font = (None, int(radius / 1.5))) + + def delete(self): + self.canvas.delete(self.circle_id) + self.canvas.delete(self.text_id) + + def decrement(self): + self.value -= 1 + self.canvas.itemconfigure(self.text_id, text = self.value) + + def isInside(self, x, y): + dx = x - self.x + dy = y - self.y + d = (dx**2 + dy**2)**0.5 + + return d <= self.radius + +canvas = None +mouse_x = 0 +mouse_y = 0 +tick = 0 +circle = None # Main -def main(canvas: tk.Canvas): - pass +def main(c: tk.Canvas): + global canvas, circle + + # Ini + canvas = c + c.bind('', motion) + + # Test + circle = Circle(c, 50, 50, 100) + circle.decrement() # Loop def loop(deltatime: float): - pass + global tick + + print(circle.isInside(mouse_x, mouse_y)) + + tick += 1 + +# Mouse +def motion(event): + global mouse_x, mouse_y + + mouse_x = event.x + mouse_y = event.y