Files
Tower-Defense2/src/server/ServerState.cpp
2025-08-22 11:41:58 +02:00

27 lines
935 B
C++

#include <server/Server.h>
#include <server/ServerState.h>
#include <td/common/StateMachine.h>
namespace td {
namespace server {
ServerState::ServerState(Server& a_Server) : Server::State(a_Server) {
Connect(m_StateMachine.m_Socket->OnReceive, std::bind(&ServerState::HandlePacket, this, std::placeholders::_1, std::placeholders::_2));
Connect(m_StateMachine.m_Players.OnPlayerJoin, std::bind(&ServerState::OnPlayerJoin, this, std::placeholders::_1, std::placeholders::_2));
Connect(m_StateMachine.m_Players.OnPlayerLeave, std::bind(&ServerState::OnPlayerLeave, this, std::placeholders::_1));
}
ServerState::~ServerState() {}
void ServerState::SendPacket(PlayerID a_Id, const protocol::PacketBase& a_Packet) {
m_StateMachine.m_Socket->Send(a_Id, a_Packet);
}
void ServerState::BroadcastPacket(const protocol::PacketBase& a_Packet) {
m_StateMachine.m_Socket->Broadcast(a_Packet);
}
} // namespace server
} // namespace td