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.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/ap_state.cpp b/src/ap_state.cpp index 2236d6a..cbe622a 100644 --- a/src/ap_state.cpp +++ b/src/ap_state.cpp
@@ -82,6 +82,7 @@ struct APState {
82 bool pilgrimage_allows_paintings = false; 82 bool pilgrimage_allows_paintings = false;
83 SunwarpAccess sunwarp_access = kSUNWARP_ACCESS_NORMAL; 83 SunwarpAccess sunwarp_access = kSUNWARP_ACCESS_NORMAL;
84 bool sunwarp_shuffle = false; 84 bool sunwarp_shuffle = false;
85 bool postgame_shuffle = true;
85 86
86 std::map<std::string, std::string> painting_mapping; 87 std::map<std::string, std::string> painting_mapping;
87 std::set<std::string> painting_codomain; 88 std::set<std::string> painting_codomain;
@@ -146,6 +147,7 @@ struct APState {
146 sunwarp_access = kSUNWARP_ACCESS_NORMAL; 147 sunwarp_access = kSUNWARP_ACCESS_NORMAL;
147 sunwarp_shuffle = false; 148 sunwarp_shuffle = false;
148 sunwarp_mapping.clear(); 149 sunwarp_mapping.clear();
150 postgame_shuffle = true;
149 } 151 }
150 152
151 apclient->set_room_info_handler( 153 apclient->set_room_info_handler(
@@ -470,6 +472,8 @@ struct APState {
470 : kSUNWARP_ACCESS_NORMAL; 472 : kSUNWARP_ACCESS_NORMAL;
471 sunwarp_shuffle = slot_data.contains("shuffle_sunwarps") && 473 sunwarp_shuffle = slot_data.contains("shuffle_sunwarps") &&
472 slot_data["shuffle_sunwarps"].get<int>() == 1; 474 slot_data["shuffle_sunwarps"].get<int>() == 1;
475 postgame_shuffle = slot_data.contains("shuffle_postgame") &&
476 slot_data["shuffle_postgame"].get<int>() == 1;
473 477
474 if (painting_shuffle && slot_data.contains("painting_entrance_to_exit")) { 478 if (painting_shuffle && slot_data.contains("painting_entrance_to_exit")) {
475 painting_mapping.clear(); 479 painting_mapping.clear();
@@ -798,6 +802,8 @@ std::map<int, SunwarpMapping> AP_GetSunwarpMapping() {
798 return GetState().sunwarp_mapping; 802 return GetState().sunwarp_mapping;
799} 803}
800 804
805bool AP_IsPostgameShuffle() { return GetState().postgame_shuffle; }
806
801bool AP_HasReachedGoal() { return GetState().HasReachedGoal(); } 807bool AP_HasReachedGoal() { return GetState().HasReachedGoal(); }
802 808
803std::optional<std::tuple<int, int>> AP_GetPlayerPosition() { 809std::optional<std::tuple<int, int>> AP_GetPlayerPosition() {