func (Player) PlayerReady(so *wsevent.Client, _ struct{}) interface{} { player := chelpers.GetPlayer(so.Token) lobbyid, tperr := player.GetLobbyID(false) if tperr != nil { return tperr } lob, err := lobby.GetLobbyByIDServer(lobbyid) if err != nil { return err } if lob.State != lobby.ReadyingUp { return errors.New("Lobby hasn't been filled up yet.") } err = lob.ReadyPlayer(player) if err != nil { return err } if lob.IsEveryoneReady() { lob.Start() hooks.BroadcastLobbyStart(lob) lobby.BroadcastLobbyList() } return emptySuccess }
func (Player) PlayerReady(so *wsevent.Client, _ struct{}) interface{} { steamid := chelpers.GetSteamId(so.ID) player, tperr := models.GetPlayerBySteamID(steamid) if tperr != nil { return tperr } lobbyid, tperr := player.GetLobbyID(false) if tperr != nil { return tperr } lobby, tperr := models.GetLobbyByIDServer(lobbyid) if tperr != nil { return tperr } if lobby.State != models.LobbyStateReadyingUp { return helpers.NewTPError("Lobby hasn't been filled up yet.", 4) } tperr = lobby.ReadyPlayer(player) if tperr != nil { return tperr } if lobby.IsEveryoneReady() { lobby.Start() hooks.BroadcastLobbyStart(lobby) models.BroadcastLobbyList() } return chelpers.EmptySuccessJS }