cocos2d-lua 触摸屏幕,动作变速

printDebug("===============start debug===================")
local direction = cc.Director:getInstance() 
local defSch = direction:getScheduler()

local sched1 = cc.Scheduler:new()
sched1:retain()
defSch:scheduleScriptFunc(handler(sched1, sched1.update), 0, false)

local actionManager1 = cc.ActionManager:new()
actionManager1:retain()
-- sched1->scheduleUpdateForTarget(actionManager1, 0, false)
local updateCbkHandle = sched1:scheduleScriptFunc(handler(actionManager1, actionManager1.update), 0, false)

local effLayer = viewMgr:getEffectLayer()
local size = effLayer:getContentSize()
local widget = ccui.Layout:create()

widget:setBackGroundColorType(1)
widget:setBackGroundColor(cc.c3b(255, 0, 0))
widget:setContentSize(100, 100)
widget:align(cc.p(0.5, 0.5), 0, size.height*0.5)
effLayer:addChild(widget, 999)

widget:setActionManager(actionManager1)


local layer2 = cc.LayerColor:create(cc.c3b(0, 255, 0), 100, 100)
layer2:setPosition(cc.p(0,  size.height*0.5-300))
effLayer:addChild(layer2)
layer2:setActionManager(actionManager1)
layer2:runAction(cc.MoveBy:create(5, cc.p(500, 0)))

widget:runAction(cc.MoveBy:create(5, cc.p(500, 0)))


local layerTouch = cc.LayerColor:create(cc.c3b(0, 255, 0), 100, 100)
layerTouch:setPosition(cc.p(0, 0))
effLayer:addChild(layerTouch)
layerTouch:setTouchEnabled(true)
layerTouch:onTouch(function(event)
    if event.name ~= "began" then return end
    sched1:setTimeScale(30)
end)


--回收定时器
if sched1 ~= nil then
    sched1:release()
    sched1 = nil
end

if actionManager1 ~= nil then
    actionManager1:release()
    actionManager1 = nil
end

if updateCbkHandle ~= nil then
    local direction = cc.Director:getInstance():getScheduler()
    direction:unscheduleScriptEntry(updateCbkHandle)
    updateCbkHandle = nil
end
printDebug("===============ended debug===================")

 

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值