Exemple #1
0
        //check all the possible outcomes
        //return a boolean to indicate if round is over
        public Boolean chkScrs()
        {
            Boolean           b = false;
            ResourceCandidate rc;

            if (!en.IsBust && !pl.IsBust && !en.Stndng && !pl.Stndng)
            {
                //alter status string with a message to be displayed
                status = App.usrName + ": " + pl.CurrScr + " AI: " + en.CurrScr;
                b      = false;
            }
            //if enemy has filled up the table, it wins automatically if it has a valid score
            else if (en.TrnCnt > 8 && en.CurrScr < 21)
            {
                rc = ResourceManager.Current.MainResourceMap.GetValue("Resources/lost",
                                                                      ResourceContext.GetForCurrentView());
                string lost = rc.ValueAsString;
                status = lost;
                en.rndWn(en, this);
                usrScrSwch();

                b = true;
            }
            //if user has filled up the table, automatic win if it has a valid score
            else if (pl.TrnCnt > 8 && pl.CurrScr < 21)
            {
                rc = ResourceManager.Current.MainResourceMap.GetValue("Resources/win",
                                                                      ResourceContext.GetForCurrentView());
                string win = rc.ValueAsString;
                status = win;
                pl.rndWn(en, this);
                usrScrSwch();

                b = true;
            }
            //if enemy has gne over 20
            else if (en.IsBust)
            {
                rc = ResourceManager.Current.MainResourceMap.GetValue("Resources/win",
                                                                      ResourceContext.GetForCurrentView());
                string win = rc.ValueAsString;
                status = win;
                //user wins
                pl.rndWn(en, this);
                usrScrSwch();

                b = true;
            }
            //if user has gone over 20
            else if (pl.IsBust)
            {
                rc = ResourceManager.Current.MainResourceMap.GetValue("Resources/bust",
                                                                      ResourceContext.GetForCurrentView());
                string bust = rc.ValueAsString;
                status = bust;
                //enemy wins
                en.rndWn(en, this);
                enScrSwch();

                b = true;
            }
            //if both are standing
            else if (en.Stndng && pl.Stndng)
            {
                if (en.CurrScr > pl.CurrScr)
                {
                    //enemy Wins
                    rc = ResourceManager.Current.MainResourceMap.GetValue("Resources/lost",
                                                                          ResourceContext.GetForCurrentView());
                    string lose = rc.ValueAsString;
                    status = lose;
                    en.rndWn(en, this);
                    enScrSwch();

                    b = true;
                }
                else if (pl.CurrScr > en.CurrScr)
                {
                    //user wins
                    rc = ResourceManager.Current.MainResourceMap.GetValue("Resources/win",
                                                                          ResourceContext.GetForCurrentView());
                    string win = rc.ValueAsString;
                    //user wins
                    status = win;
                    pl.rndWn(en, this);
                    usrScrSwch();

                    b = true;
                }
                //tie game
                else
                {
                    rc = ResourceManager.Current.MainResourceMap.GetValue("Resources/tie",
                                                                          ResourceContext.GetForCurrentView());
                    string tie = rc.ValueAsString;

                    //draw
                    status = tie;
                    b      = true;
                }
            }
            //tie game
            if (en.CurrScr == 20 && pl.CurrScr == 20)
            {
                rc = ResourceManager.Current.MainResourceMap.GetValue("Resources/tie",
                                                                      ResourceContext.GetForCurrentView());
                string tie = rc.ValueAsString;

                //draw
                status = tie;
                b      = true;
            }

            return(b);
        }