cocos2dx的 runAction,假设某个动作重复运行用cc.RepeatForever:create,
多个动作连接运行用cc.Sequence:create,多个动作同一时候运行用cc.Spawn:create.


反复运行某个动作cc.RepeatForever:create
local action = cc.FadeOut:create(3)--淡出
local action = cc.FadeIn:create(3) -- 渐入
local action = cc.RotateBy:create(3.0,360) -- 旋转
local action = cc.ScaleTo:create(3,0.1) -- 缩放 cc.RepeatForever:create(某动作)--一个动作不断反复运行用

反复运行某个动作n次,用 cc.Repeat:create

local rep1 = cc.Repeat:create(seq, 10)

精巧n秒,用DelayTime,使用方法例如以下: 

cc.DelayTime:create(1.4)

多个动作的runAction

一个运行完成后再连接还有一个,用cc.Sequence:create
   local sprite2 = cc.Sprite:create("img/equipment/background_root.png")
sprite2:setPosition(cc.p(visibleSize.width/2, visibleSize.height/4))
mlayer:addChild(sprite2, 10) local action = cc.FadeOut:create(3)--淡出
local action2 = cc.FadeIn:create(3) -- 渐入
sprite2:runAction(cc.Sequence:create(action,action2,action))

 
多个动作同一时候变化,用cc.Spawn:create
sprite:runAction(cc.Spawn:create(cc.RotateBy:create(3.0,360),cc.ScaleTo:create(3,0.1)))


-------------------------------------
实例示范:

    local screen = cc.Director:getInstance():getRunningScene()
local action1 = cc.ScaleTo:create(0.5, 1) --放大 參数:时间和缩放尺寸
local action2 = cc.MoveTo:create(0.5, ccp(300,330)) --移动到某位置
local action3 = cc.ScaleTo:create(0.2, 0.6) --缩小 參数:时间和缩放尺寸
local action4 = cc.FadeOut:create(2)--淡出
local action5 = cc.MoveTo:create(2, ccp(300,450)) --移动到某位置 --复位 以便让动画反复
local action6 = cc.FadeIn:create(0.01)--渐入
local action7 = cc.MoveTo:create(0.01, ccp(300,300)) --移动到某位置 local sprite = cc.Sprite:create("fonts/number_green.png")
sprite:setTextureRect(cc.rect(120, 0, 120, 28) )
sprite:setPosition(300,300)
sprite:setAnchorPoint(ccp(0.5,0))
sprite:setScale(0.6)
-- sprite:runAction(action1)--runAction运行一个动作
-- sprite:runAction(cc.Spawn:create(action1,action2))--cc.Spawn:create同一时候运行多个动作
-- sprite:runAction(cc.Sequence:create(cc.Spawn:create(action1,action2),action3,cc.Spawn:create(action4,action5)))--cc.Sequence:create循序运行多个动作
sprite:runAction(cc.RepeatForever:create(cc.Sequence:create(cc.Spawn:create(action1,action2),action3,cc.Spawn:create(action4,action5),cc.Spawn:create(action6,action7))))--cc.RepeatForever:create(某动作)反复运行某个动作 screen:addChild(sprite)

action中回调方法cc.CallFunc:create()

local function removeThis()

ret:getParent():removeChild(ret, true)

Helper.nextAction()

end

--After 1.5 second, self will be removed.

ret:runAction( cc.Sequence:create(cc.DelayTime:create(1.4),cc.CallFunc:create(removeThis)))




———————————
http://blog.sina.com.cn/s/blog_6e5195850101ioxq.html

cocos2dx的runAction: 反复运行,多个动作连接运行,多个动作同一时候运行的实现的更多相关文章

  1. 【Cocos2d-X开发学习笔记】第18期:动作类之改变动作对象、函数回调动作以及过程动作的使用

    本系列学习教程使用的是cocos2d-x-2.1.4(最新版为3.0alpha0-pre) ,PC开发环境Windows7,C++开发环境VS2010 一.改变动作执行对象 CCTargetedAct ...

  2. JavaBean组件<jsp:forward>动作<jsp:param>动作登录页面输入用户名和密码,然后进入检查页面判断是否符合要求,符合要求跳转到成功界面,不符合要求返回登录界面,显示错误信息。

    JavaBean组件 JavaBean组件实际是一种java类.通过封装属性和方法成为具有某种功能或者处理某个业务的对象. 特点:1.实现代码的重复利用.2.容易编写和维护.3.jsp页面调用方便. ...

  3. MySQL运行出错:无法连接驱动、无root访问权限解决办法

    按照疯狂java讲义的13.3的程序,发现程序运行出错. 1.点开runConnMySql.cmd运行文件,出现如下结果: 2.用Editplus进行编译运行,如下结果: 报错定位到程序第18行,而第 ...

  4. JIT(Just in time,即时编译,边运行边编译)、AOT(Ahead Of Time,运行前编译),是两种程序的编译方式

    JIT(Just in time,即时编译,边运行边编译).AOT(Ahead Of Time,运行前编译),是两种程序的编译方式

  5. 一个或多个音频服务未运行 win7 错误1079:此服务的账户不同于运行于同一进程上的其他服务账户

    一个或多个音频服务未运行 win7 错误1079:此服务的账户不同于运行于同一进程上的其他服务账户 启动任务管理器:右键计算机——管理——”服务和应用程序“选项——”服务“——找到“windows a ...

  6. Android 按钮长按下去重复执行某个动作,放开后停止执行动作

    Android开发中,常遇到一种需求,即按钮长按下去重复执行某个动作,放开后停止执行动作.网上找了许多代码,都没有适合的,于是自己动手写了一个. 基本思路是:首先设置一个标识变量,用于标识是否处于按下 ...

  7. [cocos2dx动作]CCLabel类数字变化动作

    cococs2dx的CCLabel类的数字变化动作 介绍: 简单的数字变化动作(适用于CCLabel类对象, 包括CCLabelTTF, CCLabelAtlas, CCLabelBMFont等等) ...

  8. 动作之CCActionInterval(持续动作)家族

    持续动作,顾名思义,就是该动作的执行将持续一段时间.因此持续动作的静态生成函数,往往附带一个时间值Duration. 持续动作类名后缀:一般有两种后缀,一种是To,一种是By.To表示最终达到的目标值 ...

  9. unittest 运行slenium(四)---通过指定用例的形式运行用例

    一: 说明 跟数据驱动唯一的区别为用例数据获取时,及运行方式不同. 其它都基本相同,可参考https://www.cnblogs.com/xiaodingdong/p/11753220.html 二: ...

随机推荐

  1. Linux中ssh的免密码登陆

    原理: Hadoop的各个节点要实时的进行各种通信的,ssh就是能让各个节点免密码的相互访问相互通信. 操作步骤: 这里用的加密方式是非对称的加密方式,具体的操作是: <1>执行命令ssh ...

  2. Android 开发笔记 “Sqlite数据库删除”

    1.代码方式 Context.deleteDatabase(String databaseName);//删除某一数据库 2.设置里面 进入应用程序 ,然后清除数据就ok了

  3. divmod数字处理函数

    divmod(a,b)函数 中文说明: divmod(a,b)方法返回的是a//b(除法取整)以及a对b的余数 返回结果类型为tuple 参数: a,b可以为数字(包括复数) 版本: 在python2 ...

  4. 使用HISTCONTROL强制history忽略某条特定命令

    http://www.linuxnote.org/mandatory-use-of-histcontrol-ignore-a-certain-specific-command-history.html ...

  5. 射频识别技术漫谈(22)——RC系列射频芯片的寄存器操作

    前面提到,RC系列内部64个寄存器的正确操作是软件编写的关键.正确设置寄存器首先要做到与寄存器正确通信,其次是要对寄存器写入正确的值. RC系列射频芯片与微控制器的接口有并口和SPI接口两种类型.显然 ...

  6. ++i和i++哪个效率高?

    这个问题需要分两种情况来解说: 1.当变量i的数据类型是c++语言默认提供的类型的话,他们的效率是一样的. int a,i=0;     a=++i;汇编代码如下: int a,i=0; 01221A ...

  7. java代码发送JSON格式的httpPOST请求

    package com.test; import java.io.BufferedReader; import java.io.DataOutputStream; import java.io.IOE ...

  8. Android4.3模拟器界面中右侧菜单按钮无法使用问题解决办法

    开发环境:笔记本电脑Windows2008+MyEclipse 10+Android4.3 问题描述:运行或者调试Android项目时,发现模拟器中右侧Menu按钮无法点击,截图如下: 查看在Andr ...

  9. ServiceBase 类

    https://msdn.microsoft.com/zh-cn/library/System.ServiceProcess.ServiceBase%28v=vs.80%29.aspx 为将作为服务应 ...

  10. 在后台获取Textarea控件的值

    使用Request.Form方法 1.在前台设置name 属性 <textarea name="Content">hdjfhjdfhdj</textarea> ...