• cocos2d-x 之 CCProgressTimer


    1. --绕圆心转动的进度动画   
    2. local function SpriteProgressToRadial()  
    3.     local leftProgress = CCProgressTimer:create(CCSprite:create("circle.png"))  
    4.     leftProgress:setType(kCCProgressTimerTypeRadial) --扇形顺时针形式   
    5.     leftProgress:setPosition(ccp(size.width*0.3,size.height*0.5))  
    6.     layer:addChild(leftProgress)  
    7.       
    8.     local progress1 = CCProgressTo:create(10,100)  
    9.     leftProgress:runAction(CCRepeatForever:create(progress1))  
    10.       
    11.       
    12.     local rightProgress = CCProgressTimer:create(CCSprite:create("circle.png"))  
    13.     rightProgress:setType(kCCProgressTimerTypeRadial)  
    14.     rightProgress:setReverseProgress(true) --扇形逆时针形式   
    15.     rightProgress:setPosition(ccp(size.width*0.7,size.height*0.5))  
    16.     layer:addChild(rightProgress)  
    17.       
    18.     local progress2 = CCProgressTo:create(10,100)  
    19.     rightProgress:runAction(CCRepeatForever:create(progress2))  
    20. end  


     
    1. --条形  
    2. local function SpriteProgressToHorizontal()  
    3.     local to1 = CCProgressTo:create(2,100)  
    4.     local to2 = CCProgressTo:create(2,100)  
    5.       
    6.     local left = CCProgressTimer:create(CCSprite:create("man.png"))  
    7.     left:setType(kCCProgressTimerTypeBar) --条形  用来设定进度条的显示类型  
    8.     left:setMidpoint(ccp(0,0)) --x为0代表进度条从左边开始      setMidpoint:用来设定进度条横向前进的方向从左向右或是从右向左  
    9.     left:setBarChangeRate(ccp(1,0)) --y为0代表进度条垂直方向无增长   setBarChangeRate:用来设置进度条增长按横向或是按纵向增长  
    10.     left:setPosition(ccp(size.width*0.3,size.height*0.5))  
    11.     layer:addChild(left)  
    12.     left:runAction(CCRepeatForever:create(to1))  
    13.       
    14.       
    15.     local right = CCProgressTimer:create(CCSprite:create("blackgirl.png"))  
    16.     right:setType(kCCProgressTimerTypeBar)  
    17.     right:setMidpoint(ccp(1,0))  
    18.     right:setBarChangeRate(ccp(1,0))  
    19.     right:setPosition(ccp(size.width*0.7,size.height*0.5))  
    20.     layer:addChild(right)  
    21.     right:runAction(CCRepeatForever:create(to2))  
    22.       
    23.       
    24.     --创建一个见血动画 两图片资源:一个为雪条 一个为雪条底 ,雪条底在雪条的上面,通过逐渐显示出雪条底以达到血减少的效果  
    25.     local blood = CCSprite:create("hello_hp_1.png")  
    26.     blood:setPosition(ccp(size.width*0.5,size.height*0.3))  
    27.     layer:addChild(blood)  
    28.       
    29.     local bloodBack = CCProgressTimer:create(CCSprite:create("hello_hp_0.png"))  
    30.     bloodBack:setType(kCCProgressTimerTypeBar)  
    31.     bloodBack:setMidpoint(ccp(1,0))  
    32.     bloodBack:setBarChangeRate(ccp(1,0))  
    33.     bloodBack:setPosition(ccp(size.width*0.5,size.height*0.3))  
    34.     layer:addChild(bloodBack)  
    35.     local to3 = CCProgressTo:create(2,100)  
    36.     bloodBack:runAction(CCRepeatForever:create(to3))  
    37. end  

     
    1. --垂直  
    2. local function SpriteProgressToVertical()  
    3.     local to1 = CCProgressTo:create(2,100)  
    4.     local to2 = CCProgressTo:create(2,100)  
    5.       
    6.     local left = CCProgressTimer:create(CCSprite:create("man.png"))  
    7.     left:setType(kCCProgressTimerTypeBar)  
    8.     left:setMidpoint(ccp(0,0)) --x为0从左边开始 为1右边开始,y为0从下面开始 为1从上面开始  
    9.     left:setBarChangeRate(ccp(0,1)) --x为1水平变化   y为1垂直变化  
    10.     left:setPosition(ccp(size.width*0.3,size.height*0.5))  
    11.     layer:addChild(left)  
    12.     left:runAction(CCRepeatForever:create(to1))  
    13.       
    14.       
    15.     local right = CCProgressTimer:create(CCSprite:create("blackgirl.png"))  
    16.     right:setType(kCCProgressTimerTypeBar)  
    17.     right:setMidpoint(ccp(0,1)) --(0,0)左下角  (0,1)左上角  (1,0)右下角  (1,1)右上角  
    18.     right:setBarChangeRate(ccp(0,1))  
    19.     right:setPosition(ccp(size.width*0.7,size.height*0.5))  
    20.     layer:addChild(right)  
    21.     right:runAction(CCRepeatForever:create(to2))  
    22. end  

    [plain] view plaincopy
     
    1. local function SpriteProgressToRadialMidpointChanged()  
    2.     local left = CCProgressTimer:create(CCSprite:create("blocks.png"))  
    3.     left:setType(kCCProgressTimerTypeRadial)  
    4.     left:setMidpoint(ccp(0.25,0.75))  
    5.     left:setPosition(ccp(size.width*0.3,size.height*0.5))  
    6.     layer:addChild(left)  
    7.     left:runAction(CCRepeatForever:create(CCProgressTo:create(2,100)))  
    8.       
    9.       
    10.     local right = CCProgressTimer:create(CCSprite:create("blocks.png"))  
    11.     right:setType(kCCProgressTimerTypeRadial)  
    12.     right:setMidpoint(ccp(0.75,0.25))  
    13.     right:setPosition(ccp(size.width*0.7,size.height*0.5))  
    14.     layer:addChild(right)  
    15.     right:runAction(CCRepeatForever:create(CCProgressTo:create(2,100)))      
    16. end  


    [plain] view plaincopy
     
      1. local function SpriteProgressVarious()  
      2.     local left = CCProgressTimer:create(CCSprite:create("blackgirl.png"))  
      3.     left:setType(kCCProgressTimerTypeBar)  
      4.     left:setMidpoint(ccp(0.5,0.5))  
      5.     left:setBarChangeRate(ccp(1,0))  
      6.     left:setPosition(ccp(size.width*0.3,size.height*0.5))  
      7.     layer:addChild(left)  
      8.     left:runAction(CCRepeatForever:create(CCProgressTo:create(2,100)))  
      9.       
      10.     local middle = CCProgressTimer:create(CCSprite:create("whitegirl.png"))  
      11.     middle:setType(kCCProgressTimerTypeBar)  
      12.     middle:setMidpoint(ccp(0.5,0.5))  
      13.     middle:setBarChangeRate(ccp(1,1))  
      14.     middle:setPosition(ccp(size.width*0.5,size.height*0.5))  
      15.     layer:addChild(middle)  
      16.     middle:runAction(CCRepeatForever:create(CCProgressTo:create(2,100)))  
      17.       
      18.     local right = CCProgressTimer:create(CCSprite:create("man.png"))  
      19.     right:setType(kCCProgressTimerTypeBar)  
      20.     right:setMidpoint(ccp(0.5,0.5))  
      21.     right:setBarChangeRate(ccp(0,1))  
      22.     right:setPosition(ccp(size.width*0.7,size.height*0.5))  
      23.     layer:addChild(right)  
      24.     right:runAction(CCRepeatForever:create(CCProgressTo:create(2,100)))  
      25. end  
  • 相关阅读:
    Ubuntu 17 安装sublime
    ubuntu17 设置python3为默认及一些库的安装
    Java中内存分析(一)
    我的学习JavaEE路线
    我爱学习……
    HDU 4602
    K-special Tables
    Gym 100712A - Who Is The Winner
    UVA 1583
    水题 UVA 1586
  • 原文地址:https://www.cnblogs.com/DswCnblog/p/4129274.html
Copyright © 2020-2023  润新知