Merge pull request #38 from ndarilek/master

Guard against overflows.
This commit is contained in:
Krzysztof Langner 2021-08-26 17:08:49 +02:00 committed by GitHub
commit 289e693092
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -111,15 +111,15 @@ impl Map {
let mut exits = Vec::new(); let mut exits = Vec::new();
// Cardinal directions // Cardinal directions
if self.is_exit_valid(x-1, y) { exits.push((x-1, y, 1.0)) }; if x > 0 && self.is_exit_valid(x-1, y) { exits.push((x-1, y, 1.0)) };
if self.is_exit_valid(x+1, y) { exits.push((x+1, y, 1.0)) }; if self.is_exit_valid(x+1, y) { exits.push((x+1, y, 1.0)) };
if self.is_exit_valid(x, y-1) { exits.push((x, y-1, 1.0)) }; if y > 0 && self.is_exit_valid(x, y-1) { exits.push((x, y-1, 1.0)) };
if self.is_exit_valid(x, y+1) { exits.push((x, y+1, 1.0)) }; if self.is_exit_valid(x, y+1) { exits.push((x, y+1, 1.0)) };
// Diagonals // Diagonals
if self.is_exit_valid(x-1, y-1) { exits.push((x-1, y-1, 1.45)); } if x > 0 && y > 0 && self.is_exit_valid(x-1, y-1) { exits.push((x-1, y-1, 1.45)); }
if self.is_exit_valid(x+1, y-1) { exits.push((x+1, y-1, 1.45)); } if y > 0 && self.is_exit_valid(x+1, y-1) { exits.push((x+1, y-1, 1.45)); }
if self.is_exit_valid(x-1, y+1) { exits.push((x-1, y+1, 1.45)); } if x > 0 && self.is_exit_valid(x-1, y+1) { exits.push((x-1, y+1, 1.45)); }
if self.is_exit_valid(x+1, y+1) { exits.push((x+1, y+1, 1.45)); } if self.is_exit_valid(x+1, y+1) { exits.push((x+1, y+1, 1.45)); }
exits exits