From 8b239f55d1c08584f7ba8a735657d4ef6c915626 Mon Sep 17 00:00:00 2001 From: Raymond Hogenson Date: Sat, 18 Aug 2018 08:35:38 -0400 Subject: Stop the player from going off the side Oh wait I haven't tested this yet. I'll be right back. Yeah it works --- src/player.rs | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'src/player.rs') diff --git a/src/player.rs b/src/player.rs index 97c98f6..efd396e 100644 --- a/src/player.rs +++ b/src/player.rs @@ -2,6 +2,7 @@ extern crate sdl2; extern crate std; use super::state; +use super::constants; pub struct Player { pub x: i32, @@ -76,6 +77,20 @@ impl Player { } else { self.y_d = 0; } + /* Don't go off the side */ + if self.x_d < 0 && self.x <= 0 { + self.x_d = 0; + } + else if self.x >= constants::X_DIM as i32 && self.x_d > 0 { + self.x_d = 0; + } + if self.y <= 0 && self.y_d < 0 { + self.y_d = 0; + } + else if self.y >= constants::Y_DIM as i32 && self.y_d > 0 { + self.y_d = 0; + } + self.x += self.x_d; self.y += self.y_d; } -- cgit v1.3.1