diff options
author | HampusM <hampus@hampusmat.com> | 2022-03-07 20:20:18 +0100 |
---|---|---|
committer | HampusM <hampus@hampusmat.com> | 2022-06-13 17:56:55 +0200 |
commit | f0824fdebc79fbf3843c2053522107c33e3ce2a3 (patch) | |
tree | e5bd34fa89cbe80cf8a30596766cf95098465aec /src/game/input_configurator.cpp | |
parent | 12fffa7df0685ef6d23ffe888a06695ae490df81 (diff) |
refactor: move directions to vector2 & make vector2 hashable
Diffstat (limited to 'src/game/input_configurator.cpp')
-rw-r--r-- | src/game/input_configurator.cpp | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/src/game/input_configurator.cpp b/src/game/input_configurator.cpp index 4daee21..e8d2fe5 100644 --- a/src/game/input_configurator.cpp +++ b/src/game/input_configurator.cpp @@ -8,6 +8,14 @@ void exit_success() exit(EXIT_SUCCESS); } +auto move_cursor(const Vector2 &direction, const CursorController &cursor_controller) +{ + return [direction, cursor_controller]() + { + cursor_controller.move(direction, 1U); + }; +} + } // namespace InputActions InputConfigurator::InputConfigurator(std::shared_ptr<CursorController> cursor_controller) @@ -20,14 +28,14 @@ void InputConfigurator::configure(IInputHandler &input_handler) input_handler.attach('q', InputActions::exit_success); input_handler.attach('k', - InputActions::move_cursor<Direction::UP>(*_cursor_controller)); + InputActions::move_cursor(Vector2::up(), *_cursor_controller)); input_handler.attach('j', - InputActions::move_cursor<Direction::DOWN>(*_cursor_controller)); + InputActions::move_cursor(Vector2::down(), *_cursor_controller)); input_handler.attach('h', - InputActions::move_cursor<Direction::LEFT>(*_cursor_controller)); + InputActions::move_cursor(Vector2::left(), *_cursor_controller)); input_handler.attach( - 'l', InputActions::move_cursor<Direction::RIGHT>(*_cursor_controller)); + 'l', InputActions::move_cursor(Vector2::right(), *_cursor_controller)); } |