public async Task UpdateEvidenceStateAsync(EvidenceType evidenceType, EvidenceState evidenceState) { GameState?newState = await _gameService.UpdateEvidenceStateAsync(Context.ConnectionId, evidenceType, evidenceState); if (newState is null) { throw new HubException("Invalid input."); } await Clients.Group(newState.GameCode).OnEvidenceUpdated(newState.EvidenceStates, newState.EvidencePossibilities, newState.GhostPossibilities); }
public async Task UpdateEvidenceAsync(EvidenceType type, EvidenceState newState) { var evidence = _evidences.FirstOrDefault(evidence => evidence.Type == type); if (evidence is null) { return; } evidence.State = newState; RecalculateGhostStates(); if (OnUpdated is not null) { await OnUpdated.Invoke(); } }
public Evidence(EvidenceType type) { Type = type; State = EvidenceState.Unknown; }
public UpdateEvidenceAction(EvidenceType evidenceType, EvidenceState state) { EvidenceType = evidenceType; State = state; }
public EvidencePossibility(EvidenceType type, Possibility possibility, EvidenceState originalState) { Type = type; Possibility = possibility; OriginalState = originalState; }
private void UpdateEvidence(EvidenceType type, EvidenceState state) => Dispatcher.Dispatch(new UpdateEvidenceAction(type, state));
public async Task UpdateEvidenceAsync(EvidenceType evidenceType, EvidenceState state) { await EnsureStartedAsync(); await TrySendAsync(nameof(IGameHub.UpdateEvidenceStateAsync), evidenceType, state); }