学习了向量相关,相对而言非常简单,包括了向量的加减乘以及MoveBy和MoveTo之间的区别,直接上代码
package com.example.test;
import org.cocos2d.actions.instant.CCFlipX;
import org.cocos2d.actions.instant.CCHide;
import org.cocos2d.actions.interval.CCJumpBy;
import org.cocos2d.actions.interval.CCJumpTo;
import org.cocos2d.actions.interval.CCMoveBy;
import org.cocos2d.actions.interval.CCMoveTo;
import org.cocos2d.actions.interval.CCRotateTo;
import org.cocos2d.actions.interval.CCScaleTo;
import org.cocos2d.layers.CCLayer;
import org.cocos2d.nodes.CCSprite;
import org.cocos2d.types.CGPoint;
//生成2个精灵对象
public class GameLayer extends CCLayer{
CCSprite aSprite;
CCSprite bSprite;
public GameLayer(){
//赋予2个对象图像
aSprite=CCSprite.sprite("player1.png");
bSprite=CCSprite.sprite("player2.gif");
//生成2个原始坐标并赋予2个精灵
CGPoint aPoint=CGPoint.ccp(100, 100);
CGPoint bPoint=CGPoint.ccp(400, 400);
aSprite.setPosition(aPoint);
bSprite.setPosition(bPoint);
// //增加2个对象布景
this.addChild(aSprite);
this.addChild(bSprite);
//
// //运行向量加减乘
CGPoint x= CGPoint.ccp(200, 200);
CGPoint temp1=CGPoint.ccpAdd(aPoint, x);
CGPoint temp2=CGPoint.ccpSub(bPoint, x);
CGPoint temp3=CGPoint.ccpMult(temp1, 2);
//
// //直接在action中使用,区别于MoveTo而为MoveBy
CCMoveBy aAction=CCMoveBy.action(3, temp3);
CCJumpBy bAction=CCJumpBy.action(3, temp1, 800, 2);
aSprite.runAction(aAction);
bSprite.runAction(bAction);
}
}