簡體   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