ksys/res: Implement GParamList CureItem

This commit is contained in:
Léo Lam 2020-09-20 01:35:06 +02:00
parent 5dabe96826
commit c0d7b624ae
No known key found for this signature in database
GPG Key ID: 0DF30F9081000741
4 changed files with 35 additions and 2 deletions

View File

@ -75,6 +75,7 @@ add_executable(uking
src/KingSystem/Resource/GeneralParamList/resGParamListObjectBow.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectBullet.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectCamera.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectCureItem.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectEnemy.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectEnemyLevel.h
src/KingSystem/Resource/GeneralParamList/resGParamListObjectEnemyRace.h

View File

@ -89089,7 +89089,7 @@
0x0000007101196448,BgparamlistObjectLiftable::ctor,1520,_ZN4ksys3res24GParamListObjectLiftableC2Ev
0x0000007101196a38,BgparamlistObjectItem::ctor,664,_ZN4ksys3res20GParamListObjectItemC2Ev
0x0000007101196cd0,BgparamlistObjectArrow::ctor,540,_ZN4ksys3res21GParamListObjectArrowC2Ev
0x0000007101196eec,BgparamlistObjectCureItem::ctor,456,
0x0000007101196eec,BgparamlistObjectCureItem::ctor,456,_ZN4ksys3res24GParamListObjectCureItemC2Ev
0x00000071011970b4,BgparamlistObjectCookSpice::ctor,476,
0x0000007101197290,BgparamlistObjectLumberjackTree::ctor,664,
0x0000007101197528,BgparamlistObjectNpc::ctor,1232,
@ -89180,7 +89180,7 @@
0x00000071011a7d1c,sub_71011A7D1C,12,_ZNK4ksys3res21GParamListObjectRupee7getNameEv
0x00000071011a7d28,sub_71011A7D28,12,_ZNK4ksys3res21GParamListObjectArrow7getNameEv
0x00000071011a7d34,sub_71011A7D34,12,_ZNK4ksys3res22GParamListObjectBullet7getNameEv
0x00000071011a7d40,sub_71011A7D40,12,
0x00000071011a7d40,sub_71011A7D40,12,_ZNK4ksys3res24GParamListObjectCureItem7getNameEv
0x00000071011a7d4c,sub_71011A7D4C,12,
0x00000071011a7d58,sub_71011A7D58,12,
0x00000071011a7d64,sub_71011A7D64,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 GParamListObjectCureItem : public GParamListObject {
public:
GParamListObjectCureItem();
const char* getName() const override { return "CureItem"; }
agl::utl::Parameter<s32> mHitPointRecover;
agl::utl::Parameter<sead::SafeString> mEffectType;
agl::utl::Parameter<s32> mEffectLevel;
agl::utl::Parameter<s32> mEffectiveTime;
};
KSYS_CHECK_SIZE_NX150(GParamListObjectCureItem, 0xc0);
inline GParamListObjectCureItem::GParamListObjectCureItem() {
auto* const obj = &mObj;
mHitPointRecover.init(0, "HitPointRecover", "", obj);
mEffectType.init("None", "EffectType", "", obj);
mEffectLevel.init(0, "EffectLevel", "", obj);
mEffectiveTime.init(0, "EffectiveTime", "", obj);
}
} // namespace ksys::res

View File

@ -14,6 +14,7 @@
#include "KingSystem/Resource/GeneralParamList/resGParamListObjectBow.h"
#include "KingSystem/Resource/GeneralParamList/resGParamListObjectBullet.h"
#include "KingSystem/Resource/GeneralParamList/resGParamListObjectCamera.h"
#include "KingSystem/Resource/GeneralParamList/resGParamListObjectCureItem.h"
#include "KingSystem/Resource/GeneralParamList/resGParamListObjectEnemy.h"
#include "KingSystem/Resource/GeneralParamList/resGParamListObjectEnemyLevel.h"
#include "KingSystem/Resource/GeneralParamList/resGParamListObjectEnemyRace.h"
@ -109,6 +110,7 @@ bool GParamList::parse_(u8* data, size_t, sead::Heap* heap) {
add<GParamListObjType::Rupee>(archive.getRootList(), "Rupee", heap, dummy_list);
add<GParamListObjType::Arrow>(archive.getRootList(), "Arrow", heap, dummy_list);
add<GParamListObjType::Bullet>(archive.getRootList(), "Bullet", heap, dummy_list);
add<GParamListObjType::CureItem>(archive.getRootList(), "CureItem", heap, dummy_list);
// TODO: the rest