diff options
Diffstat (limited to 'src/area_popup.cpp')
| -rw-r--r-- | src/area_popup.cpp | 26 |
1 files changed, 8 insertions, 18 deletions
| 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() { | |||
| 54 | continue; | 54 | continue; |
| 55 | } | 55 | } |
| 56 | 56 | ||
| 57 | if (tracker_panel->IsPanelsMode()) { | 57 | if (!AP_IsLocationVisible(location.classification) && |
| 58 | if (!location.single_panel) { | 58 | !(location.hunt && |
| 59 | continue; | 59 | GetTrackerConfig().visible_panels == TrackerConfig::kHUNT_PANELS) && |
| 60 | } | 60 | !(location.single_panel && |
| 61 | } else { | 61 | GetTrackerConfig().visible_panels == TrackerConfig::kALL_PANELS)) { |
| 62 | if (!AP_IsLocationVisible(location.classification) && | 62 | continue; |
| 63 | !(location.hunt && GetTrackerConfig().show_hunt_panels)) { | ||
| 64 | continue; | ||
| 65 | } | ||
| 66 | } | 63 | } |
| 67 | 64 | ||
| 68 | indicators_.emplace_back(section_id, kLOCATION, acc_height); | 65 | indicators_.emplace_back(section_id, kLOCATION, acc_height); |
| @@ -77,7 +74,7 @@ void AreaPopup::ResetIndicators() { | |||
| 77 | } | 74 | } |
| 78 | } | 75 | } |
| 79 | 76 | ||
| 80 | if (AP_IsPaintingShuffle() && !tracker_panel->IsPanelsMode()) { | 77 | if (AP_IsPaintingShuffle()) { |
| 81 | for (int painting_id : map_area.paintings) { | 78 | for (int painting_id : map_area.paintings) { |
| 82 | if (IsPaintingPostgame(painting_id)) { | 79 | if (IsPaintingPostgame(painting_id)) { |
| 83 | continue; | 80 | continue; |
| @@ -135,16 +132,9 @@ void AreaPopup::UpdateIndicators() { | |||
| 135 | bool checked = false; | 132 | bool checked = false; |
| 136 | if (IsLocationWinCondition(location)) { | 133 | if (IsLocationWinCondition(location)) { |
| 137 | checked = AP_HasReachedGoal(); | 134 | checked = AP_HasReachedGoal(); |
| 138 | } else if (tracker_panel->IsPanelsMode()) { | ||
| 139 | const Panel& panel = GD_GetPanel(*location.single_panel); | ||
| 140 | if (panel.non_counting) { | ||
| 141 | checked = AP_HasCheckedGameLocation(location.ap_location_id); | ||
| 142 | } else { | ||
| 143 | checked = tracker_panel->GetSolvedPanels().contains(panel.nodepath); | ||
| 144 | } | ||
| 145 | } else { | 135 | } else { |
| 146 | checked = AP_HasCheckedGameLocation(location.ap_location_id) || | 136 | checked = AP_HasCheckedGameLocation(location.ap_location_id) || |
| 147 | (location.hunt && | 137 | (location.single_panel && |
| 148 | AP_IsPanelSolved( | 138 | AP_IsPanelSolved( |
| 149 | GD_GetPanel(*location.single_panel).solve_index)); | 139 | GD_GetPanel(*location.single_panel).solve_index)); |
| 150 | } | 140 | } |
