Пример #1
0
 /*
  * Testen, ob die neue Reihe Valide ist (im Bereich von 1-8)
  */
 protected bool reiheEinsBisAchtValide(int i, char reihe, GroesserKleiner groesserKleiner)
 {
     if (groesserKleiner == GroesserKleiner.Groesser)
     {
         return((char)(this.reihe + i) >= reihe);
     }
     return((char)(this.reihe + i) <= reihe);
 }
Пример #2
0
 /*
  * Testen, ob die neue Spalte Valide ist (im Bereich von a-h)
  */
 protected bool spalteAbisHvalide(int i, char spalte, GroesserKleiner groesserKleiner)
 {
     if (groesserKleiner == GroesserKleiner.Groesser)
     {
         return((char)(this.spalte + i) >= spalte);
     }
     return((char)(this.spalte + i) <= spalte);
 }
Пример #3
0
        // Hier werden der Liste der moeglichen Zuege die Reihen hinzugefuegt
        // (Y Achse)
        // Selbes Prinzip wie spaltenHinzufuegen
        protected void reihenHinzufuegen(int richtung, char grenze, GroesserKleiner bedingung, List <string> listMoeglicheZuege)
        {
            while (this.reiheEinsBisAchtValide(richtung, grenze, bedingung))
            {
                if (this.figurImWegEigeneFarbe(this.feldName(0, richtung)))
                {
                    break;
                }

                if (figurImWegAndereFarbe(this.feldName(0, richtung)))
                {
                    listMoeglicheZuege.Add(this.feldName(0, richtung));
                    this.setSpalteReihe(0, richtung);
                    break;
                }

                listMoeglicheZuege.Add(this.feldName(0, richtung));
                this.setSpalteReihe(0, richtung);
            }
        }
Пример #4
0
        // Hier werden der List der moegliczhen zuege die Spalten hinzugefuegt
        // (X Achse)
        //
        protected void spaltenHinzufuegen(int richtung, char grenze, GroesserKleiner bedingung, List <string> listMoeglicheZuege)
        {
            while (this.spalteAbisHvalide(richtung, grenze, bedingung))
            {
                // Ist eine Figur der eigenen Farbe auf einem Feld im Weg
                if (this.figurImWegEigeneFarbe(this.feldName(richtung, 0)))
                {
                    break;
                }
                // Wenn eine Figur der anderen Farbe im wege ist,
                // dann danach aufhoeren, da dies die Grenze ist, wie weit gezogen
                // werden darf
                if (figurImWegAndereFarbe(this.feldName(richtung, 0)))
                {
                    listMoeglicheZuege.Add(this.feldName(richtung, 0));
                    this.setSpalteReihe(richtung, 0);
                    break;
                }

                listMoeglicheZuege.Add(this.feldName(richtung, 0));
                this.setSpalteReihe(richtung, 0);
            }
        }
Пример #5
0
        // Die Diagonalen Felder werden der Liste hinzugefuegt
        // Ebenfalls abfragen, ob auf dem naechsten Zug eine eigene Figur oder eine Gegnerische Fugur steht
        //
        protected void diagonaleZeugeHinzufuegen(int richtungAbisH, char grenzeAbisH, GroesserKleiner bedingungAbisH,
                                                 int richtungEinsBisAcht, char grenzeEinsBisAcht, GroesserKleiner bedingungEinsBisAcht,
                                                 List <string> listMoeglicheZuege)
        {
            while (this.spalteAbisHvalide(richtungAbisH, grenzeAbisH, bedingungAbisH) &&
                   this.reiheEinsBisAchtValide(richtungEinsBisAcht, grenzeEinsBisAcht, bedingungEinsBisAcht))
            {
                if (figurImWegEigeneFarbe(this.feldName(richtungAbisH, richtungEinsBisAcht)))
                {
                    break;
                }

                if (figurImWegAndereFarbe(this.feldName(richtungAbisH, richtungEinsBisAcht)))
                {
                    listMoeglicheZuege.Add(this.feldName(richtungAbisH, richtungEinsBisAcht));
                    this.setSpalteReihe(richtungAbisH, richtungEinsBisAcht);
                    break;
                }

                listMoeglicheZuege.Add(this.feldName(richtungAbisH, richtungEinsBisAcht));
                this.setSpalteReihe(richtungAbisH, richtungEinsBisAcht);
            }
        }