diff --git a/CMakeLists.txt b/CMakeLists.txt index 81db1873..684c0102 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -93,6 +93,7 @@ add_executable(uking src/KingSystem/Resource/GeneralParamList/resGParamListObjectGiantArmorSlot.h src/KingSystem/Resource/GeneralParamList/resGParamListObjectGrab.h src/KingSystem/Resource/GeneralParamList/resGParamListObjectGuardian.h + src/KingSystem/Resource/GeneralParamList/resGParamListObjectGuardianMini.h src/KingSystem/Resource/GeneralParamList/resGParamListObjectGuardianMiniWeapon.h src/KingSystem/Resource/GeneralParamList/resGParamListObjectHorse.h src/KingSystem/Resource/GeneralParamList/resGParamListObjectHorseCreator.h diff --git a/data/uking_functions.csv b/data/uking_functions.csv index 0efd4768..244fe232 100644 --- a/data/uking_functions.csv +++ b/data/uking_functions.csv @@ -89111,7 +89111,7 @@ 0x00000071011a1e04,BgparamlistObjectGelEnemy::ctor,1352,_ZN4ksys3res24GParamListObjectGelEnemyC2Ev 0x00000071011a234c,BgparamlistObjectWizzrobe::ctor,832,_ZN4ksys3res24GParamListObjectWizzrobeC2Ev 0x00000071011a268c,BgparamlistObjectStalEnemy::ctor,328,_ZN4ksys3res25GParamListObjectStalEnemyC2Ev -0x00000071011a27d4,BgparamlistObjectGuardianMini::ctor,672, +0x00000071011a27d4,BgparamlistObjectGuardianMini::ctor,672,_ZN4ksys3res28GParamListObjectGuardianMiniC2Ev 0x00000071011a2a74,BgparamlistObjectClothReaction::ctor,1460, 0x00000071011a3028,BgparamlistObjectGlobal::ctor,6116, 0x00000071011a480c,BgparamlistObjectAutoGen::ctor,404, @@ -89210,7 +89210,7 @@ 0x00000071011a7e84,sub_71011A7E84,12,_ZNK4ksys3res20GParamListObjectNest7getNameEv 0x00000071011a7e90,sub_71011A7E90,12,_ZNK4ksys3res24GParamListObjectWizzrobe7getNameEv 0x00000071011a7e9c,sub_71011A7E9C,12,_ZNK4ksys3res25GParamListObjectStalEnemy7getNameEv -0x00000071011a7ea8,sub_71011A7EA8,12, +0x00000071011a7ea8,sub_71011A7EA8,12,_ZNK4ksys3res28GParamListObjectGuardianMini7getNameEv 0x00000071011a7eb4,sub_71011A7EB4,12, 0x00000071011a7ec0,sub_71011A7EC0,12, 0x00000071011a7ecc,sub_71011A7ECC,12, diff --git a/src/KingSystem/Resource/GeneralParamList/resGParamListObjectGuardianMini.h b/src/KingSystem/Resource/GeneralParamList/resGParamListObjectGuardianMini.h new file mode 100644 index 00000000..0f6a2843 --- /dev/null +++ b/src/KingSystem/Resource/GeneralParamList/resGParamListObjectGuardianMini.h @@ -0,0 +1,34 @@ +#pragma once + +#include +#include "KingSystem/Resource/GeneralParamList/resGParamListObject.h" +#include "KingSystem/Utils/Types.h" + +namespace ksys::res { + +class GParamListObjectGuardianMini : public GParamListObject { +public: + GParamListObjectGuardianMini(); + const char* getName() const override { return "GuardianMini"; } + + agl::utl::Parameter mColorType; + agl::utl::Parameter mBodyMatName; + agl::utl::Parameter mGuardJustActor; + agl::utl::Parameter mBeamName; + agl::utl::Parameter mLineBeamName; + agl::utl::Parameter mFinalBeamName; +}; +KSYS_CHECK_SIZE_NX150(GParamListObjectGuardianMini, 0x120); + +inline GParamListObjectGuardianMini::GParamListObjectGuardianMini() { + auto* const obj = &mObj; + + mColorType.init(0, "ColorType", "", obj); + mBodyMatName.init("", "BodyMatName", "", obj); + mGuardJustActor.init("", "GuardJustActor", "", obj); + mBeamName.init("", "BeamName", "", obj); + mLineBeamName.init("", "LineBeamName", "", obj); + mFinalBeamName.init("", "FinalBeamName", "", obj); +} + +} // namespace ksys::res diff --git a/src/KingSystem/Resource/resResourceGParamList.cpp b/src/KingSystem/Resource/resResourceGParamList.cpp index 34e8adc9..fcb87825 100644 --- a/src/KingSystem/Resource/resResourceGParamList.cpp +++ b/src/KingSystem/Resource/resResourceGParamList.cpp @@ -32,6 +32,7 @@ #include "KingSystem/Resource/GeneralParamList/resGParamListObjectGiantArmorSlot.h" #include "KingSystem/Resource/GeneralParamList/resGParamListObjectGrab.h" #include "KingSystem/Resource/GeneralParamList/resGParamListObjectGuardian.h" +#include "KingSystem/Resource/GeneralParamList/resGParamListObjectGuardianMini.h" #include "KingSystem/Resource/GeneralParamList/resGParamListObjectGuardianMiniWeapon.h" #include "KingSystem/Resource/GeneralParamList/resGParamListObjectHorse.h" #include "KingSystem/Resource/GeneralParamList/resGParamListObjectHorseCreator.h" @@ -173,6 +174,7 @@ bool GParamList::parse_(u8* data, size_t, sead::Heap* heap) { add(archive.getRootList(), "Nest", heap, dummy_list); add(archive.getRootList(), "Wizzrobe", heap, dummy_list); add(archive.getRootList(), "StalEnemy", heap, dummy_list); + add(archive.getRootList(), "GuardianMini", heap, dummy_list); // TODO: the rest