さぁ、早くそのifのnotについているチェックボックスを外す作業に戻るんだ。

そりゃ0<=direction && direction<=45「ではないとき」なんて書き方をしてたら、
一番最後の【270〜360「ではないとき」】が高確率で反映されるわな。

余談だが、0<=directionって書き方に違和感を感じて仕方が無い。
ま、問題なく動いていればいいのかもしれないけどね。