[英]Pygame KEYDOWN name error
import pygame, sys, pygame.mixer
pygame.init()
size = width,height = 1256,640
screen = pygame.display.set_mode(size)
player_x = 0
player_y = 0
movex = 0
maintheme = pygame.mixer.Sound("music/mainthemes.ogg")
maintheme.play()
player_w = pygame.image.load("characters/player/character_w.png").convert_alpha()
player_a = pygame.image.load("characters/player/character_a.png").convert_alpha()
player_s = pygame.image.load("characters/player/character_s.png").convert_alpha()
player_d = pygame.image.load("characters/player/character_d.png").convert_alpha()
background1 = pygame.image.load("maps/background1.png").convert_alpha()
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()
if event.type==KEYDOWN:
if event.key==K_a:
movex=-1
screen.fill((0,0,0))
screen.blit(background1,(0,0))
screen.blit(player_s,(player_x,player_y))
pygame.display.update()
错误是这样的:文件“/home/fenton/Desktop/main.py”,第27行,如果是event.type == KEYDOWN:NameError:名称'KEYDOWN'未定义[在4.9s完成]
你需要这样做:
if event.type==pygame.KEYDOWN:
否则,Python不知道定义KEYDOWN
位置。
此外,您可能希望将其更改为:
elif event.type==pygame.KEYDOWN:
因为event.type
没有办法可以是pygame.QUIT
和 pygame.KEYDOWN
。
from pygame.locals import *
添加这一行,你很高兴。
然而,虽然这确实有效,但这是不好的做法, iCodez提供的解决方案应该受到青睐并使用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.