Bonjour, je suis encore en train de programmer mon jeu Flappy Bird et j'entame maintenant la partie du "débogage"
Pour cela, j'ai réparé quelques problèmes comme le texte du score qui n'apparaissait pas et j'ai même personnalisé l'icone ainsi que le nom de la fenêtre (petit souci du détail).
Sauf qu'il me reste à corriger un détail assez malencontreux que bistouille m'a fait remarqué Jeudi, la vitesse de la chute de l'oiseau est trop lente.
Ainsi, il y a des déplacements impossibles à réaliser pour le joueur, notamment lorsque l'oiseau passe d'une paire de tuyaux très haute à une paire de tuyaux très basse.
Cependant, les sauts de l'oiseau sont parfaits et je ne veux pas les modifier évidemment ! (merci Wiztricks au passage )

Il a alors été logique pour moi de faire augmenter la vitesse de chute de l'oiseau au fur et à mesure qu'il tombe mais rien à faire, j'ai usé de diverses méthodes afin de programmer cette vitesse croissante mais elles n'ont pas abouties. J'ai par exemple, essayé, de décomposer le déplacement de l'oiseau mais cela n'a rien changé.
Je suis conscient que je peu expérimenté mais je pensais en être capable et je ne trouve pas de sujets similaires sur le net

Afin que vous m'aidiez, j'ai réduit mon programme au strict minimal et on y retrouve seulement le déplacement des objets du jeu, je suis conscient que je vous ais beaucoup trop demander d'aide pendant ces vacances et j'en suis désolé mais promis, après ce réglage vous ne me reverrez plus jamais !

Ci-joint le fichier .zip des images de mon jeu !
Flappy Bird 2.rar

Merci beaucoup d'avance pour votre aide !

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
from tkinter import *
import random
from random import randint
 
def sauter(event):
    canvas.move(image_oiseau, 0, -10*DY)
 
def deplacement():
    global mouvement
    global tuyx,tuyx2,h,H,oisx,oisy,solx,sol2x,score,pause
 
    x0, y0, x1, y1 = canvas.bbox(image_oiseau)
 
    canvas.move(image_oiseau, 0, DY)
 
    canvas.coords(image_sol,solx,512)
    if solx >= -144:
        solx=solx-5
    else:
        solx=144
 
    canvas.coords(image_sol2,sol2x,512)
    if sol2x >= 144:
        sol2x=sol2x-5
    else:
        sol2x=432
 
    canvas.coords(image_tuyau_haut,tuyx,h)
    canvas.coords(image_tuyau_bas,tuyx,h-379.8)
    if tuyx>=-28:
        tuyx=tuyx-5
    else:
        tuyx=316
        h=randint(272,523)
 
    canvas.coords(image_tuyau_haut2,tuyx2,H)
    canvas.coords(image_tuyau_bas2,tuyx2,H-379.8)
    if tuyx2>=-28:
        tuyx2=tuyx2-5
    else:
        tuyx2=316
        H=randint(272,523)
    canvas.after(40,deplacement)
 
LARGEUR = 286
HAUTEUR = 510
DY = 5
tuyx=316
tuyx2=488
h=randint(272,523)
H=randint(272,523)
oisx=67
oisy=244
solx=144
sol2x=432
 
 
 
fenetre = Tk()
 
canvas = Canvas(fenetre, width=LARGEUR, height=HAUTEUR)
 
fond = PhotoImage(file="background-day.png")
fond2 = PhotoImage(file="background-night.png")
fond=[fond,fond2]
F= random.choice(fond)
canvas.create_image(144,256, anchor=CENTER,image=F)
 
tuyau_haut = PhotoImage(file="tuyau_vers_le_haut.png")
image_tuyau_haut = canvas.create_image(tuyx,h,anchor=CENTER,image=tuyau_haut)
image_tuyau_haut2 = canvas.create_image(tuyx2,H,anchor=CENTER,image=tuyau_haut)
 
tuyau_bas = PhotoImage(file="tuyau_vers_le_bas.png")
image_tuyau_bas = canvas.create_image(tuyx,h,anchor=CENTER,image=tuyau_bas)
image_tuyau_bas2 = canvas.create_image(tuyx2,H,anchor=CENTER,image=tuyau_bas)
 
sol = PhotoImage(file="sol-day.png")
image_sol = canvas.create_image(144,512, anchor=S,image=sol)
image_sol2 = canvas.create_image(432,512, anchor=S,image=sol)
 
oiseau = PhotoImage(file="yellowbird-midflap.png")
oiseau2 = PhotoImage(file="bluebird-midflap.png")
oiseau3 = PhotoImage(file="redbird-midflap.png")
oiseau=[oiseau,oiseau2,oiseau3]
O=random.choice(oiseau)
image_oiseau=canvas.create_image(oisx,oisy, anchor=W,image=O)
 
canvas.pack()
canvas.focus_set()
 
deplacement()
canvas.bind("<space>",sauter)
 
fenetre.mainloop()