54 lines
892 B
C++
54 lines
892 B
C++
#pragma once
|
|
|
|
#include <array>
|
|
#include <string>
|
|
#include <td/Types.h>
|
|
#include <sp/protocol/BitField.h>
|
|
|
|
namespace td {
|
|
namespace protocol {
|
|
|
|
namespace cdata {
|
|
|
|
struct PlaceTower {
|
|
sp::BitField<TowerType, 4> m_Type;
|
|
sp::BitField<PlayerID, 4> m_Placer;
|
|
TowerCoords m_Position;
|
|
};
|
|
|
|
struct UpgradeTower {
|
|
sp::BitField<TowerID, 12> m_Tower;
|
|
sp::BitField<std::uint8_t, 4> m_Upgrade;
|
|
};
|
|
|
|
struct SpawnTroop {
|
|
sp::BitField<EntityType, 5> m_Type;
|
|
sp::BitField<std::uint8_t, 3> m_Level;
|
|
EntityCoords m_Position;
|
|
PlayerID m_Sender;
|
|
};
|
|
|
|
struct UseItem {
|
|
sp::BitField<ShopItem, 4> m_Item;
|
|
sp::BitField<PlayerID, 4> m_User;
|
|
EntityCoords m_Position;
|
|
};
|
|
|
|
struct TeamChange {
|
|
sp::BitField<PlayerID, 7> m_Player;
|
|
sp::BitField<Team, 1> m_NewTeam;
|
|
};
|
|
|
|
struct PlayerJoin {
|
|
PlayerID m_ID;
|
|
std::string m_Name;
|
|
};
|
|
|
|
struct End {};
|
|
|
|
} // namespace cdata
|
|
|
|
|
|
} // namespace protocol
|
|
} // namespace td
|