#include "Client.hpp"
#include "NetworkedInput.hpp"
-#include "../app/init.hpp"
+#include "../app/error.hpp"
#include "../geometry/distance.hpp"
#include "../io/WorldSave.hpp"
#include "../net/Packet.hpp"
}
+// relying on {} zero intitialization for UDPpacket, because
+// the type and number of fields is not well defined
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wmissing-field-initializers"
Client::Client(const Config::Network &conf)
: conn(client_resolve(conf.host.c_str(), conf.port))
, client_sock(client_bind(0))
, client_pack{ -1, nullptr, 0 } {
+#pragma GCC diagnostic pop
client_pack.data = new Uint8[sizeof(Packet)];
client_pack.maxlen = sizeof(Packet);
// establish connection
uint16_t Client::SendPlayerUpdate(
const EntityState &prediction,
const glm::vec3 &movement,
- float pitch,
- float yaw,
+ float,
+ float,
uint8_t actions,
uint8_t slot
) {
return old_actions != actions || !iszero(old_movement - GetMovement());
}
-void NetworkedInput::Update(Entity &, float dt) {
+void NetworkedInput::Update(Entity &, float) {
Invalidate();
UpdatePlayer();
}
}
glm::vec3 displacement(replay.GetState().Diff(player_state));
- const float disp_squared = dot(displacement, displacement);
+ const float disp_squared = glm::dot(displacement, displacement);
if (disp_squared < 16.0f * numeric_limits<float>::epsilon()) {
SetMovement(restore_movement);