Files
MinecraftConsoles/Minecraft.World/MovePlayerPacket.h
ModMaker101 a9be52c41a Project modernization (#630)
* Fixed boats falling and a TP glitch #266

* Replaced every C-style cast with C++ ones

* Replaced every C-style cast with C++ ones

* Fixed boats falling and a TP glitch #266

* Updated NULL to nullptr and fixing some type issues

* Modernized and fixed a few bugs

- Replaced most instances of `NULL` with `nullptr`.
- Replaced most `shared_ptr(new ...)` with `make_shared`.
- Removed the `nullptr` macro as it was interfering with the actual nullptr keyword in some instances.

* Fixing more conflicts

* Replace int loops with size_t and start work on overrides
2026-03-08 09:56:03 +07:00

78 lines
2.0 KiB
C++

#pragma once
using namespace std;
#include "Packet.h"
class MovePlayerPacket : public Packet, public enable_shared_from_this<MovePlayerPacket>
{
public:
class PosRot;
class Pos;
class Rot;
double x, y, z, yView;
float yRot, xRot;
bool onGround;
bool hasPos, hasRot;
bool isFlying; // 4J Added
MovePlayerPacket();
MovePlayerPacket(bool onGround, bool isFlying);
virtual void handle(PacketListener *listener);
virtual void read(DataInputStream *dis);
virtual void write(DataOutputStream *dos);
virtual int getEstimatedSize();
virtual bool canBeInvalidated();
virtual bool isInvalidatedBy(shared_ptr<Packet> packet);
public:
static shared_ptr<Packet> create() { return std::make_shared<MovePlayerPacket>(); }
virtual int getId() { return 10; }
};
class MovePlayerPacket::PosRot : public MovePlayerPacket
{
public:
PosRot();
PosRot(double x, double y, double yView, double z, float yRot, float xRot, bool onGround, bool isFlying);
virtual void read(DataInputStream *dis);
virtual void write(DataOutputStream *dos);
virtual int getEstimatedSize();
public:
static shared_ptr<Packet> create() { return std::make_shared<MovePlayerPacket::PosRot>(); }
virtual int getId() { return 13; }
};
class MovePlayerPacket::Pos : public MovePlayerPacket
{
public:
Pos();
Pos(double x, double y, double yView, double z, bool onGround, bool isFlying);
virtual void read(DataInputStream *dis);
virtual void write(DataOutputStream *dos);
virtual int getEstimatedSize();
public:
static shared_ptr<Packet> create() { return std::make_shared<MovePlayerPacket::Pos>(); }
virtual int getId() { return 11; }
};
class MovePlayerPacket::Rot : public MovePlayerPacket
{
public:
Rot();
Rot(float yRot, float xRot, bool onGround, bool isFlying);
virtual void read(DataInputStream *dis);
virtual void write(DataOutputStream *dos);
virtual int getEstimatedSize();
public:
static shared_ptr<Packet> create() { return std::make_shared<MovePlayerPacket::Rot>(); }
virtual int getId() { return 12; }
};