From b599a7607ddb9bbb02840c0c9bdf4d99f7aaaa01 Mon Sep 17 00:00:00 2001 From: black-sliver <59490463+black-sliver@users.noreply.github.com> Date: Thu, 24 Mar 2022 01:39:18 +0100 Subject: [PATCH] SoE: mark traps as being traps --- worlds/soe/__init__.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/worlds/soe/__init__.py b/worlds/soe/__init__.py index cfa9a9bc87..12696e6c5c 100644 --- a/worlds/soe/__init__.py +++ b/worlds/soe/__init__.py @@ -161,10 +161,12 @@ class SoEWorld(World): progression = True return SoEItem(event, progression, None, self.player) - def create_item(self, item: typing.Union[pyevermizer.Item, str], force_progression: bool = False) -> Item: + def create_item(self, item: typing.Union[pyevermizer.Item, str]) -> Item: if type(item) is str: item = self.item_id_to_raw[self.item_name_to_id[item]] - return SoEItem(item.name, force_progression or item.progression, self.item_name_to_id[item.name], self.player) + res = SoEItem(item.name, item.progression, self.item_name_to_id[item.name], self.player) + res.trap = item.type == pyevermizer.CHECK_TRAP + return res def create_regions(self): # TODO: generate *some* regions from locations' requirements? @@ -204,7 +206,7 @@ class SoEWorld(World): trap_names = {'quake': getattr(self.world, 'trap_chance_quake')[self.player].item_name} trap_chances_total = 1 - def create_trap(): + def create_trap() -> Item: v = self.world.random.randrange(trap_chances_total) for t, c in trap_chances.items(): if v < c: