Comment ajouter des levels dans un jeu de mémoire ?
Fermé
Utilisateur anonyme
-
Phil_1857 Messages postés 1956 Statut Membre -
Phil_1857 Messages postés 1956 Statut Membre -
Bonjour, je suis entrain d'améliorer un jeu python un utilisant juste tkinter,dans ce jeu tu dois mémoriser la position du balon rouge et avec les boutons de direction tu diriges ton balon vers la position de balon rouge.. tant tu en trouves rapidement, tant tu collectes plus de point, alors mon probleme c'est que je ne sais pas comment ajouter des niveaux, exemple: level 1: trouvez 5 positions, level 2 :trouver 10 position etc...
Voila le code de jeu :
Voila le code de jeu :
from tkinter import *
from random import *
import time
global posJoueur ; global posBut ; global n ; global c ; global score
global nbBut ; global gameTime
score=0 ; posJoueur=[0,0] ; n=15 ; c=50
########### #### Gestion des déplacements #################################
def droite(event = None):
posJoueur[0]+=50
if posJoueur[0]>700:
posJoueur[0]=700
dep_droite()
def dep_droite():
c1.delete(ALL)
rond= c1.create_oval(posJoueur[0],posJoueur[1],posJoueur[0]+c, posJoueur[1]+c,fill='#fff')
jouer()
def gauche(event = None):
posJoueur[0]-=50
if posJoueur[0]<0:
posJoueur[0]=0
dep_gauche()
def dep_gauche():
c1.delete(ALL)
rond = c1.create_oval(posJoueur[0],posJoueur[1],posJoueur[0]+c, posJoueur[1]+c,fill='#fff')
jouer()
def bas(event = None):
posJoueur[1]+=50
if posJoueur[1]>700:
posJoueur[1]=700
dep_bas()
def dep_bas():
c1.delete(ALL)
rond = c1.create_oval(posJoueur[0],posJoueur[1],posJoueur[0]+c, posJoueur[1]+c,fill='#fff')
jouer()
def haut(event = None):
posJoueur[1]-=50
if posJoueur[1]<0:
posJoueur[1]=0
dep_haut()
def dep_haut():
c1.delete(ALL)
rond = c1.create_oval(posJoueur[0],posJoueur[1],posJoueur[0]+c, posJoueur[1]+c,fill='#fff')
jouer()
################# Gestion du jeu #########################################
def commencerJeu():
global score ; global gameTime ; global nbBut ; global posJoueur
global posBut
nbBut=0
gameTime=[time.time(),0]
score=0
posJoueur = [0, 0]
posBut = [0, 0]
But()
def But():
global nbBut
nbBut =nbBut+ 1
posBut[0]=randint(0,14)*50
posBut[1]=randint(0,14)*50
but=c1.create_oval(posBut[0],posBut[1],posBut[0]+c,posBut[1]+c, fill="red")
jouer()
def jouer():
global score
if posJoueur[0]==posBut[0] and posJoueur[1]==posBut[1]:
if nbBut==5:
gameTime[1]=time.time()
score=round(1/(gameTime[1]-gameTime[0])*1000,2)
affichageScore.set("Score =" +str(score))
c1.create_text(c*n/2, c*n/2, font="Purisa",
text="Jeu terminé !",fill="red")
c1.pack()
else:
But()
################# programme principale ####################################
f1=Tk()
f1.title("Python Game Challenge")
f1.bind("<Right>", droite) ; f1.bind("<Left>", gauche)
f1.bind("<Down>", bas) ; f1.bind("<Up>", haut)
l1 = Label(f1, text="Bienvenu dans mon jeu !")
l1.pack(side="top",ipadx=30,ipady=30)
affichageScore=StringVar()
affichageScore.set("Score =00.00")
l2 = Label(f1, textvariable=affichageScore)
l2.pack(side="right",ipadx=10,ipady=10)
b1=Button(f1,text="Jouer",fg='yellow',bg="black", command=commencerJeu)
b1.pack(side="left",ipadx=10,ipady=10)
b2=Button(f1,text="Fermer",fg='yellow',bg="black",command=f1.destroy)
b2.pack(side="left",ipadx=10,ipady=10)
c1=Canvas(f1,width=n*c,height=n*c, bg="black")
rond = c1.create_oval(posJoueur[0],posJoueur[1],posJoueur[0]+c, posJoueur[1]+c,fill='#fff')
c1.pack()
f1.mainloop()
A voir également:
- Comment ajouter des levels dans un jeu de mémoire ?
- Mémoire vive - Guide
- RAM : type, format, CAS, vitesse, tout sur la mémoire vive - Guide
- 94 jeu - Télécharger - Puzzle & Réflexion
- 94 degrés jeu - Télécharger - Divers Jeux
- Comment ajouter un compte facebook - Guide
3 réponses
Bonjour,
Tu as déjà posé la question le 16 février:
Comment ajouter des niveaux dans un jeu Python?
Et donc, ma réponse du 17 à 11H13 ne te convient pas ?
(initialisation d'une variable niveau = 5, etc ...)
Ca ne sert à rien d'ouvrir plusieurs fois le même appel ...
Tu as déjà posé la question le 16 février:
Comment ajouter des niveaux dans un jeu Python?
Et donc, ma réponse du 17 à 11H13 ne te convient pas ?
(initialisation d'une variable niveau = 5, etc ...)
Ca ne sert à rien d'ouvrir plusieurs fois le même appel ...
Utilisateur anonyme
oui malheureusement ta repense ne me convient pas, j'ai essayé votre méthode mais non! toujours erreur