Ejemplo n.º 1
0
        public ActionResult Index(SlotMachineModel model)
        {
            var user = UserManager.FindById(User.Identity.GetUserId());

            if (user != null)
            {
                var creditCalc = new CreditCalculator(SlotMachine, AppSettingsConfig.SpinCost, AppSettingsConfig.WinMultiplier);
                var player = new Player { Name = user.UserName, TotalCredits = user.TotalCredits };

                creditCalc.DeductSpinCost(player);
                SlotMachine.Spin();
                creditCalc.AddWinnings(player);

                if (player.TotalCredits == 0)
                {
                    return RedirectToAction("GameOver", "Home");
                }

                user.TotalCredits = player.TotalCredits;
                UserManager.Update(user);

                model = LoadSlotMachineModel(player.TotalCredits);

                return View(model);
            }

            return RedirectToAction("Login", "Account");
        }