quick-cocos2d-x transition使用方法
Functions | |
---|---|
transition.newEasing(action, easingName, more) | |
为图像创造效果 | |
transition.execute(target, action, args) | |
运行一个动作效果 | |
transition.rotateTo(target, args) | |
将显示对象旋转到指定角度,并返回 CCAction 动作对象。 | |
transition.moveTo(target, args) | |
将显示对象移动到指定位置,并返回 CCAction 动作对象。 | |
transition.fadeTo(target, args) | |
将显示对象的透明度改变为指定值。并返回 CCAction 动作对象。 | |
transition.scaleTo(target, args) | |
将显示对象缩放到指定比例,并返回 CCAction 动作对象。 | |
transition.sequence(actions) | |
创建一个动作序列对象。 | |
transition.playAnimationOnce(target, animation, removeWhenFinished, onComplete, delay) | |
在显示对象上播放一次动画。并返回 CCAction 动作对象。 |
Functions
-
transition.newEasing()
transition.newEasing(action, easingName, more)
为图像创造效果
-
transition.execute()
transition.execute(target, action, args)
运行一个动作效果
-- 等待 1.0 后開始移动对象
-- 耗时 1.5 秒。将对象移动到屏幕中央
-- 移动使用 backout 缓动效果
-- 移动结束后运行函数,显示 move completed
transition.execute(sprite, CCMoveTo:create(1.5, CCPoint(display.cx, display.cy)), {
delay = 1.0,
easing = "backout",
onComplete = function()
print("move completed")
end,
})transition.execute() 是一个强大的工具,能够为原本单一的动作加入各种附加特性。
transition.execute() 的參数表格支持下列參数:
- delay: 等待多长时间后開始运行动作
- easing: 缓动效果的名字及可选的附加參数,效果名字不区分大写和小写
- onComplete: 动作运行完毕后要调用的函数
- time: 运行动作须要的时间
transition.execute() 支持的缓动效果:
- backIn
- backInOut
- backOut
- bounce
- bounceIn
- bounceInOut
- bounceOut
- elastic, 附加參数默觉得 0.3
- elasticIn, 附加參数默觉得 0.3
- elasticInOut, 附加參数默觉得 0.3
- elasticOut, 附加參数默觉得 0.3
- exponentialIn, 附加參数默觉得 1.0
- exponentialInOut, 附加參数默觉得 1.0
- exponentialOut, 附加參数默觉得 1.0
- In, 附加參数默觉得 1.0
- InOut, 附加參数默觉得 1.0
- Out, 附加參数默觉得 1.0
- rateaction, 附加參数默觉得 1.0
- sineIn
- sineInOut
- sineOut
Parameters
- CCNode target 显示对象
- CCAction action 动作对象
- table args 參数表格对象
Returns
- mixed 结果
-
transition.rotateTo()
transition.rotateTo(target, args)
将显示对象旋转到指定角度。并返回 CCAction 动作对象。
-- 耗时 0.5 秒将 sprite 旋转到 180 度
transition.rotateTo(sprite, {rotate = 180, time = 0.5})Parameters
- CCNode target 显示对象
- table args 參数表格对象
Returns
- mixed 结果
-
transition.moveTo()
transition.moveTo(target, args)
将显示对象移动到指定位置,并返回 CCAction 动作对象。
-- 移动到屏幕中心
transition.moveTo(sprite, {x = display.cx, y = display.cy, time = 1.5})
-- 移动到屏幕左边,不改变 y
transition.moveTo(sprite, {x = display.left, time = 1.5})
-- 移动到屏幕底部,不改变 x
transition.moveTo(sprite, {y = display.bottom, time = 1.5})Parameters
- CCNode target 显示对象
- table args 參数表格对象
Returns
- mixed 结果
-
transition.fadeTo()
transition.fadeTo(target, args)
将显示对象的透明度改变为指定值,并返回 CCAction 动作对象。
-- 无论显示对象当前的透明度是多少,终于设置为 128
transition.fadeTo(sprite, {opacity = 128, time = 1.5})Parameters
- CCNode target 显示对象
- table args 參数表格对象
Returns
- mixed 结果
-
transition.scaleTo()
transition.scaleTo(target, args)
将显示对象缩放到指定比例,并返回 CCAction 动作对象。
-- 总体缩放为 50%
transition.scaleTo(sprite, {scale = 0.5, time = 1.5})
-- 单独水平缩放
transition.scaleTo(sprite, {scaleX = 0.5, time = 1.5})
-- 单独垂直缩放
transition.scaleTo(sprite, {scaleY = 0.5, time = 1.5})Parameters
- CCNode target 显示对象
- table args 參数表格对象
Returns
- mixed 结果
-
transition.sequence()
transition.sequence(actions)
创建一个动作序列对象。
local sequence = transition.sequence({
CCMoveTo:create(0.5, CCPoint(display.cx, display.cy)),
CCFadeOut:create(0.2),
CCDelayTime:create(0.5),
CCFadeIn:create(0.3),
})
sprite:runAction(sequence)Parameters
- table args 动作的表格对象
Returns
- CCSequence 动作序列对象
-
transition.playAnimationOnce()
transition.playAnimationOnce(target, animation, removeWhenFinished, onComplete, delay)
在显示对象上播放一次动画,并返回 CCAction 动作对象。
local frames = display.newFrames("Walk%04d.png", 1, 20)
local animation = display.newAnimation(frames, 0.5 / 20) -- 0.5s play 20 frames
transition.playAnimationOnce(sprite, animation)还能够用 CCSprite 对象的 playAnimationOnce() 方法来直接播放动画:
local frames = display.newFrames("Walk%04d.png", 1, 20)
local animation = display.newAnimation(frames, 0.5 / 20) -- 0.5s play 20 frames
sprite:playAnimationOnce(animation)playAnimationOnce() 提供了丰富的功能,比如在动画播放完毕后就删除用于播放动画的 CCSprite 对象。比如一个爆炸效果:
local frames = display.newFrames("Boom%04d.png", 1, 8)
local boom = display.newSprite(frames[1]) -- playAnimationOnce() 第二个參数为 true 表示动画播放完后删除 boom 这个 CCSprite 对象
-- 这样爆炸动画播放完成,就自己主动清理了不须要的显示对象
boom:playAnimationOnce(display.newAnimation(frames, 0.3/ 8), true)此外,playAnimationOnce() 还同意在动画播放完毕后运行一个指定的函数,以及播放动画前等待一段时间。
合理运用这些功能。能够大大简化我们的游戏代码。
Parameters
- CCNode target 显示对象
- CCNode animation 动作对象
- boolean removeWhenFinished 播放完毕后删除显示对象
- function onComplete 播放完毕后要运行的函数
- number delay 播放前等待的时间
Returns
- table 动作表格对象
quick-cocos2d-x transition使用方法的更多相关文章
- 发布Qt Quick桌面应用程序的方法(使得planets在XP上运行)
发布Qt Quick桌面应用程序的方法 Qt是一款优秀的跨平台开发框架,它可以在桌面.移动平台以及嵌入式平台上运行.目前Qt 5介绍程序发布的文章帖子比较少.大家又非常想要知道如何发布Qt应用程序,于 ...
- Cocos2d 利用继承Draw方法制作可显示三维数据(宠物三维等)的三角形显示面板
很久没有写博客了,这段时间比较忙,又是搬家又是做自己的项目,还有太多琐碎的事情缠身,好不容易抽出时间把最近自己做的一些简单例子记录一下. 在我的项目中,我需要一个显示面板来显示游戏中的一个三维数据,例 ...
- cocos2d中各种action方法的应用
Action示例: 1.移动动作 cc.MoveBy:create(time, posX, posY) 在time时间内,相对当前位置基础上移动x,y个单位. cc.MoveTo:create(ti ...
- cocos2d 场景转换的方法执行顺序
转自:http://shanbei.info/the-cocos2d-scene-conversion-method-execution-order.html 如果你希望在场景转换的过程中使用过渡效果 ...
- 发布Qt Quick桌面应用程序的方法
这个对话框出现的原因可能是msvcrt.dll在XP这个版本没有vsprintf_s这样的动态库.目前还暂时没有找到好的解决思路,稍后我再单独研究一下,看这个事情该如何解决. 解决办法有很多,我没有一 ...
- Cocos2d 使用控制台打印的方法
1.打开当前项目的win32解决方案. 2.在解决方案管理器的win32文件夹下打开main.cpp 3.增加以下代码: #define USE_WIN32_CONSOLE //以下加到入口函数 #i ...
- css3渐变 transition使用方法
<style> div{ width:300px; height:300px; background:#89F; margin:100px auto; transition:width 1 ...
- SpriteKit中类似Cocos2D的CCActionSpawn并发方法GroupAction
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) 我们知道在Cocos2D中对于并发Action的处理可以使用C ...
- cocos2d JS-(JavaScript) 动态生成方法的例子
function User(properties) { for (var i in properties) { (function (which) { var p = i; which["g ...
随机推荐
- usb驱动的基本结构和函数简介【转】
转自:http://blog.csdn.net/jeffade/article/details/7698404 几个重要的结构 struct--接口 struct usb_interface { /* ...
- MyBatis报错 Parameter '0' not found. Available parameters are [arg1, arg0, param1, param2]
修改 <update id="updateStatusById" parameterType="java.lang.Integer"> update ...
- 【linux高级程序设计】(第十三章)Linux Socket网络编程基础 2
BSD Socket网络编程API 创建socket对象 int socket (int __domain, int __type, int __protocol) :成功返回socket文件描述符, ...
- CentOS系统最小化安装没有wget解决方案
-bash: wget: command not found的两种解决方法 今天给服务器安装新LNMP环境时,wget 时提示 -bash:wget command not found,很明显没有安装 ...
- HDU 4920.Matrix multiplication-矩阵乘法
Matrix multiplication Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/ ...
- Python与数据库[2] -> 关系对象映射/ORM[1] -> sqlalchemy 的基本使用示例
sqlalchemy 的基本使用示例 下面的例子中将利用sqlalchemy进行数据库的连接,通过orm方式利用类实例属性操作的方式对数据库进行相应操作,同时应用一些常用的函数. 完整代码如下: fr ...
- 通过命令行上传代码到GitHub
自工作以来,本人第一次使用GitHub.下面是将本地的项目上传到GitHub的过程.上传代码的前提是:1.已注册GitHub账号:2.本地已安装Git. 第一步:远程Git仓库 进入本地的项目的根目录 ...
- 洛谷——P2656 采蘑菇
P2656 采蘑菇 题目描述 小胖和ZYR要去ESQMS森林采蘑菇. ESQMS森林间有N个小树丛,M条小径,每条小径都是单向的,连接两个小树丛,上面都有一定数量的蘑菇.小胖和ZYR经过某条小径一次, ...
- 解密Java内存溢出之持久代
垃圾回收是Java程序员了解最少的一部分.他们认为Java虚拟机接管了垃圾回收,因此没必要去担心内存的申请,分配等问题.但是随着应用越来越复杂,垃圾回收也越来越复杂,一旦垃圾回收变的复杂,应用的性能将 ...
- luogu P1072 Hankson的趣味题
题目链接 luogu P1072 Hankson 的趣味题 题解 啊,还是noip的题好做 额,直接推式子就好了 \(gcd(x,a_0)=a_1=gcd(\frac{x}{a_1},\frac{a_ ...