mirror of
https://github.com/ArchipelagoMW/Archipelago.git
synced 2026-03-26 08:03:20 -07:00
DS3: Update/Fix Excluded Locations Logging (#5220)
* DS3: Fix Excluded Locations in Spoiler Log * Update __init__.py * update wording * Comment out failing code
This commit is contained in:
@@ -90,6 +90,22 @@ class DarkSouls3World(World):
|
||||
self.created_regions = set()
|
||||
self.all_excluded_locations.update(self.options.exclude_locations.value)
|
||||
|
||||
# This code doesn't work because tests don't verify options
|
||||
# Don't consider disabled locations to be AP-excluded
|
||||
# if not self.options.enable_dlc:
|
||||
# self.options.exclude_locations.value = {
|
||||
# location
|
||||
# for location in self.options.exclude_locations
|
||||
# if not location_dictionary[location].dlc
|
||||
# }
|
||||
|
||||
# if not self.options.enable_ngp:
|
||||
# self.options.exclude_locations.value = {
|
||||
# location for
|
||||
# location in self.options.exclude_locations
|
||||
# if not location_dictionary[location].ngp
|
||||
# }
|
||||
|
||||
# Inform Universal Tracker where Yhorm is being randomized to.
|
||||
if hasattr(self.multiworld, "re_gen_passthrough"):
|
||||
if "Dark Souls III" in self.multiworld.re_gen_passthrough:
|
||||
@@ -264,6 +280,13 @@ class DarkSouls3World(World):
|
||||
):
|
||||
new_location.progress_type = LocationProgressType.EXCLUDED
|
||||
else:
|
||||
# Don't consider non-randomized locations to be AP-excluded
|
||||
if location.name in excluded:
|
||||
excluded.remove(location.name)
|
||||
# Only remove from all_excluded if excluded does not have priority over missable
|
||||
if not (self.options.missable_location_behavior < self.options.excluded_location_behavior):
|
||||
self.all_excluded_locations.remove(location.name)
|
||||
|
||||
# Don't allow missable duplicates of progression items to be expected progression.
|
||||
if location.name in self.missable_dupe_prog_locs: continue
|
||||
|
||||
@@ -283,11 +306,6 @@ class DarkSouls3World(World):
|
||||
parent = new_region,
|
||||
)
|
||||
new_location.place_locked_item(event_item)
|
||||
if location.name in excluded:
|
||||
excluded.remove(location.name)
|
||||
# Only remove from all_excluded if excluded does not have priority over missable
|
||||
if not (self.options.missable_location_behavior < self.options.excluded_location_behavior):
|
||||
self.all_excluded_locations.remove(location.name)
|
||||
|
||||
new_region.locations.append(new_location)
|
||||
|
||||
@@ -1357,7 +1375,7 @@ class DarkSouls3World(World):
|
||||
if self.yhorm_location != default_yhorm_location:
|
||||
text += f"\nYhorm takes the place of {self.yhorm_location.name} in {self.player_name}'s world\n"
|
||||
|
||||
if self.options.excluded_location_behavior == "allow_useful":
|
||||
if self.options.excluded_location_behavior != "forbid_useful":
|
||||
text += f"\n{self.player_name}'s world excluded: {sorted(self.all_excluded_locations)}\n"
|
||||
|
||||
if text:
|
||||
|
||||
Reference in New Issue
Block a user