私はたくさんのユニットでアンドロイドで戦略ゲームを作っています。私は1つおきのオブジェクトの位置をチェックして、彼らは戦い始めなければならないほど十分に近いです。今2つのユニットは十分に接近している場合、私は判断することができる唯一の方法は、この方法である:2dの距離に基づいてJavaのハッシュマップから取得
public boolean inProximity(float x2, float y2) {
return Math.sqrt((x2 - x) * (x2 - x) + (y2 - y) * (y2 - y)) <= proximityRadius;
}
私はすべてのユニットを通じて倍のn乗量を反復することにしたくありません。私は位置を格納するためにTreeMapを見ていましたが、ユニットからの距離に基づいてキーを取得するにはどうしたらいいですか?
ハッシュマップは機能しません。 TreeMapは機能しません。 –