-1

私は Java で非常に単純な RTS をコーディングしていますが、これが私の問題です。プレーヤーが行ったすべてのアクションを保存し、ゲームを観戦するために読み取ることができる必要があるリプレイ ファイルをコーディングする必要があります (アクションのみを保存する必要があります。マウスの動きは重要ではなく、すべてのアクション間の時間を保存する必要はありません。すべてのアクション間に同じ遅延を設定します)。暗黙的な要素の x と y の位置、アクション (攻撃、移動、製品 ...) とユニットの x と y の位置をプログラム パラメーターに保存する必要があることを知って、どうすればよいでしょうか。例: archer.attack(beast)。この例では、射手の x と y を保存する必要があります。これはアクションなので、ここでは攻撃と x と獣の y を指定します。すべての回答に感謝します。

4

1 に答える 1

-1

優れた API では、単純な文字列形式で移動を記録し、保存された TIMESTAMP を使用して、Thread.Sleep を使用してそれを API に戻すことができます。スリープ時間は、'次のアクション' から ' を引いた時間になります。現在のアクション」。

文字列ファイルの例 (Player|TIME|ACTION|DATA)

Player1|1|Move|-

Player1|4|Click|-

Player1|12|Click|-

次に、最初のアクション (移動) を実行するゲーム ループを作成し、'Thread.Sleep(4000-1000)' (1000 は 1 秒) を呼び出して、ループを繰り返します。次のアクションは「クリック」で、その後 8 秒間スリープします。

于 2015-05-30T12:36:24.773 に答える