Basic collisions

This commit is contained in:
Jan Mrna
2025-10-10 19:00:08 +02:00
parent 3d34b68133
commit 250f0963c8
6 changed files with 98 additions and 7 deletions

View File

@@ -68,6 +68,25 @@ std::optional<WorldPos> Entity::GetMoveTarget()
return {};
}
bool Entity::CollidesWith(const Entity& other) const
{
const auto& A = *this;
const auto& B = other;
auto position_A = A.GetPosition();
auto position_B = B.GetPosition();
auto distance_sq = position_A.DistanceSquared(position_B);
auto collision_distance_sq =
A.GetCollisionRadiusSquared() +
B.GetCollisionRadiusSquared() +
2 * A.GetCollisionRadius() * B.GetCollisionRadius();
if (distance_sq < collision_distance_sq)
{
return true;
}
return false;
}
Player::Player() {
LOG_DEBUG(".");
if (m_Sprite == nullptr) {