Add osu! main rule
This commit is contained in:
27
game/osu.py
27
game/osu.py
@@ -38,8 +38,8 @@ class Circle:
|
|||||||
canvas = None
|
canvas = None
|
||||||
mouse_x = 0
|
mouse_x = 0
|
||||||
mouse_y = 0
|
mouse_y = 0
|
||||||
tick = 0
|
tick = 0.0
|
||||||
STEP_TICK = 60
|
STEP_TICK = 60.0
|
||||||
|
|
||||||
# Circle
|
# Circle
|
||||||
circle = None
|
circle = None
|
||||||
@@ -58,7 +58,25 @@ def main(c: tk.Canvas):
|
|||||||
|
|
||||||
# Loop
|
# Loop
|
||||||
def loop(deltatime: float, difficulty: float):
|
def loop(deltatime: float, difficulty: float):
|
||||||
global tick
|
global tick, circle
|
||||||
|
print(difficulty)
|
||||||
|
|
||||||
|
# Step
|
||||||
|
if tick >= STEP_TICK:
|
||||||
|
# Tick or end?
|
||||||
|
if circle.value == 0:
|
||||||
|
# Check
|
||||||
|
if circle.isInside(mouse_x, mouse_y):
|
||||||
|
circle.delete()
|
||||||
|
circle = create_circle(difficulty)
|
||||||
|
tick = 0.0
|
||||||
|
return
|
||||||
|
else:
|
||||||
|
# TODO, lose
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
circle.decrement()
|
||||||
|
tick = 0.0
|
||||||
|
|
||||||
# Highlight
|
# Highlight
|
||||||
if circle.isInside(mouse_x, mouse_y):
|
if circle.isInside(mouse_x, mouse_y):
|
||||||
@@ -66,7 +84,8 @@ def loop(deltatime: float, difficulty: float):
|
|||||||
else:
|
else:
|
||||||
circle.highlight(False)
|
circle.highlight(False)
|
||||||
|
|
||||||
tick += 1
|
|
||||||
|
tick += difficulty
|
||||||
|
|
||||||
# Circle
|
# Circle
|
||||||
def create_circle(difficulty = 1.0):
|
def create_circle(difficulty = 1.0):
|
||||||
|
|||||||
Reference in New Issue
Block a user