TLOZ: Fix rings classification, so they are actually considered for logic (#3253)

This commit is contained in:
t3hf1gm3nt 2024-05-02 17:49:39 -04:00 committed by GitHub
parent 49862dca1f
commit 255e52642e
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 3 additions and 2 deletions

View File

@ -24,7 +24,7 @@ item_table: Dict[str, ItemData] = {
"Red Candle": ItemData(107, progression), "Red Candle": ItemData(107, progression),
"Book of Magic": ItemData(108, progression), "Book of Magic": ItemData(108, progression),
"Magical Key": ItemData(109, useful), "Magical Key": ItemData(109, useful),
"Red Ring": ItemData(110, useful), "Red Ring": ItemData(110, progression),
"Silver Arrow": ItemData(111, progression), "Silver Arrow": ItemData(111, progression),
"Sword": ItemData(112, progression), "Sword": ItemData(112, progression),
"White Sword": ItemData(113, progression), "White Sword": ItemData(113, progression),
@ -37,7 +37,7 @@ item_table: Dict[str, ItemData] = {
"Food": ItemData(120, progression), "Food": ItemData(120, progression),
"Water of Life (Blue)": ItemData(121, useful), "Water of Life (Blue)": ItemData(121, useful),
"Water of Life (Red)": ItemData(122, useful), "Water of Life (Red)": ItemData(122, useful),
"Blue Ring": ItemData(123, useful), "Blue Ring": ItemData(123, progression),
"Triforce Fragment": ItemData(124, progression), "Triforce Fragment": ItemData(124, progression),
"Power Bracelet": ItemData(125, useful), "Power Bracelet": ItemData(125, useful),
"Small Key": ItemData(126, filler), "Small Key": ItemData(126, filler),

View File

@ -28,6 +28,7 @@ def set_rules(tloz_world: "TLoZWorld"):
or location.name not in dangerous_weapon_locations: or location.name not in dangerous_weapon_locations:
add_rule(world.get_location(location.name, player), add_rule(world.get_location(location.name, player),
lambda state: state.has_group("weapons", player)) lambda state: state.has_group("weapons", player))
# This part of the loop sets up an expected amount of defense needed for each dungeon
if i > 0: # Don't need an extra heart for Level 1 if i > 0: # Don't need an extra heart for Level 1
add_rule(world.get_location(location.name, player), add_rule(world.get_location(location.name, player),
lambda state, hearts=i: state.has("Heart Container", player, hearts) or lambda state, hearts=i: state.has("Heart Container", player, hearts) or