forked from Kolyah35/minecraft-pe-0.6.1
48 lines
1.5 KiB
C++
Executable File
48 lines
1.5 KiB
C++
Executable File
#ifndef NET_MINECRAFT_NETWORK_PACKET__AddPaintingPacket_H__
|
|
#define NET_MINECRAFT_NETWORK_PACKET__AddPaintingPacket_H__
|
|
#include "../Packet.h"
|
|
#include "../../world/entity/Painting.h"
|
|
class AddPaintingPacket : public Packet {
|
|
public:
|
|
AddPaintingPacket() : entityId(0), xTile(0), yTile(0), zTile(0), dir(-1) {
|
|
|
|
}
|
|
AddPaintingPacket(Painting* painting) {
|
|
entityId = painting->entityId;
|
|
xTile = painting->xTile;
|
|
yTile = painting->yTile;
|
|
zTile = painting->zTile;
|
|
dir = painting->dir;
|
|
motive = painting->motive->name;
|
|
}
|
|
void write(RakNet::BitStream* bitStream) {
|
|
bitStream->Write((RakNet::MessageID)(ID_USER_PACKET_ENUM + PACKET_ADDPAINTING));
|
|
bitStream->Write(entityId);
|
|
bitStream->Write(xTile);
|
|
bitStream->Write(yTile);
|
|
bitStream->Write(zTile);
|
|
bitStream->Write(dir);
|
|
RakNet::RakString rakMotive(motive.c_str());
|
|
bitStream->Write(rakMotive);
|
|
}
|
|
void read(RakNet::BitStream* bitStream) {
|
|
bitStream->Read(entityId);
|
|
bitStream->Read(xTile);
|
|
bitStream->Read(yTile);
|
|
bitStream->Read(zTile);
|
|
bitStream->Read(dir);
|
|
RakNet::RakString rakMotive;
|
|
bitStream->Read(rakMotive);
|
|
motive = std::string(rakMotive.C_String());
|
|
}
|
|
void handle(const RakNet::RakNetGUID& source, NetEventCallback* callback) {
|
|
callback->handle(source, (AddPaintingPacket*)this);
|
|
}
|
|
public:
|
|
int entityId;
|
|
int xTile, yTile, zTile;
|
|
int dir;
|
|
std::string motive;
|
|
};
|
|
|
|
#endif /* NET_MINECRAFT_NETWORK_PACKET__AddPaintingPacket_H__ */ |