fix last commit

This commit is contained in:
James Lambert 2023-05-19 07:41:28 -06:00
parent dcce186f25
commit b8fd8e9fd9
3 changed files with 6 additions and 1 deletions

View file

@ -28,6 +28,10 @@ int collisionObjectIsActive(struct CollisionObject* object) {
return object->body && ((object->body->flags & (RigidBodyIsKinematic | RigidBodyIsSleeping)) == 0);
}
int collisionObjectIsGrabbable(struct CollisionObject* object) {
return object->body && ((object->body->flags & (RigidBodyFlagsGrabbable)) != 0);
}
int collisionObjectShouldGenerateConctacts(struct CollisionObject* object) {
return collisionObjectIsActive(object) || (object->body->flags & RigidBodyIsPlayer) != 0;
}

View file

@ -36,6 +36,7 @@ struct SweptCollisionObject {
};
int collisionObjectIsActive(struct CollisionObject* object);
int collisionObjectIsGrabbable(struct CollisionObject* object);
int collisionObjectShouldGenerateConctacts(struct CollisionObject* object);
void collisionObjectInit(struct CollisionObject* object, struct ColliderTypeData *collider, struct RigidBody* body, float mass, int collisionLayers);

View file

@ -222,7 +222,7 @@ void playerHandleCollision(struct Player* player) {
);
}
if ((contact->shapeA->body->flags & RigidBodyFlagsGrabbable) || (contact->shapeB->body->flags & RigidBodyFlagsGrabbable)) {
if (collisionObjectIsGrabbable(contact->shapeA) || collisionObjectIsGrabbable(contact->shapeB)) {
player->body.transform.position.y = MAX(player->body.transform.position.y, prevY);
}