如何在屏幕上显示与方位角相关的精灵



我正在安卓系统上使用SurfaceView制作游戏。

我目前正在接收设备的方位角(从-180到180(,它工作正常。我想当你转过身去到它的位置时,能够在屏幕上显示一个精灵,现在我在-180和180之间随机设置。

使用此代码,它可以工作,但当位置不为0并且您已旋转超过180或低于-180时,它会跳出屏幕。有办法绕过这个吗?

private fun setPositionOnScreen(azimuth: Double) {
val distanceToLocation = azimuth - location
x = (distanceToLocation * (screenWidth / 180)).toInt()
}
private fun setPositionOnScreen(azimuth: Double) {
var distanceToZombie = azimuth - location
if(distanceToZombie < -180) distanceToZombie += 360
else if(distanceToZombie > 180) distanceToZombie -= 360
x = (distanceToZombie * (screenWidth / 180)).toInt()
}

最新更新