コード例 #1
0
ファイル: Form1.cs プロジェクト: MOHITMM117/CamalRace
        private void race_Click(object sender, EventArgs e)
        {

            bool NoWinner = true;
            int winningCamal;
            race.Enabled = false; //disable start race button

            while (NoWinner)
            { // loop until we have a winner
                Application.DoEvents();
                for (int i = 0; i < Camals.Length; i++)
                {
                    if (Camal.Run(Camals[i]))
                    {
                        winningCamal = i + 1;
                        NoWinner = false;
                        MessageBox.Show("We have a defeater -  Camal #" + winningCamal);
                        foreach (Betting bettor in Bet)
                        {
                            if (bettor.gamble != null)
                            {
                                bettor.Collect(winningCamal); //give double sum to all who have achieve or conclued betted sum
                                bettor.gamble = null;
                                bettor.UpdateLabels();
                            }
                        }
                        foreach (Camal Camal in Camals)
                        {
                            Camal.StartPosition();
                        }
                        break;
                    }
                }
            }
            if (Bet[0].busted && Bet[1].busted && Bet[2].busted)
            {  //stop bettors from betting if they run out of cash
                string message = "Do you want to play this game once more time?";
                string title = "Game Finished!";
                MessageBoxButtons buttons = MessageBoxButtons.YesNo;
                DialogResult result = MessageBox.Show(message, title, buttons);
                if (result == DialogResult.Yes)
                {
                    TrackInitialize(); //restart game
                }
                else
                {
                    Close();
                }

            }
            race.Enabled = true; //enable race button 
        }
コード例 #2
0
ファイル: Camal.cs プロジェクト: MOHITMM117/CamalRace
        // generation across all  Camal objects

        public static bool Run(Camal obj)
        {
            int distance = MyRandom.Next(1, 10);

            if (obj.CamalPictureBox != null)
            {
                obj.MoveCamalPictureBox(distance);
            }

            obj.Location += distance;
            if (obj.Location >= (Racetrack - Start))
            {
                return(true);
            }
            return(false);
        }
コード例 #3
0
ファイル: Form1.cs プロジェクト: MOHITMM117/CamalRace
        private void TrackInitialize()
        {

            Camal.Start = Camal1.Right - RaceTrack.Left;
            Camal.Racetrack = RaceTrack.Size.Width - 70; //connect the length of race - upto ending line

            Camals[0] = new Camal() { CamalPictureBox = Camal1 };
            Camals[1] = new Camal() {CamalPictureBox = Camal2 };
            Camals[2] = new Camal() { CamalPictureBox = Camal3 };
            Camals[3] = new Camal() { CamalPictureBox = Camal4 };

            Bet[0] = PlayerFactory.GetBetting("Mohit", MaximumBet, MohitBet); //obtaing  Mohit object from factory class
            Bet[1] = PlayerFactory.GetBetting("Joban", MaximumBet, JobanBet); //obtaing Joban object from factory class
            Bet[2] = PlayerFactory.GetBetting("Love", MaximumBet, LoveBet); //obtaing Love object from factory class

            Debug.WriteLine(Bet[0].Title);

            foreach (Betting bettor in Bet)
            {
                bettor.UpdateLabels();
            }
        }