79 lines
1.9 KiB
C++
Executable File
79 lines
1.9 KiB
C++
Executable File
#ifndef NET_MINECRAFT_NETWORK_PACKET__MoveEntityPacket_H__
|
|
#define NET_MINECRAFT_NETWORK_PACKET__MoveEntityPacket_H__
|
|
|
|
#include "../Packet.h"
|
|
|
|
class MoveEntityPacket: public Packet
|
|
{
|
|
public:
|
|
MoveEntityPacket()
|
|
: hasRot(false)
|
|
{}
|
|
|
|
// PACKET_MOVEENTITY is unknown and undefined (and not used)
|
|
void write(RakNet::BitStream* bitStream) {
|
|
bitStream->Write((RakNet::MessageID)(ID_USER_PACKET_ENUM + PACKET_MOVEENTITY));
|
|
}
|
|
|
|
void read(RakNet::BitStream* bitStream) {};
|
|
|
|
void handle(const RakNet::RakNetGUID& source, NetEventCallback* callback)
|
|
{
|
|
callback->handle(source, (MoveEntityPacket*)this);
|
|
}
|
|
|
|
int entityId;
|
|
float x, y, z;
|
|
float xRot;
|
|
float yRot;
|
|
bool hasRot;
|
|
};
|
|
|
|
class MoveEntityPacket_PosRot: public MoveEntityPacket
|
|
{
|
|
typedef MoveEntityPacket super;
|
|
public:
|
|
MoveEntityPacket_PosRot() {
|
|
hasRot = true;
|
|
}
|
|
|
|
//MoveEntityPacket_PosRot(int entityId, float x, float y, float z, float yRot, float xRot) {
|
|
// set(entityId, x, y, z, yRot, xRot);
|
|
//}
|
|
|
|
MoveEntityPacket_PosRot(const Entity* e) {
|
|
set(e->entityId, e->x, e->y - e->heightOffset, e->z, e->yRot, e->xRot);
|
|
}
|
|
|
|
void set(int entityId, float x, float y, float z, float yRot, float xRot) {
|
|
this->entityId = entityId;
|
|
this->x = x;
|
|
this->y = y;
|
|
this->z = z;
|
|
this->xRot = xRot;
|
|
this->yRot = yRot;
|
|
}
|
|
|
|
void write(RakNet::BitStream* bitStream) {
|
|
bitStream->Write((RakNet::MessageID)(ID_USER_PACKET_ENUM + PACKET_MOVEENTITY_POSROT));
|
|
|
|
bitStream->Write(entityId);
|
|
bitStream->Write(x);
|
|
bitStream->Write(y);
|
|
bitStream->Write(z);
|
|
bitStream->Write(yRot);
|
|
bitStream->Write(xRot);
|
|
}
|
|
|
|
void read(RakNet::BitStream* bitStream) {
|
|
bitStream->Read(entityId);
|
|
bitStream->Read(x);
|
|
bitStream->Read(y);
|
|
bitStream->Read(z);
|
|
bitStream->Read(yRot);
|
|
bitStream->Read(xRot);
|
|
}
|
|
};
|
|
|
|
#endif /*NET_MINECRAFT_NETWORK_PACKET__MoveEntityPacket_H__*/
|