cocos2d-x 3.1.1 学习笔记[7]Action progress 不仅仅是可以做cd的动画



    auto s = Director::getInstance()->getWinSize();
    auto sp = Sprite::create("card_bg_big_2.jpg");
    sp->setScale(0.4);
    /*
     * ProgressTo::create(float duration, float percent)
     * durarion : 动画运行的时间
     * percent : 动画运行完成后所展现出精灵的百分比
     */
    auto pro = Sequence::createWithTwoActions(ProgressTo::create(2, 50), ProgressTo::create(0, 0));
    auto proSp = ProgressTimer::create(sp);
    /*
     * ProgressTimer::Type::RADIAL : 旋转 (中心点设置为(0.5, 0.5) 效果最佳)
     * ProgressTimer::Type::BAR : 平铺 (中心点设置为(0.5, 0.5)的话就是向四周扩散出去)
     */
    proSp->setType(ProgressTimer::Type::BAR);
    /*
     * MidPoint 选取的起始点
     * 左上(0,1) 右上(1,1) 左下(0,0) 右下(1,0)
     */
    proSp->setMidpoint(Vec2(0.5, 0.5));
    /* 
     * 每次变幻的大小
     * ChangeRate 
     * (0,0)不变
     * (0,1)竖向增长,可以是从上到下或者是从下到上,这个取决于midpoint的选取 
     * (1,0)横向增长,可以是左边到右边也可以是右边到左边。这个取决于midpoint的选取。
     * (1,1)从某个角到另外一个角,比如从左上到右下的话只要把midpoint设置为(0,1)就好了。
     */
    proSp->setBarChangeRate(Vec2(1, 1));
    proSp->setAnchorPoint(Vec2(0.5, 0.5));
    proSp->setPosition(Vec2(s.width / 2, s.height / 2));
    addChild(proSp);
    proSp->runAction(RepeatForever::create(pro));


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值