X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fclient%2FNetworkedInput.hpp;h=3a61d90910e785ec67ce7628ca8e1b1faabf7e8e;hb=b9462143d9b2fd1f54aa3b4ec32eecb62c01615f;hp=462b6a721155f0a3c7f672f87c79f0113d2c8555;hpb=c1da86ebab41895bf49ed747c75ecf722e8c5586;p=blank.git diff --git a/src/client/NetworkedInput.hpp b/src/client/NetworkedInput.hpp index 462b6a7..3a61d90 100644 --- a/src/client/NetworkedInput.hpp +++ b/src/client/NetworkedInput.hpp @@ -20,7 +20,8 @@ class NetworkedInput public: explicit NetworkedInput(World &, Player &, Client &); - void Update(int dt); + bool UpdateImportant() const noexcept; + void Update(Entity &, float dt) override; void PushPlayerUpdate(int dt); void MergePlayerCorrection(std::uint16_t, const EntityState &); @@ -36,13 +37,17 @@ private: struct PlayerHistory { EntityState state; - int delta_t; + glm::vec3 movement; + float delta_t; std::uint16_t packet; - PlayerHistory(EntityState s, int dt, std::uint16_t p) - : state(s), delta_t(dt), packet(p) { } + PlayerHistory(EntityState s, const glm::vec3 &mv, float dt, std::uint16_t p) + : state(s), movement(mv), delta_t(dt), packet(p) { } }; std::list player_hist; + glm::vec3 old_movement; + + std::uint8_t old_actions; std::uint8_t actions; };