Exemplo n.º 1
0
        private void On(DeletePlayersEvent gameEvent)
        {
            if (CurrentState.State == MatchState.NotStarted)
            {
                throw new InvalidOperationException("Not Expected");
            }

            if (gameEvent.FirstPlayerUserId)
            {
                CurrentState.FirstPlayerUserId = null;
            }

            if (gameEvent.SecondPlayerUserId)
            {
                CurrentState.SecondPlayerUserId = null;
            }
        }
Exemplo n.º 2
0
        public async Task <IActionResult> PlayerToUserDelete(string id, Player player)
        {
            var matchService = await _matchListService.GetMatchService(UserId, id);

            var e = new DeletePlayersEvent()
            {
                OccuredAt = DateTime.UtcNow
            };

            if (player == Player.First)
            {
                e.FirstPlayerUserId = true;
            }
            else
            {
                e.SecondPlayerUserId = true;
            }

            await matchService.AddEventAsync(e);

            return(RedirectToAction(nameof(Details), new { id }));
        }