Lingo: Expand sphere 1 under restrictive conditions (#3190)
This commit is contained in:
parent
ea6235e0d9
commit
fc571ba356
|
@ -10,6 +10,7 @@ class LocationClassification(Flag):
|
|||
normal = auto()
|
||||
reduced = auto()
|
||||
insanity = auto()
|
||||
small_sphere_one = auto()
|
||||
|
||||
|
||||
class LocationData(NamedTuple):
|
||||
|
@ -47,6 +48,9 @@ def load_location_data():
|
|||
if not panel.exclude_reduce:
|
||||
classification |= LocationClassification.reduced
|
||||
|
||||
if room_name == "Starting Room":
|
||||
classification |= LocationClassification.small_sphere_one
|
||||
|
||||
ALL_LOCATION_TABLE[location_name] = \
|
||||
LocationData(get_panel_location_id(room_name, panel_name), room_name,
|
||||
[RoomAndPanel(None, panel_name)], classification)
|
||||
|
|
|
@ -236,9 +236,12 @@ class LingoPlayerLogic:
|
|||
elif location_checks == LocationChecks.option_insanity:
|
||||
location_classification = LocationClassification.insanity
|
||||
|
||||
if door_shuffle != ShuffleDoors.option_none and not early_color_hallways:
|
||||
location_classification |= LocationClassification.small_sphere_one
|
||||
|
||||
for location_name, location_data in ALL_LOCATION_TABLE.items():
|
||||
if location_name != self.victory_condition:
|
||||
if location_classification not in location_data.classification:
|
||||
if not (location_classification & location_data.classification):
|
||||
continue
|
||||
|
||||
self.add_location(location_data.room, location_name, location_data.code, location_data.panels, world)
|
||||
|
|
Loading…
Reference in New Issue