quickLua Animation 封装((.plist .png))
2016-01-19 23:34
399 查看
--[[
全局函数 (工具类)
把项目中公共的函数 封装到这个文件中
]]
-- plist 文件路径
function getAnimation( _plistName, _heroId,_action,_time)
-- print("引用全局函数")
local plistName = _plistName
local animation = display.getAnimationCache(plistName)
if animation then return animation end
local heroId = _heroId
local action = _action
local time = _time or 0.05 --(time 不传也是可以的,有个默认时间)
display.addSpriteFrames(plistName..".plist",plistName..".png")
-- 1 技能动画 2 做无限战力动画
local frames = {}
-- 不用 display.newFrames(pattern, begin, length, isReversed)
-- 不同的plist文件 里边的帧总数不同
local idx = 0
while true do
local frameStr = string.format("%d_%s_%04d.png", heroId,action ,idx) -- "20002_skill_0012.png"
-- 根据帧路径 判断是否有这个帧
local frame = cc.SpriteFrameCache:getInstance():getSpriteFrame(frameStr)
if frame then
table.insert(frames, frame)
else
break
end
idx = idx + 1
end
local animation = display.newAnimation(frames, time)
-- 设置动画缓存
display.setAnimationCache(plistName, animation)
return animation
end
全局函数 (工具类)
把项目中公共的函数 封装到这个文件中
]]
-- plist 文件路径
function getAnimation( _plistName, _heroId,_action,_time)
-- print("引用全局函数")
local plistName = _plistName
local animation = display.getAnimationCache(plistName)
if animation then return animation end
local heroId = _heroId
local action = _action
local time = _time or 0.05 --(time 不传也是可以的,有个默认时间)
display.addSpriteFrames(plistName..".plist",plistName..".png")
-- 1 技能动画 2 做无限战力动画
local frames = {}
-- 不用 display.newFrames(pattern, begin, length, isReversed)
-- 不同的plist文件 里边的帧总数不同
local idx = 0
while true do
local frameStr = string.format("%d_%s_%04d.png", heroId,action ,idx) -- "20002_skill_0012.png"
-- 根据帧路径 判断是否有这个帧
local frame = cc.SpriteFrameCache:getInstance():getSpriteFrame(frameStr)
if frame then
table.insert(frames, frame)
else
break
end
idx = idx + 1
end
local animation = display.newAnimation(frames, time)
-- 设置动画缓存
display.setAnimationCache(plistName, animation)
return animation
end
相关文章推荐
- [leetcode]Evaluate Reverse Polish Notation
- leetcode150 Evaluate Reverse Polish Notation
- 编译lua学习代码
- 四、lua常用小知识
- lua中获取时间
- 快速掌握Lua 5.3 —— 编译,运行以及错误
- sublime Text2编译lua(windows平台)
- 三、lua coroutine
- Lua 语句
- [leetcode] 150. Evaluate Reverse Polish Notation 解题报告
- *Evaluate Reverse Polish Notation
- 简单谈谈lua和c的交互
- 快速掌握Lua 5.3 —— 各种变量和值
- lua排序算法
- 快速掌握Lua 5.3 —— "Iterators"和"Generic for"
- 快速掌握Lua 5.3 —— 函数
- Lua中的table函数库
- lua和c的亲密接触
- sicily 递归练习 1005. Arithmetic Expression Evaluation
- lua和c的亲密接触