Пример #1
0
    /// <summary>
    /// Aliohjelma, joka suoritetaan kun pelaaja pääsee maaliin. Aliohjelma lopettaa kentän ja avaa valikon sekä HighScore -listan.
    /// Jos pelaaja saa tuloksen joka on 5 parhaan tuloksen joukossa pääsee pelaaja kirjoittamaan nimensä HighScore -listalle
    /// </summary>
    public void PelaajaPaaseeMaaliin(PhysicsObject tormaaja, PhysicsObject kohde)
    {
        double aikaaKulunut = aikaLaskuri.SecondCounter.Value;

        Label aika = new Label("Aikasi on " + AikaLaskurinAjanPyoristys(aikaaKulunut) + " sekunttia");

        aika.Y           = 300;
        aika.Color       = Color.White;
        aika.BorderColor = Color.Black;
        Add(aika);

        Label keratytTahdet = new Label("Keräsit " + MontakoTahtea(pisteLaskuri) + " tähteä");

        keratytTahdet.Y           = 270;
        keratytTahdet.Color       = Color.White;
        keratytTahdet.BorderColor = Color.Black;
        Add(keratytTahdet);

        aikaLaskuri.Pause();
        KokonaisPisteet();

        HighScoreWindow topIkkuna = new HighScoreWindow("Parhaat pisteet", "Onneksi olkoon, pääsit listalle pisteillä %p! Syötä nimesi:", topListat[kenttaNro - 1], pisteLaskuri);

        topIkkuna.Closed += TallennaPisteet;
        Add(topIkkuna);

        Lopputaulukko();
    }
Пример #2
0
    public void Pisteet(int numero)
    {
        HighScoreWindow topIkkuna = new HighScoreWindow("Parhaat pisteet: Kenttä " + numero, topListat[numero - 1]);

        topIkkuna.Closed += TallennaPisteet;
        Add(topIkkuna);
    }
Пример #3
0
 /// <summary>
 /// Game Over
 /// </summary>
 private void GameOver()
 {
     PendulumClock.Stop();
     DisableButtons();
     IsGame    = false;
     TopScores = new HighScoreWindow(GameCounters);
 }
Пример #4
0
        private void OpenHighScore(object obj)
        {
            HighScoreWindow highScore = new HighScoreWindow();

            highScore.Show();
            mainWindow.Close();
        }
Пример #5
0
    /// <summary>
    /// Lopettaa pelin ja jos pelaaja pääsee top-listalle, antaa kirjoittaa pelaajan nimen
    /// Näyttää toplistan ja antaa ilmoituksen mahdollisuudesta aloittaa uuden pelin
    /// </summary>
    void PeliLoppui()
    {
        ScoreList topLista = new ScoreList(LISTANPITUUS, false, LISTALLEMINPISTEET);

        topLista = DataStorage.TryLoad <ScoreList>(topLista, "pisteet.xml");

        HighScoreWindow topIkkuna = new HighScoreWindow(
            "Parhaat pisteet",
            "Onneksi olkoon, pääsit listalle pisteillä %p",
            topLista,
            Suurempi()
            );

        Add(topIkkuna);

        topIkkuna.Closed += delegate(Window ikkuna)
        {
            DataStorage.Save <ScoreList>(topLista, "pisteet.xml");
        };

        topIkkuna.Closed += delegate(Window ikkuna)
        {
            MessageDisplay.Add("Aloita uusi peli");
        };
    }
 public HighScoreViewModel(HighScoreWindow window)
 {
     this.window    = window;
     this.container = getContainer();
     this.window.Scores.ItemsSource = container.GetRecords();
     this.BackCommand = new CommandBase(this.ExecuteBackCommand, this.CanExecuteBackCommand);
 }
Пример #7
0
    /// <summary>
    /// Parhaat pisteet ikkuna.
    /// Tuo Parhaat pisteet tiedostosta tallennetut pisteet.
    /// </summary>
    public void ParhaatPisteet()
    {
        HighScoreWindow topIkkuna = new HighScoreWindow("Parhaat pisteet", topLista);

        topIkkuna.Closed += TallennaPisteet;
        Add(topIkkuna);
    }
Пример #8
0
        /// <summary>
        /// Highscore window.
        /// </summary>
        public void Points()
        {
            ScoreList pointlist = new ScoreList(10, false, 0);

            pointlist = DataStorage.TryLoad(pointlist, "points.xml");

            HighScoreWindow pointWindow;

            if (pointsAdded == false)
            {
                pointWindow = new HighScoreWindow("Enemies killed",
                                                  "Yay, you killed %p! enemies. What is your name:", pointlist, GameManager.KillCount.Value);
                pointsAdded = true;
            }
            else
            {
                pointWindow = new HighScoreWindow("Enemies killed", pointlist);
            }

            pointWindow.Closed += delegate
            {
                DataStorage.Save(pointlist, "points.xml");
                End();
                pointsAdded = true;
            };
            Add(pointWindow);
        }
Пример #9
0
 public GuiController()
 {
     _menuWindow      = new MenuWindow();
     _creditWindow    = new CreditWindow();
     _exitWindow      = new ExitWindow();
     _gameOverWindow  = new GameOverWindow();
     _highScoreWindow = new HighScoreWindow();
 }
Пример #10
0
    /// <summary>
    /// Avaa parhaiden pisteiden lista muuttamatta sitä.
    /// </summary>
    private void AvaaTopScore()
    {
        HighScoreWindow topIkkuna = new HighScoreWindow(
            "High Scores",
            topLista);

        topIkkuna.Closed += SuljeTopScore;
        Add(topIkkuna);
    }
Пример #11
0
    /// <summary>
    /// Näyttää pelin TopTen listan ja tarvittaessa lisää nimesi listalle.
    /// </summary>
    private void NaytaTopTen()
    {
        HighScoreWindow topIkkuna = new HighScoreWindow(
            "Parhaat pisteet",
            "Onneksi olkoon, pääsit listalle pisteillä %p! Syötä nimesi:",
            topLista, yhteisKorkeus);

        topIkkuna.Closed += TallennaPisteet;
        Add(topIkkuna);
    }
Пример #12
0
    /// <summary>
    /// Avaa parhaiden pisteiden listan, ja antaa pelaajan kirjoittaa nimensä listaan jos hänellä on tarpeeksi pisteitä siihen.
    /// Tämän jälkeen suorittaa aliohjelman TallennaPisteet, jossa lista tallennetaan ja palataan takaisin alkuvalikkoon.
    /// </summary>
    private void AsetaHighScoreJaPalaaMenuun()
    {
        HighScoreWindow topIkkuna = new HighScoreWindow(
            "High Scores",
            "Your score: %p. Enter your name:",
            topLista, HUD.Pisteet);

        topIkkuna.Closed += TallennaPisteet;
        Add(topIkkuna);
    }
Пример #13
0
        private void SelectSide()
        {
            if (GameModel.SelectSide())
            {
                tbRedScore.Text  = GameModel.RedScore.ToString();
                tbBlueScore.Text = GameModel.BlueScore.ToString();

                if (GameOver())
                {
                    canvas.Children.Clear();
                    DrawSquares();
                    DrawGrid();

                    var score = new Score();
                    if (GameModel.RedScore > GameModel.BlueScore)
                    {
                        MessageBox.Show($"{tbRedName.Text} WIN!");
                        score.Name  = tbRedName.Text;
                        score.Value = GameModel.RedScore;
                    }
                    else if (GameModel.RedScore < GameModel.BlueScore)
                    {
                        MessageBox.Show($"{tbBlueName.Text} WIN!");
                        score.Name  = tbBlueName.Text;
                        score.Value = GameModel.BlueScore;
                    }
                    else
                    {
                        MessageBox.Show("It's a DRAW!");
                    }
                    score.Date     = DateTime.Now;
                    score.MaxScore = GameModel.RedScore + GameModel.BlueScore;
                    score.Square   = !GameModel.Rombus;

                    if (score.Name != "Computer" || _multiplayer)
                    {
                        ScoresRepository.StoreScore(score);
                    }

                    var scoreWindow = new HighScoreWindow();
                    scoreWindow.Show();
                    this.Close();

                    //NewGame();
                }
            }
        }
Пример #14
0
        /// <summary>
        /// Näytetään teksti valitulla värillä
        /// </summary>
        /// <param name="teksti">näytettävä teksti</param>
        /// <param name="vari">pohjaväri, jolla näytetään</param>
        private void NaytaIlmoitus(string teksti, Color vari)
        {
#if WINDOWS
            Label label = new Label(teksti);
            label.Font        = Font.DefaultLargeBold;
            label.Width       = 400;
            label.Height      = 200;
            label.Color       = vari;
            label.BorderColor = Color.Black;
            Add(label);
            ClearControls();
            HighScoreWindow topIkkuna = new HighScoreWindow("Top 10",
                                                            "Congratulations! You got %p points! Give you name:",
                                                            topLista, pisteet);
            topIkkuna.Closed += delegate { DataStorage.TrySave <ScoreList>(topLista, "pisteet.xml"); AloitaUusiPeli(); };
            Add(topIkkuna);
#endif
        }
Пример #15
0
    /// <summary>
    /// Valitaan toiminto napin painalluksesta.
    /// </summary>
    /// <param name="valittuNappi">Painettu nappi.</param>
    private void AlkuvalikkoaPainettu(int valittuNappi)
    {
        MessageWindow eiKaytossa = new MessageWindow("Työn alla...");

        eiKaytossa.Closed += delegate { Begin(); };

        switch (valittuNappi)
        {
        case 0:
            AloitaUusiPeli();
            break;

        case 1:

            Add(eiKaytossa);
            //MessageDisplay.Add("Työn alla...");
            break;

        case 2:
            Add(eiKaytossa);
            //MessageDisplay.Add("Työn alla...");
            break;

        case 3:
            HighScoreWindow topIkkuna = new HighScoreWindow(
                "Parhaat pisteet",
                topLista);
            topIkkuna.Closed += delegate { Begin(); };
            Add(topIkkuna);
            break;

        case 4:
            MessageWindow tiedot = new MessageWindow("Tämän ohjelman on ohjelmoinut Daniel Nieminen käyttäen Jyväskylän Yliopiston Jypeli kirjastoa.");
            tiedot.Closed += delegate { Begin(); };
            Add(tiedot);
            break;

        case 5:
            Exit();
            break;
        }
    }
Пример #16
0
 /// <summary>
 /// Pelin lopetus näyttö.
 /// Tyhjentää pelikentän.
 /// Tallentaa pelaajan nimen ja highscoren
 /// jos hän pääsee TOP 10 listalle.
 /// Palauttaa sen jälkeen takaisin päävalikkoon.
 /// </summary>
 public void GameOver()
 {
     ClearAll();
     SetWindowSize(618, 720);
     Level.Background.Image = LoadImage("ZombiKuva");
     if (pelaajaKuoli == true)
     {
         HighScoreWindow topIkkuna = new HighScoreWindow("Parhaat pisteet",
                                                         "Hävisit pelin, onnistui keräämään %p pistettä! Syötä nimesi: ",
                                                         topLista, pelaajanPisteet);
         topIkkuna.Closed += TallennaPisteet;
         Add(topIkkuna);
     }
     if (zombiLaskuri.Value == 0)
     {
         HighScoreWindow topIkkuna = new HighScoreWindow("Parhaat pisteet",
                                                         "Onneksi olkoon, Voitit pelin ja onnistui keräämään %p pistettä! Syötä nimesi: ",
                                                         topLista, pelaajanPisteet);
         topIkkuna.Closed += TallennaPisteet;
         Add(topIkkuna);
     }
 }
Пример #17
0
        private void BtnHighScores_Click(object sender, RoutedEventArgs e)
        {
            HighScoreWindow highScoreWindow = new HighScoreWindow(this.highScore);

            highScoreWindow.Show();
        }
Пример #18
0
 /// <summary>
 /// After a successfully ran game, opens score screen and starts the program over after closing it.
 /// </summary>
 public void GameEnd()
 {
     Pause();
     ScoreList scoreList = new ScoreList(10, false, 2500);
     scoreList = DataStorage.TryLoad<ScoreList>(scoreList, "scorelist.xml");
     HighScoreWindow scoreWindow = new HighScoreWindow("High Scores", "You have made the high scores! Please enter your name: ", scoreList, SCOREMETER.Value);
     scoreWindow.Closed += delegate { DataStorage.Save<ScoreList>(scoreList, "scorelist.xml"); Pause(); ClearAll(); Begin(); };
     Add(scoreWindow);
 }