diff options
Diffstat (limited to 'src/ap_state.cpp')
-rw-r--r-- | src/ap_state.cpp | 6 |
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 | ||
805 | bool AP_IsPostgameShuffle() { return GetState().postgame_shuffle; } | ||
806 | |||
801 | bool AP_HasReachedGoal() { return GetState().HasReachedGoal(); } | 807 | bool AP_HasReachedGoal() { return GetState().HasReachedGoal(); } |
802 | 808 | ||
803 | std::optional<std::tuple<int, int>> AP_GetPlayerPosition() { | 809 | std::optional<std::tuple<int, int>> AP_GetPlayerPosition() { |