わかりましたので、ここに私の現在のプログラムがあります:
bif="bg.jpg"
mif="pkmn.png"
import pygame
import sys
from pygame.locals import *
pygame.init()
screen=pygame.display.set_mode ((600,375),0,32)
background=pygame.image.load(bif).convert()
mouse_c=pygame.image.load(mif).convert_alpha()
x,y=0,0
movex, movey=0,0
while True:
for event in pygame.event.get():
if event.type == QUIT:
pygame.quit()
sys.exit()
if event.type==KEYDOWN:
if event.key==K_LEFT:
movex=-1
elif event.key==K_RIGHT:
movex=+1
elif event.key==K_UP:
movey=-1
elif event.key==K_DOWN:
movey=+1
if event.type==KEYUP:
if event.key==K_LEFT:
movex=0
elif event.key==K_RIGHT:
movex=0
elif event.key==K_UP:
movey=0
elif event.key==K_DOWN:
movey=0
x+=movex
y+=movey
screen.blit(background,(0,0))
screen.blit(mouse_c,(x,y))
pygame.display.update()
問題は、すべての方向に移動できるにもかかわらず、たとえば右矢印キーを押すと右に移動し、右矢印キーを押したまま左矢印キーを押したままにすると左に移動することです。問題は次のとおりです。右のキーを離すと、左に移動しようとしても、スプライトが停止します。
問題は、右または左のいずれかがリリースされると、x が 0 になることです。
右を押して右に行き、次に左を押して左に行きたいのですが、右を押していたので、左を離して右に行きたいです
私は自分自身を説明したいと思います.私はすべてを試し、どこでも検索しました.誰かが私のコードを変更して、それを私に見せて分析することができれば、それは素晴らしいことです.
ありがとう