blob: 5d7fc38d2dcf7bd9648aff949383c3d20fa79a93 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
#pragma once
#include <memory>
#include "Packet.hpp"
enum ConnectionState : unsigned char {
Handshaking,
Login,
Play,
Status,
};
class Network {
Socket *socket = nullptr;
StreamSocket *stream = nullptr;
std::shared_ptr<Packet> ReceivePacketByPacketId(int packetId, ConnectionState state, StreamInput &stream);
public:
Network(std::string address, unsigned short port);
~Network();
std::shared_ptr<Packet> ReceivePacket(ConnectionState state = Play, bool useCompression = false);
void SendPacket(Packet &packet, int compressionThreshold = -1);
std::shared_ptr<Packet> ParsePacketPlay(PacketNamePlayCB id);
};
|