Пример #1
0
        private void UpdateViewGesetzteSchiffe(Button[,] alleButtons, Spielfeld spielfeld)
        {
            var aktuelleView = spielfeld.GetFelder();

            for (int i = 0; i < aktuelleView.GetLength(0); i++)
            {
                for (int u = 0; u < aktuelleView.GetLength(1); u++)
                {
                    if (aktuelleView[i, u].IsGesetzt)
                    {
                        alleButtons[i, u].BackColor = Color.Orange;
                    }
                    if (aktuelleView[i, u].IsGesetzt == false)
                    {
                        alleButtons[i, u].BackColor = Color.White;
                    }
                }
            }
        }
Пример #2
0
        private void UpdateViewZuletztGesetztesFeld(int zeilenAuswahl, int spaltenAuswahl, Button[,] alleButtons, Spielfeld spielfeld)
        {
            var aktuelleView = spielfeld.GetFelder();

            if (aktuelleView[zeilenAuswahl, spaltenAuswahl].IsGetroffen)
            {
                alleButtons[zeilenAuswahl, spaltenAuswahl].BackgroundImage = Properties.Resources.fireIcon;
            }
            else
            {
                alleButtons[zeilenAuswahl, spaltenAuswahl].BackgroundImage = Properties.Resources.missIcon;
            }
        }
Пример #3
0
        private void InitialisiereSpiel()
        {
            //Daten aus Model holen und neue Felder initialisieren
            spielerSpielfeld   = new Spielfeld(6, 6);
            gegnerSpielfeld    = new Spielfeld(6, 6);
            verfuegbareSchiffe = new Schiffsammlung(3).GetSchiffsammlung();

            //Buttons sammeln
            spielerFeldButtons = new Button[, ] {
                { u1, u2, u3, u4, u5, u6 },
                { v1, v2, v3, v4, v5, v6 },
                { w1, w2, w3, w4, w5, w6 },
                { x1, x2, x3, x4, x5, x6 },
                { y1, y2, y3, y4, y5, y6 },
                { z1, z2, z3, z4, z5, z6 }
            };

            gegnerFeldButtons = new Button[, ]
            {
                { a1, a2, a3, a4, a5, a6 },
                { b1, b2, b3, b4, b5, b6 },
                { c1, c2, c3, c4, c5, c6 },
                { d1, d2, d3, d4, d5, d6 },
                { e1, e2, e3, e4, e5, e6 },
                { f1, f2, f3, f4, f5, f6 }
            };

            //Erstelle eine Liste mit Buttons für die gegnerische Intelligenz
            buttonsGegnerischeIntelligenz = new List <Button>();
            foreach (var button in spielerFeldButtons)
            {
                buttonsGegnerischeIntelligenz.Add(button);
            }

            //GUI Anweisungen erscheinen
            groupBoxAnweisungen.BringToFront();
            groupBoxAnweisungen.Visible = true;
            AktualisiereAnsichtVerfuegbarerSchiffe(verfuegbareSchiffe);

            Array ausrichtungen = Enum.GetValues(typeof(Schiffsausrichtung));

            comboBoxSchiffsAusrichtung.Items.Clear();
            foreach (var ausrichtung in ausrichtungen)
            {
                comboBoxSchiffsAusrichtung.Items.Add(ausrichtung);
            }

            //Start disabling
            starteSpielToolStripMenuItem.Enabled = false;

            //Enable alle Spielerfelder
            foreach (var button in spielerFeldButtons)
            {
                button.Enabled = true;
            }

            //Attack button verstecken
            attackButton.Visible = false;

            //UpdateView
            UpdateSpielfeldViewNeuesSpiel(spielerFeldButtons);
            UpdateSpielfeldViewNeuesSpiel(gegnerFeldButtons);

            //Init Button
            gewaehlterButton = u1;

            //Platzierung hier notwendig
            gegnerSpielfeld.PlatziereSchiffeZufaellig(verfuegbareSchiffe);
        }