diff options
Diffstat (limited to 'apworld/player_logic.py')
| -rw-r--r-- | apworld/player_logic.py | 14 |
1 files changed, 7 insertions, 7 deletions
| diff --git a/apworld/player_logic.py b/apworld/player_logic.py index 0cbcdec..1d68e4a 100644 --- a/apworld/player_logic.py +++ b/apworld/player_logic.py | |||
| @@ -299,7 +299,8 @@ class Lingo2PlayerLogic: | |||
| 299 | if door.map_id not in self.shuffled_maps: | 299 | if door.map_id not in self.shuffled_maps: |
| 300 | continue | 300 | continue |
| 301 | 301 | ||
| 302 | if door.type in [data_pb2.DoorType.EVENT, data_pb2.DoorType.LOCATION_ONLY, data_pb2.DoorType.GRAVESTONE]: | 302 | if door.type in [data_pb2.DoorType.EVENT, data_pb2.DoorType.LOCATION_ONLY, data_pb2.DoorType.GRAVESTONE, |
| 303 | data_pb2.DoorType.LEGACY_LOCATION]: | ||
| 303 | continue | 304 | continue |
| 304 | 305 | ||
| 305 | if door.id in self.item_by_door: | 306 | if door.id in self.item_by_door: |
| @@ -389,14 +390,14 @@ class Lingo2PlayerLogic: | |||
| 389 | self.locations_by_room.setdefault(ending.room_id, []).append(PlayerLocation(ending.ap_id, | 390 | self.locations_by_room.setdefault(ending.room_id, []).append(PlayerLocation(ending.ap_id, |
| 390 | AccessRequirements())) | 391 | AccessRequirements())) |
| 391 | 392 | ||
| 392 | event_name = f"{ending.name.capitalize()} Ending (Achieved)" | ||
| 393 | item_name = "Ending" | ||
| 394 | |||
| 395 | if world.options.victory_condition.current_key.removesuffix("_ending").upper() == ending.name: | 393 | if world.options.victory_condition.current_key.removesuffix("_ending").upper() == ending.name: |
| 396 | item_name = "Victory" | 394 | event_name = f"{ending.name.capitalize()} Ending (Goal)" |
| 395 | self.event_loc_item_by_room.setdefault(ending.room_id, {})[event_name] = "Victory" | ||
| 397 | self.goal_room_id = ending.room_id | 396 | self.goal_room_id = ending.room_id |
| 398 | 397 | ||
| 399 | self.event_loc_item_by_room.setdefault(ending.room_id, {})[event_name] = item_name | 398 | if ending.name != "WHITE": |
| 399 | event_name = f"{ending.name.capitalize()} Ending (Achieved)" | ||
| 400 | self.event_loc_item_by_room.setdefault(ending.room_id, {})[event_name] = "Ending" | ||
| 400 | 401 | ||
| 401 | if self.world.options.keyholder_sanity: | 402 | if self.world.options.keyholder_sanity: |
| 402 | for keyholder in world.static_logic.objects.keyholders: | 403 | for keyholder in world.static_logic.objects.keyholders: |
| @@ -511,7 +512,6 @@ class Lingo2PlayerLogic: | |||
| 511 | reqs.possibilities.append(panel_reqs) | 512 | reqs.possibilities.append(panel_reqs) |
| 512 | 513 | ||
| 513 | if door.HasField("control_center_color"): | 514 | if door.HasField("control_center_color"): |
| 514 | # TODO: Logic for ensuring two CC states aren't needed at once. | ||
| 515 | reqs.rooms.add("Control Center - Main Area") | 515 | reqs.rooms.add("Control Center - Main Area") |
| 516 | self.add_solution_reqs(reqs, door.control_center_color) | 516 | self.add_solution_reqs(reqs, door.control_center_color) |
| 517 | 517 | ||
