1

授業中にスリザーをしているのを見つけました。私の罰は、スモールベーシックでゲームをプログラムすることでした。

これでボールの列ができました。最初のボールが小さな点の上を転がった場合。ドットが消えてポイントを獲得します。大きなボールが小さなドット上にあるかどうかを確認する 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 なのですか? どうすれば修正できますか?

4

1 に答える 1