#ifndef PACKETUTILS_H #define PACKETUTILS_H #include #include namespace PacketUtils { void WriteHeader(RakNet::BitStream& bitStream, uint16_t connectionType, uint32_t internalPacketID); uint16_t ReadPacketU16(uint32_t startLoc, Packet * packet); uint32_t ReadPacketU32(uint32_t startLoc, Packet * packet); uint64_t ReadPacketU64(uint32_t startLoc, Packet * packet); int64_t ReadPacketS64(uint32_t startLoc, Packet * packet); std::string ReadString(uint32_t startLoc, Packet * packet, bool wide); void WritePacketString(const std::string& string, uint32_t maxSize, RakNet::BitStream * bitStream); void WriteString(RakNet::BitStream& bitStream, const std::string& s, uint32_t maxSize); void WriteWString(RakNet::BitStream& bitStream, const std::string& string, uint32_t maxSize); void WriteWString(RakNet::BitStream& bitStream, const std::u16string& string, uint32_t maxSize); void WritePacketWString(const std::string& string, uint32_t maxSize, RakNet::BitStream * bitStream); void SavePacket(const std::string& filename, const char * data, size_t length); }; #endif // PACKETUTILS_H