diff --git a/worlds/sc2/PoolFilter.py b/worlds/sc2/PoolFilter.py index c65751e7f6d9..92e5eae60dcd 100644 --- a/worlds/sc2/PoolFilter.py +++ b/worlds/sc2/PoolFilter.py @@ -322,7 +322,7 @@ def attempt_removal(item: Item) -> bool: removable_generic_items = [] self.multiworld.random.shuffle(generic_items) for item in generic_items[:reserved_generic_amount]: - locked_items.append(item) + locked_items.append(copy_item(item)) inventory.remove(item) if item.name not in self.logical_inventory and item.name not in self.locked_items: removable_generic_items.append(item) diff --git a/worlds/sc2/Regions.py b/worlds/sc2/Regions.py index 7a231a025060..fde67ce44068 100644 --- a/worlds/sc2/Regions.py +++ b/worlds/sc2/Regions.py @@ -229,7 +229,7 @@ def wol_cleared_missions(state: CollectionState, mission_count: int) -> bool: lambda state: state.has("Beat Rak'Shir", player)), connect(multiworld, player, names, "Templar's Charge", "Templar's Return", lambda state: state.has("Beat Purification", player) - and state.has("Beat Rak Shir", player) + and state.has("Beat Rak'Shir", player) and state.has("Beat Templar's Charge", player)), connect(multiworld, player, names, "Templar's Return", "The Host", lambda state: state.has("Beat Templar's Return", player)),