From 28c2273474917e9b6148cacf0ca9b2b977f47746 Mon Sep 17 00:00:00 2001 From: Yash Karandikar Date: Sat, 30 Apr 2022 17:02:08 -0500 Subject: [PATCH] Rework border loop --- src/main.rs | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/src/main.rs b/src/main.rs index 8856b78..f168de6 100644 --- a/src/main.rs +++ b/src/main.rs @@ -127,18 +127,21 @@ fn main() { y /= 37; if dir == Direction::Left || dir == Direction::Right { - if x == 0 { - snake[0].translate((27 * 37, 0)); - } else if x == 27 { - snake[0].translate((-27 * 37, 0)); + if x <= 0 { + let diff = (27 * 37) - (x * 37); + snake[0].translate((diff, 0)); + } else if x >= 27 { + let diff = 0 - (x * 37); + snake[0].translate((diff, 0)); } } if dir == Direction::Up || dir == Direction::Down { - if y == 0 { - snake[0].translate((0, -27 * 37)); - } else if y == 27 { - snake[0].translate((0, 27 * 37)); + if y <= 0 { + let diff = (y * 37) - (27 * 37); + snake[0].translate((0, diff)); + } else if y >= 27 { + snake[0].translate((0, (y * 37))); } } }