mirror of
https://github.com/quizhizhe/LiteLoaderBDS-1.16.40.git
synced 2025-06-04 19:33:40 +00:00
38 lines
1003 B
C++
38 lines
1003 B
C++
#pragma once
|
|
#include "MC/BinaryStream.hpp"
|
|
#include "MC/Packet.hpp"
|
|
|
|
template <int pid, bool batching = true, bool compress = true>
|
|
class NetworkPacket : public Packet {
|
|
public:
|
|
std::string_view view;
|
|
NetworkPacket() {
|
|
incompressible = compress;
|
|
}
|
|
NetworkPacket(std::string_view sv)
|
|
: view(sv) {
|
|
incompressible = compress;
|
|
}
|
|
inline virtual ~NetworkPacket() {
|
|
}
|
|
|
|
virtual enum MinecraftPacketIds getId() const {
|
|
return (enum MinecraftPacketIds)pid;
|
|
}
|
|
virtual std::string getName() const {
|
|
return "MyPkt";
|
|
}
|
|
virtual void write(BinaryStream& bs) const {
|
|
bs.getRaw().append(view);
|
|
}
|
|
virtual enum StreamReadResult _read(class ReadOnlyBinaryStream&) override {
|
|
throw("TODO in MyPkt::_read()");
|
|
return (enum StreamReadResult)0;
|
|
}
|
|
virtual void dummyread() {
|
|
throw("TODO in MyPkt::dummyread()");
|
|
}
|
|
virtual bool disallowBatching() const {
|
|
return !batching;
|
|
}
|
|
}; |