From dfddd07b8b5cbff7c09103a694aed40bda254a2d Mon Sep 17 00:00:00 2001 From: Star Rauchenberger Date: Thu, 13 Mar 2025 12:47:54 -0400 Subject: Obsolete savefile reader + IPC solves Now, panel solve state is all read from the sync fields in datastorage. The "show hunt panels" field in settings is now a radio box, and you can choose to show all panels. --- src/area_popup.cpp | 26 ++++++++------------------ 1 file changed, 8 insertions(+), 18 deletions(-) (limited to 'src/area_popup.cpp') diff --git a/src/area_popup.cpp b/src/area_popup.cpp index 2c9d18d..8ec4dd1 100644 --- a/src/area_popup.cpp +++ b/src/area_popup.cpp @@ -54,15 +54,12 @@ void AreaPopup::ResetIndicators() { continue; } - if (tracker_panel->IsPanelsMode()) { - if (!location.single_panel) { - continue; - } - } else { - if (!AP_IsLocationVisible(location.classification) && - !(location.hunt && GetTrackerConfig().show_hunt_panels)) { - continue; - } + if (!AP_IsLocationVisible(location.classification) && + !(location.hunt && + GetTrackerConfig().visible_panels == TrackerConfig::kHUNT_PANELS) && + !(location.single_panel && + GetTrackerConfig().visible_panels == TrackerConfig::kALL_PANELS)) { + continue; } indicators_.emplace_back(section_id, kLOCATION, acc_height); @@ -77,7 +74,7 @@ void AreaPopup::ResetIndicators() { } } - if (AP_IsPaintingShuffle() && !tracker_panel->IsPanelsMode()) { + if (AP_IsPaintingShuffle()) { for (int painting_id : map_area.paintings) { if (IsPaintingPostgame(painting_id)) { continue; @@ -135,16 +132,9 @@ void AreaPopup::UpdateIndicators() { bool checked = false; if (IsLocationWinCondition(location)) { checked = AP_HasReachedGoal(); - } else if (tracker_panel->IsPanelsMode()) { - const Panel& panel = GD_GetPanel(*location.single_panel); - if (panel.non_counting) { - checked = AP_HasCheckedGameLocation(location.ap_location_id); - } else { - checked = tracker_panel->GetSolvedPanels().contains(panel.nodepath); - } } else { checked = AP_HasCheckedGameLocation(location.ap_location_id) || - (location.hunt && + (location.single_panel && AP_IsPanelSolved( GD_GetPanel(*location.single_panel).solve_index)); } -- cgit 1.4.1