我正在做一个记忆游戏,你必须找到红球的位置,一旦你移动你的球,红球就会消失,所以为了得到更多的分数,你必须尽可能快地移动,我的问题是如何添加更多的级别,例如级别1:找到5个红球的位置,级别2找到10个位置。 下面是代码: '''
from tkinter import *
from random import *
import time
global posPlayer ; global posGoal ; global n ; global c ; global score
global nbGoal ; global gameTime
score=0 ; posPlayer=[0,0] ; n=15 ; c=50
########### #### Shifts management #################################
def right(event = None):
posPlayer[0]+=50
if posPlayer[0]>700:
posPlayer[0]=700
dep_right()
def dep_right():
c1.delete(ALL)
rond= c1.create_oval(posPlayer[0],posPlayer[1],posPlayer[0]+c, posPlayer[1]+c,fill='#fff')
play()
def left(event = None):
posPlayer[0]-=50
if posPlayer[0]<0:
posPlayer[0]=0
dep_left()
def dep_left():
c1.delete(ALL)
rond = c1.create_oval(posPlayer[0],posPlayer[1],posPlayer[0]+c, posPlayer[1]+c,fill='#fff')
play()
def down(event = None):
posPlayer[1]+=50
if posPlayer[1]>700:
posPlayer[1]=700
dep_down()
def dep_down():
c1.delete(ALL)
rond = c1.create_oval(posPlayer[0],posPlayer[1],posPlayer[0]+c, posPlayer[1]+c,fill='#fff')
play()
def up(event = None):
posPlayer[1]-=50
if posPlayer[1]<0:
posPlayer[1]=0
dep_up()
def dep_up():
c1.delete(ALL)
rond = c1.create_oval(posPlayer[0],posPlayer[1],posPlayer[0]+c, posPlayer[1]+c,fill='#fff')
play()
################# game management #########################################
def startGame():
global score ; global gameTime ; global nbGoal ; global posPlayer
global posGoal
nbGoal=0
gameTime=[time.time(),0]
score=0
posPlayer = [0, 0]
posGoal = [0, 0]
Goal()
def Goal():
global nbGoal
nbGoal =nbGoal+ 1
posGoal[0]=randint(0,14)*50
posGoal[1]=randint(0,14)*50
but=c1.create_oval(posGoal[0],posGoal[1],posGoal[0]+c,posGoal[1]+c, fill="red")
play()
def play():
global score
if posPlayer[0]==posGoal[0] and posPlayer[1]==posGoal[1]:
if nbGoal==5:
gameTime[1]=time.time()
score=round(1/(gameTime[1]-gameTime[0])*1000,2)
displayScore.set("Score =" +str(score))
c1.create_text(c*n/2, c*n/2, font="Purisa",
text="Jeu terminé !",fill="red")
c1.pack()
else:
Goal()
################# main program ####################################
f1=Tk()
f1.title("Python Game Challenge")
f1.bind("<Right>", right) ; f1.bind("<Left>", left)
f1.bind("<Down>", down) ; f1.bind("<Up>", up)
l1 = Label(f1, text="Welcome to my GAME !")
l1.pack(side="top",ipadx=30,ipady=30)
displayScore=StringVar()
displayScore.set("Score =00.00")
l2 = Label(f1, textvariable=displayScore)
l2.pack(side="right",ipadx=10,ipady=10)
b1=Button(f1,text="play",fg='yellow',bg="black", command=startGame)
b1.pack(side="left",ipadx=10,ipady=10)
b2=Button(f1,text="Close",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(posPlayer[0],posPlayer[1],posPlayer[0]+c, posPlayer[1]+c,fill='#fff')
c1.pack()
f1.mainloop()
'''
在我了解了这个游戏的意义后,我想我找到了解决方案:
是决定游戏是否结束的实例。因此,第一步是使comperator变量并将其设置得更高,如:
完整代码,如果此处缺少某些内容,请通知我:
相关问题 更多 >
编程相关推荐