Ejemplo n.º 1
0
        public void SpielsteinWirdKorrektInLeereSpalteEingefügt()
        {
            var plätze = new List <Platz>();

            for (int i = 0; i < 6; i++)
            {
                plätze.Add(new Platz(0, i));
            }

            var testTarget = new Spalte(plätze);
            var spielstein = new Spielstein(new Farbe(0, 0, 0), "Foo");

            testTarget.LasseSpielsteinFallen(spielstein);

            for (var i = 0; i < plätze.Count; i++)
            {
                if (i == 0)
                {
                    Assert.AreEqual(spielstein, plätze[0].Spielstein);
                    continue;
                }

                Assert.IsNull(plätze[i].Spielstein);
            }
        }
Ejemplo n.º 2
0
        public void SpielsteinWirdInLeereSpalteEingefügt()
        {
            // Setup
            var plätze = new List <Platz>();

            for (var i = 0; i < 6; i++)
            {
                plätze.Add(new Platz());
            }

            var sut        = new Spalte(plätze);
            var spielstein = new Spielstein(new Farbe(0, 0, 100), "Foo");


            // Act
            sut.LasseSpielsteinFallen(spielstein);


            // Assert
            for (var i = 0; i < plätze.Count; i++)
            {
                if (i == 0)
                {
                    Assert.AreEqual(spielstein, plätze[0].Spielstein);
                    continue;
                }

                Assert.IsNull(plätze[i].Spielstein);
            }
        }
Ejemplo n.º 3
0
    public void bewegungAusfuehren(Bewegung b)
    {
        GameObject figur = b.getFigur();
        Spielstein s     = figur.GetComponent <Spielstein>();

        s.move(b.getDirection());
    }
Ejemplo n.º 4
0
 public void Remove(Spielstein spielstein)
 {
     foreach (var kästchen in steinMap[spielstein])
     {
         SpielfeldCanvas.Children.Remove(kästchen);
     }
     steinMap.Remove(spielstein);
 }
Ejemplo n.º 5
0
        /// <summary>
        /// Erzeugt eine exakte Kopie dieses Spielsteins.
        /// Damit können im Spielfeld Bewegungen des Steins getestet werden, ohne den
        /// ursprünglichen Stein zu verändern (Quasi eine Sicherungskopie / Geisterstein)
        /// </summary>
        /// <returns></returns>
        public Spielstein Kopie()
        {
            Spielstein neuerSpielstein = new Spielstein(this.FarbCode);

            neuerSpielstein.x1 = this.x1;
            neuerSpielstein.y1 = this.y1;
            neuerSpielstein.x2 = this.x2;
            neuerSpielstein.y2 = this.y2;
            neuerSpielstein.x3 = this.x3;
            neuerSpielstein.y3 = this.y3;
            neuerSpielstein.x4 = this.x4;
            neuerSpielstein.y4 = this.y4;

            return(neuerSpielstein);
        }
Ejemplo n.º 6
0
        public void IstSpalteVollGibtFalseZurückWennNichAllePlätzeVollSind()
        {
            var spielstein = new Spielstein(new Farbe(0, 0, 0), "Foo");
            var plätze     = new List <Platz>();

            for (int i = 0; i < 6; i++)
            {
                plätze.Add(new Platz(0, i));
            }

            plätze[0].Spielstein = spielstein;
            plätze[1].Spielstein = spielstein;
            var testTarget = new Spalte(plätze);

            Assert.IsFalse(testTarget.IstSpalteVoll);
        }
Ejemplo n.º 7
0
        public void IstSpalteVollGibtFalseZurueckWennNichtAllePlaetzeVollSind()
        {
            var spielstein = new Spielstein(new Farbe(0, 0, 0), "Bratwurst");
            var plaetze    = new List <Platz>();

            for (var i = 0; i < 6; i++)
            {
                plaetze.Add(new Platz(0, i));
            }
            plaetze[0].Spielstein = spielstein;
            plaetze[1].Spielstein = spielstein;

            var testTarget = new Spalte(plaetze);

            Assert.False(testTarget.IstSpalteVoll);
        }
Ejemplo n.º 8
0
        public void LasseSpielsteinFallenLöstExceptionAusWennSpalteVollIst()
        {
            var spielstein = new Spielstein(new Farbe(0, 0, 0), "Foo");
            var plätze     = new List <Platz>();

            for (int i = 0; i < 6; i++)
            {
                plätze.Add(new Platz(0, i)
                {
                    Spielstein = spielstein
                });
            }

            var testTarget = new Spalte(plätze);

            testTarget.LasseSpielsteinFallen(spielstein);
        }
Ejemplo n.º 9
0
        public void LasseSpielsteinFallenLoestFehlerAus()
        {
            var spielstein = new Spielstein(new Farbe(0, 0, 0), "Bratwurst");
            var plaetze    = new List <Platz>();

            for (var i = 0; i < 6; i++)
            {
                plaetze.Add(new Platz(0, 0)
                {
                    Spielstein = spielstein
                });
            }

            var testTarget = new Spalte(plaetze);

            Assert.Throws <InvalidOperationException>(() => testTarget.LasseSpielsteinFallen(spielstein));
        }
Ejemplo n.º 10
0
        public void IstSpalteVollGibtTrueZurückWennAllePlätzeVollSind()
        {
            var spielstein = new Spielstein(new Farbe(0, 0, 0), "Foo");
            var plätze     = new List <Platz>();

            for (int i = 0; i < 6; i++)
            {
                plätze.Add(new Platz(0, i)
                {
                    Spielstein = spielstein
                });
            }

            var testTarget = new Spalte(plätze);

            Assert.IsTrue(testTarget.IstSpalteVoll);
        }
Ejemplo n.º 11
0
        public void IstSpalteVollGibtTrueZurueckAllePlaetzeVollSind()
        {
            var spielstein = new Spielstein(new Farbe(0, 0, 0), "Bratwurst");
            var plaetze    = new List <Platz>();

            for (var i = 0; i < 6; i++)
            {
                plaetze.Add(new Platz(0, 0)
                {
                    Spielstein = spielstein
                });
            }

            var testTarget = new Spalte(plaetze);

            Assert.True(testTarget.IstSpalteVoll);
        }
Ejemplo n.º 12
0
        public void LasseSPielSteinFallenLöstExceptionAusWennSpalteVollIst()
        {
            // Setup
            var plätze = new List <Platz>();

            for (var i = 0; i < 6; i++)
            {
                plätze.Add(new Platz {
                    Spielstein = new Spielstein(new Farbe(0, 0, 100), "Foo")
                });
            }

            var sut        = new Spalte(plätze);
            var spielstein = new Spielstein(new Farbe(0, 0, 100), "Foo");


            // Act
            sut.LasseSpielsteinFallen(spielstein);
        }
Ejemplo n.º 13
0
        public void IstSpalteVollGibtFalseZurückWennNichtAllePlätzeVollSind()
        {
            // Setup
            var plätze = new List <Platz>();

            for (var i = 0; i < 6; i++)
            {
                plätze.Add(new Platz());
            }
            var spielstein = new Spielstein(new Farbe(0, 0, 100), "Foo");

            plätze[0].Spielstein = spielstein;
            plätze[1].Spielstein = spielstein;

            var sut = new Spalte(plätze);


            // Act & Assert
            Assert.IsFalse(sut.IstSpalteVoll);
        }
Ejemplo n.º 14
0
        private void UpdateSpielstein(Spielstein einSpielstein, Rectangle[] stein)
        {
            if (steinMap.TryGetValue(einSpielstein, out stein))
            {
                var coords = new int[, ] {
                    { einSpielstein.x1 - 1, einSpielstein.y1 - 1 },
                    { einSpielstein.x2 - 1, einSpielstein.y2 - 1 },
                    { einSpielstein.x3 - 1, einSpielstein.y3 - 1 },
                    { einSpielstein.x4 - 1, einSpielstein.y4 - 1 },
                    { einSpielstein.x5 - 1, einSpielstein.y5 - 1 },
                };

                var i = 0;
                foreach (var kästchen in stein)
                {
                    Canvas.SetLeft(kästchen, coords[i, 0] * kbreite + 1);
                    Canvas.SetTop(kästchen, coords[i, 1] * kbreite + 1);
                    i++;
                }
            }
        }
Ejemplo n.º 15
0
        public void UpdateZeichnung(Spielstein einSpielstein, bool remove = false)
        {
            if (einSpielstein == null)
            {
                return;
            }

            var farbe = CodeToColor(einSpielstein.farbCode);


            Rectangle[] stein;

            if (steinMap.TryGetValue(einSpielstein, out stein))
            {
                if (remove)
                {
                    Remove(einSpielstein);
                }
                else
                {
                    UpdateSpielstein(einSpielstein, stein);
                }
            }
            else if (!remove)
            {
                stein = new Rectangle[5];

                stein[0] = ZeichneKaestchen(einSpielstein.x1 - 1, einSpielstein.y1 - 1, farbe);
                stein[1] = ZeichneKaestchen(einSpielstein.x2 - 1, einSpielstein.y2 - 1, farbe);
                stein[2] = ZeichneKaestchen(einSpielstein.x3 - 1, einSpielstein.y3 - 1, farbe);
                stein[3] = ZeichneKaestchen(einSpielstein.x4 - 1, einSpielstein.y4 - 1, farbe);
                stein[4] = ZeichneKaestchen(einSpielstein.x5 - 1, einSpielstein.y5 - 1, farbe);


                steinMap.Add(einSpielstein, stein);
            }
        }
Ejemplo n.º 16
0
 public void preview(Spielstein stein)
 {
     throw new NotImplementedException();
 }
Ejemplo n.º 17
0
 public void LasseSpielsteinFallen(Spielstein spielstein)
 {
     _anzahlLasseSpielsteinFallenAufrufe++;
 }
Ejemplo n.º 18
0
 public void STEIN(Spielstein stein)
 {
 }