Пример #1
0
        public LevelUebergang(Treffer rundenErgebnis) : this()
        {
            var gespieltesLevel = LevelSequenzierer.ErzeugeLevelBeschreibung(rundenErgebnis.GespieltesLevel);

            this.Ueberschrift.Text          = $@"{ rundenErgebnis.ObsiegenderSpieler.Name } and { rundenErgebnis.GetroffenerSpieler.Name } on a Wrath of the Mild series of missions";
            this.AktuellesLevel.Text        = $@"Level { rundenErgebnis.GespieltesLevel }: ""{ gespieltesLevel.LevelName }""";
            this.AktuellesLevelDetails.Text = $@"Being the { gespieltesLevel.LevelNummerInMission } level in the ""{ gespieltesLevel.MissionsName }"" mission";
            this.ErgebnisGewonnen.Text      = $@"{ rundenErgebnis.ObsiegenderSpieler.Name } won, { rundenErgebnis.ObsiegenderSpieler.Lebenspunkte } HP left";
            if (rundenErgebnis.Ergebnis == SchussErgebnis.SelbstErschossen)
            {
                this.ErgebnisBesiegt.Text = $"{ rundenErgebnis.GetroffenerSpieler.Name } n00bed themselves out";
            }
            else
            {
                this.ErgebnisBesiegt.Text = $"{ rundenErgebnis.GetroffenerSpieler.Name } has been pwned";
            }

            var kommendesLevel = LevelSequenzierer.ErzeugeLevelBeschreibung(rundenErgebnis.GespieltesLevel + 1);

            if (kommendesLevel == null)
            {
                this.KommendesLevel.Text        = "Be at peace";
                this.KommendesLevelDetails.Text = "Congratulations, you completed all missions";
            }
            else
            {
                this.KommendesLevel.Text        = $@"Level { rundenErgebnis.GespieltesLevel + 1 }: ""{ kommendesLevel.LevelName }""";
                this.KommendesLevelDetails.Text = $@"Being the { kommendesLevel.LevelNummerInMission } level in the ""{ kommendesLevel.MissionsName }"" mission";
            }
        }
Пример #2
0
        private void ErzeugeDieWelt()
        {
            this.WeltErzeugen.Hide();
            this.ScorchGore.Hide();
            this.DerZornDerSanften.Hide();
            this.Copyright.Hide();
            this.SpielerNamenZeigen();
            this.SchussEingabefeld.Left = this.Width / 2 - this.SchussEingabefeld.Width / 2;
            this.ausgangsZustand        = new Bitmap(this.Width, this.Height, PixelFormat.Format24bppRgb);
            this.BackgroundImage        = this.levelBild;
            LevelBeschreibung levelBeschreibung;

            if (this.aktuelleLevelNummer == 0)
            {
                /* berg-steilheit und rauhheit und höhenprofil mit zufallszahlen bestimmen */
                levelBeschreibung = new LevelBeschreibung
                {
                    BergZufallszahl     = MultiplayerCloud.BergZufallszahl,
                    BergMinHoeheProzent = this.MindesthoeheProzent.Value,
                    BergMaxHoeheProzent = this.HoechstHoeheProzent.Value,
                    BergRauhheitProzent = this.RauheitsfaktorProzent.Value
                };
            }
            else
            {
                levelBeschreibung = LevelSequenzierer.ErzeugeLevelBeschreibung(this.aktuelleLevelNummer);
                this.LevelNamenZeigen(levelBeschreibung);
            }

            using (var zeichenFlaeche = Graphics.FromImage(this.levelBild))
            {
                LevelZeichner.Zeichne(this, this.levelBild, levelBeschreibung, zeichenFlaeche);

                /* nur zum test für fallenlassen / fallschirm! */
                if (this.aktuelleLevelNummer == 0)
                {
                    var goodie = new Goodie(this, this.levelBild, this.Goodies, GoodieWirkung.Chrom_Dreifachschuss)
                    {
                        X = 166
                    };

                    goodie.FallenLassen(zeichenFlaeche);
                }
            }

            this.Refresh();
            this.spielPhase = SpielPhase.SpielerFallenRundeBeginnt;
            this.AusgangszustandSichern();
            this.spielerEins.Positionieren(levelBeschreibung.SpielerPosition1, this.StandardSpielerEinsX);
            this.SpielerFallen(this.spielerEins);
            this.spielerZwei.Positionieren(levelBeschreibung.SpielerPosition2, this.StandardSpielerZweiX);
            this.SpielerFallen(this.spielerZwei);
        }