| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  | # Locations are specific points that you would obtain an item at. | 
					
						
							|  |  |  | from enum import IntEnum | 
					
						
							| 
									
										
										
										
											2023-07-18 22:51:01 -04:00
										 |  |  | from typing import Dict, NamedTuple, Optional, Set | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  | 
 | 
					
						
							|  |  |  | from BaseClasses import Location | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class NoitaLocation(Location): | 
					
						
							|  |  |  |     game: str = "Noita" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class LocationData(NamedTuple): | 
					
						
							|  |  |  |     id: int | 
					
						
							|  |  |  |     flag: int = 0 | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  |     ltype: str = "Shop" | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class LocationFlag(IntEnum): | 
					
						
							|  |  |  |     none = 0 | 
					
						
							|  |  |  |     main_path = 1 | 
					
						
							|  |  |  |     side_path = 2 | 
					
						
							|  |  |  |     main_world = 3 | 
					
						
							|  |  |  |     parallel_worlds = 4 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Mapping of items in each region. | 
					
						
							|  |  |  | # Only the first Hidden Chest and Pedestal are mapped here, the others are created in Regions. | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  | # ltype key: "Chest" = Hidden Chests, "Pedestal" = Pedestals, "Boss" = Boss, "Orb" = Orb. | 
					
						
							| 
									
										
										
										
											2024-04-18 12:34:57 -04:00
										 |  |  | # 110000-110671 | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  | location_region_mapping: Dict[str, Dict[str, LocationData]] = { | 
					
						
							|  |  |  |     "Coal Pits Holy Mountain": { | 
					
						
							|  |  |  |         "Coal Pits Holy Mountain Shop Item 1":   LocationData(110000), | 
					
						
							|  |  |  |         "Coal Pits Holy Mountain Shop Item 2":   LocationData(110001), | 
					
						
							|  |  |  |         "Coal Pits Holy Mountain Shop Item 3":   LocationData(110002), | 
					
						
							|  |  |  |         "Coal Pits Holy Mountain Shop Item 4":   LocationData(110003), | 
					
						
							|  |  |  |         "Coal Pits Holy Mountain Shop Item 5":   LocationData(110004), | 
					
						
							|  |  |  |         "Coal Pits Holy Mountain Spell Refresh": LocationData(110005), | 
					
						
							|  |  |  |     }, | 
					
						
							|  |  |  |     "Snowy Depths Holy Mountain": { | 
					
						
							|  |  |  |         "Snowy Depths Holy Mountain Shop Item 1":   LocationData(110006), | 
					
						
							|  |  |  |         "Snowy Depths Holy Mountain Shop Item 2":   LocationData(110007), | 
					
						
							|  |  |  |         "Snowy Depths Holy Mountain Shop Item 3":   LocationData(110008), | 
					
						
							|  |  |  |         "Snowy Depths Holy Mountain Shop Item 4":   LocationData(110009), | 
					
						
							|  |  |  |         "Snowy Depths Holy Mountain Shop Item 5":   LocationData(110010), | 
					
						
							|  |  |  |         "Snowy Depths Holy Mountain Spell Refresh": LocationData(110011), | 
					
						
							|  |  |  |     }, | 
					
						
							|  |  |  |     "Hiisi Base Holy Mountain": { | 
					
						
							|  |  |  |         "Hiisi Base Holy Mountain Shop Item 1":   LocationData(110012), | 
					
						
							|  |  |  |         "Hiisi Base Holy Mountain Shop Item 2":   LocationData(110013), | 
					
						
							|  |  |  |         "Hiisi Base Holy Mountain Shop Item 3":   LocationData(110014), | 
					
						
							|  |  |  |         "Hiisi Base Holy Mountain Shop Item 4":   LocationData(110015), | 
					
						
							|  |  |  |         "Hiisi Base Holy Mountain Shop Item 5":   LocationData(110016), | 
					
						
							|  |  |  |         "Hiisi Base Holy Mountain Spell Refresh": LocationData(110017), | 
					
						
							|  |  |  |     }, | 
					
						
							|  |  |  |     "Underground Jungle Holy Mountain": { | 
					
						
							|  |  |  |         "Underground Jungle Holy Mountain Shop Item 1":   LocationData(110018), | 
					
						
							|  |  |  |         "Underground Jungle Holy Mountain Shop Item 2":   LocationData(110019), | 
					
						
							|  |  |  |         "Underground Jungle Holy Mountain Shop Item 3":   LocationData(110020), | 
					
						
							|  |  |  |         "Underground Jungle Holy Mountain Shop Item 4":   LocationData(110021), | 
					
						
							|  |  |  |         "Underground Jungle Holy Mountain Shop Item 5":   LocationData(110022), | 
					
						
							|  |  |  |         "Underground Jungle Holy Mountain Spell Refresh": LocationData(110023), | 
					
						
							|  |  |  |     }, | 
					
						
							|  |  |  |     "Vault Holy Mountain": { | 
					
						
							|  |  |  |         "Vault Holy Mountain Shop Item 1":   LocationData(110024), | 
					
						
							|  |  |  |         "Vault Holy Mountain Shop Item 2":   LocationData(110025), | 
					
						
							|  |  |  |         "Vault Holy Mountain Shop Item 3":   LocationData(110026), | 
					
						
							|  |  |  |         "Vault Holy Mountain Shop Item 4":   LocationData(110027), | 
					
						
							|  |  |  |         "Vault Holy Mountain Shop Item 5":   LocationData(110028), | 
					
						
							|  |  |  |         "Vault Holy Mountain Spell Refresh": LocationData(110029), | 
					
						
							|  |  |  |     }, | 
					
						
							|  |  |  |     "Temple of the Art Holy Mountain": { | 
					
						
							|  |  |  |         "Temple of the Art Holy Mountain Shop Item 1":   LocationData(110030), | 
					
						
							|  |  |  |         "Temple of the Art Holy Mountain Shop Item 2":   LocationData(110031), | 
					
						
							|  |  |  |         "Temple of the Art Holy Mountain Shop Item 3":   LocationData(110032), | 
					
						
							|  |  |  |         "Temple of the Art Holy Mountain Shop Item 4":   LocationData(110033), | 
					
						
							|  |  |  |         "Temple of the Art Holy Mountain Shop Item 5":   LocationData(110034), | 
					
						
							|  |  |  |         "Temple of the Art Holy Mountain Spell Refresh": LocationData(110035), | 
					
						
							|  |  |  |     }, | 
					
						
							|  |  |  |     "Laboratory Holy Mountain": { | 
					
						
							|  |  |  |         "Laboratory Holy Mountain Shop Item 1":   LocationData(110036), | 
					
						
							|  |  |  |         "Laboratory Holy Mountain Shop Item 2":   LocationData(110037), | 
					
						
							|  |  |  |         "Laboratory Holy Mountain Shop Item 3":   LocationData(110038), | 
					
						
							|  |  |  |         "Laboratory Holy Mountain Shop Item 4":   LocationData(110039), | 
					
						
							|  |  |  |         "Laboratory Holy Mountain Shop Item 5":   LocationData(110040), | 
					
						
							|  |  |  |         "Laboratory Holy Mountain Spell Refresh": LocationData(110041), | 
					
						
							|  |  |  |     }, | 
					
						
							|  |  |  |     "Secret Shop": { | 
					
						
							|  |  |  |         "Secret Shop Item 1": LocationData(110042), | 
					
						
							|  |  |  |         "Secret Shop Item 2": LocationData(110043), | 
					
						
							|  |  |  |         "Secret Shop Item 3": LocationData(110044), | 
					
						
							|  |  |  |         "Secret Shop Item 4": LocationData(110045), | 
					
						
							|  |  |  |     }, | 
					
						
							| 
									
										
										
										
											2024-04-18 12:34:57 -04:00
										 |  |  |     "The Sky": { | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  |         "Kivi": LocationData(110670, LocationFlag.main_world, "Boss"), | 
					
						
							| 
									
										
										
										
											2024-04-18 12:34:57 -04:00
										 |  |  |     }, | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  |     "Floating Island": { | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  |         "Floating Island Orb": LocationData(110658, LocationFlag.main_path, "Orb"), | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  |     }, | 
					
						
							|  |  |  |     "Pyramid": { | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  |         "Kolmisilmän Koipi": LocationData(110649, LocationFlag.main_world, "Boss"), | 
					
						
							|  |  |  |         "Pyramid Orb":       LocationData(110659, LocationFlag.main_world, "Orb"), | 
					
						
							|  |  |  |         "Sandcave Orb":      LocationData(110662, LocationFlag.main_world, "Orb"), | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  |     }, | 
					
						
							|  |  |  |     "Overgrown Cavern": { | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  |         "Overgrown Cavern Chest":    LocationData(110526, LocationFlag.main_world, "Chest"), | 
					
						
							|  |  |  |         "Overgrown Cavern Pedestal": LocationData(110546, LocationFlag.main_world, "Pedestal"), | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  |     }, | 
					
						
							|  |  |  |     "Lake": { | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  |         "Syväolento": LocationData(110651, LocationFlag.main_world, "Boss"), | 
					
						
							|  |  |  |         "Tapion vasalli": LocationData(110669, LocationFlag.main_world, "Boss"), | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  |     }, | 
					
						
							|  |  |  |     "Frozen Vault": { | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  |         "Frozen Vault Orb":      LocationData(110660, LocationFlag.main_world, "Orb"), | 
					
						
							|  |  |  |         "Frozen Vault Chest":    LocationData(110566, LocationFlag.main_world, "Chest"), | 
					
						
							|  |  |  |         "Frozen Vault Pedestal": LocationData(110586, LocationFlag.main_world, "Pedestal"), | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  |     }, | 
					
						
							|  |  |  |     "Mines": { | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  |         "Mines Chest":    LocationData(110046, LocationFlag.main_path, "Chest"), | 
					
						
							|  |  |  |         "Mines Pedestal": LocationData(110066, LocationFlag.main_path, "Pedestal"), | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  |     }, | 
					
						
							| 
									
										
										
										
											2024-04-18 12:54:03 -04:00
										 |  |  |     # Collapsed Mines is a very small area, combining it with the Mines. Leaving this here as a reminder | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  |     "Ancient Laboratory": { | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  |         "Ylialkemisti": LocationData(110656, LocationFlag.side_path, "Boss"), | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  |     }, | 
					
						
							|  |  |  |     "Abyss Orb Room": { | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  |         "Sauvojen Tuntija": LocationData(110650, LocationFlag.side_path, "Boss"), | 
					
						
							|  |  |  |         "Abyss Orb":        LocationData(110665, LocationFlag.main_path, "Orb"), | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  |     }, | 
					
						
							|  |  |  |     "Below Lava Lake": { | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  |         "Lava Lake Orb": LocationData(110661, LocationFlag.side_path, "Orb"), | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  |     }, | 
					
						
							|  |  |  |     "Coal Pits": { | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  |         "Coal Pits Chest":    LocationData(110126, LocationFlag.main_path, "Chest"), | 
					
						
							|  |  |  |         "Coal Pits Pedestal": LocationData(110146, LocationFlag.main_path, "Pedestal"), | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  |     }, | 
					
						
							|  |  |  |     "Fungal Caverns": { | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  |         "Fungal Caverns Chest":    LocationData(110166, LocationFlag.side_path, "Chest"), | 
					
						
							|  |  |  |         "Fungal Caverns Pedestal": LocationData(110186, LocationFlag.side_path, "Pedestal"), | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  |     }, | 
					
						
							|  |  |  |     "Snowy Depths": { | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  |         "Snowy Depths Chest":    LocationData(110206, LocationFlag.main_path, "Chest"), | 
					
						
							|  |  |  |         "Snowy Depths Pedestal": LocationData(110226, LocationFlag.main_path, "Pedestal"), | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  |     }, | 
					
						
							|  |  |  |     "Magical Temple": { | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  |         "Magical Temple Orb":  LocationData(110663, LocationFlag.side_path, "Orb"), | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  |     }, | 
					
						
							|  |  |  |     "Hiisi Base": { | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  |         "Hiisi Base Chest":    LocationData(110246, LocationFlag.main_path, "Chest"), | 
					
						
							|  |  |  |         "Hiisi Base Pedestal": LocationData(110266, LocationFlag.main_path, "Pedestal"), | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  |     }, | 
					
						
							|  |  |  |     "Underground Jungle": { | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  |         "Suomuhauki":                  LocationData(110648, LocationFlag.main_path, "Boss"), | 
					
						
							|  |  |  |         "Underground Jungle Chest":    LocationData(110286, LocationFlag.main_path, "Chest"), | 
					
						
							|  |  |  |         "Underground Jungle Pedestal": LocationData(110306, LocationFlag.main_path, "Pedestal"), | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  |     }, | 
					
						
							|  |  |  |     "Lukki Lair": { | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  |         "Lukki Lair Orb":      LocationData(110664, LocationFlag.side_path, "Orb"), | 
					
						
							|  |  |  |         "Lukki Lair Chest":    LocationData(110326, LocationFlag.side_path, "Chest"), | 
					
						
							|  |  |  |         "Lukki Lair Pedestal": LocationData(110346, LocationFlag.side_path, "Pedestal"), | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  |     }, | 
					
						
							|  |  |  |     "The Vault": { | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  |         "The Vault Chest":    LocationData(110366, LocationFlag.main_path, "Chest"), | 
					
						
							|  |  |  |         "The Vault Pedestal": LocationData(110386, LocationFlag.main_path, "Pedestal"), | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  |     }, | 
					
						
							|  |  |  |     "Temple of the Art": { | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  |         "Gate Guardian":              LocationData(110652, LocationFlag.main_path, "Boss"), | 
					
						
							|  |  |  |         "Temple of the Art Chest":    LocationData(110406, LocationFlag.main_path, "Chest"), | 
					
						
							|  |  |  |         "Temple of the Art Pedestal": LocationData(110426, LocationFlag.main_path, "Pedestal"), | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  |     }, | 
					
						
							|  |  |  |     "The Tower": { | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  |         "The Tower Chest":    LocationData(110606, LocationFlag.main_world, "Chest"), | 
					
						
							|  |  |  |         "The Tower Pedestal": LocationData(110626, LocationFlag.main_world, "Pedestal"), | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  |     }, | 
					
						
							| 
									
										
										
										
											2023-06-05 13:32:33 -04:00
										 |  |  |     "Wizards' Den": { | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  |         "Mestarien Mestari":     LocationData(110655, LocationFlag.main_world, "Boss"), | 
					
						
							|  |  |  |         "Wizards' Den Orb":      LocationData(110668, LocationFlag.main_world, "Orb"), | 
					
						
							|  |  |  |         "Wizards' Den Chest":    LocationData(110446, LocationFlag.main_world, "Chest"), | 
					
						
							|  |  |  |         "Wizards' Den Pedestal": LocationData(110466, LocationFlag.main_world, "Pedestal"), | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  |     }, | 
					
						
							|  |  |  |     "Powerplant": { | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  |         "Kolmisilmän silmä":    LocationData(110657, LocationFlag.main_world, "Boss"), | 
					
						
							|  |  |  |         "Power Plant Chest":    LocationData(110486, LocationFlag.main_world, "Chest"), | 
					
						
							|  |  |  |         "Power Plant Pedestal": LocationData(110506, LocationFlag.main_world, "Pedestal"), | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  |     }, | 
					
						
							|  |  |  |     "Snow Chasm": { | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  |         "Unohdettu":      LocationData(110653, LocationFlag.main_world, "Boss"), | 
					
						
							|  |  |  |         "Snow Chasm Orb": LocationData(110667, LocationFlag.main_world, "Orb"), | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  |     }, | 
					
						
							| 
									
										
										
										
											2024-04-18 12:54:03 -04:00
										 |  |  |     "Meat Realm": { | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  |         "Meat Realm Chest": LocationData(110086, LocationFlag.main_world, "Chest"), | 
					
						
							|  |  |  |         "Meat Realm Pedestal": LocationData(110106, LocationFlag.main_world, "Pedestal"), | 
					
						
							|  |  |  |         "Limatoukka": LocationData(110647, LocationFlag.main_world, "Boss"), | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  |     }, | 
					
						
							| 
									
										
										
										
											2024-04-18 12:34:57 -04:00
										 |  |  |     "West Meat Realm": { | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  |         "Kolmisilmän sydän": LocationData(110671, LocationFlag.main_world, "Boss"), | 
					
						
							| 
									
										
										
										
											2024-04-18 12:34:57 -04:00
										 |  |  |     }, | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  |     "The Laboratory": { | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  |         "Kolmisilmä": LocationData(110646, LocationFlag.main_path, "Boss"), | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  |     }, | 
					
						
							|  |  |  |     "Friend Cave": { | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  |         "Toveri": LocationData(110654, LocationFlag.main_world, "Boss"), | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  |     }, | 
					
						
							|  |  |  |     "The Work (Hell)": { | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  |         "The Work (Hell) Orb": LocationData(110666, LocationFlag.main_world, "Orb"), | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  |     }, | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-01-19 15:31:45 -05:00
										 |  |  | def make_location_range(location_name: str, base_id: int, amt: int) -> Dict[str, int]: | 
					
						
							|  |  |  |     if amt == 1: | 
					
						
							|  |  |  |         return {location_name: base_id} | 
					
						
							|  |  |  |     return {f"{location_name} {i+1}": base_id + i for i in range(amt)} | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  | location_name_groups: Dict[str, Set[str]] = {"Shop": set(), "Orb": set(), "Boss": set(), "Chest": set(), | 
					
						
							|  |  |  |                                              "Pedestal": set()} | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  | location_name_to_id: Dict[str, int] = {} | 
					
						
							| 
									
										
										
										
											2023-07-18 22:51:01 -04:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  | for region_name, location_group in location_region_mapping.items(): | 
					
						
							|  |  |  |     location_name_groups[region_name] = set() | 
					
						
							| 
									
										
										
										
											2023-04-19 20:21:56 -07:00
										 |  |  |     for locname, locinfo in location_group.items(): | 
					
						
							| 
									
										
										
										
											2024-01-19 15:31:45 -05:00
										 |  |  |         # Iterating the hidden chest and pedestal locations here to avoid clutter above | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  |         amount = 20 if locinfo.ltype in ["Chest", "Pedestal"] else 1 | 
					
						
							| 
									
										
										
										
											2024-01-19 15:31:45 -05:00
										 |  |  |         entries = make_location_range(locname, locinfo.id, amount) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         location_name_to_id.update(entries) | 
					
						
							|  |  |  |         location_name_groups[locinfo.ltype].update(entries.keys()) | 
					
						
							| 
									
										
										
										
											2024-05-02 06:02:14 -04:00
										 |  |  |         location_name_groups[region_name].update(entries.keys()) | 
					
						
							| 
									
										
										
										
											2024-01-19 15:31:45 -05:00
										 |  |  | 
 | 
					
						
							|  |  |  | shop_locations = {name for name in location_name_to_id.keys() if "Shop Item" in name} |