massive checkpoint

This commit is contained in:
2021-09-03 22:43:06 -05:00
parent bb1d2c491c
commit 2a3b7b32b4
40 changed files with 456 additions and 738 deletions

View File

@@ -1,27 +1,21 @@
using Gameboard.ShogiUI.Sockets.ServiceModels.Types;
using System;
namespace Gameboard.ShogiUI.Sockets.ServiceModels.Socket
{
public class CreateGameRequest : IRequest
{
public ClientAction Action { get; set; }
public string GameName { get; set; } = string.Empty;
public bool IsPrivate { get; set; }
}
public class CreateGameResponse : IResponse
{
public string Action { get; }
public string Error { get; set; }
public Game Game { get; set; }
/// <summary>
/// The player who created the game.
/// </summary>
public string PlayerName { get; set; }
public CreateGameResponse()
{
Action = ClientAction.CreateGame.ToString();
Error = string.Empty;
Game = new Game();
PlayerName = string.Empty;
}
}
}

View File

@@ -3,6 +3,5 @@
public interface IResponse
{
string Action { get; }
string Error { get; set; }
}
}

View File

@@ -1,25 +0,0 @@
using Gameboard.ShogiUI.Sockets.ServiceModels.Types;
using System.Collections.Generic;
using System.Collections.ObjectModel;
namespace Gameboard.ShogiUI.Sockets.ServiceModels.Socket
{
public class ListGamesRequest : IRequest
{
public ClientAction Action { get; set; }
}
public class ListGamesResponse : IResponse
{
public string Action { get; }
public string Error { get; set; }
public IReadOnlyList<Game> Games { get; set; }
public ListGamesResponse()
{
Action = ClientAction.ListGames.ToString();
Error = "";
Games = new Collection<Game>();
}
}
}

View File

@@ -1,26 +0,0 @@
using Gameboard.ShogiUI.Sockets.ServiceModels.Types;
using System.Collections.Generic;
namespace Gameboard.ShogiUI.Sockets.ServiceModels.Socket
{
public class LoadGameRequest : IRequest
{
public ClientAction Action { get; set; }
public string GameName { get; set; } = "";
}
public class LoadGameResponse : IResponse
{
public string Action { get; }
public Game Game { get; set; }
public WhichPlayer PlayerPerspective { get; set; }
public BoardState BoardState { get; set; }
public IList<Move> MoveHistory { get; set; }
public string Error { get; set; }
public LoadGameResponse()
{
Action = ClientAction.LoadGame.ToString();
}
}
}

View File

@@ -1,29 +1,19 @@
using Gameboard.ShogiUI.Sockets.ServiceModels.Types;
using System.Collections.Generic;
namespace Gameboard.ShogiUI.Sockets.ServiceModels.Socket
{
public class MoveRequest : IRequest
{
public ClientAction Action { get; set; }
public string GameName { get; set; } = string.Empty;
public Move Move { get; set; } = new Move();
}
public class MoveResponse : IResponse
{
public string Action { get; }
public string Error { get; set; }
public string GameName { get; set; }
public string PlayerName { get; set; }
public Move Move { get; set; }
public string Action { get; protected set; }
public Game Game { get; set; }
public WhichPlayer PlayerPerspective { get; set; }
public BoardState BoardState { get; set; }
public IList<Move> MoveHistory { get; set; }
public MoveResponse()
{
Action = ClientAction.Move.ToString();
Error = string.Empty;
GameName = string.Empty;
PlayerName = string.Empty;
Move = new Move();
}
}
}