我正在尝试制作基本(马里奥风格)游戏,但我的精灵(水管工)没有出现,它可能隐藏在背景背后?我不确定,我也没有收到任何错误。
import pygame
import sys
import itertools
import pygame
from pygame.sprite import Sprite
cloud_background = pygame.image.load('clouds.bmp')
brick_tile = pygame.image.load('brick_tile.png')
pink = (255, 64, 64)
w = 640
h = 480
screen = pygame.display.set_mode((w, h))
running = 1
def setup_background():
screen.fill((pink))
screen.blit(cloud_background,(0,0))
brick_width, brick_height = brick_tile.get_width(), brick_tile.get_height()
for x,y in itertools.product(range(0,640,brick_width),
range(390,480,brick_height)):
# print(x,y)
screen.blit(brick_tile, (x, y))
pygame.display.flip()
while running:
setup_background()
event = pygame.event.poll()
if event.type == pygame.QUIT: sys.exit()
class plumber(sprite):
def __init__(
self, screen, img_filename, init_position,
init_direction, speed):
Sprite.__init__(self)
self.screen = screen
self.speed = speed
self.base_image = pygame.image.load(Mario_sideways_sprite_2xL.png).convert_alpha()
self.image = self.base_image
self.pos = 50,50
答案 0 :(得分:4)
发现的第一个问题是您必须修改
pygame.image.load(Mario_sideways_sprite_2xL.png)
有类似的东西。
pygame.image.load("Mario_sideways_sprite_2xL.png")
除此之外,代码还有许多阻碍其工作的问题。例如,
class plumber(sprite)
应为plumber(Sprite)
(更好Plumber(Sprite)
)您需要以下内容:
myplumber = Plumber()
allsprites = pygame.sprite.RenderPlain((myplumber, ....))
clock = pygame.time.Clock()
您可以看到here像您这样的简单程序的主要部分。