From 0c8cb197c2e296a0cba61b568cdebc2e6a5f52cc Mon Sep 17 00:00:00 2001 From: "Zed A. Shaw" Date: Tue, 2 Sep 2025 13:56:19 -0400 Subject: [PATCH] Fix the map opening and closing all the time. --- autowalker.cpp | 14 ++++++++++---- autowalker.hpp | 1 + tests/spatialmap.cpp | 1 - 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/autowalker.cpp b/autowalker.cpp index b2df92f..2658dd3 100644 --- a/autowalker.cpp +++ b/autowalker.cpp @@ -244,11 +244,17 @@ void Autowalker::craft_weapon() { } void Autowalker::open_map() { - if(map_opened_once) return; + if(!map_opened_once) { + if(!fsm.$map_open) { + send_event(gui::Event::MAP_OPEN); + map_opened_once = true; + } + } +} - if(!fsm.$map_open) { +void Autowalker::close_map() { + if(fsm.$map_open) { send_event(gui::Event::MAP_OPEN); - map_opened_once = true; } } @@ -272,7 +278,7 @@ void Autowalker::autowalk() { handle_boss_fight(); handle_player_walk(start, goal); - if(map_opened_once && move_attempts > 20) send_event(gui::Event::MAP_OPEN); + close_map(); move_attempts++; } while(move_attempts < 100 && fsm.autowalking); diff --git a/autowalker.hpp b/autowalker.hpp index 3d23bb3..d3db9d9 100644 --- a/autowalker.hpp +++ b/autowalker.hpp @@ -21,6 +21,7 @@ struct Autowalker { void start_autowalk(); void craft_weapon(); void open_map(); + void close_map(); bool found_enemy(); bool found_item(); diff --git a/tests/spatialmap.cpp b/tests/spatialmap.cpp index 7b953e7..e5087b3 100644 --- a/tests/spatialmap.cpp +++ b/tests/spatialmap.cpp @@ -226,7 +226,6 @@ TEST_CASE("SpatialMap::neighbors", "[spatialmap-neighbors]") { } TEST_CASE("SpatialMap::distance_sorted", "[spatialmap]") { - DinkyECS::World world; SpatialMap map;