我正在开发一个 HTML5 游戏,并且有一个我认为是数学问题的问题。玩家和敌人对象有一个 pos.x 和 pos.y 值来指示它们在屏幕上的位置。我已经为一些敌人实现了接近检查代码,但对它并不完全满意。目前敌人正在检查玩家是否在一定距离内,在 x 和 y 轴上为 200 或 -200。这意味着实体正在扫描自身周围的 400x400 方格。
我想把它变成一个半径为 200 的圆。我的代码就这样。
if ((player.pos.x - enemy.pos.x > 200 && player.pos.x - enemy.pos.x < 200)
&& (player.pos.y - enemy.pos.y > 200 && player.pos.y - enemy.pos.y < 200)) {
//Do something...
}
这是我的游戏,如果你想看看的话。接近的敌人在第二个也是目前最后一个级别:)