我正在尝试在我的tamagotchi克隆中实现一个暂停功能(我正在练习明年的受控评估),但我不能让左键和上键同时作为暂停按钮工作。如果可能的话,我想保持真实的原始游戏,所以我宁愿不使用屏幕上的按钮。谢谢!你知道吗
import pygame
import time
WHITE = (255, 255, 255)
BLACK = (0, 0, 0)
size =(200, 200)
screen = pygame.display.set_mode(size)
pygame.display.set_caption('Tama v4.5')
screen.fill(WHITE)
pygame.init()
clock = pygame.time.Clock()
sprites = ['AdultSpriteAAA.png']
up_pressed = False
left_pressed = False
right_pressed = False
def main():
controls()
if up_pressed == True and left_pressed == True:
time.sleep(2)
pause()
player_position = pygame.mouse.get_pos()
x = player_position[0]
y = player_position[1]
screen.blit(background, [0,0])
screen.blit(sprite, [x, y])
pygame.display.flip()
clock.tick(60)
def controls():
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
exit()
elif event.type == pygame.MOUSEBUTTONDOWN:
print(animate())
elif event.type == pygame.KEYDOWN:
if event.key == pygame.K_UP:
global up_pressed
right_pressed = True
if event.key == pygame.K_LEFT:
global left_pressed
left_pressed = True
if event.key == pygame.K_RIGHT:
global right_pressed
right_pressed = True
elif event.type == pygame.KEYUP:
if event.key == pygame.K_UP:
global up_pressed
right_pressed = False
if event.key == pygame.K_LEFT:
global left_pressed
left_pressed = False
if event.key == pygame.K_RIGHT:
global right_pressed
right_pressed = False
def info():
return 0
def food():
return 1
def toilet():
return 2
def game():
return 3
def connect():
return 4
def talk():
return 5
def medic():
return 6
def post():
return 7
def history():
return 8
def animate():
return 9
def pause():
time.sleep(2)
while True:
controls()
if up_pressed == True and left_pressed == True:
time.sleep(2)
break
sprite = pygame.image.load(sprites[0]).convert()
background = pygame.image.load('Background 200x200.png').convert()
sprite.set_colorkey(BLACK)
while True:
main()
我发现在PyGame中编写游戏时有一个非常有用的方法:
我最近才发现一件有趣的事pygame.key.按下()返回一个由1和0组成的元组,表示键盘上的所有键,这些键可以用作布尔值或索引以获取键的有效“值”。一些伟大的导师在http://programarcadegames.com/
当同时按下左iey和向上键时,使其暂停的方法如下:
这段代码应该是正确的,但是如果您发现任何奇怪的东西,请尝试研究pygame密钥模块。请注意,K琰u LEFT和K琰u UP来自pygame.本地人是从pygame单独进口的
相关问题 更多 >
编程相关推荐