From bcf503855107404ab3c8e0a7edd750c2720f8024 Mon Sep 17 00:00:00 2001 From: Star Rauchenberger Date: Wed, 20 Aug 2025 15:28:40 -0400 Subject: Maps have display names now Also added endings to the apworld. --- apworld/static_logic.py | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) (limited to 'apworld/static_logic.py') diff --git a/apworld/static_logic.py b/apworld/static_logic.py index 9cd3ced..965ce3e 100644 --- a/apworld/static_logic.py +++ b/apworld/static_logic.py @@ -18,7 +18,7 @@ class Lingo2StaticLogic: for door in self.objects.doors: if door.type in [data_pb2.DoorType.STANDARD, data_pb2.DoorType.LOCATION_ONLY, data_pb2.DoorType.GRAVESTONE]: - location_name = f"{self.objects.maps[door.map_id].name} - {door.name}" + location_name = f"{self.get_map_object_map_name(door)} - {door.name}" self.location_id_to_name[door.ap_id] = location_name if door.type not in [data_pb2.DoorType.EVENT, data_pb2.DoorType.LOCATION_ONLY, data_pb2.DoorType.GRAVESTONE]: @@ -27,16 +27,20 @@ class Lingo2StaticLogic: for letter in self.objects.letters: letter_name = f"{letter.key.upper()}{'2' if letter.level2 else '1'}" - location_name = f"{self.objects.maps[self.objects.rooms[letter.room_id].map_id].name} - {letter_name}" + location_name = f"{self.get_room_object_map_name(letter)} - {letter_name}" self.location_id_to_name[letter.ap_id] = location_name if not letter.level2: self.item_id_to_name[letter.ap_id] = letter_name for mastery in self.objects.masteries: - location_name = f"{self.objects.maps[self.objects.rooms[mastery.room_id].map_id].name} - Mastery" + location_name = f"{self.get_room_object_map_name(mastery)} - Mastery" self.location_id_to_name[mastery.ap_id] = location_name + for ending in self.objects.endings: + location_name = f"{self.get_room_object_map_name(ending)} - {ending.name.title()} Ending" + self.location_id_to_name[ending.ap_id] = location_name + self.item_id_to_name[self.objects.special_ids["Nothing"]] = "Nothing" self.item_name_to_id = {name: ap_id for ap_id, name in self.item_id_to_name.items()} @@ -44,8 +48,14 @@ class Lingo2StaticLogic: def get_door_item_name(self, door_id: int) -> str: door = self.objects.doors[door_id] - return f"{self.objects.maps[door.map_id].name} - {door.name}" + return f"{self.get_map_object_map_name(door)} - {door.name}" def get_room_region_name(self, room_id: int) -> str: room = self.objects.rooms[room_id] - return f"{self.objects.maps[room.map_id].name} - {room.name}" + return f"{self.get_map_object_map_name(room)} - {room.name}" + + def get_map_object_map_name(self, obj) -> str: + return self.objects.maps[obj.map_id].display_name + + def get_room_object_map_name(self, obj) -> str: + return self.get_map_object_map_name(self.objects.rooms[obj.room_id]) -- cgit 1.4.1