From 8e810fb963325d189a0461b9f592f95190bd9f5e Mon Sep 17 00:00:00 2001 From: Jameriquiah <42100286+Jameriquiah@users.noreply.github.com> Date: Sat, 18 Jul 2026 14:08:39 -0400 Subject: cleanup redundant code + fix waist dl (#6928) --- soh/soh/resource/type/Skeleton.cpp | 23 ++++++----------------- soh/soh/resource/type/Skeleton.h | 2 +- 2 files changed, 7 insertions(+), 18 deletions(-) diff --git a/soh/soh/resource/type/Skeleton.cpp b/soh/soh/resource/type/Skeleton.cpp index 1871688ff..704d7e872 100644 --- a/soh/soh/resource/type/Skeleton.cpp +++ b/soh/soh/resource/type/Skeleton.cpp @@ -108,7 +108,7 @@ void SkeletonPatcher::ClearSkeletons() { void SkeletonPatcher::UpdateSkeletons() { auto resourceMgr = Ship::Context::GetRawInstance()->GetResourceManager(); bool isAlt = resourceMgr->IsAltAssetsEnabled(); - for (auto skel : skeletons) { + for (auto& skel : skeletons) { Skeleton* newSkel = (Skeleton*)resourceMgr ->LoadResource((isAlt ? Ship::IResource::gAltAssetPrefix : "") + skel.vanillaSkeletonPath, true) @@ -124,7 +124,7 @@ void SkeletonPatcher::UpdateSkeletons() { } void SkeletonPatcher::UpdateCustomSkeletons() { - for (auto skel : skeletons) { + for (auto& skel : skeletons) { if (!skel.isLocalPlayer) { continue; } @@ -152,48 +152,36 @@ void SkeletonPatcher::UpdateTunicSkeletons(SkeletonPatchInfo& skel) { // Check if we even need updating s32 skelID = ageID << 4 | tunicID; - if (skelID == skel.lastSkeletonId) + if (skelID == skel.lastSkeletonId) { return; - skel.lastSkeletonId = skelID; + } // Check if this is one of Link's skeletons if (ageID == 2) { // Check what Link's current tunic is switch (tunicID) { case PLAYER_TUNIC_KOKIRI: - if (skel.lastSkeletonId == (ageID << 4 | PLAYER_TUNIC_KOKIRI)) - return; skeletonPath = std::string(gLinkAdultKokiriTunicSkel).substr(sOtr.length()); break; case PLAYER_TUNIC_GORON: - if (skel.lastSkeletonId == (ageID << 4 | PLAYER_TUNIC_GORON)) - return; skeletonPath = std::string(gLinkAdultGoronTunicSkel).substr(sOtr.length()); break; case PLAYER_TUNIC_ZORA: - if (skel.lastSkeletonId == (ageID << 4 | PLAYER_TUNIC_ZORA)) - return; skeletonPath = std::string(gLinkAdultZoraTunicSkel).substr(sOtr.length()); break; default: return; } - } else if (skelID == 1) { + } else if (ageID == 1) { // Check what Link's current tunic is switch (tunicID) { case PLAYER_TUNIC_KOKIRI: - if (skel.lastSkeletonId == (ageID << 4 | PLAYER_TUNIC_KOKIRI)) - return; skeletonPath = std::string(gLinkChildKokiriTunicSkel).substr(sOtr.length()); break; case PLAYER_TUNIC_GORON: - if (skel.lastSkeletonId == (ageID << 4 | PLAYER_TUNIC_GORON)) - return; skeletonPath = std::string(gLinkChildGoronTunicSkel).substr(sOtr.length()); break; case PLAYER_TUNIC_ZORA: - if (skel.lastSkeletonId == (ageID << 4 | PLAYER_TUNIC_ZORA)) - return; skeletonPath = std::string(gLinkChildZoraTunicSkel).substr(sOtr.length()); break; default: @@ -202,6 +190,7 @@ void SkeletonPatcher::UpdateTunicSkeletons(SkeletonPatchInfo& skel) { } UpdateCustomSkeletonFromPath(skeletonPath, skel); + skel.lastSkeletonId = skelID; } void SkeletonPatcher::UpdateCustomSkeletonFromPath(const std::string& skeletonPath, SkeletonPatchInfo& skel) { diff --git a/soh/soh/resource/type/Skeleton.h b/soh/soh/resource/type/Skeleton.h index 8e5805c0a..9ab143889 100644 --- a/soh/soh/resource/type/Skeleton.h +++ b/soh/soh/resource/type/Skeleton.h @@ -79,7 +79,7 @@ struct SkeletonPatchInfo { SkelAnime* skelAnime; std::string vanillaSkeletonPath; - u8 lastSkeletonId; + u8 lastSkeletonId = 0xFF; bool isLocalPlayer; }; -- cgit v1.2.3