-
Notifications
You must be signed in to change notification settings - Fork 632
Add wallet to mask logic, clean up mask logic #5567
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
Conversation
| EventAccess(&logic->MaskOfTruth, []{return logic->MaskOfTruth || (logic->SkullMask && (ctx->GetOption(RSK_COMPLETE_MASK_QUEST) || (ChildCanAccess(RR_THE_LOST_WOODS) && logic->CanUse(RG_SARIAS_SONG) && RegionTable(RR_THE_GRAVEYARD)->childDay && ChildCanAccess(RR_HYRULE_FIELD) && logic->StoneCount() == 3)));}), | ||
| //Currently, mask swap in menu doesn't need access to the mask shop | ||
| //If it is forced on/a setting, a copy of these events should be added to root | ||
| //it also doesn't need you to open kak gate, but that might be best treated as a bug |
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.
might be simpler to make this an enforced rando qol thing, especially since with Shuffle Climb it's possible to need Zelda's Letter to reach Great Fairy's Fountain at Hyrule Castle, which wouldn't be allowed logically if player lost Zelda's Letter
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.
Don't the changes Pablo made to the child trade select allow the letter to persist after being used at kak gate?
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.
Yes. Wasn't sure if that's sometimes disabled
| //Locations | ||
| LOCATION(RC_DEKU_THEATER_SKULL_MASK, logic->IsChild && logic->SkullMask), | ||
| LOCATION(RC_DEKU_THEATER_MASK_OF_TRUTH, logic->IsChild && logic->MaskOfTruth), | ||
| LOCATION(RC_DEKU_THEATER_SKULL_MASK, logic->IsChild && logic->BorrowSkullMask), |
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.
#5536 makes these logic->CanUse(RG_MASK...)
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.
Right, this is a quick fix targetted at Blair. I'm not sure if we should be using events to represent masks with SCL but maybe @Malkierian has an opinion on that.
Regardless, not an issue for this PR
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.
I was recently running into an issue regarding the use of the weird chicken to wake up Talon as the way to gate Talon's Chickens and Song from Malon. I tried setting up an event access in Castle Grounds for it, but in live logic it would always return true once the area was accessible because it was based on inventory, and the event check inf lookup never mattered. I don't know, maybe I was doing it the wrong way. Ideally, we'd figure out a way of mapping a logic check to short circuit ones like that when logic is live, but I don't know that that applies in this instance.
If you do not have the money to pay for the Keaton mask when you return it, the happy mask salesman won't let you borrow the skull mask (instead kicking you out), meaning skull mask requires a wallet that was not accounted for. This PR fixes that.
I also changed it to be fully handled by events, removing a potential source of playthrough jank.
Build Artifacts