From c9da387ede51f207825b63d9f13036a7b661d4b3 Mon Sep 17 00:00:00 2001 From: Star Rauchenberger Date: Thu, 7 Aug 2025 16:05:15 -0400 Subject: Started apworld vcpkg's libprotobuf is older than what PIP has, but neither are completely up to date either. Ugh. Doors have a room now because that's where the location will go. --- apworld/regions.py | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 apworld/regions.py (limited to 'apworld/regions.py') diff --git a/apworld/regions.py b/apworld/regions.py new file mode 100644 index 0000000..24c2281 --- /dev/null +++ b/apworld/regions.py @@ -0,0 +1,28 @@ +from typing import TYPE_CHECKING + +from BaseClasses import Region +from .locations import Lingo2Location + +if TYPE_CHECKING: + from . import Lingo2World + + +def create_region(room, world: "Lingo2World") -> Region: + new_region = Region(room.name, world.player, world.multiworld) + + for location in world.player_logic.locations_by_room.get(room.id, {}): + new_location = Lingo2Location(world.player, location.name, location.code, new_region) + new_region.locations.append(new_location) + + return new_region + + +def create_regions(world: "Lingo2World"): + regions = { + "Menu": Region("Menu", world.player, world.multiworld) + } + + for room in world.static_logic.objects.rooms: + regions[room.name] = create_region(room, world) + + world.multiworld.regions += regions.values() -- cgit 1.4.1