36 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
		
		
			
		
	
	
			36 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
|   | from typing import List | |||
|  | from worlds.smz3.TotalSMZ3.Region import Z3Region, RewardType, IReward | |||
|  | from worlds.smz3.TotalSMZ3.Config import Config | |||
|  | from worlds.smz3.TotalSMZ3.Location import Location, LocationType | |||
|  | from worlds.smz3.TotalSMZ3.Item import Progression, ItemType | |||
|  | 
 | |||
|  | class SkullWoods(Z3Region, IReward): | |||
|  |     Name = "Skull Woods" | |||
|  |     Area = "Skull Woods" | |||
|  | 
 | |||
|  |     def __init__(self, world, config: Config): | |||
|  |         super().__init__(world, config) | |||
|  |         self.RegionItems = [ ItemType.KeySW, ItemType.BigKeySW, ItemType.MapSW, ItemType.CompassSW] | |||
|  |         self.Reward = RewardType.Null | |||
|  |         self.Locations = [ | |||
|  |             Location(self, 256+145, 0x1E9A1, LocationType.Regular, "Skull Woods - Pot Prison"), | |||
|  |             Location(self, 256+146, 0x1E992, LocationType.Regular, "Skull Woods - Compass Chest"), | |||
|  |             Location(self, 256+147, 0x1E998, LocationType.Regular, "Skull Woods - Big Chest", | |||
|  |                 lambda items: items.BigKeySW) | |||
|  |                 .AlwaysAllow(lambda item, items: item.Is(ItemType.BigKeySW, self.world)), | |||
|  |             Location(self, 256+148, 0x1E99B, LocationType.Regular, "Skull Woods - Map Chest"), | |||
|  |             Location(self, 256+149, 0x1E9C8, LocationType.Regular, "Skull Woods - Pinball Room") | |||
|  |                 .Allow(lambda item, items: item.Is(ItemType.KeySW, self.world)), | |||
|  |             Location(self, 256+150, 0x1E99E, LocationType.Regular, "Skull Woods - Big Key Chest"), | |||
|  |             Location(self, 256+151, 0x1E9FE, LocationType.Regular, "Skull Woods - Bridge Room", | |||
|  |                 lambda items: items.Firerod), | |||
|  |             Location(self, 256+152, 0x308155, LocationType.Regular, "Skull Woods - Mothula", | |||
|  |                 lambda items: items.Firerod and items.Sword and items.KeySW >= 3), | |||
|  |             ] | |||
|  | 
 | |||
|  |     def CanEnter(self, items: Progression): | |||
|  |         return items.MoonPearl and self.world.CanEnter("Dark World North West", items) | |||
|  | 
 | |||
|  |     def CanComplete(self, items: Progression): | |||
|  |         return self.GetLocation("Skull Woods - Mothula").Available(items) |