码迷,mamicode.com
首页 > 其他好文 > 详细

07--动作系统(一)

时间:2014-05-22 15:19:45      阅读:266      评论:0      收藏:0      [点我收藏+]

标签:style   blog   class   c   code   java   

动作在游戏中有举足轻重的作用,它让游戏中的元素活了起来,比如单击一个按钮使用一个特效让玩家明显的感觉到点了这个按钮;角色的移动,攻击等等都离不开动作。因此Cocos2DX也为我们提供了丰富强大的动作系统。

CCNode与动作基类

CCNode中定义了动作有关的函数,也就是说根源种子类以及子类都能够执行动作。

bubuko.com,布布扣
//执行一个动作,并返回该动作
    CCAction* runAction(CCAction* action);
    //移除所有动作
    void stopAllActions(void);
    //根据动作参数移除指定的动作
    void stopAction(CCAction* action);
    //根据标签移除动作
    void stopActionByTag(int tag);
   //根据标签获取动作
    CCAction* getActionByTag(int tag);
    //获取当前对象执行动作的总数
    unsigned int numberOfRunningActions(void);
bubuko.com,布布扣

          上面函数都有详细的注释就不再解释了,下面看看动作基类CCAction。

         bubuko.com,布布扣

        CCAction和CCNode一样都直接集成了CCObject,可见Cocos2DX将动作作为一个单独的系统来处理。从上图也可以看出动作主要根据时间来划分,当然还有两个比较特殊的动作类:跟随动作CCFollow和速度动作CCSpeed。按照时间属性来划分引擎将动作分为了即时动作CCActionInstant和持续动作CCActionInterval两大类。前面也学习到不少元素现在我们来看看动作系统的位置(书上的图能说明问题借用了bubuko.com,布布扣):

bubuko.com,布布扣

      即时动作:动作执行马上就能见到效果的动作

  • CCFlipX 与 CCFlipY 将精灵对象水平垂直翻转;
  • CCPlace :将精灵对象放置在指定的位置(注意该动作不会影响其他属性如精灵对象的显示状态);
  • CCHide与CCShow:控制精灵对象的显示还是隐藏的动作;
  • CCToggleVisibility:精灵对象显示与隐藏的开关动作,也就是原来的隐藏的执行该动作后就为显示,反之亦然;
  • CCReuseGrid与CCStopGrid:网格动作;
  • CCCallFunc:函数回调动作,这个和C#中的委托使用有点像是,它又有三个子类:CCCallFuncND、CCCallFuncN、CCCallFuncO,三者的不同就是参数不同,使用中再详细了解。

07--动作系统(一),布布扣,bubuko.com

07--动作系统(一)

标签:style   blog   class   c   code   java   

原文地址:http://www.cnblogs.com/BlueBeauty/p/3744763.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!