about summary refs log tree commit diff stats
path: root/src/ap_state.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/ap_state.cpp')
-rw-r--r--src/ap_state.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/ap_state.cpp b/src/ap_state.cpp index 01ee065..c3e7f5b 100644 --- a/src/ap_state.cpp +++ b/src/ap_state.cpp
@@ -71,6 +71,7 @@ struct APState {
71 DoorShuffleMode door_shuffle_mode = kNO_DOORS; 71 DoorShuffleMode door_shuffle_mode = kNO_DOORS;
72 bool group_doors = false; 72 bool group_doors = false;
73 bool color_shuffle = false; 73 bool color_shuffle = false;
74 PanelShuffleMode panel_shuffle_mode = kNO_PANELS;
74 bool painting_shuffle = false; 75 bool painting_shuffle = false;
75 int mastery_requirement = 21; 76 int mastery_requirement = 21;
76 int level_2_requirement = 223; 77 int level_2_requirement = 223;
@@ -133,6 +134,7 @@ struct APState {
133 door_shuffle_mode = kNO_DOORS; 134 door_shuffle_mode = kNO_DOORS;
134 group_doors = false; 135 group_doors = false;
135 color_shuffle = false; 136 color_shuffle = false;
137 panel_shuffle_mode = kNO_PANELS;
136 painting_shuffle = false; 138 painting_shuffle = false;
137 painting_mapping.clear(); 139 painting_mapping.clear();
138 painting_codomain.clear(); 140 painting_codomain.clear();
@@ -469,6 +471,7 @@ struct APState {
469 } 471 }
470 } 472 }
471 color_shuffle = slot_data["shuffle_colors"].get<int>() == 1; 473 color_shuffle = slot_data["shuffle_colors"].get<int>() == 1;
474 panel_shuffle_mode = slot_data["shuffle_panels"].get<PanelShuffleMode>();
472 painting_shuffle = slot_data["shuffle_paintings"].get<int>() == 1; 475 painting_shuffle = slot_data["shuffle_paintings"].get<int>() == 1;
473 mastery_requirement = slot_data["mastery_achievements"].get<int>(); 476 mastery_requirement = slot_data["mastery_achievements"].get<int>();
474 level_2_requirement = slot_data["level_2_requirement"].get<int>(); 477 level_2_requirement = slot_data["level_2_requirement"].get<int>();
@@ -762,6 +765,12 @@ int AP_GetLevel2Requirement() {
762 return GetState().level_2_requirement; 765 return GetState().level_2_requirement;
763} 766}
764 767
768LocationChecks AP_GetLocationsChecks() {
769 std::lock_guard state_guard(GetState().state_mutex);
770
771 return GetState().location_checks;
772}
773
765bool AP_IsLocationVisible(int classification) { 774bool AP_IsLocationVisible(int classification) {
766 std::lock_guard state_guard(GetState().state_mutex); 775 std::lock_guard state_guard(GetState().state_mutex);
767 776
@@ -789,6 +798,12 @@ bool AP_IsLocationVisible(int classification) {
789 return (world_state & classification); 798 return (world_state & classification);
790} 799}
791 800
801PanelShuffleMode AP_GetPanelShuffleMode() {
802 std::lock_guard state_guard(GetState().state_mutex);
803
804 return GetState().panel_shuffle_mode;
805}
806
792VictoryCondition AP_GetVictoryCondition() { 807VictoryCondition AP_GetVictoryCondition() {
793 std::lock_guard state_guard(GetState().state_mutex); 808 std::lock_guard state_guard(GetState().state_mutex);
794 809