-
Notifications
You must be signed in to change notification settings - Fork 3
Zoras River Refactor #127
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: oot-soh
Are you sure you want to change the base?
Zoras River Refactor #127
Conversation
mattman107
left a comment
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.
Some weird bits that I marked down.
| add_events(Regions.ZR_PILLAR, world, [ | ||
| # This needs some extra logic because this grass needs to be accessible from multiple other regions, but the bugs they actually have to get here. | ||
| # The boomerang check doesn't get the bugs from Zora's River -> Pillar | ||
| (EventLocations.ZR_BUG_GRASS, Events.CAN_ACCESS_BUGS, lambda bundle: can_cut_shrubs(bundle) and ((is_child(bundle) and has_item(Items.POWER_BRACELET, bundle)) or can_use(Items.HOVER_BOOTS, bundle) or (is_adult(bundle) and can_do_trick(Tricks.ZR_LOWER, bundle)))), |
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.
This was probably the worst part. Essentially the logic for the grass needs it to be accessible from both Regions.ZORAS_RIVER and Regions.ZR_PILLAR. I tried to keep it as intact as possible, but this event required some duplicate logic to determine if the player could actually reach the grass to scoop up the bugs.
| (Regions.ZR_FAIRY_GROTTO, lambda bundle: blast_or_smash(bundle)), | ||
| (Regions.ZR_ATOP_LADDER, lambda bundle: (is_adult(bundle) or has_item(Items.POWER_BRACELET, bundle)) and (has_item(Items.CLIMB, bundle) or (is_adult(bundle) and can_use(Items.HOOKSHOT, bundle)) or has_item(LocalEvents.ZR_BEAN_PLANTED, bundle))), | ||
| # Added Boomerang check here for accessing the pillar logically with just the boomerang. It can get the Freestanding POH and Grass | ||
| (Regions.ZR_PILLAR, lambda bundle: (is_child(bundle) and has_item(Items.POWER_BRACELET, bundle)) or can_use(Items.HOVER_BOOTS, bundle) or (is_adult(bundle) and can_do_trick(Tricks.ZR_LOWER, bundle)) or can_use(Items.BOOMERANG, bundle)), |
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 Boomerang check at the end here is to allow access to both locations in Regions.ZR_PILLAR. It gets wonky with the bug event though
No description provided.