授業中にスリザーをしているのを見つけました。私の罰は、スモールベーシックでゲームをプログラムすることでした。
これでボールの列ができました。最初のボールが小さな点の上を転がった場合。ドットが消えてポイントを獲得します。大きなボールが小さなドット上にあるかどうかを確認する if ステートメントは次のとおりです。
If (foodX[x] - SnakeHeadX) < precision And (foodX[x] - SnakeHeadX) > -precision And (foodY[x] - SnakeHeadY) < precision And (foodY[x] - SnakeHeadY) > -precision Then
この if ステートメントはfor loop
For x = 1 To 500
だから私はポイントを獲得しますが、大きなボールの x 値と y 値が 20 より小さい場合もポイントを獲得します。それが意図されていない何か。
これがシナリオです ( @ は大きなボールです )
---------------------------------------------------------------------------------------------
|@ *
|
| *
| *
| * *
|
| *
---------------------------------------------------------------------------------------------
ご覧のとおり、大きなボールは小さなドットに触れていません。でもポイントは稼げます。では、なぜそれが True なのですか? どうすれば修正できますか?