一、平移
//1.创建动作
CCMoveTo* moveTo=CCMoveTo::create (参数1{时间(单位s)},ccp(参数2{评议后的终点坐标}));
//2.执行动作
spm(精灵名)->runAction(moveTo);
二、旋转
1、CCRotateTo -----旋转到多少度
CCRotateTo* rotateTo = CCRotateTo::create(参数1{动作完成的时间},参数2{旋转的角度(顺时针为+,逆时针为-)});
spm(精灵名)->runAction(rotateTo);
spm(精灵名)->runAction(rotateTo);
2、CCRotateBy-----在原来角度的基础上旋转多少度
CCRotateBy* rotateBy = CCRotateBy::create( 参数1{动作完成的时间},参数2{旋转的角度(顺时针为+,逆时针为-)} );
spm->runAction(rotateBy);
CCRotateBy* rotateBy = CCRotateBy::create( 参数1{动作完成的时间},参数2{旋转的角度(顺时针为+,逆时针为-)} );
spm->runAction(rotateBy);
以上两种方法旋转中心都是在图片中心,,即以图片中心旋转。若要改变旋转中心,即不以图片中心为旋转中心,则需改变锚点,方法如下:spm->setAnchorPoint(ccp(0.5f,1.0f));{意思是,以图片上边界中心为锚点}
三、 循环动作
CCRepeat* repeat = CCRepeat::create(moveTo,3.0f);
spClouid0->runAction(repeat);
CCRepeat* repeat = CCRepeat::create(moveTo,3.0f);
spClouid0->runAction(repeat);
四、 序列动作
(-1无限循环)
CCSequence* seq = CCSequence::create(动作1{moveTo},动作2{CCMoveTo::create (0,ccp(480*0.6f/1.5, 854*0.6f/1.0))},.......动作n,NULL(不可省略));
spClouid0->runAction(CCRepeat::create(seq,-1));
CCSequence* seq = CCSequence::create(动作1{moveTo},动作2{CCMoveTo::create (0,ccp(480*0.6f/1.5, 854*0.6f/1.0))},.......动作n,NULL(不可省略));
spClouid0->runAction(CCRepeat::create(seq,-1));