summary refs log tree commit diff stats
path: root/test/TestOrangeTower.py
diff options
context:
space:
mode:
authorStar Rauchenberger <fefferburbia@gmail.com>2023-11-08 18:35:12 -0500
committerGitHub <noreply@github.com>2023-11-08 17:35:12 -0600
commitbbbbc71bee25cfd22c5304f98f5a7881383585a3 (patch)
treed27581db7b8db03da4b731fe8c2d5072d3162cf8 /test/TestOrangeTower.py
downloadlingo-apworld-bbbbc71bee25cfd22c5304f98f5a7881383585a3.tar.gz
lingo-apworld-bbbbc71bee25cfd22c5304f98f5a7881383585a3.tar.bz2
lingo-apworld-bbbbc71bee25cfd22c5304f98f5a7881383585a3.zip
Lingo: New game (#1806)
Co-authored-by: Aaron Wagener <mmmcheese158@gmail.com>
Co-authored-by: Fabian Dill <Berserker66@users.noreply.github.com>
Co-authored-by: Phar <zach@alliware.com>
Diffstat (limited to 'test/TestOrangeTower.py')
-rw-r--r--test/TestOrangeTower.py175
1 files changed, 175 insertions, 0 deletions
diff --git a/test/TestOrangeTower.py b/test/TestOrangeTower.py new file mode 100644 index 0000000..7b0c3bb --- /dev/null +++ b/test/TestOrangeTower.py
@@ -0,0 +1,175 @@
1from . import LingoTestBase
2
3
4class TestProgressiveOrangeTower(LingoTestBase):
5 options = {
6 "shuffle_doors": "complex",
7 "progressive_orange_tower": "true"
8 }
9
10 def test_from_welcome_back(self) -> None:
11 self.assertFalse(self.multiworld.state.can_reach("Orange Tower First Floor", "Region", self.player))
12 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Second Floor", "Region", self.player))
13 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Third Floor", "Region", self.player))
14 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Fourth Floor", "Region", self.player))
15 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Fifth Floor", "Region", self.player))
16 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Sixth Floor", "Region", self.player))
17 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Seventh Floor", "Region", self.player))
18
19 self.collect_by_name("Welcome Back Area - Shortcut to Starting Room")
20 self.collect_by_name("Orange Tower Fifth Floor - Welcome Back")
21 self.assertFalse(self.multiworld.state.can_reach("Orange Tower First Floor", "Region", self.player))
22 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Second Floor", "Region", self.player))
23 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Third Floor", "Region", self.player))
24 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Fourth Floor", "Region", self.player))
25 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Fifth Floor", "Region", self.player))
26 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Sixth Floor", "Region", self.player))
27 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Seventh Floor", "Region", self.player))
28
29 progressive_tower = self.get_items_by_name("Progressive Orange Tower")
30
31 self.collect(progressive_tower[0])
32 self.assertFalse(self.multiworld.state.can_reach("Orange Tower First Floor", "Region", self.player))
33 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Second Floor", "Region", self.player))
34 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Third Floor", "Region", self.player))
35 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Fourth Floor", "Region", self.player))
36 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Fifth Floor", "Region", self.player))
37 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Sixth Floor", "Region", self.player))
38 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Seventh Floor", "Region", self.player))
39
40 self.collect(progressive_tower[1])
41 self.assertFalse(self.multiworld.state.can_reach("Orange Tower First Floor", "Region", self.player))
42 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Second Floor", "Region", self.player))
43 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Third Floor", "Region", self.player))
44 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Fourth Floor", "Region", self.player))
45 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Fifth Floor", "Region", self.player))
46 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Sixth Floor", "Region", self.player))
47 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Seventh Floor", "Region", self.player))
48
49 self.collect(progressive_tower[2])
50 self.assertFalse(self.multiworld.state.can_reach("Orange Tower First Floor", "Region", self.player))
51 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Second Floor", "Region", self.player))
52 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Third Floor", "Region", self.player))
53 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Fourth Floor", "Region", self.player))
54 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Fifth Floor", "Region", self.player))
55 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Sixth Floor", "Region", self.player))
56 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Seventh Floor", "Region", self.player))
57
58 self.collect(progressive_tower[3])
59 self.assertTrue(self.multiworld.state.can_reach("Orange Tower First Floor", "Region", self.player))
60 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Second Floor", "Region", self.player))
61 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Third Floor", "Region", self.player))
62 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Fourth Floor", "Region", self.player))
63 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Fifth Floor", "Region", self.player))
64 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Sixth Floor", "Region", self.player))
65 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Seventh Floor", "Region", self.player))
66
67 self.collect(progressive_tower[4])
68 self.assertTrue(self.multiworld.state.can_reach("Orange Tower First Floor", "Region", self.player))
69 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Second Floor", "Region", self.player))
70 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Third Floor", "Region", self.player))
71 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Fourth Floor", "Region", self.player))
72 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Fifth Floor", "Region", self.player))
73 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Sixth Floor", "Region", self.player))
74 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Seventh Floor", "Region", self.player))
75
76 self.collect(progressive_tower[5])
77 self.assertTrue(self.multiworld.state.can_reach("Orange Tower First Floor", "Region", self.player))
78 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Second Floor", "Region", self.player))
79 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Third Floor", "Region", self.player))
80 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Fourth Floor", "Region", self.player))
81 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Fifth Floor", "Region", self.player))
82 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Sixth Floor", "Region", self.player))
83 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Seventh Floor", "Region", self.player))
84
85 def test_from_hub_room(self) -> None:
86 self.assertFalse(self.multiworld.state.can_reach("Orange Tower First Floor", "Region", self.player))
87 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Second Floor", "Region", self.player))
88 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Third Floor", "Region", self.player))
89 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Fourth Floor", "Region", self.player))
90 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Fifth Floor", "Region", self.player))
91 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Sixth Floor", "Region", self.player))
92 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Seventh Floor", "Region", self.player))
93
94 self.collect_by_name("Second Room - Exit Door")
95 self.assertFalse(self.multiworld.state.can_reach("Orange Tower First Floor", "Region", self.player))
96 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Second Floor", "Region", self.player))
97 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Third Floor", "Region", self.player))
98 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Fourth Floor", "Region", self.player))
99 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Fifth Floor", "Region", self.player))
100 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Sixth Floor", "Region", self.player))
101 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Seventh Floor", "Region", self.player))
102
103 self.collect_by_name("Orange Tower First Floor - Shortcut to Hub Room")
104 self.assertTrue(self.multiworld.state.can_reach("Orange Tower First Floor", "Region", self.player))
105 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Second Floor", "Region", self.player))
106 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Third Floor", "Region", self.player))
107 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Fourth Floor", "Region", self.player))
108 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Fifth Floor", "Region", self.player))
109 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Sixth Floor", "Region", self.player))
110 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Seventh Floor", "Region", self.player))
111
112 progressive_tower = self.get_items_by_name("Progressive Orange Tower")
113
114 self.collect(progressive_tower[0])
115 self.assertTrue(self.multiworld.state.can_reach("Orange Tower First Floor", "Region", self.player))
116 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Second Floor", "Region", self.player))
117 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Third Floor", "Region", self.player))
118 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Fourth Floor", "Region", self.player))
119 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Fifth Floor", "Region", self.player))
120 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Sixth Floor", "Region", self.player))
121 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Seventh Floor", "Region", self.player))
122
123 self.remove(self.get_item_by_name("Orange Tower First Floor - Shortcut to Hub Room"))
124 self.assertTrue(self.multiworld.state.can_reach("Orange Tower First Floor", "Region", self.player))
125 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Second Floor", "Region", self.player))
126 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Third Floor", "Region", self.player))
127 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Fourth Floor", "Region", self.player))
128 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Fifth Floor", "Region", self.player))
129 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Sixth Floor", "Region", self.player))
130 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Seventh Floor", "Region", self.player))
131
132 self.collect(progressive_tower[1])
133 self.assertTrue(self.multiworld.state.can_reach("Orange Tower First Floor", "Region", self.player))
134 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Second Floor", "Region", self.player))
135 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Third Floor", "Region", self.player))
136 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Fourth Floor", "Region", self.player))
137 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Fifth Floor", "Region", self.player))
138 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Sixth Floor", "Region", self.player))
139 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Seventh Floor", "Region", self.player))
140
141 self.collect(progressive_tower[2])
142 self.assertTrue(self.multiworld.state.can_reach("Orange Tower First Floor", "Region", self.player))
143 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Second Floor", "Region", self.player))
144 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Third Floor", "Region", self.player))
145 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Fourth Floor", "Region", self.player))
146 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Fifth Floor", "Region", self.player))
147 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Sixth Floor", "Region", self.player))
148 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Seventh Floor", "Region", self.player))
149
150 self.collect(progressive_tower[3])
151 self.assertTrue(self.multiworld.state.can_reach("Orange Tower First Floor", "Region", self.player))
152 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Second Floor", "Region", self.player))
153 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Third Floor", "Region", self.player))
154 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Fourth Floor", "Region", self.player))
155 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Fifth Floor", "Region", self.player))
156 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Sixth Floor", "Region", self.player))
157 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Seventh Floor", "Region", self.player))
158
159 self.collect(progressive_tower[4])
160 self.assertTrue(self.multiworld.state.can_reach("Orange Tower First Floor", "Region", self.player))
161 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Second Floor", "Region", self.player))
162 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Third Floor", "Region", self.player))
163 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Fourth Floor", "Region", self.player))
164 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Fifth Floor", "Region", self.player))
165 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Sixth Floor", "Region", self.player))
166 self.assertFalse(self.multiworld.state.can_reach("Orange Tower Seventh Floor", "Region", self.player))
167
168 self.collect(progressive_tower[5])
169 self.assertTrue(self.multiworld.state.can_reach("Orange Tower First Floor", "Region", self.player))
170 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Second Floor", "Region", self.player))
171 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Third Floor", "Region", self.player))
172 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Fourth Floor", "Region", self.player))
173 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Fifth Floor", "Region", self.player))
174 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Sixth Floor", "Region", self.player))
175 self.assertTrue(self.multiworld.state.can_reach("Orange Tower Seventh Floor", "Region", self.player))