猿问

将精灵与 pyganim 一起使用的异常

再会。我正在尝试编写一个平台游戏。已经实现了创建地图、创建角色、交互和相机移动等基本操作。有4个文件:


游戏.py:


负责创建窗口,并绘制其余部分。也用于在执行任何操作时启用和禁用标志。


import pygame

from pygame import *

import Camera as cam

import Player as plr

import Platform as plfm



WIN_WIDTH = 800

WIN_HEIGHT = 640

HALF_WIDTH = int(WIN_WIDTH / 2)

HALF_HEIGHT = int(WIN_HEIGHT / 2)


DISPLAY = (WIN_WIDTH, WIN_HEIGHT)

DEPTH = 32

FLAGS = 0

CAMERA_SLACK = 30



def 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 = []


   

茅侃侃
浏览 173回答 1
1回答

狐的传说

在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。
随时随地看视频慕课网APP

相关分类

Python
我要回答