Refactor and clean up codebase:
- Introduced `IGameRepository` interface and its implementation. - Transitioned namespaces to `file-scoped` for consistency. - Simplified class definitions, e.g., `Game` and `SixDigitInt`. - Restructured `GameField` logic for improved readability and functionality. - Fixed formatting issues in `API.csproj` and added a `using` directive in `Program.cs`.
This commit is contained in:
+15
-22
@@ -1,26 +1,19 @@
|
||||
using API.Models.DataClasses;
|
||||
|
||||
namespace API.Models.Game
|
||||
namespace API.Models.Game;
|
||||
|
||||
public enum GameState
|
||||
{
|
||||
public enum GameState
|
||||
{
|
||||
Lobby,
|
||||
Running,
|
||||
Ended
|
||||
}
|
||||
|
||||
public class Game
|
||||
{
|
||||
public string Id { get; init; } = Guid.NewGuid().ToString();
|
||||
public SixDigitInt GameCode { get; }
|
||||
public string?[] PlayerConnectionIds { get; set; } = new string?[2];
|
||||
public GameState State { get; private set; } = GameState.Lobby;
|
||||
public GameField Field { get; }
|
||||
|
||||
public Game(Coordinates gFs, SixDigitInt gameCode)
|
||||
{
|
||||
Field = new GameField(gFs);
|
||||
GameCode = gameCode;
|
||||
}
|
||||
}
|
||||
Lobby,
|
||||
Running,
|
||||
Ended
|
||||
}
|
||||
|
||||
public class Game(Coordinates gFs, SixDigitInt gameCode)
|
||||
{
|
||||
public string Id { get; init; } = Guid.NewGuid().ToString();
|
||||
public SixDigitInt GameCode { get; } = gameCode;
|
||||
public string?[] PlayerConnectionIds { get; set; } = new string?[2];
|
||||
public GameState State { get; private set; } = GameState.Lobby;
|
||||
public GameField Field { get; } = new(gFs);
|
||||
}
|
||||
Reference in New Issue
Block a user