ksys/res: Implement GParamList Rod

This commit is contained in:
Léo Lam
2020-09-19 23:36:33 +02:00
parent 15a60c029e
commit 5e9d25da72
4 changed files with 57 additions and 2 deletions
+1
View File
@@ -72,6 +72,7 @@ add_executable(uking
src/KingSystem/Resource/GeneralParamList/resGParamListObjectEnemyRace.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectEnemyShown.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectGeneral.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectRod.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectSandworm.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectSmallSword.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectSystem.h
+2 -2
View File
@@ -89070,7 +89070,7 @@
0x000000710118e924,BgparamlistObjectWeaponThrow::ctor,432,_ZN4ksys3res27GParamListObjectWeaponThrowC2Ev
0x000000710118ead4,BgparamlistObjectSandworm::ctor,1992,_ZN4ksys3res24GParamListObjectSandwormC2Ev
0x000000710118f29c,BgparamlistObjectSmallSword::ctor,1756,_ZN4ksys3res26GParamListObjectSmallSwordC2Ev
0x000000710118f978,BgparamlistObjectRod::ctor,1192,
0x000000710118f978,BgparamlistObjectRod::ctor,1192,_ZN4ksys3res19GParamListObjectRodC2Ev
0x000000710118fe20,BgparamlistObjectLargeSword::ctor,1760,
0x0000007101190500,BgparamlistObjectSpear::ctor,2080,
0x0000007101190d20,BgparamlistObjectShield::ctor,1484,
@@ -89158,7 +89158,7 @@
0x00000071011a7c14,sub_71011A7C14,12,_ZNK4ksys3res27GParamListObjectWeaponThrow7getNameEv
0x00000071011a7c20,sub_71011A7C20,12,_ZNK4ksys3res24GParamListObjectSandworm7getNameEv
0x00000071011a7c2c,sub_71011A7C2C,12,_ZNK4ksys3res26GParamListObjectSmallSword7getNameEv
0x00000071011a7c38,sub_71011A7C38,12,
0x00000071011a7c38,sub_71011A7C38,12,_ZNK4ksys3res19GParamListObjectRod7getNameEv
0x00000071011a7c44,sub_71011A7C44,12,
0x00000071011a7c50,sub_71011A7C50,12,
0x00000071011a7c5c,sub_71011A7C5C,12,
Can't render this file because it is too large.
@@ -0,0 +1,52 @@
#pragma once
#include <agl/Utils/aglParameter.h>
#include "KingSystem/Resource/GeneralParamList/resGParamListObject.h"
#include "KingSystem/Utils/Types.h"
namespace ksys::res {
class GParamListObjectRod : public GParamListObject {
public:
GParamListObjectRod();
const char* getName() const override { return "Rod"; }
agl::utl::Parameter<sead::SafeString> mMagicName;
agl::utl::Parameter<s32> mChargeMagicNum;
agl::utl::Parameter<s32> mChargeMagicInterval;
agl::utl::Parameter<s32> mMagicPower;
agl::utl::Parameter<f32> mMagicSpeed;
agl::utl::Parameter<f32> mMagicSpeedByThrow;
agl::utl::Parameter<f32> mMagicGravity;
agl::utl::Parameter<f32> mMagicRadius;
agl::utl::Parameter<s32> mScaleTime;
agl::utl::Parameter<f32> mMagicRange;
agl::utl::Parameter<f32> mMagicSpeedByEnemy;
agl::utl::Parameter<f32> mMagicGravityByEnemy;
agl::utl::Parameter<f32> mMagicRadiusByEnemy;
agl::utl::Parameter<s32> mScaleTimeByEnemy;
agl::utl::Parameter<f32> mMagicRangeByEnemy;
};
KSYS_CHECK_SIZE_NX150(GParamListObjectRod, 0x220);
inline GParamListObjectRod::GParamListObjectRod() {
auto* const obj = &mObj;
mMagicName.init("", "MagicName", "", obj);
mChargeMagicNum.init(4, "ChargeMagicNum", "", obj);
mChargeMagicInterval.init(5, "ChargeMagicInterval", "", obj);
mMagicPower.init(0, "MagicPower", "", obj);
mMagicSpeed.init(0.0, "MagicSpeed", "", obj);
mMagicSpeedByThrow.init(0.0, "MagicSpeedByThrow", "", obj);
mMagicGravity.init(0.5, "MagicGravity", "", obj);
mMagicRadius.init(1.0, "MagicRadius", "", obj);
mScaleTime.init(1, "ScaleTime", "", obj);
mMagicRange.init(1.0, "MagicRange", "", obj);
mMagicSpeedByEnemy.init(0.0, "MagicSpeedByEnemy", "", obj);
mMagicGravityByEnemy.init(0.5, "MagicGravityByEnemy", "", obj);
mMagicRadiusByEnemy.init(1.0, "MagicRadiusByEnemy", "", obj);
mScaleTimeByEnemy.init(1, "ScaleTimeByEnemy", "", obj);
mMagicRangeByEnemy.init(1.0, "MagicRangeByEnemy", "", obj);
}
} // namespace ksys::res
@@ -11,6 +11,7 @@
#include "KingSystem/Resource/GeneralParamList/resGParamListObjectEnemyRace.h"
#include "KingSystem/Resource/GeneralParamList/resGParamListObjectEnemyShown.h"
#include "KingSystem/Resource/GeneralParamList/resGParamListObjectGeneral.h"
#include "KingSystem/Resource/GeneralParamList/resGParamListObjectRod.h"
#include "KingSystem/Resource/GeneralParamList/resGParamListObjectSandworm.h"
#include "KingSystem/Resource/GeneralParamList/resGParamListObjectSmallSword.h"
#include "KingSystem/Resource/GeneralParamList/resGParamListObjectSystem.h"
@@ -64,6 +65,7 @@ bool GParamList::parse_(u8* data, size_t, sead::Heap* heap) {
add<GParamListObjType::WeaponThrow>(archive.getRootList(), "WeaponThrow", heap, dummy_list);
add<GParamListObjType::Sandworm>(archive.getRootList(), "Sandworm", heap, dummy_list);
add<GParamListObjType::SmallSword>(archive.getRootList(), "SmallSword", heap, dummy_list);
add<GParamListObjType::Rod>(archive.getRootList(), "Rod", heap, dummy_list);
// TODO: the rest