无法创建工作精灵

时间:2017-09-22 13:29:00

标签: lua sprite corona

我无法为我的应用的这个区域创建一个可用的动画精灵。

我正在使用Corona SDK并拥有以下精灵:

enter image description here

这是名称mainCharacter.png。我有一个名为mainCharacter@2x.png的双倍大小的版本。

我有工作表选项,2个序列,我正在构建一个图像表并将其传递给我的精灵:

local playerSheetOptions =
{
    width = 50,
    height = 50,
    numFrames = 17,
    sheetContentWidth = 500,
    sheetContentHeight = 100
}
local playerSequences = {
    {
        name = "idle",
        start = 1,
        count = 12,
        time = 1200,
        loopCount = 0,
        loopDirection = "bounce"
    },
    {
        name = "jump",
        start = 13,
        count = 5,
        time = 600,
        loopCount = 1
    },
}
local playerSheet = graphics.newImageSheet( "resource/images/mainCharacter.png", playerSheetOptions )
local player = display.newSprite(gameSheet, playerSheet, playerSequences)

我收到以下错误:

display.newSprite() requires argument #2 to a table containing sequence data

如果我print相关数据:

print(gameSheet)
print(playerSheet)
print(playerSequences)

我明白了:

14:27:05.703  userdata: 12445228
14:27:05.703  userdata: 0CF42600
14:27:05.703  table: 0CF41FD0

我哪里错了?我已经尝试过很多简化序列,但仍然可以做同样的事情。

1 个答案:

答案 0 :(得分:0)

使用

local player = display.newSprite(playerSheet, playerSequences)

而不是

local player = display.newSprite(gameSheet, playerSheet, playerSequences)

来自Corona documentation

  

一旦设置了图像表和序列,就会出现一个新的精灵对象   可以使用display.newSprite()API创建:

     

display.newSprite([parent,] imageSheet,sequenceData)

     

对于此API,父级   参数是可选的,表示要在其中显示的组   插入精灵。 imageSheet参数定义默认图像   精灵的表格,sequenceData是包含所有精灵的表格   精灵的序列。

详细了解Sprite Animation