Bonjour à tous,

Voici mon premier message sur developpez.com je vous présente donc mon petit projet, je voudrais réaliser ce jeu : http://www.koreus.com/jeu/ballgame.html en python, le début de mon projet est présent juste en dessous, pour l'instant j'ai une variable à insérer pour le nombre de balle bleue et une autre pour celui des balles rouges mais le problème c'est qu'une seule balle se déplace donc pouvez vous me dire comment avoir toute les balles se déplaçant ? et si possible, il faudrait qu'elles rebondissent sur la barre grise au centre (comme sur le lien du jeu en faite) mais ce n'est pas primordial pour le moment.

Merci d'avance

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
from tkinter import *
from random import randrange
from math import sin, cos
 
def move():
    global x, y, flag, dx, dy, vx, ms # x, y = coordonnées / dx, dy = vitesse en x et en y / flag = signal qui dit au balle de s'arrêter / vx = angle de la balle
    if x > 1175 or x < 20: # coordonnées comprise entre 1175 en abscisse...
        dx = -dx
        vx = -vx
    x += dx
    x += vx
 
    if y > 640 or y < 20: # ...et 640 en ordonnée
        dy = -dy
    y += dy
 
    can.coords(ball, x-10, y-10, x+10, y+10) #coordonnnées de la balle
 
    if flag > 0:
        fen.after(ms, move)
 
 
def start():
    global flag, ms
 
    flag += 1
 
    if flag == 1:
        ms = 6
        move()
 
def stop():
    global flag, score
 
    flag = 0
    score = 0
 
# Création des variables:
 
flag = 0
dx, dy = 4, 4
vx = cos(1)
ms = 6
 
# Création de la fenêtre:
 
fen = Tk()
fen.title("1er test aléatoire")
 
# Création du canevas:
Largeur = 1200
Hauteur = 650
can = Canvas(fen,width=Largeur,height=Hauteur,bg ='white')
can.grid(row= 2, column= 0)
 
# Création du nombre alétoire de balle:
for iblue in range(5): # création d'un nombre aléatoire de balle bleue
    x, y = randrange(1180), randrange(640)
    ball = can.create_oval(x-10, y-10, x+10, y+10, outline= "black", fill= "royalblue")
 
for ired in range(5): # création d'un nombre aléatoire de balle rouge
    x, y = randrange(1180), randrange(640) 
    ball = can.create_oval(x-10, y-10, x+10, y+10, outline= "black", fill= "red")
 
carre_red = can.create_rectangle(Largeur-1195, Hauteur-645, Largeur-1185, Hauteur-5, outline= "darkred", width = 2, fill= 'red')
carre_bleu = can.create_rectangle(Largeur-5, Hauteur-645, Largeur-15, Hauteur-5, outline= "dark blue", width = 2, fill= 'royalblue')
carre_noir_haut = can.create_rectangle(Largeur-605, Hauteur-320, Largeur-595, Hauteur-5, outline= "maroon", width = 2, fill= 'gray')
carre_noir_bas = can.create_rectangle(Largeur-605, Hauteur-650, Largeur-595, Hauteur-400, outline= "maroon", width = 2, fill= 'gray')
 
 
# Création des boutons:
 
# Création du bouton "Débuter la Partie":
Button(fen, text= "Lancer !", command= start).grid(row= 0, column= 0)
 
# Création du bouton "Arrêter la Partie":
Button(fen, text= "Stopper !", command= stop).grid(row= 1, column= 0)
 
 
fen.mainloop()
fen.destroy()