joseh254

Slot Machine

Mar 12th, 2015
196
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 4.59 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Web;
  5. using System.Web.UI;
  6. using System.Web.UI.WebControls;
  7.  
  8. namespace MegaChallengeCasino
  9. {
  10.     public partial class Default : System.Web.UI.Page
  11.     {
  12.         Random random = new Random();
  13.  
  14.         protected void Page_Load(object sender, EventArgs e)
  15.         {
  16.             if (!Page.IsPostBack)
  17.             {
  18.                 string[] reels = new string[] { spinReel(), spinReel(), spinReel() };
  19.                 displayImages(reels);
  20.                 ViewState.Add("PlayersMoney", 100);
  21.                 displayPlayersMoney();
  22.             }
  23.         }
  24.  
  25.         private void displayPlayersMoney()
  26.         {
  27.             moneyLabel.Text = String.Format("Player's Money: {0:C}", ViewState["PlayersMoney"]);
  28.         }
  29.  
  30.         protected void pullLeverButton_Click(object sender, EventArgs e)
  31.         {
  32.             int bet = 0;
  33.             if (!int.TryParse(betTextBox.Text, out bet)) return;
  34.  
  35.             int winnings = pullLever(bet);
  36.             displayResult(bet, winnings);
  37.             adjustPlayersMoney(bet, winnings);
  38.             displayPlayersMoney();
  39.            
  40.         }
  41.  
  42.         private void displayResult(int bet, int winnings)
  43.         {
  44.            if (winnings > 0)
  45.            {
  46.                resultLabel.Text = String.Format("You bet {0:C} and won {1:C}!", bet, winnings);
  47.            }
  48.            else
  49.            {
  50.                resultLabel.Text = String.Format("Sorry, You lost {0:C}.  Better Luck Next Time!", bet);
  51.            }
  52.         }
  53.  
  54.         private void adjustPlayersMoney(int bet, int winnings)
  55.         {
  56.             int playersMoney = int.Parse(ViewState["PlayersMoney"].ToString());
  57.             playersMoney -= bet;
  58.             playersMoney += winnings;
  59.             ViewState["PlayersMoney"] = playersMoney;
  60.         }
  61.         private int pullLever(int bet)
  62.         {
  63.             string[] reels = new String[] { spinReel(),spinReel(), spinReel() };
  64.             displayImages(reels);
  65.             int multiplier = evaluateSpin(reels);
  66.             return bet * multiplier;
  67.         }
  68.  
  69.         private int evaluateSpin(string[] reels)
  70.         {
  71.             // If there's even one bar, then return 0;
  72.             if (isBar(reels)) return 0;
  73.  
  74.             // If there's three 7's, then return 100;
  75.             if (isJackpot(reels)) return 100;
  76.  
  77.             //If there's one or more cherries, return 2,3,4;
  78.             int multipier = 0;
  79.             if (isWinner(reels, out multipier)) return multipier;
  80.  
  81.             return 0;
  82.         }
  83.  
  84.         private bool isWinner(string[] reels, out int multipier)
  85.         {
  86.             multipier = determineMultiplier(reels);
  87.             if (multipier > 0) return true;
  88.             else
  89.                 return false;
  90.         }
  91.  
  92.         private int determineMultiplier(string[] reels)
  93.         {
  94.             int cherryCount = determineCherryCount(reels);
  95.             if (cherryCount == 1) return 2;
  96.             if (cherryCount == 2) return 3;
  97.             if (cherryCount == 3) return 4;
  98.             return 0;
  99.         }
  100.  
  101.         private int determineCherryCount(string[] reels)
  102.         {
  103.             int cherryCount = 0;
  104.             if (reels[0] == "Cherry") cherryCount++;
  105.             if (reels[1] == "Cherry") cherryCount++;
  106.             if (reels[2] == "Cherry") cherryCount++;
  107.             return cherryCount;
  108.         }
  109.  
  110.         private bool isBar(string[] reels)
  111.         {
  112.             if (reels[0] == "Bar" && reels[1] == "Bar" && reels[2] == "Bar")
  113.             {
  114.                 return true;
  115.             }
  116.             else
  117.             {
  118.                 return false;
  119.             }
  120.         }
  121.  
  122.         private bool isJackpot(string[] reels)
  123.         {
  124.             if (reels[0] == "Seven" && reels[1] == "Seven" && reels[2] == "Seven")
  125.             {
  126.                 return true;
  127.             }
  128.             else
  129.             {
  130.                 return false;
  131.             }
  132.         }
  133.         private void displayImages(string[] reels)
  134.         {
  135.             Image1.ImageUrl = "/Images/" + reels[0] ;
  136.             Image2.ImageUrl = "/Images/" + reels[1] ;
  137.             Image3.ImageUrl = "/Images/" + reels[2] ;
  138.         }
  139.  
  140.         private string spinReel()
  141.         {
  142.             string[] images = new string[] { "Images/Strawberry.png", "Images/Bar.png", "Images/Lemon.png", "Images/Bell.png", "Images/Clover.png", "Images/Cherry.png", "Images/Diamond.png", "Images/Orange.png", "Images/Seven.png", "Images/HorseShoe.png", "Images/Plum.png", "Images/Watermelon.png" };
  143.             return images[random.Next(11)];
  144.         }
  145.  
  146.        
  147.     }
  148. }
Advertisement
Add Comment
Please, Sign In to add comment