mirror of
https://github.com/4jcraft/4jcraft.git
synced 2026-04-25 11:33:37 +00:00
51 lines
1.2 KiB
C++
51 lines
1.2 KiB
C++
#include "../../Platform/stdafx.h"
|
|
#include <iostream>
|
|
#include "../../IO/Streams/InputOutputStream.h"
|
|
#include "PacketListener.h"
|
|
#include "TileEntityDataPacket.h"
|
|
|
|
void TileEntityDataPacket::_init() {
|
|
x = y = z = 0;
|
|
type = TYPE_MOB_SPAWNER;
|
|
tag = nullptr;
|
|
}
|
|
|
|
TileEntityDataPacket::TileEntityDataPacket() {
|
|
_init();
|
|
shouldDelay = true;
|
|
}
|
|
|
|
TileEntityDataPacket::TileEntityDataPacket(int x, int y, int z, int type,
|
|
CompoundTag* tag) {
|
|
_init();
|
|
shouldDelay = true;
|
|
this->x = x;
|
|
this->y = y;
|
|
this->z = z;
|
|
this->type = type;
|
|
this->tag = tag;
|
|
}
|
|
|
|
TileEntityDataPacket::~TileEntityDataPacket() { delete tag; }
|
|
|
|
void TileEntityDataPacket::read(DataInputStream* dis) {
|
|
x = dis->readInt();
|
|
y = dis->readShort();
|
|
z = dis->readInt();
|
|
type = dis->readByte();
|
|
tag = readNbt(dis);
|
|
}
|
|
|
|
void TileEntityDataPacket::write(DataOutputStream* dos) {
|
|
dos->writeInt(x);
|
|
dos->writeShort(y);
|
|
dos->writeInt(z);
|
|
dos->writeByte((uint8_t)type);
|
|
writeNbt(tag, dos);
|
|
}
|
|
|
|
void TileEntityDataPacket::handle(PacketListener* listener) {
|
|
listener->handleTileEntityData(shared_from_this());
|
|
}
|
|
|
|
int TileEntityDataPacket::getEstimatedSize() { return 6 * 4 + 1; } |