Ejemplo n.º 1
0
 public void ZelleAendern(Zelle zelle, out bool zelleLebt)
 {
     zelleLebt = ZelleExistiert(this._lebendeZellen, zelle);
     if (zelleLebt)
     {
         this._lebendeZellen = this._lebendeZellen.Remove(zelle).ToArray();
     }
     else
     {
         this._lebendeZellen = this._lebendeZellen.Append(zelle).ToArray();
     }
 }
Ejemplo n.º 2
0
        public int CheckPopulation(Zelle zelle)
        {
            int population = 0;

            foreach (Zelle currentZelle in this._lebendeZellen)
            {
                if (zelle.IsNeighbor(currentZelle, this._x, this._y))
                {
                    population++;
                }
            }

            return(population);
        }
Ejemplo n.º 3
0
 public static bool ZelleExistiert(Zelle[] suchArray, Zelle pruefZelle)
 {
     return(Array.Exists <Zelle>(suchArray, zelle => zelle.X == pruefZelle.X && zelle.Y == pruefZelle.Y));
 }
Ejemplo n.º 4
0
 public static IEnumerable <Zelle> Remove(this IEnumerable <Zelle> zelleSequence, Zelle zelle)
 {
     if (SpielFeld.ZelleExistiert(zelleSequence.ToArray(), zelle))
     {
         zelleSequence = zelleSequence.Where <Zelle>(z => z.X != zelle.X || z.Y != zelle.Y);
     }
     return(zelleSequence);
 }