diff options
author | Star Rauchenberger <fefferburbia@gmail.com> | 2024-07-17 14:07:35 -0400 |
---|---|---|
committer | Star Rauchenberger <fefferburbia@gmail.com> | 2024-07-17 14:07:35 -0400 |
commit | 52657e9eaa7520a841f0eb384472dbde6522e748 (patch) | |
tree | 7921886587a15c5f288da5e4c5433435ad37a2e3 | |
parent | 534e0aae81261990c1160378a085e2aeac9a6b7a (diff) | |
download | lingo-ap-tracker-52657e9eaa7520a841f0eb384472dbde6522e748.tar.gz lingo-ap-tracker-52657e9eaa7520a841f0eb384472dbde6522e748.tar.bz2 lingo-ap-tracker-52657e9eaa7520a841f0eb384472dbde6522e748.zip |
Fix pilgrimage detection allowing sunwarps when shuffled
-rw-r--r-- | src/tracker_state.cpp | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/src/tracker_state.cpp b/src/tracker_state.cpp index ba615d1..bd63076 100644 --- a/src/tracker_state.cpp +++ b/src/tracker_state.cpp | |||
@@ -180,7 +180,8 @@ class StateCalculator { | |||
180 | std::list<int> panel_boundary; | 180 | std::list<int> panel_boundary; |
181 | std::list<int> painting_boundary; | 181 | std::list<int> painting_boundary; |
182 | std::list<Exit> flood_boundary; | 182 | std::list<Exit> flood_boundary; |
183 | flood_boundary.push_back({.destination_room = options_.start}); | 183 | flood_boundary.push_back( |
184 | {.source_room = -1, .destination_room = options_.start}); | ||
184 | 185 | ||
185 | bool reachable_changed = true; | 186 | bool reachable_changed = true; |
186 | while (reachable_changed) { | 187 | while (reachable_changed) { |
@@ -282,12 +283,11 @@ class StateCalculator { | |||
282 | if (AP_GetSunwarpMapping().count(index)) { | 283 | if (AP_GetSunwarpMapping().count(index)) { |
283 | const SunwarpMapping& sm = AP_GetSunwarpMapping().at(index); | 284 | const SunwarpMapping& sm = AP_GetSunwarpMapping().at(index); |
284 | 285 | ||
285 | Exit sunwarp_exit; | 286 | new_boundary.push_back( |
286 | sunwarp_exit.destination_room = | 287 | {.source_room = room_exit.destination_room, |
287 | GD_GetRoomForSunwarp(sm.exit_index); | 288 | .destination_room = GD_GetRoomForSunwarp(sm.exit_index), |
288 | sunwarp_exit.door = GD_GetSunwarpDoors().at(sm.dots - 1); | 289 | .door = GD_GetSunwarpDoors().at(sm.dots - 1), |
289 | 290 | .type = EntranceType::kSunwarp}); | |
290 | new_boundary.push_back(sunwarp_exit); | ||
291 | } | 291 | } |
292 | } | 292 | } |
293 | } | 293 | } |