Add end game
This commit is contained in:
@@ -5,5 +5,5 @@ def main(canvas: Canvas):
|
|||||||
pass
|
pass
|
||||||
|
|
||||||
# Loop
|
# Loop
|
||||||
def loop(deltatime: float, difficulty: float):
|
def loop(deltatime: float, difficulty: float, end):
|
||||||
pass
|
pass
|
||||||
|
|||||||
@@ -57,7 +57,7 @@ def main(c: tk.Canvas):
|
|||||||
circle = create_circle()
|
circle = create_circle()
|
||||||
|
|
||||||
# Loop
|
# Loop
|
||||||
def loop(deltatime: float, difficulty: float):
|
def loop(deltatime: float, difficulty: float, end):
|
||||||
global tick, circle
|
global tick, circle
|
||||||
|
|
||||||
# Step
|
# Step
|
||||||
@@ -71,8 +71,8 @@ def loop(deltatime: float, difficulty: float):
|
|||||||
tick = 0.0
|
tick = 0.0
|
||||||
return
|
return
|
||||||
else:
|
else:
|
||||||
# TODO, lose
|
end()
|
||||||
pass
|
return
|
||||||
else:
|
else:
|
||||||
circle.decrement()
|
circle.decrement()
|
||||||
tick = 0.0
|
tick = 0.0
|
||||||
|
|||||||
@@ -5,5 +5,5 @@ def main(canvas: Canvas):
|
|||||||
pass
|
pass
|
||||||
|
|
||||||
# Loop
|
# Loop
|
||||||
def loop(deltatime: float, difficulty: float):
|
def loop(deltatime: float, difficulty: float, end):
|
||||||
pass
|
pass
|
||||||
|
|||||||
@@ -5,5 +5,5 @@ def main(canvas: Canvas):
|
|||||||
pass
|
pass
|
||||||
|
|
||||||
# Loop
|
# Loop
|
||||||
def loop(deltatime: float, difficulty: float):
|
def loop(deltatime: float, difficulty: float, end):
|
||||||
pass
|
pass
|
||||||
|
|||||||
45
main.py
45
main.py
@@ -1,9 +1,10 @@
|
|||||||
import tkinter as tk
|
import tkinter as tk
|
||||||
import datetime as dt
|
import datetime as dt
|
||||||
import color
|
import color
|
||||||
from time import sleep
|
|
||||||
from game import fall, osu, pong, space
|
from game import fall, osu, pong, space
|
||||||
from PIL import Image, ImageTk
|
from PIL import Image, ImageTk
|
||||||
|
from time import sleep
|
||||||
|
from tkinter import messagebox
|
||||||
|
|
||||||
win = tk.Tk()
|
win = tk.Tk()
|
||||||
win['bg'] = color.LEVEL_9
|
win['bg'] = color.LEVEL_9
|
||||||
@@ -20,23 +21,32 @@ time = None
|
|||||||
delta = None
|
delta = None
|
||||||
tick = 0
|
tick = 0
|
||||||
score = tk.IntVar(win, 0)
|
score = tk.IntVar(win, 0)
|
||||||
|
|
||||||
|
# Difficulty
|
||||||
difficulty = 1.0
|
difficulty = 1.0
|
||||||
MAX_DIFFICULTY = 3.0
|
MAX_DIFFICULTY = 3.0
|
||||||
DIFFICULTY_STEP = (MAX_DIFFICULTY - difficulty) / 5000
|
DIFFICULTY_STEP = (MAX_DIFFICULTY - difficulty) / 5000
|
||||||
|
|
||||||
|
# End
|
||||||
|
_end = False
|
||||||
|
|
||||||
def loop(deltaTime):
|
def loop(deltaTime):
|
||||||
global time, delta, tick, score, difficulty
|
global time, delta, tick, score, difficulty
|
||||||
|
|
||||||
|
# Check end
|
||||||
|
if (_end):
|
||||||
|
return
|
||||||
|
|
||||||
# Start
|
# Start
|
||||||
delta = dt.datetime.now()
|
delta = dt.datetime.now()
|
||||||
deltatime = (delta - time).microseconds * 1e-6
|
deltatime = (delta - time).microseconds * 1e-6
|
||||||
|
|
||||||
# Loop
|
# Loop
|
||||||
if tick > 2:
|
if tick > 2:
|
||||||
fall.loop(deltatime, difficulty)
|
fall.loop(deltatime, difficulty, end)
|
||||||
osu.loop(deltatime, difficulty)
|
osu.loop(deltatime, difficulty, end)
|
||||||
pong.loop(deltatime, difficulty)
|
pong.loop(deltatime, difficulty, end)
|
||||||
space.loop(deltatime, difficulty)
|
space.loop(deltatime, difficulty, end)
|
||||||
|
|
||||||
# Step tick
|
# Step tick
|
||||||
tick += 1
|
tick += 1
|
||||||
@@ -83,7 +93,32 @@ def main():
|
|||||||
time = dt.datetime.now()
|
time = dt.datetime.now()
|
||||||
loop(1000 / 60)
|
loop(1000 / 60)
|
||||||
|
|
||||||
|
def getMessage(score):
|
||||||
|
if score < 200:
|
||||||
|
return 'Vous ferez peut être mieux la prochaine fois...'
|
||||||
|
elif score < 400:
|
||||||
|
return 'Un bon début !'
|
||||||
|
elif score < 600:
|
||||||
|
return 'Pas mal, mais vous ne pouvez faire quatre choses à la fois???'
|
||||||
|
elif score < 800:
|
||||||
|
return 'Bien, la maitrise vient avec le temps'
|
||||||
|
elif score < 1000:
|
||||||
|
return 'Bien joué, vous approchez de la difficulté maximum'
|
||||||
|
elif score < 5000:
|
||||||
|
return "Splendide, vous n\'avez plus qu'à attendre l'éternité"
|
||||||
|
else:
|
||||||
|
return "Ce jeu n'a plus aucun secrets pour vous !"
|
||||||
|
|
||||||
|
def end():
|
||||||
|
global _end
|
||||||
|
|
||||||
|
_end = True
|
||||||
|
messagebox.showinfo('Perdu', f'Votre score est de {score.get()} points\n{getMessage(score.get())}')
|
||||||
|
|
||||||
|
# Terminate
|
||||||
|
win.destroy()
|
||||||
|
|
||||||
|
# Main
|
||||||
print('Bienvenue dans le jeu QuadraLudi')
|
print('Bienvenue dans le jeu QuadraLudi')
|
||||||
main()
|
main()
|
||||||
win.mainloop()
|
win.mainloop()
|
||||||
Reference in New Issue
Block a user