再会。我正在尝试编写一个平台游戏。已经实现了创建地图、创建角色、交互和相机移动等基本操作。有4个文件:游戏.py:负责创建窗口,并绘制其余部分。也用于在执行任何操作时启用和禁用标志。import pygamefrom pygame import *import Camera as camimport Player as plrimport Platform as plfmWIN_WIDTH = 800WIN_HEIGHT = 640HALF_WIDTH = int(WIN_WIDTH / 2)HALF_HEIGHT = int(WIN_HEIGHT / 2)DISPLAY = (WIN_WIDTH, WIN_HEIGHT)DEPTH = 32FLAGS = 0CAMERA_SLACK = 30def main(): global cameraX, cameraY pygame.init() screen = pygame.display.set_mode(DISPLAY, FLAGS, DEPTH) pygame.display.set_caption("JohnTeeworlds") timer = pygame.time.Clock() up = down = left = right = running = False bg = Surface((32,32)) bg.convert() bg.fill(Color("#000000")) entities = pygame.sprite.Group() player = plr.Player(32, 32) platforms = []
1 回答

狐的传说
TA贡献1804条经验 获得超3个赞
在Pyganimation 类的源代码中,帧被定义为元组列表的每个元素。在您的程序中,此列表称为ANIMATION_STAY
。
在ANIMATION_STAY
您将延迟的值设置为 时0.1
,这是您的错误。ANIMATION_DELAY 应该是整数,而不是浮点数或双精度数,因此请使用整数而不是0.1
.
稍后在源中执行此操作时: assert frame[1] > 0, 'Frame %s duration must be greater than zero.' % (i)
,它会引发错误。您的延迟需要是>0
,但它正在四舍五入到0
。
添加回答
举报
0/150
提交
取消