diff options
Diffstat (limited to 'src/main.rs')
-rw-r--r-- | src/main.rs | 21 |
1 files changed, 9 insertions, 12 deletions
diff --git a/src/main.rs b/src/main.rs index 468da4c..0ce3299 100644 --- a/src/main.rs +++ b/src/main.rs @@ -283,17 +283,16 @@ impl Game { self.place_figure() }, 'h' => { - if self.field.has_collision(&self.figure, self.x, self.y) { - self.x -= 1 - } else if !self.field.has_collision(&self.figure, self.x - 1, self.y) { - self.x -= 1 + if !self.field.has_collision(&self.figure, self.x - 1, self.y) { + self.x -= 1; } } 'j' => { - if self.field.has_collision(&self.figure, self.x, self.y) { - self.y -= 1 - } else if !self.field.has_collision(&self.figure, self.x, self.y - 1) { - self.y -= 1 + if !self.field.has_collision(&self.figure, self.x, self.y - 1) { + self.y -= 1; + self.reset_fall_timeout(); + } else { + self.start_place_timeout(); } } ';' | 'k' => { @@ -304,10 +303,8 @@ impl Game { } } 'l' => { - if self.field.has_collision(&self.figure, self.x, self.y) { - self.x += 1 - } else if !self.field.has_collision(&self.figure, self.x + 1, self.y) { - self.x += 1 + if !self.field.has_collision(&self.figure, self.x + 1, self.y) { + self.x += 1; } } _ => {}, |