public IHttpActionResult JoinGame(JoinGameBindingModel model) { var game = this.Data.Games .All() .Where(g => g.Id.ToString() == model.GameId) .FirstOrDefault(); if (game == null) { return(this.NotFound()); } var userId = this.User.Identity.GetUserId(); if (game.PlayerOneId == userId) { return(this.BadRequest("You cannot join your own game.")); } game.PlayerTwoId = userId; game.State = GameState.TurnOne; this.Data.SaveChanges(); return(this.Ok(game.Id)); }
public IHttpActionResult JoinGame(JoinGameBindingModel model) { var guidGameId = new Guid(model.GameId); var game = this.Data.Games .All() .FirstOrDefault(x => x.Id == guidGameId); if (game == null) { return(this.NotFound()); } var userId = this.userIdProvider.GetUserId(); if (game.PlayerOneId == userId) { return(this.BadRequest("You can not join in your game!")); } game.PlayerTwoId = userId; game.State = GameState.TurnOne; this.Data.SaveChanges(); return(this.Ok(game.Id)); }
public IHttpActionResult JoinGame(JoinGameBindingModel model) { if (model == null) { return(this.BadRequest("You have to specify game id!")); } this._currentUserId = this._userIdProvider.GetUserId(); var game = this._data.Games.Find(model.Id); if (this._currentUserId == game.FirstPlayerId) { return(this.BadRequest("You can't join your own game!")); } game.SecondPlayerId = _currentUserId; game.State = GameState.FirstPlayerTurn; this._data.SaveChanges(); JoinGameViewModel gameViewModel = new JoinGameViewModel() { Id = game.Id, Name = game.Name, FirstPlayerName = game.FirstPlayer.UserName, SecondPlayerName = game.SecondPlayer.UserName, GameState = GameState.FirstPlayerTurn.ToString(), Field = game.Field }; return(this.Ok(gameViewModel)); }
public IHttpActionResult JoinGame(JoinGameBindingModel model) { var guidGameId = new Guid(model.GameId); var game = Data.Games .All() .FirstOrDefault(x => x.Id == guidGameId); if (game == null) { return NotFound(); } var userId = userIdProvider.GetUserId(); if (game.PlayerOneId == userId) { return BadRequest("You can not join in your game!"); } game.PlayerTwoId = userId; game.State = GameState.TurnOne; Data.SaveChanges(); return Ok(game.Id); }