cocos 基础动作加上简单特效

--使用文理缓存创建精灵
    cc.Director:getInstance():getTextureCache():addImage("WechatIMG3.png")
localsp = cc.Sprite:createWithTexture(cc.Director:getInstance():getTextureCache():getTextureForKey("WechatIMG3.png"))
    --self:addChild(sp)
    sp:setPosition(display.width/4, display.cy)
    --所有的by动作都是目前的基础上加上要变化的值  RepeatForever里面的动作没有to动作的
   --cc.Sequence 序列动作 按照动作的先后顺序执行 参数是动作 
   --cc.Spawn 组合动作 同时执行多个动作 参数是动作
    --cc.RepeatForever 
    --作用:对目标动作进行永久性的重复运动目标动作可以是cc.Sequence ,cc.Spawn 或者单一的动作 等   参数:目标动作
    --cc.Repeat
    --作用:对目标动作进行重复运动(目标动作可以是cc.Sequence ,cc.Spawn,或者单一的动作) 参数1:目标动作 参数2:重复次数




    -- cc.CallFunc作用:创建一个回调动作(调用不带参数的回调方法);参数1:目标动作 参数2:目标回调函数
    -- cc.CallFuncN作用:创建一个回调动作(调用带1个参数的回调方法);参数1:目标动作 参数2:目标回调函数
    -- cc.CallFuncND作用:创建一个回调动作(调用带2个参数的回调方法);参数1:目标动作 参数2:目标回调函数


    --[[
        --MoveBy  创建一个移动的动作   参数1:移动到目标坐标所需的时间 参数2:在当前坐标的基础上加上多少  支持reverse 可以获取其反向动作
        local MoveBy = cc.MoveBy:create(1,cc.p(100,100))
        --MoveTo  创建一个移动的动作   参数1:移动到目标坐标所需的时间 参数2:目标坐标  
        local MoveTo = cc.MoveTo:create(1,cc.p(display.width/2, display.cy))
        
        sp:runAction(cc.Sequence:create(MoveBy,MoveBy:reverse()))
    ]]


    --[[
        --ScaleBy 创建一个缩放的动作  参数1:达到缩放大小所需的时间 参数2当前基础上加上的比例 支持reverse 可以获取其反向动作
        local  ScaleBy= cc.ScaleBy:create(2, 2);
        sp:runAction(cc.Sequence:create(ScaleBy,ScaleBy:reverse()))
        --ScaleTo 创建一个缩放的动作  参数1:达到缩放大小所需的时间  参数2缩放到的比例 
        local  ScaleTo= cc.ScaleTo:create(2, 2);
    ]]


    --[[
        --RotateBy 创建一个旋转的动作  参数1:达到转转角度所需的时间 参数2当前基础上加上的角度 支持reverse 可以获取其反向动作
        local  RotateBy= cc.RotateBy:create(2, 30);
        sp:runAction(cc.Sequence:create(RotateBy,RotateBy:reverse()))
        --RotateTo 创建一个缩放的动作  参数1:达到转转角度所需的时间  参数2旋转到的角度
        local  RotateTo= cc.RotateTo:create(0.2, 30); 
    ]]


    --[[
      --JumpBy 创建一个跳跃的动作  参数1:达到高度所需的时间 参数2 跳跃的高度  参数3 每次跳的高度  参数4 的跳跃的次数     支持reverse 可以获取其反向动作
        local  JumpBy= cc.JumpBy:create(2, cc.p(display.width/4,300),100,1);
       -- sp:runAction(cc.Sequence:create(JumpBy,JumpBy:reverse()))
       --JumpTo 创建一个缩放的动作 参数1:达到高度所需的时间 参数2 跳跃的高度  参数3 每次跳的高度  参数4 的跳跃的次数
        local  JumpTo= cc.JumpTo:create(2, cc.p(display.width/4,300),100,1); 
    ]] 


    --[[  
      --SkewBy 创建一个倾斜的动作  倾斜到特定角度所需的时间 参数2 x轴的倾斜角度  参数3 y轴的倾斜角度  支持reverse 可以获取其反向动作
        local  SkewBy= cc.SkewBy:create(0.5, 30,0);
       --SkewTo 创建一个缩放的动作 倾斜到特定角度所需的时间 参数2 x轴的倾斜角度  参数3 y轴的倾斜角度  
        local  SkewTo= cc.SkewTo:create(0.5, 30,30); 
        sp:runAction(cc.RepeatForever:create(SkewBy))
    ]]


    --[[
        --cc.FadeIn 创建一个渐变出现的动作 参数时间 注意fadein 和 out 是通过修改图片的透明度 所以使用 fadein 需要先将图片的setOpacity 设置为0
        local FadeIn = cc.FadeIn:create(1)
        sp:setOpacity(0)
        --cc.FadeOut 创建一个渐变消失的动作 参数时间
        local FadeOut = cc.FadeOut:create(1)
        sp:runAction(FadeIn)
     ]]
     --[[
        --cc.TintBy 创建一个色彩变化的出现动作   第一参数为渐变时间,第二个参数为RGB中的R值,第三个参数为RGB中的G值,第四个参数为RGB中的B值
        local TintBy = cc.TintBy:create(2,200,174,255)
        --cc.TintTo 创建一个色彩变化的出现动作   第一参数为渐变时间,第二个参数为RGB中的R值,第三个参数为RGB中的G值,第四个参数为RGB中的B值
        local TintTo = cc.TintTo:create(2,200,174,255)
        sp:runAction(TintBy)
     ]]


    --[[
        --cc.Blink  闪烁动作  参数1 是闪烁的完成的时间 参数2 是闪烁的次数
        local Blink = cc.Blink:create(2,10)
        sp:runAction(Blink)
     ]]


     --[[


         --延时动作 cc.DelayTime  参数延时的时间  常常与序列动作一起使用 
         local Blink = cc.Blink:create(2,10)
         local DelayTime = cc.DelayTime:create(5)
         local Sequence = cc.Sequence:create(DelayTime,Blink)
         sp:runAction(Sequence)
     ]]
     --[[
        ---cc.Speed 让目标动作运行速度加倍 参数1:目标动作  参数2:倍速
        local  MoveTo = cc.MoveTo:create(100, cc.p(300,300));
        local  Speed=cc.Speed:create(MoveTo, 100)
        sp:runAction(Speed)
    ]]
    --[[ 
        -- 贝塞尔曲线 cc.BezierTo


        local bezier = {
            cc.p(400,300), cc.p(800,500),cc.p(300,300) --第一个点是Bezier control point 1,  第二个点是control point 2, 第3个点是结束点 
        }
        local BezierTo = cc.BezierTo:create(3,bezier)
        local BezierBy = cc.BezierBy:create(3,bezier)
        sp:runAction(BezierTo)
    ]]


    --[[
        --cc.CardinalSplineBy 创建一个样条曲线轨迹的动作 应用:为精灵创建运动轨迹  参数1:完成轨迹所需的时间 参数2:控制点的坐标数组 参数3 拟合度  其值= 0 路径最柔和
        --cc.CardinalSplineTo c++并没有导出给lua使用,,想要使用模仿By 做lua绑定
        --cc.CatmullRomBy 创建一个样条插值轨迹 用法类似 只是不要拉力系数
        local array = {
            cc.p(0,0), cc.p(100,0), cc.p(100,110), cc.p(80,22), cc.p(111,90), cc.p(500,77),cc.p(0,0)
            }
        local CardinalSplineBy = cc.CardinalSplineBy:create(3,array,0)
        local  CatmullRomTom = cc.CatmullRomBy:create(3, array)
        sp:runAction(CatmullRomTom)
    ]]
    --cc.OrbitCamera 作用:创建一个球面坐标轨迹进行旋转的动作 参数1 : 旋转轨迹的时间参数2 :起始半径参数3:半径差参数4:起始z角参数5:旋转z角的差参数6:起始x角 参数7:旋转x角的差
     --目前理解 1/执行时间 调节时间,影响快慢2/起始半径 似乎没效果 3/半径差 4/起始z角度 影响x水平方向的旋转起始角度 5 /z跨度  影响x水平方向上的旋转角度值 6/x起始角度 在参数五不为0的情况下才有效果 7/x跨度
     --应用:翻牌动作
     ---目前还不是很明白
     local OrbitCamera = cc.OrbitCamera:create(2,10,0,0, 180, 0, 90)
     --sp:runAction(OrbitCamera)


    -------------------------华丽分割线---------------反弹效果-----------------------------
    --缓冲动作
    
    local move = cc.MoveTo:create(3, cc.p(300, 300))
    --cc.EaseBounceIn 让目标动作缓慢开始
    local EaseBounceIn = cc.EaseBounceIn:create(move)
    -- cc.EaseBounceOut 让目标动作赋予反弹效果,且以目标动作结束位开始反弹


    local EaseBounceOut = cc.EaseBounceOut:create(move);


     -- cc.EaseBounceOut 让目标动作赋予反弹效果,且以目标动作开始 结束位 开始反弹
    local EaseBounceInOut = cc.EaseBounceInOut:create(move);


    -------------------------华丽分割线---------------回力效果-----------------------------


    -- cc.EaseBackIn 让目标动作赋予回力 , 且以目标动作起点位置作为回力点
    local EaseBackIn = cc.EaseBackIn:create(move);


    -- cc.EaseBackOut 让目标动作赋予回力 , 且以目标动作结束位置作为回力点
    local EaseBackOut = cc.EaseBackOut:create(move);


    -- cc.EaseBackOut 让目标动作赋予回力 , 且以目标动作开始和结束位置作为回力点
    local EaseBackInOut = cc.EaseBackInOut:create(move);




    -------------------------华丽分割线---------------弹性效果-----------------------------


    -- cc.EaseElasticIn 让目标动作赋予弹性 ,且以目标动作起点位子赋予弹性
    local EaseElasticIn = cc.EaseElasticIn:create(move);


    -- cc.EaseElasticOut 让目标动作赋予弹性 ,且以目标动作结束位子赋予弹性
    local EaseElasticOut = cc.EaseElasticOut:create(move);


     -- cc.EaseElasticInOut 让目标动作赋予弹性 ,且以目标动作开始和 结束位子赋予弹性
    local EaseElasticInOut = cc.EaseElasticInOut:create(move);




    -------------------------华丽分割线---------------缓慢效果-----------------------------


    -- cc.EaseExponentialIn 让目标动作缓慢开始 
    local EaseExponentialIn = cc.EaseExponentialIn:create(move);


    -- cc.EaseExponentialOut 让目标动作缓慢中止 
    local EaseExponentialOut = cc.EaseExponentialOut:create(move);


     -- cc.EaseElasticInOut 让目标动作缓慢开始和中止
    local EaseExponentialInOut = cc.EaseExponentialInOut:create(move);




    -------------------------华丽分割线---------------目标动作设置速率-----------------------------


    --cc.EaseRateAction   作用 : 让目标动作设置速率
    --local   EaseRateAction = cc.EaseRateAction:create(move, 3);


     --cc.EaseSineIn   作用 : 动作由慢到快
    local   EaseSineIn = cc.EaseSineIn:create(move);


    --cc.EaseSineOut   作用 : 动作由快到慢
    local   EaseSineOut = cc.EaseSineOut:create(move);


    --cc.EaseSineInOut   作用 : 动作由慢到快再快到慢
    local   EaseSineInOut = cc.EaseSineInOut:create(move);


    -------------------------华丽分割线---------------常见的特效动作3d效果-----------------------------
    ----所有的3d 都只能由 NodeGrid 执行
    local nodegird = cc.NodeGrid:create()
    self:addChild(nodegird)
    nodegird:addChild(sp)
    
    --cc.Shaky3D 作用:创建一个3d晃动的特效 参数1:晃动的范围参数 2 网格大小 3:特效持续的时间  参数4 是否有z轴晃动参数
    local Shaky3D = cc.Shaky3D:create(15,cc.size(15,10),4,false)


    --cc.ShakyTiles3D 作用:创建一个3d瓷砖晃动的特效 参数1:晃动的范围参数 2 网格大小 3:特效持续的时间  参数4 是否有z轴晃动参数
    local ShakyTiles3D = cc.ShakyTiles3D:create(15,cc.size(15,10),4,false)


    --cc.Waves 作用:创建一个波动特效 参数1:波动的速率  2 网格大小   3 时间 4振幅    5:水平波动  参数6 垂直波动
    local Waves = cc.Waves:create(20, cc.size(10, 10), 2, 20, true, false)
    
    --cc.Waves3D 作用:创建一个波动特效 参数1:波动的速率  2 网格大小   3 时间 4振幅  
    local Waves3D = cc.Waves3D:create(5, cc.size(10, 10), 10, 20)


    --cc.WavesTiles3D 作用:3D瓷砖波动特效  参数1:波动的速率  2 网格大小   3 时间 4振幅  
    local WavesTiles3D = cc.WavesTiles3D:create(5, cc.size(10, 10), 10, 20)
    
    --cc.FlipX3D   作用:x轴3D反转特效 特效持续的时间  (反转出屏幕了待研究)
    local  FlipX3D = cc.FlipX3D:create(5)


    --cc.FlipY3D   作用:x轴3D反转特效 特效持续的时间
    local  FlipY3D = cc.FlipY3D:create(5)


    --cc.Ripple3D   作用:水波纹特效 参数1:持续时间(时间过后不会回到原来的样子)  参数2:网格大小 参数3:凸镜中心点 参数4: 半径 参数5 波动的速率  参数6 波动的速率 
    local  Ripple3D = cc.Ripple3D:create(20, cc.size(10, 10), cc.p(240, 160), 1, 10, 10);
    
    --cc.Liquid   作用:液体特效 参数1:持续时间(时间过后不会回到原来的样子)  参数2:整个屏幕被分成几行几列 参数3:波动的速率 参数4: 振幅  
    local Liquid = cc.Liquid:create(5, cc.size(10, 10), 1, 5)
   
    --cc.Twirl 作用: 创建一个扭曲的特效 参数1:持续时间(时间过后不会回到原来的样子)  参数2:整个屏幕被分成几行几列 参数3:扭曲中心位置 参数4 扭曲的数量 参数5: 振幅  
    local Twirl = cc.Twirl:create(10, cc.size(10, 10), cc.p(240, 160), 2, 2.5)


    -- cc.ShatteredTiles3D 作用: 破碎的3D瓷砖特效 参数1:持续时间(时间过后不会回到原来的样子)  参数2:整个屏幕被分成几行几列 参数3 晃动的范围  参数4 z轴是否晃动
    local ShatteredTiles3D = cc.ShatteredTiles3D:create(10, cc.size(10, 10), 50, false)




    -- cc.ShuffleTiles 作用: 瓷砖洗牌特效  参数1:持续时间 参数2:整个屏幕被分成几行几列 参数3晃动的范围  参数4 随即速度基数(即会用此值作为底数来随机产生值)
    local ShuffleTiles = cc.ShuffleTiles:create(3, cc.size(10, 10), 10 )


    -- FadeOutTRTiles :淡出效果, 从左下角到右上角 FadeOutBLTiles :淡出效果, 从右上角到左下角      FadeOutUpTiles :折叠效果, 从下到上  FadeOutDownTiles :折叠效果 从上到下  参数1:持续时间(时间过后不会回到原来的样子)  参数2:整个屏幕被分成几行几列
    local FadeOutTRTiles = cc.FadeOutTRTiles:create(5, cc.size(50, 50))
    local FadeOutBLTiles = cc.FadeOutBLTiles:create(5, cc.size(50, 50))


    local FadeOutUpTiles = cc.FadeOutUpTiles:create(5, cc.size(50, 50))
    local FadeOutDownTiles =cc.FadeOutDownTiles:create(5, cc.size(50, 50))


     -- cc.TurnOffTiles 作用: 方块消失特效  参数1:持续时间  参数2:整个屏幕被分成几行几列 
    local TurnOffTiles = cc.TurnOffTiles:create(1, cc.size(50, 50))


    --分多行消失特效 cc.SplitCols  --分多列消失特效  cc.SplitRows  参数1 时间  参数2 分几行(列)消失
    local SplitCols = cc.SplitCols:create(5,100)
    local SplitRows = cc.SplitRows:create(5,100)


    -- cc.PageTurn3D   3D翻页特效3D翻页特效,从右下角往左上角翻  参数1 时间 参数2 网格大小
    local PageTurn3D = cc.PageTurn3D:create(5,cc.size(10,10))
    nodegird:runAction(PageTurn3D)
   

猜你喜欢

转载自blog.csdn.net/xuefujin/article/details/80924793