私のゲームでプレーヤーが動きをすると、AI の動きが計算されるまで見えません。そして、両方の動きが一緒に表示されます。
プレイヤーの動きを表示し、その後、AI の動き (計算後) を示したいと考えています。スレッド遅延を試しましたが、役に立ちませんでした。ある種の一時停止を使用してこの可視性を追加する方法はありますが、その一時停止はプログラムの実行を一時停止してはなりませんか?
手順2で、AIがプレーヤーの動きのアニメーションよりも時間がかかる場合は、待機中のアニメーションを表示します。この待機中のアニメーションは、AIの動きのアニメーションを開始する前に停止する必要があります。
プレーヤーが移動を完了した場合にのみ true に設定されるブール チェックをいつでも作成できます。
public class ...
{
boolean playerMoveMade = false;
...
public void gameCycle()
{
...
if (playerMoveMade)
{
playerMoveMade = false;
// ... render AI move
}
}
}