番号(xx)をループする必要があります。xxは常にゼロから始まります。私の問題は、moveDirection
変数が+1の場合、正の値に達するまでxxが増加することですrange
。が-1の場合moveDirection
、xxはの負の値に達するまで減少しrange
ます。
以下のコードでは、最初にmoveDirectionのifステートメントテストを実行してこれを実行し、次にforループを複製して、それぞれの場合の値を編集しました。私のコードはたまたまActionScript3にありますが、言語は関係ありません。
var p:Point;
var xx:int;
if (moveDirection > 0)
{
for (xx = 0; xx < range; xx++)
{
if (hitTestPoint(xx, yy))
{
return true;
}
}
}
else
{
for (xx = 0; xx > range; xx--)
{
if (hitTestPoint(xx, yy))
{
return true;
}
}
}
forループを複製せずに、これを行うためのより良い方法はありますか?他にアドバイスがありましたら、よろしくお願いします。