aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHampusM <hampus@hampusmat.com>2022-06-07 14:49:51 +0200
committerHampusM <hampus@hampusmat.com>2022-06-13 17:57:01 +0200
commitf778317bae709f397345a2d5e04e23864c6391b3 (patch)
tree9936789cd1d6b76ce7d41d6867e6887c18f28c14
parent9629a8d61e43ba15e87834801f581778625b7a14 (diff)
fix: index cursor x position from 0
-rw-r--r--src/engine/data/bounds.cpp4
-rw-r--r--src/engine/user/cursor.cpp2
-rw-r--r--src/game/game.cpp5
3 files changed, 8 insertions, 3 deletions
diff --git a/src/engine/data/bounds.cpp b/src/engine/data/bounds.cpp
index ca67008..0cbe9c3 100644
--- a/src/engine/data/bounds.cpp
+++ b/src/engine/data/bounds.cpp
@@ -32,7 +32,7 @@ auto Bounds::validate_coords(const Vector2 &coords) const noexcept -> CoordsVali
return CoordsValidation::X_HIGH;
}
- if (static_cast<Bounds::Value>(coords.get_x()) <= 0)
+ if (static_cast<Bounds::Value>(coords.get_x()) < 0)
{
return CoordsValidation::X_LOW;
}
@@ -42,7 +42,7 @@ auto Bounds::validate_coords(const Vector2 &coords) const noexcept -> CoordsVali
return CoordsValidation::Y_HIGH;
}
- if (static_cast<Bounds::Value>(coords.get_y()) <= 0)
+ if (static_cast<Bounds::Value>(coords.get_y()) < 0)
{
return CoordsValidation::Y_LOW;
}
diff --git a/src/engine/user/cursor.cpp b/src/engine/user/cursor.cpp
index 70828c3..d348d9e 100644
--- a/src/engine/user/cursor.cpp
+++ b/src/engine/user/cursor.cpp
@@ -31,7 +31,7 @@ void CursorController::move_to(const Vector2 &position) noexcept
MOVE_CURSOR_TO,
fmt::arg("esc", ESC),
fmt::arg("row", inverted_pos.get_y()),
- fmt::arg("column", inverted_pos.get_x()));
+ fmt::arg("column", inverted_pos.get_x() + 1));
std::cout.flush();
_position = position;
diff --git a/src/game/game.cpp b/src/game/game.cpp
index 2eef4cf..064b643 100644
--- a/src/game/game.cpp
+++ b/src/game/game.cpp
@@ -285,6 +285,11 @@ auto Game::_move_cursor(const Vector2 &direction) noexcept -> bool
return false;
}
+ if (dest_position.get_y() < 1)
+ {
+ return false;
+ }
+
_cursor_controller->move_to(dest_position);
return true;