better networking

This commit is contained in:
2024-08-19 11:05:47 +02:00
parent 665dc4938f
commit 15a385a825
9 changed files with 111 additions and 74 deletions

View File

@@ -28,17 +28,18 @@ void Server::_ready() {
m_Lobby->connect("player_disconnected", callable_mp(this, &Server::OnPlayerDisconnect));
}
void Server::OnPlayerConnect(uint64_t a_PeerId) {
void Server::OnPlayerConnect(PeerID a_PeerId) {
protocol::PlayerInfo playerInfo{a_PeerId, "whoami"};
for (int i = 0; i < m_Peers.size(); i++) {
m_NetworkInterface->rpc_id(a_PeerId, "AddPlayer", m_Peers[i], "Aucuneidee");
m_NetworkInterface->SendPacket(a_PeerId, protocol::packets::PlayerJoin({m_Peers[i], "whoami"}));
}
m_Peers.push_back(a_PeerId);
m_NetworkInterface->rpc("AddPlayer", a_PeerId, "Aucuneidee");
m_NetworkInterface->BroadcastPacket(protocol::packets::PlayerJoin({playerInfo}));
}
void Server::OnPlayerDisconnect(uint64_t a_PeerId) {
void Server::OnPlayerDisconnect(PeerID a_PeerId) {
m_Peers.erase(a_PeerId);
m_NetworkInterface->rpc("RemovePlayer", a_PeerId);
m_NetworkInterface->BroadcastPacket(protocol::packets::PlayerLeave({a_PeerId}));
}
} // namespace blitz