1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
| # On importe Tkinter
from tkinter import *
import random
# On crée une fenêtre, racine de notre interface
fenetre = Tk()
#On importe l'image représentant le fond du jeu
fond = PhotoImage(file="background-day.png")
oiseau = PhotoImage(file="yellowbird-midflap.png")
oiseau2 = PhotoImage(file="bluebird-midflap.png")
oiseau3 = PhotoImage(file="redbird-midflap.png")
# interface racine
canvas = Canvas(fenetre, width=288, height=512)
canvas.create_image(144,256, anchor=CENTER,image=fond)
oiseau=[oiseau,oiseau2,oiseau3]
O=random.choice(oiseau)
image_oiseau=canvas.create_image(67,244, anchor=S,image=O)
def deplacement():
#Met en place les coordonnées de l'image
img_coords=canvas.coords(image_oiseau)
#Met en place la largeur de l'image
img_width=O.width()
#A revoir dans la vidéo
if img_coords[0]+img_width >= 96:
#0 représente le déplacmeent de X en abscisse et5 est Y en ordonnée
canvas.move(image_oiseau,0,5)
#Il se déplace toutes les 20 millisecondes
canvas.after (20,deplacement)
def sauter(event):
def gen_move():
for n in range(256):
if n <= 416:
yield -4
else:
yield 4
g_move = gen_move()
def _saut(delay=40):
global inprogress
try:
direction = next(g_move)
canvas.move('obstacle', 0, direction * 2)
root.after(delay, _saut)
except StopIteration:
inprogress = False
_saut()
# On affiche le label dans la fenêtre
deplacement()
canvas.pack()
canvas.bind("<space>",sauter)
# On démarre la boucle Tkinter qui s'interompt quand on ferme la fenêtre
fenetre.mainloop() |
Partager