ksys/res: Implement GParamList WeaponThrow

This commit is contained in:
Léo Lam 2020-09-19 23:21:22 +02:00
parent a079a5ab20
commit 9a50ece856
No known key found for this signature in database
GPG Key ID: 0DF30F9081000741
4 changed files with 35 additions and 2 deletions

View File

@ -76,6 +76,7 @@ add_executable(uking
src/KingSystem/Resource/GeneralParamList/resGParamListObjectTraveler.cpp
src/KingSystem/Resource/GeneralParamList/resGParamListObjectTraveler.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectWeaponCommon.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectWeaponThrow.h
src/KingSystem/Resource/GeneralParamList/resGParamListTraits.h
src/KingSystem/Resource/resCurrentResNameMgr.cpp
src/KingSystem/Resource/resCurrentResNameMgr.h

View File

@ -89067,7 +89067,7 @@
0x000000710118d740,BgparamlistObjectBindBone::ctor,392,_ZN4ksys3res24GParamListObjectBindBoneC2Ev
0x000000710118d8c8,BgparamlistObjectAttack::ctor,900,_ZN4ksys3res22GParamListObjectAttackC2Ev
0x000000710118dc4c,BgparamlistObjectWeaponCommon::ctor,3288,_ZN4ksys3res28GParamListObjectWeaponCommonC2Ev
0x000000710118e924,BgparamlistObjectWeaponThrow::ctor,432,
0x000000710118e924,BgparamlistObjectWeaponThrow::ctor,432,_ZN4ksys3res27GParamListObjectWeaponThrowC2Ev
0x000000710118ead4,BgparamlistObjectSandworm::ctor,1992,
0x000000710118f29c,BgparamlistObjectSmallSword::ctor,1756,
0x000000710118f978,BgparamlistObjectRod::ctor,1192,
@ -89155,7 +89155,7 @@
0x00000071011a7bf0,sub_71011A7BF0,12,_ZNK4ksys3res24GParamListObjectBindBone7getNameEv
0x00000071011a7bfc,sub_71011A7BFC,12,_ZNK4ksys3res22GParamListObjectAttack7getNameEv
0x00000071011a7c08,sub_71011A7C08,12,_ZNK4ksys3res28GParamListObjectWeaponCommon7getNameEv
0x00000071011a7c14,sub_71011A7C14,12,
0x00000071011a7c14,sub_71011A7C14,12,_ZNK4ksys3res27GParamListObjectWeaponThrow7getNameEv
0x00000071011a7c20,sub_71011A7C20,12,
0x00000071011a7c2c,sub_71011A7C2C,12,
0x00000071011a7c38,sub_71011A7C38,12,

Can't render this file because it is too large.

View File

@ -0,0 +1,30 @@
#pragma once
#include <agl/Utils/aglParameter.h>
#include "KingSystem/Resource/GeneralParamList/resGParamListObject.h"
#include "KingSystem/Utils/Types.h"
namespace ksys::res {
class GParamListObjectWeaponThrow : public GParamListObject {
public:
GParamListObjectWeaponThrow();
const char* getName() const override { return "WeaponThrow"; }
agl::utl::Parameter<f32> mThrowSpeed;
agl::utl::Parameter<f32> mThrowRotSpeed;
agl::utl::Parameter<f32> mThrowDist;
agl::utl::Parameter<sead::Vector3f> mThrowRigidBodyBaseAxis;
};
KSYS_CHECK_SIZE_NX150(GParamListObjectWeaponThrow, 0xc0);
inline GParamListObjectWeaponThrow::GParamListObjectWeaponThrow() {
auto* const obj = &mObj;
mThrowSpeed.init(1.0, "ThrowSpeed", "", obj);
mThrowRotSpeed.init(50.0, "ThrowRotSpeed", "", obj);
mThrowDist.init(5.0, "ThrowDist", "", obj);
mThrowRigidBodyBaseAxis.init({0.0, 0.0, 1.0}, "ThrowRigidBodyBaseAxis", "", obj);
}
} // namespace ksys::res

View File

@ -13,6 +13,7 @@
#include "KingSystem/Resource/GeneralParamList/resGParamListObjectGeneral.h"
#include "KingSystem/Resource/GeneralParamList/resGParamListObjectSystem.h"
#include "KingSystem/Resource/GeneralParamList/resGParamListObjectWeaponCommon.h"
#include "KingSystem/Resource/GeneralParamList/resGParamListObjectWeaponThrow.h"
#include "KingSystem/Resource/GeneralParamList/resGParamListTraits.h"
namespace ksys::res {
@ -58,6 +59,7 @@ bool GParamList::parse_(u8* data, size_t, sead::Heap* heap) {
add<GParamListObjType::BindBone>(archive.getRootList(), "BindBone", heap, dummy_list);
add<GParamListObjType::Attack>(archive.getRootList(), "Attack", heap, dummy_list);
add<GParamListObjType::WeaponCommon>(archive.getRootList(), "WeaponCommon", heap, dummy_list);
add<GParamListObjType::WeaponThrow>(archive.getRootList(), "WeaponThrow", heap, dummy_list);
// TODO: the rest