#pragma once #include "MC/BinaryStream.hpp" #include "MC/Packet.hpp" template 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; } };