mirror of https://github.com/zeldaret/botw.git
ksys/res: Implement GParamList EnemyRace
This commit is contained in:
parent
643efc3104
commit
54500e2d1d
|
@ -66,6 +66,7 @@ add_executable(uking
|
|||
src/KingSystem/Resource/GeneralParamList/resGParamListObject.h
|
||||
src/KingSystem/Resource/GeneralParamList/resGParamListObjectEnemy.h
|
||||
src/KingSystem/Resource/GeneralParamList/resGParamListObjectEnemyLevel.h
|
||||
src/KingSystem/Resource/GeneralParamList/resGParamListObjectEnemyRace.h
|
||||
src/KingSystem/Resource/GeneralParamList/resGParamListObjectGeneral.h
|
||||
src/KingSystem/Resource/GeneralParamList/resGParamListObjectSystem.h
|
||||
src/KingSystem/Resource/GeneralParamList/resGParamListObjectTraveler.cpp
|
||||
|
|
|
@ -89061,7 +89061,7 @@
|
|||
0x000000710118bc58,BgparamlistObjectGeneral::ctor,764,_ZN4ksys3res23GParamListObjectGeneralC2Ev
|
||||
0x000000710118bf54,BgparamlistObjectEnemy::ctor,1440,_ZN4ksys3res21GParamListObjectEnemyC2Ev
|
||||
0x000000710118c4f4,BgparamlistObjectEnemyLevel::ctor,936,_ZN4ksys3res26GParamListObjectEnemyLevelC2Ev
|
||||
0x000000710118c89c,BgparamlistObjectEnemyRace::ctor,2780,
|
||||
0x000000710118c89c,BgparamlistObjectEnemyRace::ctor,2780,_ZN4ksys3res25GParamListObjectEnemyRaceC2Ev
|
||||
0x000000710118d378,BgparamlistObjectAttackInterval::ctor,564,
|
||||
0x000000710118d5ac,BgparamlistObjectEnemyShown::ctor,404,
|
||||
0x000000710118d740,BgparamlistObjectBindBone::ctor,392,
|
||||
|
@ -89149,7 +89149,7 @@
|
|||
0x00000071011a7ba8,sub_71011A7BA8,12,_ZNK4ksys3res23GParamListObjectGeneral7getNameEv
|
||||
0x00000071011a7bb4,sub_71011A7BB4,12,_ZNK4ksys3res21GParamListObjectEnemy7getNameEv
|
||||
0x00000071011a7bc0,sub_71011A7BC0,12,_ZNK4ksys3res26GParamListObjectEnemyLevel7getNameEv
|
||||
0x00000071011a7bcc,sub_71011A7BCC,12,
|
||||
0x00000071011a7bcc,sub_71011A7BCC,12,_ZNK4ksys3res25GParamListObjectEnemyRace7getNameEv
|
||||
0x00000071011a7bd8,sub_71011A7BD8,12,
|
||||
0x00000071011a7be4,sub_71011A7BE4,12,
|
||||
0x00000071011a7bf0,sub_71011A7BF0,12,
|
||||
|
|
Can't render this file because it is too large.
|
|
@ -0,0 +1,98 @@
|
|||
#pragma once
|
||||
|
||||
#include <agl/Utils/aglParameter.h>
|
||||
#include "KingSystem/Resource/GeneralParamList/resGParamListObject.h"
|
||||
#include "KingSystem/Utils/Types.h"
|
||||
|
||||
namespace ksys::res {
|
||||
|
||||
class GParamListObjectEnemyRace : public GParamListObject {
|
||||
public:
|
||||
GParamListObjectEnemyRace();
|
||||
const char* getName() const override { return "EnemyRace"; }
|
||||
|
||||
agl::utl::Parameter<sead::SafeString> mEquipableWeapon;
|
||||
agl::utl::Parameter<bool> mIsFitGroundByAnimalUnit;
|
||||
agl::utl::Parameter<bool> mIsUpdateSupportNormalInAir;
|
||||
agl::utl::Parameter<f32> mBowAttackRangeRatio;
|
||||
agl::utl::Parameter<f32> mWeaponScaleSmallSword;
|
||||
agl::utl::Parameter<sead::Vector3f> mWeaponTransOffsetSmallSword;
|
||||
agl::utl::Parameter<sead::Vector3f> mWeaponRotOffsetSmallSword;
|
||||
agl::utl::Parameter<sead::Vector3f> mWeaponHoldTransOffsetSmallSword;
|
||||
agl::utl::Parameter<sead::Vector3f> mWeaponHoldRotOffsetSmallSword;
|
||||
agl::utl::Parameter<f32> mWeaponScaleLargeSword;
|
||||
agl::utl::Parameter<sead::Vector3f> mWeaponTransOffsetLargeSword;
|
||||
agl::utl::Parameter<sead::Vector3f> mWeaponRotOffsetLargeSword;
|
||||
agl::utl::Parameter<sead::Vector3f> mWeaponHoldTransOffsetLargeSword;
|
||||
agl::utl::Parameter<sead::Vector3f> mWeaponHoldRotOffsetLargeSword;
|
||||
agl::utl::Parameter<f32> mWeaponScaleSpear;
|
||||
agl::utl::Parameter<sead::Vector3f> mWeaponTransOffsetSpear;
|
||||
agl::utl::Parameter<sead::Vector3f> mWeaponRotOffsetSpear;
|
||||
agl::utl::Parameter<sead::Vector3f> mWeaponHoldTransOffsetSpear;
|
||||
agl::utl::Parameter<sead::Vector3f> mWeaponHoldRotOffsetSpear;
|
||||
agl::utl::Parameter<f32> mWeaponScaleBow;
|
||||
agl::utl::Parameter<sead::Vector3f> mWeaponTransOffsetBow;
|
||||
agl::utl::Parameter<sead::Vector3f> mWeaponRotOffsetBow;
|
||||
agl::utl::Parameter<sead::Vector3f> mWeaponHoldTransOffsetBow;
|
||||
agl::utl::Parameter<sead::Vector3f> mWeaponHoldRotOffsetBow;
|
||||
agl::utl::Parameter<f32> mWeaponScaleShield;
|
||||
agl::utl::Parameter<sead::Vector3f> mWeaponTransOffsetShield;
|
||||
agl::utl::Parameter<sead::Vector3f> mWeaponRotOffsetShield;
|
||||
agl::utl::Parameter<sead::Vector3f> mWeaponHoldTransOffsetShield;
|
||||
agl::utl::Parameter<sead::Vector3f> mWeaponHoldRotOffsetShield;
|
||||
agl::utl::Parameter<bool> mIsUseTargetTag;
|
||||
agl::utl::Parameter<sead::SafeString> mTargetActorType;
|
||||
agl::utl::Parameter<sead::SafeString> mEscapeAttackedActorType;
|
||||
agl::utl::Parameter<bool> mReactionBalloon;
|
||||
agl::utl::Parameter<s32> mSmallRagdollTime;
|
||||
agl::utl::Parameter<s32> mSmallRagdollRecoverTime;
|
||||
agl::utl::Parameter<s32> mSmallLargeRagdollTime;
|
||||
agl::utl::Parameter<s32> mSmallLargeRagdollRecoverTime;
|
||||
};
|
||||
KSYS_CHECK_SIZE_NX150(GParamListObjectEnemyRace, 0x590);
|
||||
|
||||
inline GParamListObjectEnemyRace::GParamListObjectEnemyRace() {
|
||||
auto* const obj = &mObj;
|
||||
|
||||
mEquipableWeapon.init("", "EquipableWeapon", "", obj);
|
||||
mIsFitGroundByAnimalUnit.init(true, "IsFitGroundByAnimalUnit", "", obj);
|
||||
mIsUpdateSupportNormalInAir.init(false, "IsUpdateSupportNormalInAir", "", obj);
|
||||
mBowAttackRangeRatio.init(1.0, "BowAttackRangeRatio", "", obj);
|
||||
mWeaponScaleSmallSword.init(1.0, "WeaponScaleSmallSword", "", obj);
|
||||
mWeaponTransOffsetSmallSword.init({0.0, 0.0, 0.0}, "WeaponTransOffsetSmallSword", "", obj);
|
||||
mWeaponRotOffsetSmallSword.init({0.0, 0.0, 0.0}, "WeaponRotOffsetSmallSword", "", obj);
|
||||
mWeaponHoldTransOffsetSmallSword.init({0.0, 0.0, 0.0}, "WeaponHoldTransOffsetSmallSword", "",
|
||||
obj);
|
||||
mWeaponHoldRotOffsetSmallSword.init({0.0, 0.0, 0.0}, "WeaponHoldRotOffsetSmallSword", "", obj);
|
||||
mWeaponScaleLargeSword.init(1.0, "WeaponScaleLargeSword", "", obj);
|
||||
mWeaponTransOffsetLargeSword.init({0.0, 0.0, 0.0}, "WeaponTransOffsetLargeSword", "", obj);
|
||||
mWeaponRotOffsetLargeSword.init({0.0, 0.0, 0.0}, "WeaponRotOffsetLargeSword", "", obj);
|
||||
mWeaponHoldTransOffsetLargeSword.init({0.0, 0.0, 0.0}, "WeaponHoldTransOffsetLargeSword", "",
|
||||
obj);
|
||||
mWeaponHoldRotOffsetLargeSword.init({0.0, 0.0, 0.0}, "WeaponHoldRotOffsetLargeSword", "", obj);
|
||||
mWeaponScaleSpear.init(1.0, "WeaponScaleSpear", "", obj);
|
||||
mWeaponTransOffsetSpear.init({0.0, 0.0, 0.0}, "WeaponTransOffsetSpear", "", obj);
|
||||
mWeaponRotOffsetSpear.init({0.0, 0.0, 0.0}, "WeaponRotOffsetSpear", "", obj);
|
||||
mWeaponHoldTransOffsetSpear.init({0.0, 0.0, 0.0}, "WeaponHoldTransOffsetSpear", "", obj);
|
||||
mWeaponHoldRotOffsetSpear.init({0.0, 0.0, 0.0}, "WeaponHoldRotOffsetSpear", "", obj);
|
||||
mWeaponScaleBow.init(1.0, "WeaponScaleBow", "", obj);
|
||||
mWeaponTransOffsetBow.init({0.0, 0.0, 0.0}, "WeaponTransOffsetBow", "", obj);
|
||||
mWeaponRotOffsetBow.init({0.0, 0.0, 0.0}, "WeaponRotOffsetBow", "", obj);
|
||||
mWeaponHoldTransOffsetBow.init({0.0, 0.0, 0.0}, "WeaponHoldTransOffsetBow", "", obj);
|
||||
mWeaponHoldRotOffsetBow.init({0.0, 0.0, 0.0}, "WeaponHoldRotOffsetBow", "", obj);
|
||||
mWeaponScaleShield.init(1.0, "WeaponScaleShield", "", obj);
|
||||
mWeaponTransOffsetShield.init({0.0, 0.0, 0.0}, "WeaponTransOffsetShield", "", obj);
|
||||
mWeaponRotOffsetShield.init({0.0, 0.0, 0.0}, "WeaponRotOffsetShield", "", obj);
|
||||
mWeaponHoldTransOffsetShield.init({0.0, 0.0, 0.0}, "WeaponHoldTransOffsetShield", "", obj);
|
||||
mWeaponHoldRotOffsetShield.init({0.0, 0.0, 0.0}, "WeaponHoldRotOffsetShield", "", obj);
|
||||
mIsUseTargetTag.init(false, "IsUseTargetTag", "", obj);
|
||||
mTargetActorType.init("Player", "TargetActorType", "", obj);
|
||||
mEscapeAttackedActorType.init("", "EscapeAttackedActorType", "", obj);
|
||||
mReactionBalloon.init(false, "ReactionBalloon", "", obj);
|
||||
mSmallRagdollTime.init(8, "SmallRagdollTime", "", obj);
|
||||
mSmallRagdollRecoverTime.init(15, "SmallRagdollRecoverTime", "", obj);
|
||||
mSmallLargeRagdollTime.init(60, "SmallLargeRagdollTime", "", obj);
|
||||
mSmallLargeRagdollRecoverTime.init(20, "SmallLargeRagdollRecoverTime", "", obj);
|
||||
}
|
||||
|
||||
} // namespace ksys::res
|
|
@ -5,6 +5,7 @@
|
|||
#include "KingSystem/Resource/GeneralParamList/resGParamListObject.h"
|
||||
#include "KingSystem/Resource/GeneralParamList/resGParamListObjectEnemy.h"
|
||||
#include "KingSystem/Resource/GeneralParamList/resGParamListObjectEnemyLevel.h"
|
||||
#include "KingSystem/Resource/GeneralParamList/resGParamListObjectEnemyRace.h"
|
||||
#include "KingSystem/Resource/GeneralParamList/resGParamListObjectGeneral.h"
|
||||
#include "KingSystem/Resource/GeneralParamList/resGParamListObjectSystem.h"
|
||||
#include "KingSystem/Resource/GeneralParamList/resGParamListTraits.h"
|
||||
|
@ -45,6 +46,7 @@ bool GParamList::parse_(u8* data, size_t, sead::Heap* heap) {
|
|||
add<GParamListObjType::General>(archive.getRootList(), "General", heap, dummy_list);
|
||||
add<GParamListObjType::Enemy>(archive.getRootList(), "Enemy", heap, dummy_list);
|
||||
add<GParamListObjType::EnemyLevel>(archive.getRootList(), "EnemyLevel", heap, dummy_list);
|
||||
add<GParamListObjType::EnemyRace>(archive.getRootList(), "EnemyRace", heap, dummy_list);
|
||||
|
||||
// TODO: the rest
|
||||
|
||||
|
|
Loading…
Reference in New Issue