diff options
author | Star Rauchenberger <fefferburbia@gmail.com> | 2025-09-06 09:19:22 -0400 |
---|---|---|
committer | Star Rauchenberger <fefferburbia@gmail.com> | 2025-09-06 09:19:22 -0400 |
commit | ebda0b634c2396338b86b45128bf507c967e88a7 (patch) | |
tree | 80324582c52350c262dd4b5b7a824401ce6ebe4a /apworld/rules.py | |
parent | cc58fb28a7825f562c874b56fa08656096cc6a6c (diff) | |
download | lingo2-archipelago-ebda0b634c2396338b86b45128bf507c967e88a7.tar.gz lingo2-archipelago-ebda0b634c2396338b86b45128bf507c967e88a7.tar.bz2 lingo2-archipelago-ebda0b634c2396338b86b45128bf507c967e88a7.zip |
[Apworld] Added letter shuffle
Diffstat (limited to 'apworld/rules.py')
-rw-r--r-- | apworld/rules.py | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/apworld/rules.py b/apworld/rules.py index 5e20de5..56486fa 100644 --- a/apworld/rules.py +++ b/apworld/rules.py | |||
@@ -24,6 +24,11 @@ def lingo2_can_satisfy_requirements(state: CollectionState, reqs: AccessRequirem | |||
24 | if not state.has(letter_key, world.player, letter_level): | 24 | if not state.has(letter_key, world.player, letter_level): |
25 | return False | 25 | return False |
26 | 26 | ||
27 | if reqs.cyans: | ||
28 | if not any(state.has(letter, world.player, amount) | ||
29 | for letter, amount in world.player_logic.double_letter_amount.items()): | ||
30 | return False | ||
31 | |||
27 | if len(reqs.or_logic) > 0: | 32 | if len(reqs.or_logic) > 0: |
28 | if not all(any(lingo2_can_satisfy_requirements(state, sub_reqs, world) for sub_reqs in subjunction) | 33 | if not all(any(lingo2_can_satisfy_requirements(state, sub_reqs, world) for sub_reqs in subjunction) |
29 | for subjunction in reqs.or_logic): | 34 | for subjunction in reqs.or_logic): |