private static Plansza Aktualizuj(Plansza plansza, Sasiedzi sasiedzi) { sasiedzi.Aktualizuj(); for (int x = 0; x < plansza.Szerokosc; x++) { for (int y = 0; y < plansza.Dlugosc; y++) { int liczbaSasiadow = sasiedzi.ZywiSasiedzi(x, y); if (!plansza.CzyZyje(x, y)) { if (liczbaSasiadow == 3) { plansza.Ozyj(x, y); } } else { if (liczbaSasiadow == 2 || liczbaSasiadow == 3) { plansza.Ozyj(x, y); } else { plansza.Usmierc(x, y); } } } } return(plansza); }
private void wyczyscButton_Click(object sender, EventArgs e) { timer1.Stop(); planszaPanel1.Plansza = null; plansza = null; sasiedzi = null; planszaPanel1.Refresh(); }
public Sasiedzi(Plansza plansza) { sasiedzi = new int[plansza.Dlugosc][]; for (int i = 0; i < plansza.Dlugosc; i++) { sasiedzi[i] = new int[plansza.Szerokosc]; } this.plansza = plansza; }
private void startButton_Click(object sender, EventArgs e) { if (plansza == null) { var wymiary = planszaPanel1.MaxWymairPlanszy(); plansza = new Plansza(wymiary.Item1, wymiary.Item2); sasiedzi = new Sasiedzi(plansza); int liczbaKomorek = int.Parse(liczbaKomorekTB.Text); plansza.Zaludnij(liczbaKomorek); planszaPanel1.Plansza = plansza; planszaPanel1.Refresh(); } timer1.Start(); }
protected override void OnPaint(PaintEventArgs e) { base.OnPaint(e); if (Plansza != null) { for (int y = 0; y < Plansza.Dlugosc; y++) { for (int x = 0; x < Plansza.Szerokosc; x++) { if (Plansza.CzyZyje(x, y)) { rysujKomorke(e.Graphics, x, y); } } } } }