我在pygame上做了Pong游戏,但它还没有完成。代码中的变量,类和其他东西的名称都是用葡萄牙语的,但我认为很容易知道这是什么。该代码应该使用户想要的时候移动两个拨片,但它只显示背景和拨片。我没有收到任何错误消息。这个pygame程序有什么错误?
下面的代码:
import pygame,sys,os,time
from pygame.locals import *
pygame.init()
janela=pygame.display.set_mode((800, 533),0,32)
pygame.display.set_caption("Pong!")
superficie=pygame.display.get_surface()
clock=pygame.time.Clock()
fundoFicheiro=os.path.join("Imagens","fundo2.png")
fundoImagem=pygame.image.load(fundoFicheiro).convert()
barraFicheiro=os.path.join("Imagens","barra.png")
barraImagem=pygame.image.load(barraFicheiro).convert_alpha()
def imprimirBarra(x,y):
janela.blit(barraImagem,(x,y))
class barra():
y=1
x=1
velocidade=1
def subir(self):
self.y-=self.velocidade
def descer(self):
self.y+=self.velocidade
def parar(self):
self.velocidade=0
def comecar(self):
self.velocidade=1
barra1=barra()
barra1.x=5
barra1.y=superficie.get_height()/2-barraImagem.get_height()/2
barra2=barra()
barra2.velocidade=1
barra2.x=superficie.get_width()-(barraImagem.get_width()+5)
barra2.y=superficie.get_height()/2-barraImagem.get_height()/2
def interface():
for event in pygame.event.get():
if event.type==KEYDOWN:
if event.key==K_UP:
barra2.comecar()
barra2.subir()
elif event.key==K_DOWN:
barra2.comecar()
barra2.descer()
elif event.key==K_w:
barra1.comecar()
barra1.subir()
elif event.key==K_s:
barra1.comecar()
barra1.descer()
elif event.type==KEYUP:
if event.key==K_UP:
barra2.parar()
elif event.key==K_DOWN:
barra2.parar()
elif event.key==K_w:
barra1.parar()
elif event.key==K_s:
barra1.parar()
while True:
clock.tick(60)
for event in pygame.event.get():
if event.type==QUIT:
pygame.quit()
sys.exit()
janela.blit(fundoImagem,(0,0))
imprimirBarra(barra1.x,barra1.y)
imprimirBarra(barra2.x,barra2.y)
interface()
pygame.display.update()
问题是什么?具有描述性。 StackOverflow不是转储代码并让其他人为您调试的地方。如果您收到错误消息,请将其填入您的问题中。如果程序中某个特定的东西不起作用,请描述它并将其追踪到特定的功能/行。 – Sumurai8
对不起,不是非常具体,也许在代码中犯了一个愚蠢的错误。我是python和pygame的新手,这是我第一次在StackOverflow中发布一些东西。 – user2713343