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

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

时间: 2024-11-03 05:05:16

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

cocos2dx的runAction: 重复执行,多个动作连接执行,多个动作同时执行的实现

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:

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

按照疯狂java讲义的13.3的程序,发现程序运行出错. 1.点开runConnMySql.cmd运行文件,出现如下结果: 2.用Editplus进行编译运行,如下结果: 报错定位到程序第18行,而第18行是驱动 原因:运行该程序需要MySQL的数据库驱动,该驱动JAR文件就是e:\mysql-connector-java-5.1.30-bin.jar文件,所以需要把该文件添加到环境变量CLASSPATH里. 3.我的电脑-->右键,属性-->环境变量,添加CLASSPATH环境变量: .;E

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

Android开发中,常遇到一种需求,即按钮长按下去重复执行某个动作,放开后停止执行动作.网上找了许多代码,都没有适合的,于是自己动手写了一个. 基本思路是:首先设置一个标识变量,用于标识是否处于按下的状态.当按钮按下的时候,将标识变量设置为true,启动一个线程用于重复执行某个动作(当标识变量为true时,循环执行动作,当为false跳出循环,结束动作):当按钮弹起来的时候,将标识变量设置为false. 1.首先,设置标识变量 1 private boolean booleanConnect

[Cocos2d-x]在Cocos2d-x 3.x版本中如何通过WebSocket连接服务器进行数据传输

WebSocket 首先新建一个空的文件夹,通过npm安装nodejs-websocket: npm install nodejs-websocket 新建app.js文件: var ws = require("nodejs-websocket"); ws.createServer(function(conn){ conn.on("text", function (str) { console.log("get the message: "+st

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

一个或多个音频服务未运行 win7 错误1079:此服务的账户不同于运行于同一进程上的其他服务账户 启动任务管理器:右键计算机——管理——”服务和应用程序“选项——”服务“——找到“windows audio”打开属性——“登录”选项——选择“此账户”——浏览——高级-立即查找-local sevice——确定(如果要输入密码的话,先清空再确定).再启动windows audio win7喇叭红叉耳机扬声器已拔出驱动无法修复 win7系统没声音,电脑驱动确实安装好了, 而且Windows 7系统

运行的前戏------编译连接全过程理解

一. 前言 高度封装的事物(如各种IDE)在提供便捷操作的同时也失去了许多美好的内部细节,往往让让使用者只知道how to use 而不知道how to achieve,因而在出现一些封装内部的错误时就会让使用者手足无措,因此了解其内部的大致运行过程将有助于处理一些集成环境不提示的错误. 二.基本概念 编译:     编译器对源代码进行编译,是将以文本形式存在的源代码翻译为机器语言形式的目标文件的过程. 编译单元:对于C++来说,每一个cpp文件就是一个编译单元.从之前的编译过程的演示可以看出,

使用DataConnectionDialog在运行时设置数据源连接字符串

介绍: DataConnectionDialog 类: 打开“数据连接”对话框,获取用户选择的数据连接信息. 命名空间为:Microsoft.Data.ConnectionUI 所在程序集:Microsoft.Data.ConnectionUI.Dialog(在“%Visual Studio安装目录%/Common7/IDE/Microsoft.Data.ConnectionUI.Dialog.dll”) 注意: 在程序集:Microsoft.VisualStudio.Data (in Micr

eclipse中是可以运行多个项目的。比如c-s两个同时运行。

1.运行server端程序(有main函数)后,再运行client端(有main函数)的程序. 2.此时有两个程序同时在运行.可以在控制台上的Display selected Console中选择查看那个程序的控制台.

【转】使用DataConnectionDialog在运行时设置数据源连接字符串

介绍: DataConnectionDialog 类: 打开"数据连接"对话框,获取用户选择的数据连接信息. 命名空间为:Microsoft.Data.ConnectionUI 所在程序集:Microsoft.Data.ConnectionUI.Dialog(在"%Visual Studio安装目录%/Common7/IDE/Microsoft.Data.ConnectionUI.Dialog.dll") 注意: 在程序集:Microsoft.VisualStudi