mchess-server/server/lobby.go

40 lines
587 B
Go
Raw Normal View History

package server
2023-04-18 20:47:51 +00:00
import (
"github.com/google/uuid"
)
2023-04-18 20:47:51 +00:00
type Lobby map[uuid.UUID]Player
var lobbyInstance *Lobby = nil
func GetLobby() *Lobby {
if lobbyInstance == nil {
lobbyInstance = newLobby()
}
return lobbyInstance
}
func newLobby() *Lobby {
2023-04-18 20:47:51 +00:00
var lobby Lobby
return &lobby
}
2023-04-18 20:47:51 +00:00
func (lobby Lobby) RegisterPlayer(player *Player) {
lobby[player.uuid] = *player
if len(lobby)%2 == 0 {
var players [2]Player
var index int = 0
2023-04-18 20:47:51 +00:00
for _, player := range lobby {
players[index] = player
index += 1
}
2023-04-18 20:47:51 +00:00
addPlayersToGame(players)
removePlayersFromLobby(players)
}
}