summaryrefslogtreecommitdiff
path: root/src/KingSystem/Physics/System/physInstanceSet.cpp
diff options
context:
space:
mode:
authorLéo Lam <leo@leolam.fr>2022-01-16 11:42:40 +0100
committerLéo Lam <leo@leolam.fr>2022-01-16 13:00:35 +0100
commit2ed36c7dc03d7c64c18bcbfaf0e76529874e3a53 (patch)
tree3f4b250b6df3d9a6827614df7516f8d28123a73c /src/KingSystem/Physics/System/physInstanceSet.cpp
parent544c33e2eb642dacdc0d2405b7b390a574fb3cc9 (diff)
ksys/phys: Add prerequisites for RigidBody (RigidBodyParam fixes)
Seems to have fixed _ZN4ksys4phys11InstanceSet14sub_7100FBB00CEPNS0_9RigidBodyEPNS0_14RigidBodyParamE
Diffstat (limited to 'src/KingSystem/Physics/System/physInstanceSet.cpp')
-rw-r--r--src/KingSystem/Physics/System/physInstanceSet.cpp9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/KingSystem/Physics/System/physInstanceSet.cpp b/src/KingSystem/Physics/System/physInstanceSet.cpp
index 77dfaca1..4f1ecc7c 100644
--- a/src/KingSystem/Physics/System/physInstanceSet.cpp
+++ b/src/KingSystem/Physics/System/physInstanceSet.cpp
@@ -122,17 +122,16 @@ void* InstanceSet::sub_7100FBAEDC(s32 idx1, s32 idx2) const {
return mRigidBodySets[idx1]->getRigidBody(idx2);
}
-// NON_MATCHING
void InstanceSet::sub_7100FBB00C(phys::RigidBody* body, phys::RigidBodyParam* param) {
if (body == nullptr)
return;
phys::RigidBodyInstanceParam instance_params;
- param->getParams(&instance_params);
+ param->makeInstanceParam(&instance_params);
if (instance_params.contact_layer == phys::ContactLayer::SensorCustomReceiver) {
- body->sub_7100F8F9E8(&instance_params.flags, _188[body->isMassScaling()]);
- } else if (instance_params.info_5e0) {
- body->sub_7100F8FA44(instance_params.contact_layer, instance_params.info_5e0);
+ body->sub_7100F8F9E8(&instance_params.receiver_mask, _188[body->isMassScaling()]);
+ } else if (instance_params.groundhit_mask) {
+ body->sub_7100F8FA44(instance_params.contact_layer, instance_params.groundhit_mask);
} else {
body->sub_7100F8F8CC(instance_params.contact_layer, instance_params.groundhit,
_188[body->isMassScaling()]);