From 9b7be419c9dcc6ebd1e504713c7b2676ca3d2fdf Mon Sep 17 00:00:00 2001 From: Loek Le Blansch Date: Wed, 23 Oct 2024 21:54:28 +0200 Subject: `clang-format` --- src/crepe/PhysicsSystem.cpp | 80 ++++++++++++++++++++++++--------------------- 1 file changed, 42 insertions(+), 38 deletions(-) (limited to 'src/crepe/PhysicsSystem.cpp') diff --git a/src/crepe/PhysicsSystem.cpp b/src/crepe/PhysicsSystem.cpp index 93b20f1..4bb931d 100644 --- a/src/crepe/PhysicsSystem.cpp +++ b/src/crepe/PhysicsSystem.cpp @@ -1,56 +1,60 @@ #include "PhysicsSystem.h" #include "ComponentManager.h" +#include "api/Force.h" #include "api/Rigidbody.h" #include "api/Transform.h" -#include "api/Force.h" #include using namespace crepe; using namespace crepe::api; -PhysicsSystem::PhysicsSystem() { - -} +PhysicsSystem::PhysicsSystem() {} void PhysicsSystem::update() { - ComponentManager& mgr = ComponentManager::get_instance(); - std::vector> rigidbodies = mgr.get_components_by_type(); - std::vector> transforms = mgr.get_components_by_type(); - - for (Rigidbody& rigidbody : rigidbodies) { + ComponentManager & mgr = ComponentManager::get_instance(); + std::vector> rigidbodies + = mgr.get_components_by_type(); + std::vector> transforms + = mgr.get_components_by_type(); + + for (Rigidbody & rigidbody : rigidbodies) { + + switch (rigidbody.body_type) { + case BodyType::DYNAMIC: + for (Transform & transform : transforms) { + if (transform.game_object_id == rigidbody.game_object_id) { + rigidbody.velocity_x = 0; + rigidbody.velocity_y = 0; + std::vector> forces + = mgr.get_components_by_id( + rigidbody.game_object_id); + rigidbody.velocity_y + += rigidbody.gravity_scale * 1 * rigidbody.mass; - switch (rigidbody.body_type) - { - case BodyType::Dynamic : - for (Transform& transform : transforms) { - if(transform.gameObjectId == rigidbody.gameObjectId) - { - rigidbody.velocity_x = 0; - rigidbody.velocity_y = 0; - std::vector> Forces = mgr.get_components_by_id(rigidbody.gameObjectId); - rigidbody.velocity_y += rigidbody.gravity_scale * 1 * rigidbody.mass; + for (Force & force : forces) { + rigidbody.velocity_x += force.force_x; + rigidbody.velocity_y += force.force_y; + } - for (Force& force : Forces) - { - rigidbody.velocity_x += force.force_x; - rigidbody.velocity_y += force.force_y; + std::cout << "before transform.postion.x " + << transform.position.x << std::endl; + std::cout << "before transform.postion.y " + << transform.position.y << std::endl; + transform.position.x += rigidbody.velocity_x; + transform.position.y += rigidbody.velocity_y; + std::cout << "after transform.postion.x " + << transform.position.x << std::endl; + std::cout << "after transform.postion.y " + << transform.position.y << std::endl; } - - std::cout << "before transform.postion.x " << transform.position.x << std::endl; - std::cout << "before transform.postion.y " << transform.position.y << std::endl; - transform.position.x += rigidbody.velocity_x; - transform.position.y += rigidbody.velocity_y; - std::cout << "after transform.postion.x " << transform.position.x << std::endl; - std::cout << "after transform.postion.y " << transform.position.y << std::endl; } - } - break; - case BodyType::Kinematic : - break; //(scripts) - case BodyType::Static : - break; //(unmoveable objects) - default: - break; + break; + case BodyType::KINEMATIC: + break; //(scripts) + case BodyType::STATIC: + break; //(unmoveable objects) + default: + break; } } } -- cgit v1.2.3