public void CambiarColor_Celulas(int color) { switch (color) { case 0: { Celulas.ColorCelula = Celulas.ColorBasico(Tema); Celulas.Aleatorio = true; break; } case 1: { Celulas.ColorCelula = Celulas.ColorPrincipal(); Celulas.Aleatorio = false; break; } case 2: { Celulas.ColorCelula = Celulas.ColorSecundario(); Celulas.Aleatorio = false; break; } case 3: { Celulas.ColorCelula = Celulas.ColorBasico(Tema); Celulas.Aleatorio = false; break; } } dibujar = true; ColorCelulas = color; }
private async void iniciar_Click(object sender, RoutedEventArgs e) { if (CancellationToken == null) { CancellationToken = new CancellationTokenSource(); aleatorio.IsEnabled = false; ajustes.IsEnabled = false; iniciar.IsEnabled = false; ResizeMode = ResizeMode.CanMinimize; await Celulas.IniciarJuego(Tablero.Children, CancellationToken.Token); } }
public async void DibujarTablero(int ancho, int alto) // dibujo el tablero { Aplicacion.Tablero.Children.Clear(); await Task.Run(() => { int aux = ancho / Celulas.Tamaño; aux = aux * Celulas.Espacio; ancho = ancho - aux; int filas = ancho / Celulas.Tamaño; alto = alto - (int)Aplicacion.Principal.RowDefinitions[2].ActualHeight; aux = alto / Celulas.Tamaño; aux = aux * Celulas.Espacio; alto = alto - aux; int columnas = alto / Celulas.Tamaño; int num1 = Celulas.Espacio; int num2 = Celulas.Espacio; Celulas.CrearCelulas(columnas, filas); for (int j = 0; j < filas; j++) { for (int i = 0; i < columnas - 1; i++) { Aplicacion.Dispatcher.Invoke(() => { Rectangle celula = new Rectangle(); celula.SetPosition(i, j); celula.HorizontalAlignment = HorizontalAlignment.Left; celula.VerticalAlignment = VerticalAlignment.Top; celula.Height = Celulas.Tamaño; celula.Width = Celulas.Tamaño; celula.Stroke = Celulas.ColorBorde(); celula.Margin = new Thickness(num2, num1, 0, 0); celula.Fill = Celulas.ColorRelleno(); celula.MouseLeftButtonDown += MainWindow.Celula_Click; Aplicacion.Tablero.Children.Add(celula); }); num1 += Celulas.Tamaño + Celulas.Espacio; } num1 = Celulas.Espacio; num2 += Celulas.Tamaño + Celulas.Espacio; } }); }
private void aleatorio_Click(object sender, RoutedEventArgs e) { Celulas.SetStates(Tablero.Children); }
private void detener_Click(object sender, RoutedEventArgs e) { pausar_Click(sender, e); Celulas.SetStates(false, Tablero.Children); }