繁体   English   中英

Pygame 字符不显示在屏幕上

[英]Pygame character does not show up on screen

我尝试在屏幕上显示我的 Pygame 角色,但我无法让它出现,因此我可以控制它以用于我正在构建的游戏这是代码:

import pygame
#turn on pygame

pygame.init()

#window, window name and icon
screen = pygame.display.set_mode((1920,1080))

pygame.display.set_caption("When The Sky Turns Grey")
icon = pygame.image.load('cat.png')
pygame.display.set_icon(icon)

#Player
playerIMG = pygame.image.load('cat.png')
playerX = 960
playerY = 1080
playerXchange = 0

def player():
    screen.blit(playerIMG, (playerX, playerY))

#Game loop

running = True
while running:
   
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False

        #KEYS
        if event.type == pygame.KEYDOWN:
            if event.key == pygame.K_a:
                playerX_change = -5
            if event.key == pygame.K_d:
                playerX_change = 5
                


        if event.type == pygame.KEYUP:
            if event.key == pygame.K_a or event.key == pygame.K_d:
                playerXchange = 0

    playerX += playerXchange        
    #RGB
    screen.fill((0, 0, 255))
    #draw player (call player function)
    player()
    

    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    pygame.display.update()

无论我改变什么,我都无法让它出现。 我是 pygame 的新手,如果有人能提供帮助,我将不胜感激,谢谢! 啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊

这个问题有2个问题

首先你的猫 Y position 太多了,它在屏幕下,应该是这样的:

playerY = 540 # Don't go over 1080 which is the screen height

其次,您没有更新显示,因此它不会在屏幕上显示任何内容,在 while 循环的最后,将pygame.display.update放在player()之后

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM