diff options
| author | Star Rauchenberger <fefferburbia@gmail.com> | 2025-10-23 12:13:09 -0400 |
|---|---|---|
| committer | Star Rauchenberger <fefferburbia@gmail.com> | 2025-10-23 12:13:09 -0400 |
| commit | 8cfee29fe6500e96c3b8669c12ac944716e9aae4 (patch) | |
| tree | bf4723a1790d30155bb70fc710d416f008790b27 /apworld/options.py | |
| parent | 3cb2ced48dec3b9ea60e008b2a3598a322458adf (diff) | |
| download | lingo2-archipelago-8cfee29fe6500e96c3b8669c12ac944716e9aae4.tar.gz lingo2-archipelago-8cfee29fe6500e96c3b8669c12ac944716e9aae4.tar.bz2 lingo2-archipelago-8cfee29fe6500e96c3b8669c12ac944716e9aae4.zip | |
Added "Enable Gift Maps" option
Only supports The Advanced so far. Also added the mastery to The Advanced. Location listeners are now created after any map edits are made since some locations may require custom nodes (like The Advanced's mastery).
Diffstat (limited to 'apworld/options.py')
| -rw-r--r-- | apworld/options.py | 20 |
1 files changed, 19 insertions, 1 deletions
| diff --git a/apworld/options.py b/apworld/options.py index 600df6a..4d9c3aa 100644 --- a/apworld/options.py +++ b/apworld/options.py | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | from dataclasses import dataclass | 1 | from dataclasses import dataclass |
| 2 | 2 | ||
| 3 | from Options import PerGameCommonOptions, Toggle, Choice, DefaultOnToggle, Range | 3 | from Options import PerGameCommonOptions, Toggle, Choice, DefaultOnToggle, Range, OptionSet |
| 4 | 4 | ||
| 5 | 5 | ||
| 6 | class ShuffleDoors(DefaultOnToggle): | 6 | class ShuffleDoors(DefaultOnToggle): |
| @@ -99,6 +99,23 @@ class EnableIcarus(Toggle): | |||
| 99 | display_name = "Enable Icarus" | 99 | display_name = "Enable Icarus" |
| 100 | 100 | ||
| 101 | 101 | ||
| 102 | class EnableGiftMaps(OptionSet): | ||
| 103 | """ | ||
| 104 | Controls whether the beta tester gift maps are randomized. By default, these are not accessible at all from within | ||
| 105 | the randomizer. Enabling at least one gift map will cause a panel to appear in The Entry's Starting Room. Gift maps | ||
| 106 | can be accessed by taking a player name that would ordinarily cause the game to load into a gift map, and entering | ||
| 107 | it into this panel. | ||
| 108 | |||
| 109 | In the base game, nothing happens once you complete a gift map. Masteries have been added to the gift maps in the | ||
| 110 | randomizer so that the player can be rewarded for completing them. | ||
| 111 | |||
| 112 | Note that the gift maps are intended only for specific people, and as a result may be frustrating or require | ||
| 113 | knowledge of inside jokes. The Crystalline is particularly difficult as it requires completing a parkour course. | ||
| 114 | """ | ||
| 115 | display_name = "Enable Gift Maps" | ||
| 116 | valid_keys = ["The Advanced", "The Charismatic", "The Crystalline", "The Fuzzy", "The Stellar"] | ||
| 117 | |||
| 118 | |||
| 102 | class DaedalusRoofAccess(Toggle): | 119 | class DaedalusRoofAccess(Toggle): |
| 103 | """ | 120 | """ |
| 104 | If enabled, the player will be logically expected to be able to go from the castle entrance to any part of Daedalus | 121 | If enabled, the player will be logically expected to be able to go from the castle entrance to any part of Daedalus |
| @@ -178,6 +195,7 @@ class Lingo2Options(PerGameCommonOptions): | |||
| 178 | keyholder_sanity: KeyholderSanity | 195 | keyholder_sanity: KeyholderSanity |
| 179 | cyan_door_behavior: CyanDoorBehavior | 196 | cyan_door_behavior: CyanDoorBehavior |
| 180 | enable_icarus: EnableIcarus | 197 | enable_icarus: EnableIcarus |
| 198 | enable_gift_maps: EnableGiftMaps | ||
| 181 | daedalus_roof_access: DaedalusRoofAccess | 199 | daedalus_roof_access: DaedalusRoofAccess |
| 182 | strict_purple_ending: StrictPurpleEnding | 200 | strict_purple_ending: StrictPurpleEnding |
| 183 | strict_cyan_ending: StrictCyanEnding | 201 | strict_cyan_ending: StrictCyanEnding |
