diff options
| author | Léo Lam <leo@leolam.fr> | 2020-09-20 13:55:36 +0200 |
|---|---|---|
| committer | Léo Lam <leo@leolam.fr> | 2020-09-20 13:55:36 +0200 |
| commit | 8b3aed47e638dd2192bc5d263ed2079ea84f990e (patch) | |
| tree | 090ef03c46952f2689921cde6ed74133241d845a /src/KingSystem | |
| parent | e9dbd61debcb728b23e3b79fec1d604f870e3f25 (diff) | |
ksys/res: Implement GParamList GolemIK
Diffstat (limited to 'src/KingSystem')
| -rw-r--r-- | src/KingSystem/Resource/GeneralParamList/resGParamListObjectGolemIK.h | 72 | ||||
| -rw-r--r-- | src/KingSystem/Resource/resResourceGParamList.cpp | 2 |
2 files changed, 74 insertions, 0 deletions
diff --git a/src/KingSystem/Resource/GeneralParamList/resGParamListObjectGolemIK.h b/src/KingSystem/Resource/GeneralParamList/resGParamListObjectGolemIK.h new file mode 100644 index 00000000..2069c1b6 --- /dev/null +++ b/src/KingSystem/Resource/GeneralParamList/resGParamListObjectGolemIK.h @@ -0,0 +1,72 @@ +#pragma once + +#include <agl/Utils/aglParameter.h> +#include "KingSystem/Resource/GeneralParamList/resGParamListObject.h" +#include "KingSystem/Utils/Types.h" + +namespace ksys::res { + +class GParamListObjectGolemIK : public GParamListObject { +public: + GParamListObjectGolemIK(); + const char* getName() const override { return "GolemIK"; } + + agl::utl::Parameter<f32> mFootRayCheckDist; + agl::utl::Parameter<f32> mFootDownRatio; + agl::utl::Parameter<f32> mFootUpRatio; + agl::utl::Parameter<f32> mKneeExtendL; + agl::utl::Parameter<f32> mKneeShrinkL; + agl::utl::Parameter<f32> mFootExtendL; + agl::utl::Parameter<f32> mFootShrinkL; + agl::utl::Parameter<f32> mKneeExtendR; + agl::utl::Parameter<f32> mKneeShrinkR; + agl::utl::Parameter<f32> mFootExtendR; + agl::utl::Parameter<f32> mFootShrinkR; + agl::utl::Parameter<f32> mArmRayCheckDist; + agl::utl::Parameter<f32> mArmDownRatio; + agl::utl::Parameter<f32> mArmUpRatio; + agl::utl::Parameter<f32> mElbowExtendL; + agl::utl::Parameter<f32> mElbowShrinkL; + agl::utl::Parameter<f32> mWristExtendL; + agl::utl::Parameter<f32> mWristShrinkL; + agl::utl::Parameter<f32> mElbowExtendR; + agl::utl::Parameter<f32> mElbowShrinkR; + agl::utl::Parameter<f32> mWristExtendR; + agl::utl::Parameter<f32> mWristShrinkR; + agl::utl::Parameter<f32> mWaistRotateRatio; + agl::utl::Parameter<f32> mWaistMorphRatio; + agl::utl::Parameter<f32> mWaistResetMorphRatio; +}; +KSYS_CHECK_SIZE_NX150(GParamListObjectGolemIK, 0x358); + +inline GParamListObjectGolemIK::GParamListObjectGolemIK() { + auto* const obj = &mObj; + + mFootRayCheckDist.init(3.0, "FootRayCheckDist", "", obj); + mFootDownRatio.init(0.2, "FootDownRatio", "", obj); + mFootUpRatio.init(0.1, "FootUpRatio", "", obj); + mKneeExtendL.init(0.5, "KneeExtendL", "", obj); + mKneeShrinkL.init(0.5, "KneeShrinkL", "", obj); + mFootExtendL.init(0.5, "FootExtendL", "", obj); + mFootShrinkL.init(0.5, "FootShrinkL", "", obj); + mKneeExtendR.init(0.5, "KneeExtendR", "", obj); + mKneeShrinkR.init(0.5, "KneeShrinkR", "", obj); + mFootExtendR.init(0.5, "FootExtendR", "", obj); + mFootShrinkR.init(0.5, "FootShrinkR", "", obj); + mArmRayCheckDist.init(3.0, "ArmRayCheckDist", "", obj); + mArmDownRatio.init(0.05, "ArmDownRatio", "", obj); + mArmUpRatio.init(0.05, "ArmUpRatio", "", obj); + mElbowExtendL.init(0.5, "ElbowExtendL", "", obj); + mElbowShrinkL.init(0.5, "ElbowShrinkL", "", obj); + mWristExtendL.init(0.5, "WristExtendL", "", obj); + mWristShrinkL.init(0.5, "WristShrinkL", "", obj); + mElbowExtendR.init(0.5, "ElbowExtendR", "", obj); + mElbowShrinkR.init(0.5, "ElbowShrinkR", "", obj); + mWristExtendR.init(0.5, "WristExtendR", "", obj); + mWristShrinkR.init(0.5, "WristShrinkR", "", obj); + mWaistRotateRatio.init(0.5, "WaistRotateRatio", "", obj); + mWaistMorphRatio.init(0.2, "WaistMorphRatio", "", obj); + mWaistResetMorphRatio.init(0.1, "WaistResetMorphRatio", "", obj); +} + +} // namespace ksys::res diff --git a/src/KingSystem/Resource/resResourceGParamList.cpp b/src/KingSystem/Resource/resResourceGParamList.cpp index f751e3a5..95ad8f80 100644 --- a/src/KingSystem/Resource/resResourceGParamList.cpp +++ b/src/KingSystem/Resource/resResourceGParamList.cpp @@ -37,6 +37,7 @@ #include "KingSystem/Resource/GeneralParamList/resGParamListObjectGiantArmorSlot.h" #include "KingSystem/Resource/GeneralParamList/resGParamListObjectGlobal.h" #include "KingSystem/Resource/GeneralParamList/resGParamListObjectGolem.h" +#include "KingSystem/Resource/GeneralParamList/resGParamListObjectGolemIK.h" #include "KingSystem/Resource/GeneralParamList/resGParamListObjectGrab.h" #include "KingSystem/Resource/GeneralParamList/resGParamListObjectGuardian.h" #include "KingSystem/Resource/GeneralParamList/resGParamListObjectGuardianMini.h" @@ -194,6 +195,7 @@ bool GParamList::parse_(u8* data, size_t, sead::Heap* heap) { dummy_list); add<GParamListObjType::WolfLink>(archive.getRootList(), "WolfLink", heap, dummy_list); add<GParamListObjType::Event>(archive.getRootList(), "Event", heap, dummy_list); + add<GParamListObjType::GolemIK>(archive.getRootList(), "GolemIK", heap, dummy_list); // TODO: the rest |
