Skip to content

Commit 061c4b2

Browse files
committed
Moved into try
1 parent 82dba51 commit 061c4b2

1 file changed

Lines changed: 14 additions & 17 deletions

File tree

src/Codebreaker.ViewModels/Pages/GamePageViewModel.cs

Lines changed: 14 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -27,11 +27,11 @@ private async Task StartGameAsync(CancellationToken cancellationToken)
2727
{
2828
IsLoading = true;
2929
var usedGameMode = GameType.Game6x4;
30-
(Guid id, int numberCode, int maxMoves, IDictionary<string, string[]> fieldValues) response;
3130

3231
try
3332
{
34-
response = await gamesClient.StartGameAsync(usedGameMode, Username);
33+
var response = await gamesClient.StartGameAsync(usedGameMode, Username);
34+
Game = new Game(response.Id, usedGameMode, Username, DateTime.Now, response.NumberCodes, response.MaxMoves, response.FieldValues);
3535
}
3636
catch (InvalidOperationException)
3737
{
@@ -53,8 +53,6 @@ private async Task StartGameAsync(CancellationToken cancellationToken)
5353
IsLoading = false;
5454
}
5555

56-
Game = new Game(response.id, usedGameMode, Username, DateTime.Now, response.numberCode, response.maxMoves, response.fieldValues);
57-
5856
WeakReferenceMessenger.Default.Send(new GameStartedMessage(Game));
5957

6058
// Initialize SelectedFields
@@ -86,10 +84,20 @@ private async Task MakeMoveAsync(CancellationToken cancellationToken)
8684
WeakReferenceMessenger.Default.Send(new MakeMoveMessage(new(selectedColors!)));
8785

8886
IsLoading = true;
89-
(string[] keyPegs, bool hasEnded, bool isVictory) response;
9087
try
9188
{
92-
response = await gamesClient.SetMoveAsync(Game.Id, Game.PlayerName, GameType.Game6x4, Game.Moves.Count + 1, selectedColors!);
89+
var response = await gamesClient.SetMoveAsync(Game.Id, Game.PlayerName, GameType.Game6x4, Game.Moves.Count + 1, selectedColors!);
90+
91+
var newMove = new Move(selectedColors!, response.Results);
92+
Game.Moves.Add(newMove);
93+
WeakReferenceMessenger.Default.Send(new MakeMoveMessage(newMove));
94+
95+
if (response.Ended)
96+
{
97+
Game.EndTime = DateTime.Now;
98+
Game.IsVictory = response.IsVictory;
99+
WeakReferenceMessenger.Default.Send(new GameEndedMessage(Game));
100+
}
93101
}
94102
catch (InvalidOperationException)
95103
{
@@ -110,16 +118,5 @@ private async Task MakeMoveAsync(CancellationToken cancellationToken)
110118
{
111119
IsLoading = false;
112120
}
113-
114-
var newMove = new Move(selectedColors!, response.keyPegs);
115-
Game.Moves.Add(newMove);
116-
WeakReferenceMessenger.Default.Send(new MakeMoveMessage(newMove));
117-
118-
if (response.hasEnded)
119-
{
120-
Game.EndTime = DateTime.Now;
121-
Game.IsVictory = response.isVictory;
122-
WeakReferenceMessenger.Default.Send(new GameEndedMessage(Game));
123-
}
124121
}
125122
}

0 commit comments

Comments
 (0)