Additional Anchor functionality: (#5999)

- Returned support for custom tunic colors
- Ocarina playback now audible
- Fixed movement translation issue when climbing or going through crawlspaces
- Fixed issue preventing some items from being visible in Dummy hands (namely ocarina)
- Fixed stick length not correctly syncing
This commit is contained in:
Garrett Cox
2025-11-30 19:17:00 -06:00
committed by GitHub
parent bc48fa84fd
commit 9cd31099e2
14 changed files with 161 additions and 5 deletions

View File

@@ -1677,6 +1677,7 @@ void func_800ED458(s32 arg0) {
} else if ((sPrevOcarinaNoteVal != 0xFF) && (sCurOcarinaBtnVal == 0xFF)) {
Audio_StopSfxById(NA_SE_OC_OCARINA);
}
GameInteractor_ExecuteOnOcarinaNote(sCurOcarinaBtnVal, D_80130F24, D_80130F10);
}
}

View File

@@ -7,6 +7,7 @@
#include "overlays/actors/ovl_Demo_Effect/z_demo_effect.h"
#include "soh/Enhancements/game-interactor/GameInteractor.h"
#include "soh/Enhancements/game-interactor/GameInteractor_Hooks.h"
#include "soh/Enhancements/randomizer/draw.h"
#include "soh/ResourceManagerHelpers.h"
@@ -1076,7 +1077,9 @@ void Player_DrawImpl(PlayState* play, void** skeleton, Vec3s* jointTable, s32 dL
color = &sTemp;
}
gDPSetEnvColor(POLY_OPA_DISP++, color->r, color->g, color->b, 0);
if (GameInteractor_Should(VB_APPLY_TUNIC_COLOR, true, data, color)) {
gDPSetEnvColor(POLY_OPA_DISP++, color->r, color->g, color->b, 0);
}
// If we have a custom link model, always use the most detailed LOD
if (Player_IsCustomLinkModel()) {