私のXNAプロジェクト用の単純なAIを作成しています。XNA、Do-While基本的な問題
私の敵は短いペリオードの後に右から左に移動する必要があります。
残念ながら、私のコードは私の第1と第2のDo-Whileをスキップするので、敵は動きません。< 5秒です。そこで彼は、ちょうど今、別の問題、だから... ... + -1.X位置更新
while (i <= 1)
{
EnemyVelocity.X += 1f;
timer += (float)gameTime.ElapsedGameTime.TotalSeconds;
usedTimeRight = timer;
i++;
}
if (usedTimeRight != 0)
{
do
{ EnemyVelocity.X -= 1f;
timer += (float)gameTime.ElapsedGameTime.TotalSeconds;
} while ((timer - usedTimeRight) >= 5);
usedTimeLeft = timer;
usedTimeRight = 0;
}
if (usedTimeLeft != 0)
{
do
{ EnemyVelocity.X += 1f;
timer += (float)gameTime.ElapsedGameTime.TotalSeconds;
}
while (timer - usedTimeLeft >= 5);
usedTimeRight = timer;
usedTimeLeft= 0;
}
から~~~~~~~~~~~
をジャンプ - 私の敵は、すべて左に移動しています時間
timer += (float)gameTime.ElapsedGameTime.TotalSeconds;
while (i <= 1)
{
EnemyVelocity.X -= 1f;
timer += (float)gameTime.ElapsedGameTime.TotalSeconds;
usedTimeRight = timer;
i++;
}
if (usedTimeRight != 0 && (timer - usedTimeRight <= 2))
{
int x;
for (x = 0; x <= 3; x++)
{
EnemyVelocity.X = 1;
}
usedTimeLeft = timer;
usedTimeRight = 0;
}
if (usedTimeLeft != 0 && (timer - usedTimeLeft <= 2))
{
int x;
for (x = 0; x <= 3; x++)
{
EnemyVelocity.X = - 1;
}
usedTimeRight = timer;
usedTimeLeft = 0;
}
:これを達成するには、この ような何かをしなければなりません新しいコード?^^) '' – Suikoden
あなたは、各点のすべての値を見てコードを考える必要があると思います。 – Needham