FeatherMC/src/Protocol.h

40 lines
739 B
C++

#pragma once
#include "NetworkMessage.h"
namespace Feather
{
class PacketReader;
class MinecraftClient;
enum class ProtocolState
{
Handholding = -1,
Play = 0,
Status = 1,
Login = 2,
};
class ProtocolContext
{
public:
inline ProtocolState GetState() const
{
return m_state;
}
inline void SetState(ProtocolState state)
{
printf("Setting state");
m_state = state;
}
private:
ProtocolState m_state = ProtocolState::Handholding;
};
class Protocol
{
public:
void HandlePacket(MinecraftClient& client, PacketReader& packet);
};
}