about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/tracker_state.cpp41
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;