我在舞台上有我的播放器影片剪辑,当单击鼠标时,子弹会发射并以正确的角度投射以将其自身指向鼠标位置。我还想要一个“镜像”敌人,当玩家这样做时,它会向完全相反的方向射击。
例如,当玩家向上射击时,敌人应该向下射击。同样,向右射击会导致敌人向左射击。
是否有一个公式可以将旋转角度转换为完全相反的角度?
我在舞台上有我的播放器影片剪辑,当单击鼠标时,子弹会发射并以正确的角度投射以将其自身指向鼠标位置。我还想要一个“镜像”敌人,当玩家这样做时,它会向完全相反的方向射击。
例如,当玩家向上射击时,敌人应该向下射击。同样,向右射击会导致敌人向左射击。
是否有一个公式可以将旋转角度转换为完全相反的角度?
加减 180 度不会指向相反的方向吗?
使用 Matrix 是一个非常简单和精确的解决方案。只是多个 a 或 c 与 -1 (翻转垂直和水平)。
示例代码:
var _tmpMatrix:Matrix = sprite.transform.matrix;
_tmpMatrix.a *= -1;
if ( _tmpMatrix.a < 0 ) {
_tmpMatrix.tx = sprite.width + sprite.x;
} else {
_tmpMatrix.tx = 0;
}
sprite.transform.matrix = _tmpMatrix;
或者
obj.scaleX = -1;
会做同样的事情。=)