summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorLéo Lam <leo@leolam.fr>2021-04-20 15:02:12 +0200
committerLéo Lam <leo@leolam.fr>2021-04-20 15:02:46 +0200
commit2e966d034c909e5ff2fc869b0a75686d481e9379 (patch)
treeec0d666123c0125fb9aab1fbaa856f712ddc8622 /src
parentc95a79bbc15d6b20e17acfe4a7299961fd299a65 (diff)
ksys: Fix matching issue in _ZN4ksys4phys13RagdollConfig15PartImpulseInfoC1Ev (missing external constants)
Diffstat (limited to 'src')
-rw-r--r--src/KingSystem/Physics/Ragdoll/physRagdollConfig.cpp10
-rw-r--r--src/KingSystem/Resource/resResourceRagdollConfig.cpp4
-rw-r--r--src/KingSystem/Resource/resResourceRagdollConfig.h4
3 files changed, 13 insertions, 5 deletions
diff --git a/src/KingSystem/Physics/Ragdoll/physRagdollConfig.cpp b/src/KingSystem/Physics/Ragdoll/physRagdollConfig.cpp
index 1403a775..87d50703 100644
--- a/src/KingSystem/Physics/Ragdoll/physRagdollConfig.cpp
+++ b/src/KingSystem/Physics/Ragdoll/physRagdollConfig.cpp
@@ -1,4 +1,5 @@
#include "KingSystem/Physics/Ragdoll/physRagdollConfig.h"
+#include "KingSystem/Resource/resResourceRagdollConfig.h"
namespace ksys::phys {
@@ -15,19 +16,18 @@ RagdollConfig::PartImpulseInfo::ImpulseObj::ImpulseObj()
mAttackPoint({0, 0, 0}, "AttackPoint", "インパルスを与える点", this),
mImpulsePower(0.1, "ImpulsePower", "インパルスの強さ", this) {}
-// NON_MATCHING: loop unrolling
RagdollConfig::PartImpulseInfo::PartImpulseInfo()
: mIsUseReceiveImpulse(true, "IsUseReceiveImpulse", "攻撃インパルスを反映させるかどうか",
&mObj),
mIsUseFixedImpulse(true, "IsUseFixedImpulse", "固定インパルスを反映させるかどうか", &mObj) {
- for (int i = 0; i < mReceiveObjs.size(); ++i) {
+ for (int i = 0; i < res::RagdollConfig::cNumReceiveObjs; ++i) {
sead::FormatFixedSafeString<128> name("ReceiveObj%02d", i + 1);
- addObj(&mReceiveObjs[i], name);
+ addObj(&mReceiveObjs(i), name);
}
- for (int i = 0; i < mImpulseObjs.size(); ++i) {
+ for (int i = 0; i < res::RagdollConfig::cNumImpulseObjs; ++i) {
sead::FormatFixedSafeString<128> name("ImpulseObj%02d", i + 1);
- addObj(&mImpulseObjs[i], name);
+ addObj(&mImpulseObjs(i), name);
}
addObj(&mObj, "PartImpulseData");
diff --git a/src/KingSystem/Resource/resResourceRagdollConfig.cpp b/src/KingSystem/Resource/resResourceRagdollConfig.cpp
index 56be5211..fa9874d0 100644
--- a/src/KingSystem/Resource/resResourceRagdollConfig.cpp
+++ b/src/KingSystem/Resource/resResourceRagdollConfig.cpp
@@ -2,6 +2,10 @@
namespace ksys::res {
+const int RagdollConfig::cNumReceiveObjs = 3;
+const int RagdollConfig::cNumImpulseObjs = 5;
+const int RagdollConfig::cNumXXX = 10;
+
RagdollConfig::RagdollConfig() : ParamIO("rgconfig", 0) {}
RagdollConfig::~RagdollConfig() = default;
diff --git a/src/KingSystem/Resource/resResourceRagdollConfig.h b/src/KingSystem/Resource/resResourceRagdollConfig.h
index a97fa3a4..9b148720 100644
--- a/src/KingSystem/Resource/resResourceRagdollConfig.h
+++ b/src/KingSystem/Resource/resResourceRagdollConfig.h
@@ -18,6 +18,10 @@ public:
const phys::RagdollConfig& getConfig() const { return mConfig; }
+ static const int cNumReceiveObjs;
+ static const int cNumImpulseObjs;
+ static const int cNumXXX; // FIXME: rename
+
private:
phys::RagdollConfig mConfig;
};