public static void DrawFigure(string value) { Lifeless life = new Lifeless(); Dead dead = new Dead(); if (value == "Rectangle") { Figure[0, 0] = life.Lifeless; Figure[0, 1] = life.Lifeless; Figure[0, 2] = life.Lifeless; Figure[1, 0] = life.Lifeless; Figure[1, 1] = dead.Dead; Figure[1, 2] = life.Lifeless; Figure[2, 0] = life.Lifeless; Figure[2, 1] = life.Lifeless; Figure[2, 2] = life.Lifeless; } if (value == "X") { Figure[0, 0] = life.Lifeless; Figure[0, 1] = dead.Dead; Figure[0, 2] = life.Lifeless; Figure[1, 0] = life.Lifeless; Figure[1, 1] = life.Lifeless; Figure[1, 2] = life.Lifeless; Figure[2, 0] = life.Lifeless; Figure[2, 1] = dead.Dead; Figure[2, 2] = life.Lifeless; } if (value == "Plus") { Figure[0, 0] = dead.Dead; Figure[0, 1] = life.Lifeless; Figure[0, 2] = dead.Dead; Figure[1, 0] = life.Lifeless; Figure[1, 1] = life.Lifeless; Figure[1, 2] = life.Lifeless; Figure[2, 0] = dead.Dead; Figure[2, 1] = life.Lifeless; Figure[2, 2] = dead.Dead; } for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { Map[50 + i, 50 + j] = Figure[i, j]; } } }
public static void DrawFigure(string value) { Lifeless life = new Lifeless(); Dead dead = new Dead(); if (value == "Korabl") { Figure[0, 0] = life.Lifeless; Figure[0, 1] = life.Lifeless; Figure[0, 2] = dead.Dead; Figure[1, 0] = life.Lifeless; Figure[1, 1] = dead.Dead; Figure[1, 2] = life.Lifeless; Figure[2, 0] = dead.Dead; Figure[2, 1] = life.Lifeless; Figure[2, 2] = life.Lifeless; } if (value == "X") { Figure[0, 0] = dead.Dead; Figure[0, 1] = life.Lifeless; Figure[0, 2] = dead.Dead; Figure[1, 0] = life.Lifeless; Figure[1, 1] = dead.Dead; Figure[1, 2] = life.Lifeless; Figure[2, 0] = dead.Dead; Figure[2, 1] = life.Lifeless; Figure[2, 2] = life.Lifeless; } if (value == "Plus") { Figure[0, 0] = dead.Dead; Figure[0, 1] = life.Lifeless; Figure[0, 2] = dead.Dead; Figure[1, 0] = life.Lifeless; Figure[1, 1] = life.Lifeless; Figure[1, 2] = life.Lifeless; Figure[2, 0] = dead.Dead; Figure[2, 1] = life.Lifeless; Figure[2, 2] = dead.Dead; } for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { Map[7, 7] = Figure[0, 0]; Map[7, 8] = Figure[0, 1]; Map[7, 9] = Figure[0, 2]; Map[8, 7] = Figure[1, 0]; Map[8, 8] = Figure[1, 1]; Map[8, 9] = Figure[1, 2]; Map[9, 7] = Figure[2, 0]; Map[9, 8] = Figure[2, 1]; Map[9, 9] = Figure[2, 2]; } } }
private void Form1_Load(object sender, EventArgs e) { Lifeless life = new Lifeless(); Dead dead = new Dead(); int countOfDead = 0; while (countOfDead != 100) { for (int i = 0; i < Map.GetLength(0); i++) { for (int j = 0; j < Map.GetLength(1); j++) { if (Map[i, j] == dead.Dead) { MapTemp[i, j] = Map[i, j]; } if (Map[i, j] == life.Lifeless) { if (i > 0 && i < 99 && j > 0 && j < 99) { MiniMash[0, 0] = Map[i - 1, j - 1]; MiniMash[0, 1] = Map[i, j - 1]; MiniMash[0, 2] = Map[i + 1, j - 1]; MiniMash[1, 0] = Map[i - 1, j]; MiniMash[1, 1] = Map[i, j]; MiniMash[1, 2] = Map[i + 1, j]; MiniMash[2, 0] = Map[i - 1, j + 1]; MiniMash[2, 1] = Map[i, j + 1]; MiniMash[2, 2] = Map[i + 1, j + 1]; RewriteToSeconsArr.Checkking(MiniMash, ref MapTemp, i, j); } } } } Map = MapTemp; countOfDead++; } }
private void button1_Click(object sender, EventArgs e) { Lifeless life = new Lifeless(); Dead dead = new Dead(); for (int i = 0; i < Map.GetUpperBound(0) + 1; i++) { for (int j = 0; j < Map.GetUpperBound(0) + 1; j++) { Map[i, j] = dead.Dead; } } //We maked our map all dead if (comboBox1.AccessibilityObject.Value == "Rectangle") { DrawFigure(comboBox1.AccessibilityObject.Value); } if (comboBox1.AccessibilityObject.Value == "X") { DrawFigure(comboBox1.AccessibilityObject.Value); } if (comboBox1.AccessibilityObject.Value == "Plus") { DrawFigure(comboBox1.AccessibilityObject.Value); } //Later we can add new figures do { for (int i = 0; i < Map.GetUpperBound(0) + 1; i++) { for (int j = 0; j < Map.GetUpperBound(0) + 1; j++) { if (Map[i, j] == dead.Dead) { MapTemp[i, j] = Map[i, j]; } if (Map[i, j] == life.Lifeless) { if (i > 0 && i < 100 && j > 0 && j < 100) { MiniMash[0, 0] = Map[i - 1, j - 1]; MiniMash[0, 1] = Map[i, j - 1]; MiniMash[0, 2] = Map[i + 1, j - 1]; MiniMash[1, 0] = Map[i - 1, j]; MiniMash[1, 1] = Map[i, j]; MiniMash[1, 2] = Map[i + 1, j]; MiniMash[2, 0] = Map[i - 1, j + 1]; MiniMash[2, 1] = Map[i, j + 1]; MiniMash[2, 2] = Map[i + 1, j + 1]; RewriteToSeconsArr.Checkking(MiniMash, ref MapTemp, i, j); } } } } } while (true);//Условия на конец(все мертвое,все статическое,все повторяеться) }
public static void Checkking(int[,] miniMash, ref int[,] mapTemp, int x, int y) { int count = -1; Lifeless life = new Lifeless(); Dead dead = new Dead(); for (int i = 0; i < 3; i++) { for (int k = 0; k < 3; k++) { if (miniMash[i, k] == life.Lifeless) { count++; } } } if (count == 3) { Random rnd = new Random(); int r = rnd.Next(3); int r2 = rnd.Next(3); do { r2 = rnd.Next(3); if (miniMash[r, r2] == dead.Dead) { miniMash[r, r2] = life.Lifeless; break; } } while (true); } if (count != 2 && count != 3) { mapTemp[x, y] = dead.Dead; } mapTemp[x - 1, y - 1] = miniMash[0, 0]; mapTemp[x, y - 1] = miniMash[0, 1]; mapTemp[x + 1, y - 1] = miniMash[0, 2]; mapTemp[x - 1, y] = miniMash[1, 0]; mapTemp[x, y] = miniMash[1, 1]; mapTemp[x + 1, y] = miniMash[1, 2]; mapTemp[x - 1, y + 1] = miniMash[2, 0]; mapTemp[x, y + 1] = miniMash[2, 1]; mapTemp[x + 1, y + 1] = miniMash[2, 2]; }
private void button1_Click(object sender, EventArgs e) { Lifeless life = new Lifeless(); Dead dead = new Dead(); int count = 0; // Form1_Load(sender, e); int y = 0; //We maked our map all dead DrawFigure(comboBox1.AccessibilityObject.Value); int countOfDead = 0; for (int i = 0; i < Map.GetLength(0); i++) { for (int j = 0; j < Map.GetLength(1); j++) { count++; PictureBox pb2 = new PictureBox(); pb2.BorderStyle = BorderStyle.FixedSingle; pb2.Size = new System.Drawing.Size(10, 10); if (Map[i, j] == 0) { pb2.BackColor = Color.Black; } else { pb2.BackColor = Color.White; } pb2.Location = new System.Drawing.Point(pb2.Location.X + (count * 10), pb2.Location.Y + y); pb[j] = pb2; Controls.Add(pb[j]); } Thread.Sleep(1000); y += 10; count = 0; } // while (countOfDead != Map.Length) // { // for (int i = 0; i < Map.GetLength(0); i++) // { // for (int j = 0; j < Map.GetLength(1); j++) // { // if (Map[i, j] == dead.Dead) // { // MapTemp[i, j] = Map[i, j]; // } // if (Map[i, j] == life.Lifeless) // { // int IMin = i - 1; // if (IMin == -1) // { // IMin = 15; // } // int IMax = i + 1; // if (IMin == 16) // { // IMin = 0; // } // int JMin = j - 1; // if (JMin == -1) // { // JMin = 15; // } // int JMax = j + 1; // if (JMin == 16) // { // JMin = 0; // }//Maked world like Ellipse // MiniMash[0, 0] = Map[IMin, JMin]; MiniMash[0, 1] = Map[i, JMin]; MiniMash[0, 2] = Map[IMax, JMin]; // MiniMash[1, 0] = Map[IMin, j]; MiniMash[1, 1] = Map[i, j]; MiniMash[1, 2] = Map[IMax, j]; // MiniMash[2, 0] = Map[IMin, JMax]; MiniMash[2, 1] = Map[i, JMax]; MiniMash[2, 2] = Map[IMax, JMax]; // RewriteToSeconsArr.Checkking(MiniMash, ref MapTemp, i, j); // } // } // } // } // for (int i = 0; i < Map.Length; i++) // { // for (int j = 0; j < Map.Length; j++) // { // count++; // PictureBox pb2 = new PictureBox(); // pb2.BorderStyle = BorderStyle.FixedSingle; // pb2.Size = new System.Drawing.Size(10, 10); // if (Map[i, j] == 0) // { // pb2.BackColor = Color.Black; // } // else // { // pb2.BackColor = Color.White; // } // pb2.Location = new System.Drawing.Point(pb2.Location.X + (count * 10), pb2.Location.Y + y); // pb[j] = pb2; Controls.Add(pb[j]); // } // y += 10; // count = 0; // } // Thread.Sleep(1000); // y = 0; // Map = MapTemp; // countOfDead++; //} }
private void button1_Click(object sender, EventArgs e) { Lifeless life = new Lifeless(); Dead dead = new Dead(); int count = 0; int y = 0; for (int i = 0; i < 10; i++) { for (int j = 0; j < 10; j++) { count++; PictureBox pb2 = new PictureBox(); pb2.BorderStyle = BorderStyle.FixedSingle; pb2.Size = new System.Drawing.Size(10, 10); if (j % 2 == 0) { pb2.BackColor = Color.Blue; } else { pb2.BackColor = Color.White; } pb2.Location = new System.Drawing.Point(pb2.Location.X + (count * 10), pb2.Location.Y + y); pb[j] = pb2; Controls.Add(pb[j]); } y += 10; count = 0; } for (int i = 0; i < Map.GetUpperBound(0) + 1; i++) { for (int j = 0; j < Map.GetUpperBound(0) + 1; j++) { Map[i, j] = dead.Dead; } } //We maked our map all dead if (comboBox1.AccessibilityObject.Value == "Rectangle") { DrawFigure(comboBox1.AccessibilityObject.Value); } if (comboBox1.AccessibilityObject.Value == "X") { DrawFigure(comboBox1.AccessibilityObject.Value); } if (comboBox1.AccessibilityObject.Value == "Plus") { DrawFigure(comboBox1.AccessibilityObject.Value); } Form1_Load(sender, e); //Later we can add new figures //while (true) //{ // for (int i = 0; i < Map.GetLength(0); i++) // { // for (int j = 0; j < Map.GetLength(1); j++) // { // if (Map[i, j] == dead.Dead) // { // MapTemp[i, j] = Map[i, j]; // } // if (Map[i, j] == life.Lifeless) // { // if (i > 0 && i < 99 && j > 0 && j < 99) // { // MiniMash[0, 0] = Map[i - 1, j - 1]; MiniMash[0, 1] = Map[i, j - 1]; MiniMash[0, 2] = Map[i + 1, j - 1]; // MiniMash[1, 0] = Map[i - 1, j]; MiniMash[1, 1] = Map[i, j]; MiniMash[1, 2] = Map[i + 1, j]; // MiniMash[2, 0] = Map[i - 1, j + 1]; MiniMash[2, 1] = Map[i, j + 1]; MiniMash[2, 2] = Map[i + 1, j + 1]; // RewriteToSeconsArr.Checkking(MiniMash, ref MapTemp, i, j); // } // } // } // } // Map = MapTemp; // countOfDead++; //} }