This commit is contained in:
Patrick12115 2024-05-09 23:22:34 -04:00
parent afd87316d2
commit 1f6b38b732
3 changed files with 14 additions and 14 deletions

View File

@ -718,7 +718,7 @@ void RegisterMirrorModeHandler() {
}
void UpdatePatchChildHylianShield() {
if ((CVarGetInteger(CVAR_ENHANCEMENT("RotateScaleChildHylianShield", 0) && LINK_IS_CHILD) &&
if ((CVarGetInteger(CVAR_ENHANCEMENT("RotateScaleChildHylianShield"), 0) && LINK_IS_CHILD) &&
(gSaveContext.equips.buttonItems[0] == ITEM_SWORD_KOKIRI || gSaveContext.equips.buttonItems[0] == ITEM_FISHING_POLE)) {
ResourceMgr_PatchGfxByName(gLinkAdultHylianShieldSwordAndSheathNearDL, "childHylianShield1", 82, gsSPDisplayListOTRFilePath(gLinkChildSwordAndSheathNearDL));
ResourceMgr_PatchGfxByName(gLinkAdultHylianShieldSwordAndSheathNearDL, "childHylianShield2", 83, gsSPEndDisplayList());
@ -726,7 +726,7 @@ void UpdatePatchChildHylianShield() {
ResourceMgr_UnpatchGfxByName(gLinkAdultHylianShieldSwordAndSheathNearDL, "childHylianShield1");
ResourceMgr_UnpatchGfxByName(gLinkAdultHylianShieldSwordAndSheathNearDL, "childHylianShield2");
}
if ((CVarGetInteger(CVAR_ENHANCEMENT("RotateScaleChildHylianShield", 0) && LINK_IS_CHILD) &&
if ((CVarGetInteger(CVAR_ENHANCEMENT("RotateScaleChildHylianShield"), 0) && LINK_IS_CHILD) &&
(gSaveContext.equips.buttonItems[0] == ITEM_NONE || gSaveContext.equips.buttonItems[0] == ITEM_STICK)) {
ResourceMgr_PatchGfxByName(gLinkAdultHylianShieldSwordAndSheathNearDL, "childHylianShield3", 82, gsSPEndDisplayList());
} else {

View File

@ -707,15 +707,15 @@ void DrawEnhancementsMenu() {
}
}
UIWidgets::Tooltip("Allows strength to be toggled on and off by pressing A on the strength upgrade in the equipment subscreen of the pause menu (This allows performing some glitches that require the player to not have strength).");
if (UIWidgets::PaddedEnhancementCheckbox("Hold Hylian Shield as Child Link", CVAR_ENHANCEMENT("ChildHoldsHylianShield", true, false)) {
if (CVarGetInteger(CVAR_ENHANCEMENT("ChildHoldsHylianShield", 0) == 0) {
CVarSetInteger(CVAR_ENHANCEMENT("RotateScaleChildHylianShield", 0);
if (UIWidgets::PaddedEnhancementCheckbox("Hold Hylian Shield as Child Link", CVAR_ENHANCEMENT("ChildHoldsHylianShield"), true, false)) {
if (CVarGetInteger(CVAR_ENHANCEMENT("ChildHoldsHylianShield"), 0) == 0) {
CVarSetInteger(CVAR_ENHANCEMENT("RotateScaleChildHylianShield"), 0);
}
UpdateChildHylianShieldState();
}
UIWidgets::Tooltip("Allows Child Link to hold the Hylian Shield the same way as the rest of the shields.");
if (CVarGetInteger(CVAR_ENHANCEMENT("ChildHoldsHylianShield", 0) == 1) {
if (UIWidgets::PaddedEnhancementCheckbox("Rotate and Scale Child Hylian Shield", CVAR_ENHANCEMENT("RotateScaleChildHylianShield", true, false)) {
if (CVarGetInteger(CVAR_ENHANCEMENT("ChildHoldsHylianShield"), 0) == 1) {
if (UIWidgets::PaddedEnhancementCheckbox("Rotate and Scale Child Hylian Shield", CVAR_ENHANCEMENT("RotateScaleChildHylianShield"), true, false)) {
UpdateChildHylianShieldState();
UpdatePatchChildHylianShield();
}

View File

@ -580,7 +580,7 @@ s32 func_8008E9C4(Player* this) {
}
s32 Player_IsChildWithHylianShield(Player* this) {
if (CVarGetInteger(CVAR_ENHANCEMENT("ChildHoldsHylianShield", 0)) {
if (CVarGetInteger(CVAR_ENHANCEMENT("ChildHoldsHylianShield"), 0)) {
return false; // Skip vanilla check for making child Link have the Hylian Shield on his back, allowing for it to be used in hand
} else {
return gSaveContext.linkAge != 0 && (this->currentShield == PLAYER_SHIELD_HYLIAN);
@ -604,12 +604,12 @@ void Player_SetModelsForHoldingShield(Player* this) {
if ((CVarGetInteger(CVAR_CHEAT("ShieldTwoHanded"), 0) && (this->heldItemAction != PLAYER_IA_DEKU_STICK) ||
!Player_HoldsTwoHandedWeapon(this)) && !Player_IsChildWithHylianShield(this)) {
this->rightHandType = PLAYER_MODELTYPE_RH_SHIELD;
if (LINK_IS_CHILD && CVarGetInteger(CVAR_ENHANCEMENT("ChildHoldsHylianShield", 0) &&
if (LINK_IS_CHILD && CVarGetInteger(CVAR_ENHANCEMENT("ChildHoldsHylianShield"), 0) &&
this->currentShield == PLAYER_SHIELD_HYLIAN) {
this->rightHandDLists = &sPlayerDListGroups[PLAYER_MODELTYPE_RH_SHIELD][LINK_AGE_ADULT];
} else if (LINK_IS_CHILD && (CVarGetInteger(CVAR_ENHANCEMENT("EquimentAlwaysVisible", 0)) && (this->currentShield == PLAYER_SHIELD_MIRROR)) {
} else if (LINK_IS_CHILD && (CVarGetInteger(CVAR_ENHANCEMENT("EquimentAlwaysVisible"), 0)) && (this->currentShield == PLAYER_SHIELD_MIRROR)) {
this->rightHandDLists = &sPlayerDListGroups[PLAYER_MODELTYPE_RH_SHIELD][0];
} else if (LINK_IS_ADULT && (CVarGetInteger(CVAR_ENHANCEMENT("EquimentAlwaysVisible", 0)) && (this->currentShield == PLAYER_SHIELD_DEKU)) {
} else if (LINK_IS_ADULT && (CVarGetInteger(CVAR_ENHANCEMENT("EquimentAlwaysVisible"), 0)) && (this->currentShield == PLAYER_SHIELD_DEKU)) {
this->rightHandDLists = &sPlayerDListGroups[PLAYER_MODELTYPE_RH_SHIELD][1];
} else {
this->rightHandDLists = &sPlayerDListGroups[PLAYER_MODELTYPE_RH_SHIELD][gSaveContext.linkAge];
@ -653,7 +653,7 @@ void Player_SetModels(Player* this, s32 modelGroup) {
this->rightHandType = gPlayerModelTypes[modelGroup][PLAYER_MODELGROUPENTRY_RIGHT_HAND];
this->rightHandDLists = &sPlayerDListGroups[this->rightHandType][gSaveContext.linkAge];
if (LINK_IS_CHILD && CVarGetInteger(CVAR_ENHANCEMENT("ChildHoldsHylianShield", 0) &&
if (LINK_IS_CHILD && CVarGetInteger(CVAR_ENHANCEMENT("ChildHoldsHylianShield"), 0) &&
this->rightHandType == PLAYER_MODELTYPE_RH_SHIELD && this->currentShield == PLAYER_SHIELD_HYLIAN) {
this->rightHandDLists = &sPlayerDListGroups[this->rightHandType][LINK_AGE_ADULT];
}
@ -677,7 +677,7 @@ void Player_SetModels(Player* this, s32 modelGroup) {
this->sheathType = gPlayerModelTypes[modelGroup][PLAYER_MODELGROUPENTRY_SHEATH];
this->sheathDLists = &sPlayerDListGroups[this->sheathType][gSaveContext.linkAge];
if (CVarGetInteger(CVAR_ENHANCEMENT("RotateScaleChildHylianShield", 0)) {
if (CVarGetInteger(CVAR_ENHANCEMENT("RotateScaleChildHylianShield"), 0)) {
if (LINK_IS_CHILD && this->sheathType == PLAYER_MODELTYPE_SHEATH_18 && this->currentShield == PLAYER_SHIELD_HYLIAN) {
this->sheathDLists = &sPlayerDListGroups[this->sheathType][LINK_AGE_ADULT];
}
@ -1294,7 +1294,7 @@ s32 Player_OverrideLimbDrawGameplayCommon(PlayState* play, s32 limbIndex, Gfx**
}
}
if (CVarGetInteger(CVAR_ENHANCEMENT("ChildHoldsHylianShield", 0) && CVarGetInteger(CVAR_ENHANCEMENT("RotateScaleChildHylianShield", 0) &&
if (CVarGetInteger(CVAR_ENHANCEMENT("ChildHoldsHylianShield"), 0) && CVarGetInteger(CVAR_ENHANCEMENT("RotateScaleChildHylianShield"), 0) &&
LINK_IS_CHILD) {
if (limbIndex == PLAYER_LIMB_SHEATH) {
if (this->currentShield == PLAYER_SHIELD_HYLIAN &&