0

最近Javaでゲームを作り始めました。このゲームでは、Tower というクラスを作成しました。このクラス内には、いくつかの整数変数といくつかの文字列があります。マウス イベントに応答して新しい Tower オブジェクトを作成する方法があるかどうかを知りたいです。

例: 画面上のクリック イベントは、新しい Tower オブジェクトを作成する必要があります (次に、Tower オブジェクトに座標を追加します)。また、画面の別の場所をクリックすると、別の Tower オブジェクトが新しい座標で作成されます。

プレイヤーは複数のタワーを購入して好きな場所に配置できるので、このようなものが欲しいです (これらのタワーには異なるプロパティがあります)。これを行う方法はありますか?これは可能ですか?提案がない場合:P?

4

2 に答える 2

0

このアプローチを試してみてください。これは最終的な完璧な答えではありませんが、質問に役立つことを願っています。

LinkedList<Tower> list = new LinkedList<Tower>();

マウスイベントの場合:

list.add(new Tower());
list.get(0).x = 4;
list.get(0).y = 5;
//......
System.out.println("x  = "+list.get(0).x);  
System.out.println("y  = "+list.get(1).y);
于 2013-02-22T20:40:56.657 に答える
0

これは、UUIDを使用して5つのタワーを生成するコードのスニペットです-HashMap(クレジットJack Maney)でそれぞれを追跡します。

ループのonClick()代わりに作成するように変更する必要があります。for

final class TowerGenerator
{
   private final Map<UUID, Tower> towerMap = new HashMap<UUID, Tower>();

   public void generateFiveTowers()
   {
      for (int i = 0; i < 5; i++)
      {
         final UUID uuid = UUID.randomUUID();
         towerMap.put(uuid, new Tower(uuid));
      }
   }
}
于 2013-02-22T20:45:55.357 に答える