public static void CreateNewGame(ulong userId, RestUserMessage message) { var game = new GameStruct { Grid = GameWork.GetNewGameBoard(), Score = 0, State = GameWork.GameState.Playing, PlayerId = userId, Message = message, Move = 0 //////////////////// }; Games.Add(game); UpdateMessage(game, userId); }
public static void MakeMove(ulong userId, GameWork.MoveDirection direction, RestUserMessage socketMsg) { for (var i = 0; i < Global.OctopusGameMessIdList2048.Count; i++) { if (userId == Global.OctopusGameMessIdList2048[i].OctoGameUserIdToTrack2048) { var game = Games.FirstOrDefault(g => g.PlayerId == userId); var gamesId = Games.IndexOf(game); var result = GameWork.MakeMove(game.Grid, direction); game.Score += result.GainedScore; game.State = result.State; game.Grid = result.Board; game.Move++; Games[gamesId] = game; UpdateMessage(game, userId); return; } } }