public static double Prize(RoulettePlayer player)
        {
            if (player.BetType == "number")
            {
                return(player.Cash * 5);
            }

            return(player.Cash * 1.8);
        }
예제 #2
0
        public async Task UpdatePlayer(RoulettePlayer player, double prize)
        {
            var user = new UserDynamo {
                Email = player.Email
            };
            var currentUser = await _DynamoDb.Get(user);

            currentUser.Cash += prize;

            await _DynamoDb.Insert(currentUser);
        }
예제 #3
0
        /// <summary>
        /// Constructor.
        /// </summary>
        /// <param name="eventAggregator"></param>
        public PlayerViewModel(IEventAggregator eventAggregator)
        {
            RoulettePlayer = new RoulettePlayer();    // Models.

            // Listen to events.
            RoulettePlayer.OnChipSelected += new ChipSelected(ChipSelectedEventHandler);
            RoulettePlayer.OnClearBets    += new ClearBets(ClearBetsEventHandler);

            // Event aggregator.
            _eventAggregator = eventAggregator;
            _eventAggregator.GetEvent <BetPlacedEvent>().Subscribe(BetPlacedEventHandler, true);
            _eventAggregator.GetEvent <PlaceBetsEvent>().Subscribe(PlaceBetsEventHandler, true);
            _eventAggregator.GetEvent <PayWinningsEvent>().Subscribe(PayWinningsEventHandler, true);
        }
        public static bool IsWinner(int winnerMove, RoulettePlayer player)
        {
            string typeBid = player.BetType;
            int    moveBid = player.Bet;

            if (winnerMove % 2 == 0 && moveBid % 2 == 0 && typeBid == "color")
            {
                return(true);
            }
            if (winnerMove % 2 != 0 && moveBid % 2 != 0 && typeBid == "color")
            {
                return(true);
            }
            if (typeBid == "number" && winnerMove == moveBid)
            {
                return(true);
            }

            return(false);
        }