欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

cocos2dx:精灵帧动画的使用

程序员文章站 2022-03-16 21:37:47
...
local sprite = cc.Sprite:create()
local animation = cc.Animation:create()  -- 创建动画
for i = 1, 10 do
    local frameName = string.format("plist_texture_name_%02d.png", i)
    animation:addSpriteFrame(cc.SpriteFrameCache:getInstance():getSpriteFrame(frameName))  -- 添加精灵帧
end
animation:setDelayPerUnit(1 / 10.0)  -- 设置每一帧持续时间,以秒为单位
animation:setRestoreOriginalFrame(false)  -- 设置是否在动画播放结束后恢复到第一帧
animation:setLoops(-1)  -- 循环的次数,-1代表一直循环
local action = cc.Animate:create(animation)  -- 由动画创建Animate动作
sprite:runAction(cc.RepeatForever:create(action))
sprite:setAnchorPoint(0.5, 0.5)
local size = parent:getContentSize()
sprite:setPosition(cc.p(size.width/2, size.height/2 + 2))
sprite:setScaleX(0.9)
sprite:setScaleY(1.1)
parent:addChild(sprite)