1

Javaで小さなゲームをプログラミングしようとしています。

世界地図には 100 の場所があります (各場所は国または海のいずれかです)。4 から 15 の国を持つ 6 つの大陸があります。マップには 76 の国と 24 の海があります。各大陸は、少なくとも 1 つの国を持つ別の大陸に接続されています。

例:

地図

ご覧のとおり、黄色の大陸が地図の下部に続いています。

世界地図を2D配列に格納することを考えていました。悪い/良いアイデア? 地図を作成するには、国の大きさを決定し、ランダムな場所を選び、配列をランダムな方向に埋めて国を作成します。

これは良いアプローチですか?

4

1 に答える 1

0
"Is this the good approach?"

この質問は非常に主観的であるため、答えるのが少し難しいです。2D 配列は機能しますが、後で他のデータ/機能を追加する場合は制限される可能性があります。たとえば、色の配列から始めたが、軍隊などを追加したい場合は、配列タイプを、おそらくカスタムTileオブジェクトに変更する必要があります...

それが私のゲームであれば、WorldMap を表すインターフェイス (そしてカスタム クラス) を作成します。setCountry()のように、自分のゲームにとって意味のあるメソッドを定義します。最終的には、おそらく 2D 配列でサポートすることになりますが (少なくとも最初は)、事前にインターフェイスを作成しておくことで、後で機能を追加するのがはるかに簡単になります。ある日、動的にサイズ変更されたワールドが必要になり、ゲーム ロジックをすべて変更することなく、2D 配列を他のコレクションと交換できるようになるかもしれません。

「マップを塗りつぶす」という質問は、別の広く開かれた質問です。ランダムに塗りつぶすだけの場合、接続ルールを強制する可能性があるという問題があることがわかります。

于 2013-03-30T10:47:13.487 に答える