[Enhancement] Port Faster Empty Bottle and Skip Bottle Pickup Message from SoH#1531
Open
Patrick12115 wants to merge 2 commits intoHarbourMasters:developfrom
Open
[Enhancement] Port Faster Empty Bottle and Skip Bottle Pickup Message from SoH#1531Patrick12115 wants to merge 2 commits intoHarbourMasters:developfrom
Patrick12115 wants to merge 2 commits intoHarbourMasters:developfrom
Conversation
Eblo
requested changes
Feb 7, 2026
Contributor
Eblo
left a comment
There was a problem hiding this comment.
Miscellaneous items:
- The faster emptying enhancement does not seem to work for drinkable items or fairies. Indeed, the point in code handled only deals with bottle items defined in
D_8085D80C, which does not include those things - Skipping the message for Deku Princess seems to incidentally also skip the NPC dialog with the invisible actor that normally occurs. This does not seem to break anything, but it seemed worth noting down
Comment on lines
+18269
to
+18276
| if (!CVarGetInteger("gEnhancements.Timesavers.SkipBottlePickupMessages", 0)) { | ||
| this->stateFlags1 |= PLAYER_STATE1_10000000 | PLAYER_STATE1_20000000; | ||
| } | ||
| interactRangeActor->parent = &this->actor; | ||
| Player_UpdateBottleHeld(play, this, entry->itemId, entry->itemAction); | ||
| Player_Anim_PlayOnceAdjusted(play, this, sp24->unk_4); | ||
| if (!CVarGetInteger("gEnhancements.Timesavers.SkipBottlePickupMessages", 0)) { | ||
| Player_Anim_PlayOnceAdjusted(play, this, sp24->unk_4); | ||
| } |
Contributor
There was a problem hiding this comment.
Could these inline CVars be converted to VBs instead?
Comment on lines
+18302
to
+18309
| if (!CVarGetInteger("gEnhancements.Timesavers.SkipBottlePickupMessages", 0)) { | ||
| this->stateFlags1 |= PLAYER_STATE1_10000000 | PLAYER_STATE1_20000000; | ||
| } | ||
| interactRangeActor->parent = &this->actor; | ||
| Player_UpdateBottleHeld(play, this, entry->itemId, entry->itemAction); | ||
| Player_Anim_PlayOnceAdjusted(play, this, sp24->unk_4); | ||
| if (!CVarGetInteger("gEnhancements.Timesavers.SkipBottlePickupMessages", 0)) { | ||
| Player_Anim_PlayOnceAdjusted(play, this, sp24->unk_4); | ||
| } |
|
|
||
| if (PlayerAnimation_Update(play, &this->skelAnime)) { | ||
| if (this->av1.actionVar1 != 0) { | ||
| if (CVarGetInteger("gEnhancements.Timesavers.SkipBottlePickupMessages", 0)) { |
Contributor
There was a problem hiding this comment.
This introduces new behavior and should ideally be wrapped in a GameInteractor call, with the new behavior in an enhancement file. You might have to wrap the entire if (this->av1.actionVar1 != 0) { ... else ... block with the call to achieve the desired code flow.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Ported both from SoH, with slight differences in the skip pickup message due to difference in how the cutscene works in 2Ship.
Build Artifacts