function MainPlayerCards:sendCards()
local winSize = cc.Director:getInstance():getWinSize()
local nSize = #self.handCard
for i =,nSize do
if self.handCard[i] then
self.handCard[i]:removeFromParent(true)
self.handCard[i] = nil
end
end
local function sendOneCard(pNode)
local tag = pNode:getTag()
pNode:removeFromParent(true)
local sp = cc.Sprite:createWithSpriteFrameName(string.format("l_%d.png",self.handCard[tag]))
sp:setPosition(cc.p(self:CardPos(tag)))
table.insert(self.handCard, sp)
self:addChild(sp)
end
for i=,nSize do
local pBackSp = cc.Sprite:createWithSpriteFrameName("l_back.png")
pBackSp:setPosition(cc.p(winSize.width/,winSize.height/))
pBackSp:setTag(i)
self:addChild(pBackSp,nSize -i)
local arrayAction ={}
table.insert(arrayAction, cc.DelayTime:create((i)*0.2))
table.insert(arrayAction, cc.MoveTo:create(0.2, cc.p(self:CardPos(i))))
table.insert(arrayAction, cc.CallFunc:create(sendOneCard))
pBackSp:runAction(cc.Sequence:create(arrayAction))
end
end

上述为:从中间开始,一张一张进行发牌动画的创建
如果table.insert(arrayAction, cc.DelayTime:create((i)*0.2))中,将时间改为常量,并没有按想像的执行完延时后,在进行下一次for循环,而是所有牌的动画一次性执行完毕,并且很多时候,我们看不到,误以为moveto动作没执行,另外哪位有关于table.insert(arrayAction, cc.CallFunc:create(sendOneCard))中cc.CallFunc中函数传参的资料,希望赐教!

lua对多个精灵执行一系列动作,延时失效的更多相关文章

  1. cocos2d-js使用plist执行自身动作

    首先需要将精灵动作帧动画图片使用TexturePacker创建plist,创建好后,将生成的plist和png图片(所有帧动画图片集成的一张大图): 百牛信息技术bainiu.ltd整理发布于博客园 ...

  2. 你好,C++(23) 4.4.2 工资程序成长记:用数组处理批量数据,用循环结构执行重复动作

    4.4  从语句到程序 了解了各种表达式和语句之后,就相当于掌握了写作文要用到的词语和句子,但是,仅有词语和句子是无法构成一篇有意义的文章的.要完成一篇文章,先需要确定这篇文章的结构,是先分述再总述, ...

  3. spring 中单例 bean 初始化之后和销毁之前执行指定动作 postconstruct 和 preDestroy

    1 生命周期方法, 在指定bean 创建完成后执行初始化动作或销毁之前做一些善后动作.有 3 种方法 1)实现接口 InitializingBean 然后实现 afterPropertiesSet 方 ...

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

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

  5. 当一个控件属性不存在的时候,IDE会出错在这里(说明是TWinControl.ReadState在读属性,并执行相关动作)

    procedure TWinControl.ReadState(Reader: TReader); begin DisableAlign; try inherited ReadState(Reader ...

  6. 基于Lua语言的触动精灵脚本开发

    工具下载 官网地址 连接模拟器 studio连接 首先要先下载ADB模拟器连接IDE,注意,这里一定要用官网提供的ADB,安卓开发的adb不行!!! 下载好之后,打开studio,输入Access K ...

  7. 关于lua垃圾回收是否会执行__gc函数呢?

    直接上代码 -- test.lua do local x = setmetatable({},{ __gc = function() print("works") end }) e ...

  8. lua技巧分享之保护执行

    我们在c#/c++里为了防止调用出现异常的时候程序可以正常的执行,经常使用try{}catch{}的结构, 那么,语言简单的lua是怎么做到的呢?答案就在pcall 先简单的介绍一下这个函数: --尝 ...

  9. cocos2d-x 父节点和子节点执行不同动作

    Test6::Test6() { CCSprite* sp1 = CCSprite::create(s_pPathSister1); CCSprite* sp11 = CCSprite::create ...

随机推荐

  1. 打开CSDN论坛出现403

    打开CSDN论坛出现403 在查找资料的过程中,出现"403-禁止访问"

  2. org.apache.jasper.JasperException

    1.错误描述 2014-7-13 17:20:50 org.apache.catalina.core.StandardWrapperValve invoke 严重: Servlet.service() ...

  3. Openstack_O版(otaka)部署_Horizon部署

    控制节点 1. 安装软件包 yum install openstack-dashboard -y 2. 修改配置文件 vim /etc/openstack-dashboard/local_settin ...

  4. haproxy的丰富特性简介

    */ .hljs { display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; } .hl ...

  5. 《Master Bitcoin》学习笔记01

    前言 关于比特币入门,其运行原理(理解性描述),什么是挖矿,还有一些学习资料的整理,详见此博客链接 第一章讲比特币的历史,算是导入,上面的博客链接有概括. 第二章举了使用比特币交易的例子,其中介绍了一 ...

  6. POJ - 2828

    题意 输入队伍长度n 接下来n行,a,b 表示b插在队伍的a处 求队伍最后的情况 题解 刚开始并不知道要用线段树,经大佬点悟,发现最后插入的位置就是对应的a.所以可以从后往前依次插入,每次的位置pos ...

  7. CANopen--基于DS402协议的伺服电机原点回零模式实现

    硬件:Copley 驱动器ACJ-055-18+Maxon DCX-35L电机 1.原点回零方式简介: 有几种原点回零方法,每种方法建立:原点参考(限位或原点开关转换或编码器索引脉冲)运动方向以及索引 ...

  8. Net 面试随想

    佳节已去,至今已半月有余,近来园中唱衰net的声音幽幽而起,net不成熟的大环境一直被作为诟病,net core的跨平台去年抄的火热,是否为net 崛起的最后一根稻草,结合我面试的情况,作为小白,嘟囔 ...

  9. 记录一次网站漏洞修复过程(二):第一轮处理(IIS目录枚举、应用程序错误)

    解决IIS目录枚举 当前的IIS版本为7.5 [IIS]   => [请求筛选] => [URL]中添加 [拒绝序列] 符号  ~ 应用程序错误 在Global.asax 中添加异常处理代 ...

  10. Rotational Region CNN

    R2CNN 论文Rotational Region CNN for Orientation Robust Scene Text Detection与RRPN(Arbitrary-Oriented Sc ...