This commit is contained in:
2019-03-24 18:53:50 +01:00
parent 34f83966be
commit 7316b9d3d9
3 changed files with 87 additions and 4 deletions

View File

@@ -1,9 +1,92 @@
from tkinter import *
import color
# Var
ACCENT_COLOR = color.PURPLE
SECONDARY_COLOR = color.BROWN
canvas = None
# Touches
haut = False
bas = False
# Trait
trait = None
T_WIDTH = 10
T_HEIGHT = 90
PAST_Y = 5
# Balle
balle = None
cos = 0.0
sin = 0.0
B_RADIUS = 10
PASB = 3.0
image = None
# Main
def main(canvas: Canvas):
pass
def main(c: Canvas):
global canvas, trait, balle, cos, sin, image
canvas = c
image = PhotoImage(file ="res/Barre.png")
x_t = 360
y_t = 150
x_b = 200
y_b = 150
trait = canvas.create_image(x_t, y_t, image = image)
balle = canvas.create_oval(x_b - B_RADIUS, y_b - B_RADIUS, x_b + B_RADIUS, y_b + B_RADIUS, outline = SECONDARY_COLOR, fill = SECONDARY_COLOR)
cos = -0.5
sin = 0.8660
win = canvas.master
win.bind('<z>', lambda event: haut_event(True))
win.bind('<s>', lambda event: bas_event(True))
win.bind('<KeyRelease-z>', lambda event: haut_event(False))
win.bind('<KeyRelease-s>', lambda event: bas_event(False))
# Loop
def loop(deltatime: float, difficulty: float, end):
pass
collision()
deplacementballe(difficulty)
deplacementtrait(difficulty)
_, _, x2, _ = canvas.coords(balle)
if x2 >= 396:
end()
return
# Déplacement de la balle
def deplacementballe(difficulty: float):
canvas.move(balle, cos * PASB * difficulty, -sin * PASB * difficulty)
def collision():
global cos, sin
xt1, yt1 = canvas.coords(trait)
xt1, yt1, xt2, yt2 = xt1 - 5, yt1 - 45, xt1 + 5, yt1 + 45
x1, y1, x2, y2 = canvas.coords(balle)
if x1 <= 5:
cos = -cos
if y1 <= 5 or y2 >= 295:
sin = -sin
if x2 + 5 >= xt1 and x1 - 5 <= xt2 and y1 - 5 <= yt2 and y2 + 5 >= yt1:
cos = -abs(cos)
canvas.itemconfigure(balle, outline = ACCENT_COLOR, fill = ACCENT_COLOR)
canvas.after(200, lambda: canvas.itemconfigure(balle, outline=SECONDARY_COLOR, fill=SECONDARY_COLOR))
def deplacementtrait(difficulty: float):
_, y1 = canvas.coords(trait)
y1, y2 = y1 - 45, y1 + 45
if haut and y1 >= 10:
canvas.move(trait, 0, -PAST_Y * difficulty)
if bas and y2 <= 290:
canvas.move(trait, 0, PAST_Y * difficulty)
def haut_event(pressed: bool):
global haut
haut = pressed
def bas_event(pressed: bool):
global bas
bas = pressed

View File

@@ -104,7 +104,7 @@ def getMessage(score):
return 'Bien, la maitrise vient avec le temps'
elif score < 1000:
return 'Bien joué, vous approchez de la difficulté maximum'
elif score < 5000:
elif score < 2000:
return "Splendide, vous n\'avez plus qu'à attendre l'éternité"
else:
return "Ce jeu n'a plus aucun secrets pour vous !"

BIN
res/Barre.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 218 B