第一次写博文,先介绍下本人情况。11年6月毕业,工作半年,熟悉java,C++基础停留在大学书本上(大家懂的)。
最近工作刚接触cocos2d-android,所以博文就当自己工作的总结。cocos2d-android与cocos2d-x结构、类、方法差不多。所以对于不熟悉C++的人(比如楼主)了解cocos2d-android也不错。当然为了跨平台,熟悉C++是必须的(努力中)。
cocos2d-android中动作分为两类,CCInstantAction(瞬时动作)与CCIntervalAction(延时动作)。
CCintervalAction有CCMoveTo、CCMoveBy、CCJumpTo等。
基本用法:
CCMoveTo moveto=CCMoveTo.action(t, pos);
CCMoveTo为移动到。t为动作延续时间,pos为目标点。
CCMoveTo与CCMoveBy区别:
CCmoveTo为移动到,是绝对位置。
CCMoveBy是相对精灵本身移动多少距离。
CCInstanAction有CCHide、CCShow、CCCalllFunc等。
基本用法:
CCHide hide=CCHide.action();
需要注意的是CCCallFunc.
常用用法(个人用的较多):
CCsequence moveAction=CCSequence.actions(
CCMoveTo.action(0.1f,CGPoint.ccp(100, 100)),
CCCallFunc.action(this, "moveDone"));
CCSequence是顺序动作(相对和还有并列动作即:CCSpawn)。
由于是顺序执行,所以在move动作完成后会执行CCCallFunc动作。
下面是CCCallFunc构造:
CCCallFunc func=CCCallFunc.action(target, selector);
target,是object对象,selector是String类型。
该action的动作是调用target对象中的名为selector的方法。
当然有人会说,那我需要传值怎么办,我move完或其他动作完,我需要传值给selector方法。
有个CCCallFuncND.action(t, s, d);
d为object,所以理论上可以传值或对象都可以。
下图是cocos2d-x中的继承关系。
楼主新手,有错误欢迎指正,= =。