-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Timespinner: Align Lantern Logic #5562
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Timespinner: Align Lantern Logic #5562
Conversation
#5561 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The three things I commented on are the only differences between my PR and this one, besides Lab Lower Trash Lanterns, but those already have water mask required elsewhere in the code so they are fine as is.
worlds/timespinner/Locations.py
Outdated
LocationData('Royal towers', 'Royal Towers: Pre-Climb Lantern 1', 1337609, logic.can_break_lanterns), | ||
LocationData('Royal towers', 'Royal Towers: Pre-Climb Lantern 2', 1337610, logic.can_break_lanterns), | ||
LocationData('Royal towers', 'Royal Towers: Bottom Struggle Lantern', 1337611, logic.can_break_lanterns), | ||
LocationData('Royal towers', 'Royal Towers: Bottom Struggle Lantern', 1337611, lambda state: logic.can_creak_lanterns(state) and logic.has_doublejump_of_npc(state)), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There's a typo here: can_creak_lanterns
should be can_break_lanterns
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed
LocationData('Ancient Pyramid (left)', 'Ancient Pyramid: Regret Lantern 1', 1337389, lambda state: logic.can_break_lanterns(state) and logic.can_break_walls(state) and (not flooded.flood_pyramid_shaft or state.has('Water Mask', player))), | ||
LocationData('Ancient Pyramid (left)', 'Ancient Pyramid: Regret Lantern 2', 1337390, lambda state: logic.can_break_lanterns(state) and logic.can_break_walls(state) and (not flooded.flood_pyramid_shaft or state.has('Water Mask', player))), | ||
LocationData('Ancient Pyramid (left)', 'Ancient Pyramid: Regret Lantern 3', 1337391, lambda state: logic.can_break_lanterns(state) and logic.can_break_walls(state) and (not flooded.flood_pyramid_shaft or state.has('Water Mask', player))), | ||
LocationData('Ancient Pyramid (left)', 'Ancient Pyramid: Regret Lantern 4', 1337392, lambda state: logic.can_break_lanterns(state) and logic.can_break_walls(state) and (not flooded.flood_pyramid_shaft or state.has('Water Mask', player))), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pit Secret Lanterns and Pit Secret's Secret Lanterns should also require logic.can_break_walls(state)
. Looks like you missed those?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed. Looks like that save wasn't pushed with the rest of my commit.
worlds/timespinner/Locations.py
Outdated
LocationData('Main Lab', 'Lab: Lower Trash Lantern 1', 1337292, lambda state: logic.can_break_lanterns(state) and (logic.has_doublejump_of_npc(state) if options.lock_key_amadeus else logic.has_upwarddash(state))), | ||
LocationData('Main Lab', 'Lab: Lower Trash Lantern 2', 1337293, lambda state: logic.can_break_lanterns(state) and (logic.has_doublejump_of_npc(state) if options.lock_key_amadeus else logic.has_upwarddash(state))), | ||
LocationData('Main Lab', 'Lab: Trash Jump Lantern 1', 1337282, lambda state: logic.can_break_lanterns(state) and logic.has_doublejump(state)), | ||
LocationData('Main Lab', 'Lab: Trash Jump Lantern 2', 1337283, lambda state: logic.can_break_lanterns(state) and logic.has_doublejump(state)), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does Trash Jump Lantern 2 require has_doublejump
or has_doublejump_of_npc
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed- got thrown off as these were both too strict before, but the former is before the falling debris and the latter after it.
Feedback addressed. |
What is this fixing or adding?
Fixes logic for certain lanterns that were inconsistent with the base rando's logic.
Namely:
How was this tested?
Reviewing the locations in question and their placement within the levels using the debug room warp tool and cross checking their logic against other items in the same room, both in the logic here and in the base rando.
If this makes graphical changes, please attach screenshots.
No graphical changes.