ksys/res: Implement GParamList Shield

This commit is contained in:
Léo Lam
2020-09-19 23:59:42 +02:00
parent 78f19ae1d3
commit 8b6e95939d
4 changed files with 63 additions and 2 deletions
+1
View File
@@ -75,6 +75,7 @@ add_executable(uking
src/KingSystem/Resource/GeneralParamList/resGParamListObjectLargeSword.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectRod.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectSandworm.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectShield.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectSmallSword.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectSpear.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectSystem.h
+2 -2
View File
@@ -89073,7 +89073,7 @@
0x000000710118f978,BgparamlistObjectRod::ctor,1192,_ZN4ksys3res19GParamListObjectRodC2Ev
0x000000710118fe20,BgparamlistObjectLargeSword::ctor,1760,_ZN4ksys3res26GParamListObjectLargeSwordC2Ev
0x0000007101190500,BgparamlistObjectSpear::ctor,2080,_ZN4ksys3res21GParamListObjectSpearC2Ev
0x0000007101190d20,BgparamlistObjectShield::ctor,1484,
0x0000007101190d20,BgparamlistObjectShield::ctor,1484,_ZN4ksys3res22GParamListObjectShieldC2Ev
0x00000071011912ec,BgparamlistObjectBow::ctor,2724,
0x0000007101191d90,BgparamlistObjectWeaponOption::ctor,596,
0x0000007101191fe4,BgparamlistObjectMasterSword::ctor,772,
@@ -89161,7 +89161,7 @@
0x00000071011a7c38,sub_71011A7C38,12,_ZNK4ksys3res19GParamListObjectRod7getNameEv
0x00000071011a7c44,sub_71011A7C44,12,_ZNK4ksys3res26GParamListObjectLargeSword7getNameEv
0x00000071011a7c50,sub_71011A7C50,12,_ZNK4ksys3res21GParamListObjectSpear7getNameEv
0x00000071011a7c5c,sub_71011A7C5C,12,
0x00000071011a7c5c,sub_71011A7C5C,12,_ZNK4ksys3res22GParamListObjectShield7getNameEv
0x00000071011a7c68,sub_71011A7C68,12,
0x00000071011a7c74,sub_71011A7C74,12,
0x00000071011a7c80,sub_71011A7C80,12,
Can't render this file because it is too large.
@@ -0,0 +1,58 @@
#pragma once
#include <agl/Utils/aglParameter.h>
#include "KingSystem/Resource/GeneralParamList/resGParamListObject.h"
#include "KingSystem/Utils/Types.h"
namespace ksys::res {
class GParamListObjectShield : public GParamListObject {
public:
GParamListObjectShield();
const char* getName() const override { return "Shield"; }
agl::utl::Parameter<sead::Vector3f> mPlayerHoldTransOffset;
agl::utl::Parameter<sead::Vector3f> mPlayerHoldRotOffset;
agl::utl::Parameter<sead::Vector3f> mPlayerEquipTransOffset;
agl::utl::Parameter<sead::Vector3f> mPlayerEquipRotOffset;
agl::utl::Parameter<sead::Vector3f> mSquatPlayerHoldTransAddOffset;
agl::utl::Parameter<sead::Vector3f> mSquatPlayerHoldRotAddOffset;
agl::utl::Parameter<sead::Vector3f> mNPCHoldTransOffset;
agl::utl::Parameter<sead::Vector3f> mNPCHoldRotOffset;
agl::utl::Parameter<sead::Vector3f> mNPCEquipTransOffset;
agl::utl::Parameter<sead::Vector3f> mNPCEquipRotOffset;
agl::utl::Parameter<sead::Vector3f> mEnemyEquipTransOffset;
agl::utl::Parameter<sead::Vector3f> mEnemyEquipRotOffset;
agl::utl::Parameter<sead::Vector3f> mStandEquipTransOffset;
agl::utl::Parameter<sead::Vector3f> mStandEquipRotOffset;
agl::utl::Parameter<f32> mRideBreakRatio;
agl::utl::Parameter<s32> mMirrorLevel;
agl::utl::Parameter<sead::SafeString> mWeaponSubType;
agl::utl::Parameter<f32> mSurfingFriction;
};
KSYS_CHECK_SIZE_NX150(GParamListObjectShield, 0x2f0);
inline GParamListObjectShield::GParamListObjectShield() {
auto* const obj = &mObj;
mPlayerHoldTransOffset.init({-0.1, -0.01, 0.2}, "PlayerHoldTransOffset", "", obj);
mPlayerHoldRotOffset.init({8.0, 120.0, 5.0}, "PlayerHoldRotOffset", "", obj);
mPlayerEquipTransOffset.init({0.0, 0.0, 0.0}, "PlayerEquipTransOffset", "", obj);
mPlayerEquipRotOffset.init({0.0, 0.0, 0.0}, "PlayerEquipRotOffset", "", obj);
mSquatPlayerHoldTransAddOffset.init({0.0, 0.0, 0.0}, "SquatPlayerHoldTransAddOffset", "", obj);
mSquatPlayerHoldRotAddOffset.init({0.0, 0.0, 0.0}, "SquatPlayerHoldRotAddOffset", "", obj);
mNPCHoldTransOffset.init({0.0, 0.0, 0.0}, "NPCHoldTransOffset", "", obj);
mNPCHoldRotOffset.init({0.0, 0.0, 0.0}, "NPCHoldRotOffset", "", obj);
mNPCEquipTransOffset.init({0.0, 0.0, 0.0}, "NPCEquipTransOffset", "", obj);
mNPCEquipRotOffset.init({0.0, 0.0, 0.0}, "NPCEquipRotOffset", "", obj);
mEnemyEquipTransOffset.init({0.0, 0.0, 0.0}, "EnemyEquipTransOffset", "", obj);
mEnemyEquipRotOffset.init({0.0, 0.0, 0.0}, "EnemyEquipRotOffset", "", obj);
mStandEquipTransOffset.init({0.0, 0.0, 0.0}, "StandEquipTransOffset", "", obj);
mStandEquipRotOffset.init({0.0, 0.0, 0.0}, "StandEquipRotOffset", "", obj);
mRideBreakRatio.init(1.0, "RideBreakRatio", "", obj);
mMirrorLevel.init(0, "MirrorLevel", "", obj);
mWeaponSubType.init("", "WeaponSubType", "", obj);
mSurfingFriction.init(1.0, "SurfingFriction", "", obj);
}
} // namespace ksys::res
@@ -14,6 +14,7 @@
#include "KingSystem/Resource/GeneralParamList/resGParamListObjectLargeSword.h"
#include "KingSystem/Resource/GeneralParamList/resGParamListObjectRod.h"
#include "KingSystem/Resource/GeneralParamList/resGParamListObjectSandworm.h"
#include "KingSystem/Resource/GeneralParamList/resGParamListObjectShield.h"
#include "KingSystem/Resource/GeneralParamList/resGParamListObjectSmallSword.h"
#include "KingSystem/Resource/GeneralParamList/resGParamListObjectSpear.h"
#include "KingSystem/Resource/GeneralParamList/resGParamListObjectSystem.h"
@@ -70,6 +71,7 @@ bool GParamList::parse_(u8* data, size_t, sead::Heap* heap) {
add<GParamListObjType::Rod>(archive.getRootList(), "Rod", heap, dummy_list);
add<GParamListObjType::LargeSword>(archive.getRootList(), "LargeSword", heap, dummy_list);
add<GParamListObjType::Spear>(archive.getRootList(), "Spear", heap, dummy_list);
add<GParamListObjType::Shield>(archive.getRootList(), "Shield", heap, dummy_list);
// TODO: the rest