Beispiel #1
0
        public void BindPagesToTabs()
        {
            Thickness plugC = new Thickness(0);


            salesFrame   = new Frame();
            ordersFrame  = new Frame();
            archiveFrame = new Frame();
            stockFrame   = new Frame();
            statsFrame   = new Frame();

            salesPage   = new SalesPage();
            ordersPage  = new OrdersPage();
            archivePage = new ArchivePage();
            stockPage   = new StockPage();
            statsPage   = new StatsPage();

            salesFrame.Content  = salesPage;
            SalesTab.Content    = salesFrame;
            ordersFrame.Content = ordersPage;
            OrdersTab.Content   = ordersFrame;
            statsFrame.Content  = statsPage;
            StatsTab.Content    = statsFrame;

            stockFrame.Content   = stockPage;
            StockTab.Content     = stockFrame;
            archiveFrame.Content = archivePage;
            ArchiveTab.Content   = archiveFrame;
        }
    /// <summary>
    /// Changes the stats screen to the next one if possible.
    /// </summary>
    /// <param name="dir"></param>
    private IEnumerator ChangeStatsScreen()
    {
        changeStatsPageEvent.Invoke();
        yield return(null);

        page = (StatsPage)currentPage.value;
        Setup();
        changing = false;
    }
    public override void OnMenuModeChanged()
    {
        bool active = UpdateState(MenuMode.TOOLTIP);

        page = (currentMenuMode.value == (int)MenuMode.INV) ? StatsPage.INVENTORY : (StatsPage)currentPage.value;

        tooltipObject.SetActive(active);
        if (active)
        {
            Setup();
        }
    }
        // Constructor
        #region Constructor
        public GameDriver(Texture2D buttonTexture, SpriteFont font, Texture2D patientSprite, Texture2D userAvatarSprite, Dictionary <string, ShopItem> imagesDictionary, Texture2D sprite, PlayerManager playerManager)
        {
            ButtonTexture     = buttonTexture;
            Font              = font;
            PatientTexture    = patientSprite;
            UserAvatarTexture = userAvatarSprite;

            // Initialize all pages using assets provided
            mainMenuPage  = new MainMenu(ButtonTexture, Font);
            shopPage      = new ShopPage(ButtonTexture, Font, imagesDictionary, playerManager);
            customizePage = new CustomizePage(ButtonTexture, Font, imagesDictionary, sprite);
            statsPage     = new StatsPage(ButtonTexture, Font, playerManager);
            playPage      = new PlayPage(PatientTexture, ButtonTexture, Font);
        }
        /// <summary>
        /// event handler created for checking stats of the game
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void OnStatsCheck(object sender, RoutedEventArgs e)
        {
            // Navigates to the Game Page
            this.Frame.Navigate(typeof(StatsPage));

            //assign values of the names to new variables
            //to be used in statsPage
            _stats1Name = _player1Name.Text;
            _stats2Name = _player2Name.Text;
            _stats3Name = _player3Name.Text;
            _stats4Name = _player4Name.Text;

            //stores values on scoreboard in new variables
            _stats1Wins = _player1LeaderboardScore.Text;
            _stats2Wins = _player2LeaderboardScore.Text;
            _stats3Wins = _player3LeaderboardScore.Text;
            _stats4Wins = _player4LeaderboardScore.Text;

            //converts losses to strings and stores them in new variables
            _stats1Loss = _playerOneLoss.ToString();
            _stats2Loss = _playerTwoLoss.ToString();
            _stats3Loss = _playerThreeLoss.ToString();
            _stats4Loss = _playerFourLoss.ToString();

            //converts scores on leadership board to double and stores them in new variables
            _player1LeaderboardNumber = Double.Parse(_player1LeaderboardScore.Text);
            _player2LeaderboardNumber = Double.Parse(_player2LeaderboardScore.Text);
            _player3LeaderboardNumber = Double.Parse(_player3LeaderboardScore.Text);
            _player4LeaderboardNumber = Double.Parse(_player4LeaderboardScore.Text);
            //variable that stores total value of all the wins
            _totalWins = _player1LeaderboardNumber + _player2LeaderboardNumber + _player3LeaderboardNumber + _player4LeaderboardNumber;

            //percentage variables that calculate each players winning percentage based on total wins
            _playerOnePercentage   = (Math.Round(_player1LeaderboardNumber / _totalWins * 100)).ToString() + "%";
            _playerTwoPercentage   = (Math.Round(_player2LeaderboardNumber / _totalWins * 100)).ToString() + "%";
            _playerThreePercentage = (Math.Round(_player3LeaderboardNumber / _totalWins * 100)).ToString() + "%";
            _playerFourPercentage  = (Math.Round(_player4LeaderboardNumber / _totalWins * 100)).ToString() + "%";

            //initializes statsPage
            StatsPage statspage = new StatsPage();

            statspage.InitializeComponent();
        }
Beispiel #6
0
        public ScreenReturn Show(GameObject GO)
        {
            GameManager.Instance.PushGameView("QudUX:GameStats");
            currentPage = StatsPage.GamesList;

            //Logger.Log("Loading scoreboard");
            Table scoreTable, levelsTable, deathCauseTable;
            bool  showAbandonned = true;

            FillTables(out scoreTable, out levelsTable, out deathCauseTable, showAbandonned);


            while (true)
            {
                DisplayScreenFrame();
                Buffer.Goto(55, 0);
                Buffer.Write(((int)currentPage).ToString() + "/3");

                Table currentTable = null;
                if (currentPage == StatsPage.GamesList)
                {
                    scoreTable.Display(Buffer, 1, 1);
                    currentTable = scoreTable;
                }
                else if (currentPage == StatsPage.LevelStats)
                {
                    levelsTable.Display(Buffer, 1, 1);
                    currentTable = levelsTable;
                }
                else if (currentPage == StatsPage.DeathStats)
                {
                    deathCauseTable.Display(Buffer, 1, 1);
                    currentTable = deathCauseTable;
                }

                Buffer.Goto(2, 23);
                Buffer.Write(ScoreList.Count.ToString() + " {{O|games}}");

                /*
                 *              // debug table
                 *              Buffer.Goto(1,24);
                 *              Buffer.Write($"si:{scoreTable.SelectedIndex} of:{scoreTable.Offset} mvr:{scoreTable.MaxVisibleRows} cvr:{scoreTable.CurrentVisibleRows} ");
                 */

                Console.DrawBuffer(Buffer);

                Keys keys = Keyboard.getvk(Options.MapDirectionsToKeypad);

                if (keys == Keys.Escape || keys == Keys.NumPad5)
                {
                    GameManager.Instance.PopGameView();
                    return(ScreenReturn.Exit);
                }

                if ((keys == Keys.Enter) && (currentPage == StatsPage.GamesList))
                {
                    EnhancedScoreEntry      esh           = ScoreList[scoreTable.Offset + scoreTable.SelectedIndex];
                    QudUX_GameDetailsScreen detailsScreen = new QudUX_GameDetailsScreen();
                    detailsScreen.GameDetails = esh.Details;
                    detailsScreen.Show(GO);
                }

                if (keys == Keys.OemQuestion)
                {
                    ShowQuickKeys();
                }

                if (currentTable != null)
                {
                    if (keys == Keys.NumPad3 || keys == Keys.Next)
                    {
                        currentTable.ScrollPage(1);
                    }

                    if (keys == Keys.NumPad9 || keys == Keys.Prior)
                    {
                        currentTable.ScrollPage(-1);
                    }

                    if (keys == Keys.NumPad2)
                    {
                        currentTable.MoveSelection(1);
                    }

                    if (keys == Keys.NumPad8)
                    {
                        currentTable.MoveSelection(-1);
                    }

                    if (keys == (Keys.Control | Keys.A))
                    {
                        showAbandonned = !showAbandonned;
                        FillTables(out scoreTable, out levelsTable, out deathCauseTable, showAbandonned);
                    }
                }

                if (keys == Keys.NumPad6)
                {
                    if (currentPage == StatsPage.DeathStats)
                    {
                        currentPage = StatsPage.GamesList;
                    }
                    else
                    {
                        currentPage++;
                    }
                }

                if (keys == Keys.NumPad4)
                {
                    if (currentPage == StatsPage.GamesList)
                    {
                        currentPage = StatsPage.DeathStats;
                    }
                    else
                    {
                        currentPage--;
                    }
                }
            }
        }