diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/tracker_state.cpp | 41 |
1 files changed, 21 insertions, 20 deletions
diff --git a/src/tracker_state.cpp b/src/tracker_state.cpp index d3dde0d..0d9a9cd 100644 --- a/src/tracker_state.cpp +++ b/src/tracker_state.cpp | |||
@@ -212,7 +212,7 @@ class StateCalculator { | |||
212 | } | 212 | } |
213 | 213 | ||
214 | return kYes; | 214 | return kYes; |
215 | } else if ((AP_GetDoorShuffleMode() == kDOORS_MODE && AP_AreDoorsGrouped() && | 215 | } else if (AP_GetDoorShuffleMode() == kDOORS_MODE && AP_AreDoorsGrouped() && |
216 | !door_obj.group_name.empty()) { | 216 | !door_obj.group_name.empty()) { |
217 | return AP_HasItem(door_obj.group_ap_item_id) ? kYes : kNo; | 217 | return AP_HasItem(door_obj.group_ap_item_id) ? kYes : kNo; |
218 | } else { | 218 | } else { |
@@ -302,33 +302,34 @@ class StateCalculator { | |||
302 | } | 302 | } |
303 | } | 303 | } |
304 | 304 | ||
305 | if (AP_IsColorShuffle()) { | 305 | if (AP_IsColorShuffle()) { |
306 | for (LingoColor color : panel_obj.colors) { | 306 | for (LingoColor color : panel_obj.colors) { |
307 | if (!AP_HasItem(GD_GetItemIdForColor(color))) { | 307 | if (!AP_HasItem(GD_GetItemIdForColor(color))) { |
308 | return kNo; | 308 | return kNo; |
309 | } | ||
309 | } | 310 | } |
310 | } | 311 | } |
311 | } | ||
312 | 312 | ||
313 | if (panel_obj.panel_door != -1 && AP_GetDoorShuffleMode() == kPANELS_MODE) { | 313 | if (panel_obj.panel_door != -1 && AP_GetDoorShuffleMode() == kPANELS_MODE) { |
314 | const PanelDoor& panel_door_obj = GD_GetPanelDoor(panel_obj.panel_door); | 314 | const PanelDoor& panel_door_obj = GD_GetPanelDoor(panel_obj.panel_door); |
315 | 315 | ||
316 | if (AP_AreDoorsGrouped() && panel_door_obj.group_ap_item_id != -1) { | 316 | if (AP_AreDoorsGrouped() && panel_door_obj.group_ap_item_id != -1) { |
317 | return AP_HasItem(panel_door_obj.group_ap_item_id) ? kYes : kNo; | 317 | return AP_HasItem(panel_door_obj.group_ap_item_id) ? kYes : kNo; |
318 | } else { | 318 | } else { |
319 | bool has_item = AP_HasItem(panel_door_obj.ap_item_id); | 319 | bool has_item = AP_HasItem(panel_door_obj.ap_item_id); |
320 | 320 | ||
321 | if (!has_item) { | 321 | if (!has_item) { |
322 | for (const ProgressiveRequirement& prog_req : | 322 | for (const ProgressiveRequirement& prog_req : |
323 | panel_door_obj.progressives) { | 323 | panel_door_obj.progressives) { |
324 | if (AP_HasItem(prog_req.ap_item_id, prog_req.quantity)) { | 324 | if (AP_HasItem(prog_req.ap_item_id, prog_req.quantity)) { |
325 | has_item = true; | 325 | has_item = true; |
326 | break; | 326 | break; |
327 | } | ||
327 | } | 328 | } |
328 | } | 329 | } |
329 | } | ||
330 | 330 | ||
331 | return has_item ? kYes : kNo; | 331 | return has_item ? kYes : kNo; |
332 | } | ||
332 | } | 333 | } |
333 | 334 | ||
334 | return kYes; | 335 | return kYes; |