私は非常に単純な 2D ゲームに取り組んできました。これは非常に基本的なもので、内部に init、render、update などのメソッドを含む Play クラスがあり、2D マップと、あるときに動き回るプレーヤーを作成しました。キーボード入力は、If ステートメントだけを使用して非常に簡単に実行できます。ゲームの種類には、ポケモン ビュー (オーバーヘッド ビュー) があり、上下左右に移動できます。私のマップには障害物があり、ゲームをプレイしている瞬間にプレイヤーは障害物を通り抜けるだけです.プレイヤーが障害物に到達したときに停止し、それを通り抜けることができないようにしたいので、衝突検出を研究して管理しましたまず、コードで 2 つの四角形を作成しました。
Rectangle rectOne = new Rectangle(buckyPositionX, buckyPositionY, 40, 40);
Rectangle rectTwo = new Rectangle(-100, -143, 70,70);
また、2 つの長方形が交差する場合に true を返す変数 x のブール値も作成しました。
boolean x = rectOne.intersects(rectTwo);
これを行った後、Javaに正確に言う方法について混乱しています。ブール値がtrueを返す場合、プレーヤーがその長方形を通過するのを止めます。xがtrueを返すかどうかを検索するifステートメントであることは知っていますが、その中に何を入れるかわかりません経験豊富なユーザーの何人かがこの問題の解決に役立つことを願っています.