据我所知,当我按下箭头键/ WASD时,该程序应该正在移动图像,但我不确定为什么不这样做。 为了加快阅读速度,我可以解释一下这是什么。我先定义了几件事,只是为了方便起见,然后在while循环中,我开始使用getkey,并对其进行设置,以便当您按下箭头键时,它应该将屏幕涂成白色,然后+/- 10到x / y,然后它应该在新位置重新绘制图片,但是由于某种原因,它只是在这些If语句之后不执行任何代码。
import pygame
import sys
import os
import curses
def print_there(x, y, text):
sys.stdout.write((x, y, text))
sys.stdout.flush()
pygame.init()
bckgrnd_clr = 'gray95'
x,y=0,0
width = 1280
height = 704
screen = pygame.display.set_mode((width,height))
GameImage = pygame.image.load("Images/stage.png")
Player = pygame.image.load("Images/Knight.png")
Blank = pygame.image.load("Images/Blank.png")
pygame.display.set_caption("Zackarys Game")
screen.blit(GameImage, (0,0))
screen.blit(Player, (y,x))
pygame.display.update()
FPS = 30
clock = pygame.time.Clock()
white = [255 , 255, 255]
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_LEFT or event.key == ord('a'):
screen.fill(white)
x = x - 10
screen.blit(GameImage, (0,0))
screen.blit(Player, (y,x))
if event.key == pygame.K_RIGHT or event.key == ord('d'):
screen.fill(white)
x = x + 10
screen.blit(GameImage, (0,0))
screen.blit(Player, (y,x))
if event.key == pygame.K_UP or event.key == ord('w'):
screen.fill(white)
y = y - 10
screen.blit(GameImage, (0,0))
screen.blit(Player, (y,x))
if event.key == pygame.K_DOWN or event.key == ord('s'):
screen.fill(white)
y = y + 10
screen.blit(GameImage, (0,0))
screen.blit(Player, (y,x))
if event.key == pygame.K_ESCAPE:
pygame.display.quit()
pygame.quit()
sys.exit()
running = False
请尽快通知我。
答案 0 :(得分:1)
我已修复您的代码。我不知道模块“诅咒”是干什么的。问题是您只更新了一次显示(禁用了动画)。另一个问题是,您仅在按下事件键时才尝试使图像变暗,如果您需要定期更新显示,那将是一个问题。这是更新的代码(我也固定了您的x和y)。
aws ssm put-parameter --name "/Finance/Payroll/elixir3131" --value "P@sSwW)rd" --type SecureString