cocos代码研究(5)Action学习笔记

理论部分

Action类也是cocos核心基础类之一,在游戏中起着非常重要的作用,继承自Ref,被 FiniteTimeAction(有限时间动作), Follow , 以及 Speed 继承。

有限时间动作可以划分成:

即时动作(ActionInstant),即时动作只能够立刻完成的动作,这类动作是在下一帧立刻完成的动作,如设定位置、设定缩放等。把它们包装成动作后,可以与其他动作类组合为复杂动作。

持续动作(ActionInterval),在规定的时间内,执行完成对象属性,位置,特效,序列动作串动作。

代码部分

virtual Action * clone () const
返回一个克隆的动作。

实例:

    auto jump1 = JumpBy::create(2,Vec2::ZERO,100,3);
    auto jump2 = jump1->clone();

virtual Action * reverse () const
返回一个新的动作,执行与原动作完全相反的动作。

实例:

    auto actionBy = MoveBy::create(2, Vec3(80, 80, -100));
    auto actionByBack = actionBy->reverse();

virtual bool isDone () const
如果动作已经完成就返回true。

virtual void startWithTarget (Node *target)
在动作开始之前调用,它还将设置target属性为目标节点。

Node * getTarget () const
返回当前目标节点。

void setTarget (Node *target)
修改目标节点属性的设置函数。

int getTag () const
返回一个用于识别动作的标签。

void setTag (int tag)
更改标签,用于识别动作。

unsigned int getFlags () const
获取动作设置的标识

void setFlags (unsigned int flags)
给动作设置一个标识

原文地址:https://www.cnblogs.com/damowang/p/4855885.html