Files
Blitz/include/blitz/protocol/packets/PlayerPositionAndRotationPacket.h
Persson-dev 2bef8801e8
Some checks failed
Linux arm64 / Build (push) Failing after 4m47s
Physique presque finie (#21)
Co-authored-by: = <=>
Co-authored-by: AquaEBM <AquaEBM@gmail.com>
Co-authored-by: AquaEBM@gmail.com <AquaEBM@gmail.com>
Reviewed-on: #21
Co-authored-by: Persson-dev <sim16.prib@gmail.com>
Co-committed-by: Persson-dev <sim16.prib@gmail.com>
2024-03-26 08:31:02 +01:00

50 lines
1.1 KiB
C++

#pragma once
#include "blitz/common/Defines.h"
#include "blitz/maths/Vector.h"
#include "blitz/protocol/Protocol.h"
namespace blitz {
namespace protocol {
class PlayerPositionAndRotationPacket : public Packet {
private:
game::PlayerID m_Player; // only used when sent to client
Vec3f m_Position;
float m_Yaw, m_Pitch;
public:
PlayerPositionAndRotationPacket() {}
PlayerPositionAndRotationPacket(const Vec3f& position, float yaw, float pitch, game::PlayerID player = 0) :
m_Player(player), m_Position(position), m_Yaw(yaw), m_Pitch(pitch) {}
virtual ~PlayerPositionAndRotationPacket() {}
virtual DataBuffer Serialize(bool packetID = true) const;
virtual void Deserialize(DataBuffer& data);
virtual void Dispatch(PacketHandler* handler) const;
const Vec3f& GetPosition() const {
return m_Position;
}
float GetYaw() const {
return m_Yaw;
}
float GetPitch() const {
return m_Pitch;
}
game::PlayerID GetPlayer() const {
return m_Player;
}
virtual PacketType GetType() const {
return PacketType::PlayerPositionAndRotation;
}
};
} // namespace protocol
} // namespace blitz