import os, sys
import pygame
from pygame.locals import *
pygame.init()
screen = pygame.display.set_mode((800, 600))
pygame.mouse.set_visible(False)
def loadimage(name, colorkey=None):
try:
pygame.image.load(os.path.join(name))
except pygame.error, message:
print "Failed to load image ",name
class Userplane(pygame.sprite.Sprite):
def __init__(self):
pygame.sprite.Sprite.__init__(self)
self.image, self.rect = loadimage("userplane.bmp")
def update(self):
pos = pygame.mouse.get_pos()
self.rect.midtop = pos
def main():
pygame.init()
screen = pygame.display.set_mode((800, 600))
pygame.mouse.set_visible(False)
background = pygame.Surface(screen.get_size())
background = background.convert()
background.fill((255,255,255))
screen.blit(background, (0,0))
pygame.display.flip()
user = Userplane()
allsprites = pygame.sprite.RenderPlain((user))
clock = pygame.time.Clock()
while 1:
clock.tick(60)
for event in pygame.event.get():
if event.type == QUIT:
return
elif event.type == KEYDOWN and event.key == K_ESCAPE:
return
allsprites.update()
screen.blit(background(0,0))
pygame.display.flip()
if __name__ == '__main__': main()
嗨,我很新,我刚刚完成了代码学院的课程和pygame教程中的黑猩猩拳游戏。我使用了几乎完全相同的副本,但我试图在屏幕底部显示一个平面,而不是拳头。我的Userplane类不断抛出以下错误,我不知道为什么,'typeerror:'nonetype'对象不可iterable
原因是在loadimage函数中。你知道吗
它不返回加载的映像,因此python抱怨您试图从一个NoneType分配
self.image, self.rect
。你知道吗在Python中,如果函数不返回任何内容,则假定它不返回任何内容。你知道吗
相关问题 更多 >
编程相关推荐