Exemplo n.º 1
0
        public void Bingo(Danmu danmu)
        {
            if (GameStart)
            {
                _pendingDanmu.Remove(danmu);
                if (_bingo.ContainsKey(danmu.UserId))
                {
                    if (++_bingo[danmu.UserId] > MaxTry)
                    {
                        danmu.Failed = true;
                    }
                }
                else
                {
                    _bingo[danmu.UserId] = 1;
                }
                danmu.Correct = danmu.Content.Contains(Answer, StringComparison.OrdinalIgnoreCase);
                danmu.IsBingo = true;
                _result.Add(danmu);

                if (_result.Count > MaxGuess || danmu.Correct)
                {
                    Stop();
                }

                OnPropertyChanged(nameof(PendingDanmu));
                OnPropertyChanged(nameof(Result));
                OnPropertyChanged(nameof(GuessResult));
            }
        }
Exemplo n.º 2
0
 public void Remove(Danmu danmu)
 {
     if (GameStart)
     {
         _pendingDanmu.Remove(danmu);
         OnPropertyChanged(nameof(PendingDanmu));
     }
 }
Exemplo n.º 3
0
        public void SetNo(Danmu danmu)
        {
            if (GameStart)
            {
                _pendingDanmu.Remove(danmu);
                danmu.True    = false;
                danmu.IsBingo = false;
                _result.Add(danmu);

                OnPropertyChanged(nameof(PendingDanmu));
                OnPropertyChanged(nameof(Result));
                OnPropertyChanged(nameof(GuessResult));
            }
        }