cocos2d-js导弹跟踪算法(一边追着目标移动一边旋转角度)

跟踪导弹

function(targetPosition){
*// 让物体朝目标移动的方法


var speed = 5;

var targetPoint = targetPosition;

var thisPoint = cc.p(
this.
x,
this.
y);
*//求两点的差值,其实就是两点的坐标相减


var delta = cc.pSub(targetPoint, thisPoint);
*// 求当前对象和目标两点间的距离


var distance = cc.pDistance(thisPoint, targetPoint);
*// 计算行走后的点xy坐标


var x2 = thisPoint.
x +speed *delta.
x /distance;

var y2 = thisPoint.
y + speed *delta.
y/distance;

if(100>=distance){

return true;
}
*// 修改当前对象的位置


var newPosition = cc.p(x2, y2);

this.setPosition(newPosition);
*// 旋转相应的角度


var x1 = thisPoint.
x;

var y1 = thisPoint.
y;

var deltaRotation = 90-
Math.atan2(y2-y1,x2-x1)*180/
Math.
PI;

this.setRotation(deltaRotation);

return false;
}效果请看游戏地址 http://www.seraph-fd.cn/games/1/index.html

楼主效果图怎么看不了?了

我去,两年前的坟帖

我去,两年前的坟帖