Beispiel #1
0
        public void TestLookupEnumDayIT()
        {
            EnumDay expected = EnumDay.MON;
            EnumDay actual   = Rx.Lookup <EnumDay> .Match(@"Lunedì", EnumLanguage.IT);

            Assert.AreEqual(expected, actual);
        }
Beispiel #2
0
        public void TestLookupEnumDayEN()
        {
            EnumDay expected = EnumDay.MON;
            EnumDay actual   = Rx.Lookup <EnumDay> .Match(@"Monday", EnumLanguage.EN);

            Assert.AreEqual(expected, actual);
        }
Beispiel #3
0
        private int FindNextSpace(EnumDay whichOne)
        {
            var currentDay = _gameContainer.SingleInfo !.DayNumber;
            var tempList   = _dayList.Skip(currentDay);
            int x          = 0;

            foreach (var thisItem in tempList)
            {
                x += 1;
                if ((int)thisItem == (int)whichOne)
                {
                    return(x + currentDay);
                }
            }
            throw new Exception("Can't find the next space on " + whichOne.ToString());
        }
Beispiel #4
0
        public async Task ResultsOfMoveAsync(int day)
        {
            _gameContainer.SaveRoot !.GameStatus = EnumStatus.EndingTurn; //you have to prove otherwise.
            if (_model !.Cup !.TotalDiceValue == 6)
            {
                await ProcessJackPotAsync();
            }
            if (day == 31 && _gameContainer.SaveRoot.RemainingMove == 0)
            {
                await MonthProcessingAsync();

                return;
            }
            if (_gameContainer.SaveRoot.EndOfMonth == true)
            {
                await MonthProcessingAsync();

                return;
            }
            EnumDay details = _gameBoard.GetDayDetails(day);

            switch (details)
            {
            case EnumDay.Mail:
                //_model.Cup!.CanShowDice = false; //because its showing mail instead.
                await _mailProcesses.ProcessMailAsync();

                break;

            case EnumDay.SweepStakes:
                _gameContainer.SaveRoot.Instructions = $"{_gameContainer.SingleInfo!.NickName} won $5000.00 dollars in the sweepstakes";
                await Pause3Async();

                ProcessSweepStakes();
                await _gameContainer.ContinueTurnAsync !.Invoke();
                break;

            case EnumDay.Deal:
                //_model.Cup!.CanShowDice = false; //because its showing mail instead.
                await _dealProcesses.ProcessDealAsync(false);

                break;

            case EnumDay.Buyer:
                await _buyProcesses.ProcessBuyerAsync();

                break;

            case EnumDay.Lottery:
                await ProcessLotteryAsync();

                break;

            case EnumDay.YardSale:
                //_model.Cup!.CanShowDice = false;
                _gameContainer.SaveRoot.GameStatus = EnumStatus.ViewYardSale;
                await _yardSaleProcesses.ProcessYardSaleAsync();

                break;

            case EnumDay.ShoppingSpree:
                _gameContainer.SaveRoot.Instructions = "Shopping Spree.  Please pay $500.00 to the jackpot";
                await Pause3Async();

                _gameContainer.ProcessExpense(_gameBoard, 500);
                await _gameContainer.ContinueTurnAsync !.Invoke();
                break;

            case EnumDay.SkiWeekEnd:
                _gameContainer.SaveRoot.Instructions = "Ski Weekend.  Please pay $500.00 to the jackpot";
                await Pause3Async();

                _gameContainer.ProcessExpense(_gameBoard, 500);
                await _gameContainer.ContinueTurnAsync !.Invoke();
                break;

            case EnumDay.HappyBirthday:
                _gameContainer.SaveRoot.Instructions = "Happy birthday.  Each player pays you $100.00";
                await Pause3Async();

                ProcessBirthday();
                await _gameContainer.ContinueTurnAsync !.Invoke();
                break;

            case EnumDay.CharityConcert:
                _gameContainer.SaveRoot.Instructions = "Charity Concert.  Please pay $400.00 to the jackpot";
                await Pause3Async();

                _gameContainer.ProcessExpense(_gameBoard, 400);
                await _gameContainer.ContinueTurnAsync !.Invoke();
                break;

            case EnumDay.RadioContest:
                await ProcessRadioAsync();

                break;

            case EnumDay.Food:
                _gameContainer.SaveRoot.Instructions = "Pay Food For The Month.  Please pay $600.00 to the jackpot";
                await Pause3Async();

                _gameContainer.ProcessExpense(_gameBoard, 600);
                await _gameContainer.ContinueTurnAsync !.Invoke();
                break;

            case EnumDay.WalkForCharity:
                _gameContainer.OtherTurn             = _gameContainer.WhoTurn;
                _gameContainer.SaveRoot.GameStatus   = EnumStatus.RollCharity;
                _gameContainer.SaveRoot.Instructions = "Walk for charity.  Rol the dice and pay 100 times the amount you roll to the jackpot";
                await Pause3Async();

                if (_gameContainer.OtherTurnProgressAsync == null)
                {
                    throw new BasicBlankException("Nobody is handling other turn progress.  Rethink");
                }
                await _gameContainer.OtherTurnProgressAsync.Invoke();

                break;

            default:
                throw new BasicBlankException($"Don't know what to do with {_gameContainer.SaveRoot.GameStatus.ToString()}");
            }
        }