#pragma once #include "protocol/Protocol.h" #include "game/BaseGame.h" namespace td { namespace protocol { struct PlayerInfo { std::string name; game::TeamColor team; }; class PlayerListPacket : public Packet { private: std::map m_Players; public: PlayerListPacket() {} PlayerListPacket(std::map players) : m_Players(players) {} virtual ~PlayerListPacket() {} virtual DataBuffer Serialize(bool packetID = true) const; virtual void Deserialize(DataBuffer& data); virtual void Dispatch(PacketHandler* handler) const; const std::map& GetPlayers() const { return m_Players; } virtual PacketType GetType() const { return PacketType::PlayerList; } }; } // namespace protocol } // namespace td