From 92466595897a95c5ec984e4c530d0833fb8c8a72 Mon Sep 17 00:00:00 2001 From: NewSoupVi <57900059+NewSoupVi@users.noreply.github.com> Date: Mon, 16 Jun 2025 13:49:30 +0200 Subject: [PATCH] Make sure ladx removes the same copy of the starting item from the itempool that it's placing (#5110) --- worlds/ladx/__init__.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/worlds/ladx/__init__.py b/worlds/ladx/__init__.py index 78ae1ce8..b1b033e0 100644 --- a/worlds/ladx/__init__.py +++ b/worlds/ladx/__init__.py @@ -335,7 +335,9 @@ class LinksAwakeningWorld(World): start_item = next((item for item in start_items if opens_new_regions(item)), None) if start_item: - itempool.remove(start_item) + # Make sure we're removing the same copy of the item that we're placing + # (.remove checks __eq__, which could be a different copy, so we find the first index and use .pop) + start_item = itempool.pop(itempool.index(start_item)) start_loc.place_locked_item(start_item) else: logging.getLogger("Link's Awakening Logger").warning(f"No {self.options.tarins_gift.current_option_name} available for Tarin's Gift.")