zoukankan      html  css  js  c++  java
  • ‎Cocos2d-x 学习笔记(11.8) DelayTime ReverseTime TargetedAction ActionFloat Blink TintTo TintBy ResizeTo ResizeBy

    1. DelayTime

    通过create方法create(float d)设置时长,update方法没有任何操作。可以用于动作之间的延迟。

    2. ReverseTime

    create方法create(FiniteTimeAction *action)设置绑定的action。upadte方法中执行_other->update(1 - time),进度为正常倒放的进度,实现倒放的效果。

    3. TargetedAction

    通过create(Node* target, FiniteTimeAction* action)方法将action与node绑定。在runAction时,实际上是对绑定的node执行绑定的action。

    4. ActionFloat

    从from到to按进度取的值作为value,传给回调函数。

    create(float duration, float from, float to, ActionFloatCallback callback)把参数赋给变量。

    startWithTarget中,_delta是to-from。

    update方法:

    float value = _to - _delta * (1 - t); // from + t * delta
    
        if (_callback)
        {
            // report back value to caller
            _callback(value);
        }

    5. TintTo TintBy

    create方法传入rgb三个值,To和By是在startWithTarget和update有相对和绝对的区别。

    6. ResizeTo ResizeBy

    create传入Size,To和By是在startWithTarget和update有相对和绝对的区别。

    7. Blink

    闪烁。create(float duration, int blinks)设置间隔和闪烁次数。

    startWithTarget,获取可见性:

    _originalState = target->isVisible();

    update:

    if (_target && ! isDone())
        {
            float slice = 1.0f / _times; // 一次闪烁的占比
            float m = fmodf(time, slice);  //本次闪烁完成进度
            _target->setVisible(m > slice / 2 ? true : false); //本次进度到了一半就可见,没到一半就隐藏,实现了闪烁效果
        }
  • 相关阅读:
    Oracle中TO_DATE格式
    实现带查询功能的Combox控件
    Combox和DropDownList控件的区别
    C# 获取字符串中的数字
    C# try catch finally 执行
    树形DP codevs 1814 最长链
    codevs 2822 爱在心中
    匈牙利算法 cojs.tk 搭配飞行员
    匈牙利算法 codevs 2776 寻找代表元
    2016-6-19 动态规划,贪心算法练习
  • 原文地址:https://www.cnblogs.com/deepcho/p/cocos2dx-all-actioninterval.html
Copyright © 2011-2022 走看看