summary refs log tree commit diff
path: root/src/Entities/Player.hpp
diff options
context:
space:
mode:
authorMel <einebeere@gmail.com>2024-01-25 11:25:29 +0100
committerMel <einebeere@gmail.com>2024-01-25 11:25:29 +0100
commit66e436d0f2cf3c33105d8a5bce43bf64d5e72255 (patch)
tree3ee36001907453336cf96a57d8ec0154a9ae3135 /src/Entities/Player.hpp
parentefd17623627607a26f33dac8f7ef1a1ddc931907 (diff)
downloadmeowcraft-66e436d0f2cf3c33105d8a5bce43bf64d5e72255.tar.zst
meowcraft-66e436d0f2cf3c33105d8a5bce43bf64d5e72255.zip
Mostly functioning world collisions
Diffstat (limited to 'src/Entities/Player.hpp')
-rw-r--r--src/Entities/Player.hpp12
1 files changed, 4 insertions, 8 deletions
diff --git a/src/Entities/Player.hpp b/src/Entities/Player.hpp
index 3ae10ff..95e3d64 100644
--- a/src/Entities/Player.hpp
+++ b/src/Entities/Player.hpp
@@ -1,6 +1,5 @@
 #pragma once
 
-#include "../Common/FlexArray.hpp"
 #include "../Time.hpp"
 #include "../Transform.hpp"
 #include "../GFX/Camera.hpp"
@@ -11,7 +10,6 @@
 #include "../World/Position.hpp"
 
 namespace MC::Entities {
-
 class Player {
 public:
     explicit Player(Position::World position) : m_transform(position) {}
@@ -25,21 +23,19 @@ public:
     void rotate_to(Rotation to);
 
     AABB bounds() const;
-private:
-    void update_camera_position(GFX::Camera& camera);
 
-    static constexpr UInt MaxCollidingTerrain = 34;
+private:
+    static Position::World process_collisions(World::World& world, Position::World from, Position::World to);
     static std::vector<AABB> terrain_collision_domain(Position::World from, Position::World to, World::World& world);
 
+    void update_camera_position(GFX::Camera& camera);
+
     // Creates a bounding box where `position` is at the center of the bottom face.
     static AABB bounding_box_for_position(Position::World position);
     // Returns position of the center of the bottom face of `box`.
     static Position::World position_for_bounding_box(AABB box);
 
-    static Position::World collision_reposition(Position::World from, Position::World to, AABB colliding);
-
     Transform m_transform;
-
     static inline AABB s_bounds{{0.35, 1.8, 0.35}};
 };