斜め移動の時は、X用、Y用両方を呼び出して個別に移動の可否を判断します。 各プログラムの仕様にもよると、 思いますけど、例えば斜め移動の指示の時 壁などにぶつかったあと、そのまま 壁に沿って移動したりできるようにする為です。 この時、『ぶつかったら、止まる。』 という処理にするには、 各戻り値を&&でつないでください。 118行目のコメントの中は間違えました。