以下是我的意思的简短视频:http://i.gyazo.com/06c6f4c98391589609f495277bab8b3f.mp4
以下是用于创建项目符号的代码。
private function createBullet(): void {
_startX = this.x
_startY = this.y
_endX = (Init._player.x);
_endY = (Init._player.y);
var tempBullet: MovieClip = new Bullet();
tempBullet.vx = (_endX - _startX) / _bulletSpeed;
tempBullet.vy = (_endY - _startY) / _bulletSpeed;
tempBullet.x = _startX;
tempBullet.y = _startY;
tempBullet.rotation = ???
tempBullet.startX = _startX;
tempBullet.startY = _startY;
tempBullet.maxDistance = _maxDistance;
_bullets.push(tempBullet);
stage.addChild(tempBullet);
}
感谢。
答案 0 :(得分:1)
你需要做的就是找出两点之间的角度。在这种情况下,两点是子弹位置和最后一帧的位置。你可以这样做:
var dx:Number = oldBullet.x - bullet.x;
var dy:Number = oldBullet.y - bullet.y;
var angle:Number = Math.atan2(dy, dx) * (180 / Math.PI);
dx和dy只是x和y的增量,所以你也可以使用子弹的x和y速度。