#ifndef ENGINE_PHYSICS_H #define ENGINE_PHYSICS_H #include #include typedef struct { Vector2 position; Vector2 direction; Vector2 velocity; float speed; float weight; } Physics; typedef struct { bool overlapping; bool hasDirection; Vector2 direction; float overlap; } CircleCollision; void UpdatePhysicsDirection(Vector2 *direction, Vector2 vector); void UpdatePhysicsVelocity(Vector2 *velocity, Vector2 *direction, float *speed); void UpdatePhysicsPosition(Vector2 *position, Vector2 *velocity); void UpdatePhysicsSpeed(float *speed, float *newSpeed); void UpdatePhysics(Physics *physics, Vector2 direction); float GetActualSpeed(Physics *physics); CircleCollision CheckCircleCollision(Vector2 posA, float radiusA, Vector2 posB, float radiusB); #endif