 77b2ed54a6
			
		
	
	77b2ed54a6
	
	
	
		
			
			* fix keylogic for d6 * markup required keys for keylogic * add test * Update __init__.py
		
			
				
	
	
		
			36 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			36 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| from . import LADXTestBase
 | |
| 
 | |
| from ..Items import ItemName
 | |
| 
 | |
| class TestD6(LADXTestBase):
 | |
|     # Force keys into pool for testing
 | |
|     options = {
 | |
|         "shuffle_small_keys": "any_world"
 | |
|     }
 | |
| 
 | |
|     def test_keylogic(self):
 | |
|         keys = self.get_items_by_name(ItemName.KEY6)
 | |
|         self.collect_by_name([ItemName.FACE_KEY, ItemName.HOOKSHOT, ItemName.POWER_BRACELET, ItemName.BOMB, ItemName.FEATHER, ItemName.FLIPPERS])
 | |
|         # Can reach an un-keylocked item in the dungeon
 | |
|         self.assertTrue(self.can_reach_location("L2 Bracelet Chest (Face Shrine)"))
 | |
| 
 | |
|         # For each location, add a key and check that the right thing unlocks
 | |
|         location_1 = "Tile Room Key (Face Shrine)"
 | |
|         location_2 = "Top Right Horse Heads Chest (Face Shrine)"
 | |
|         location_3 = "Pot Locked Chest (Face Shrine)"
 | |
|         self.assertFalse(self.can_reach_location(location_1))
 | |
|         self.assertFalse(self.can_reach_location(location_2))
 | |
|         self.assertFalse(self.can_reach_location(location_3))
 | |
|         self.collect(keys[0])
 | |
|         self.assertTrue(self.can_reach_location(location_1))
 | |
|         self.assertFalse(self.can_reach_location(location_2))
 | |
|         self.assertFalse(self.can_reach_location(location_3))
 | |
|         self.collect(keys[1])
 | |
|         self.assertTrue(self.can_reach_location(location_1))
 | |
|         self.assertTrue(self.can_reach_location(location_2))
 | |
|         self.assertFalse(self.can_reach_location(location_3))
 | |
|         self.collect(keys[2])
 | |
|         self.assertTrue(self.can_reach_location(location_1))
 | |
|         self.assertTrue(self.can_reach_location(location_2))
 | |
|         self.assertTrue(self.can_reach_location(location_3))
 |