public static void TextoDecorado(string[] texto, int numEstrellas) { Estrella[] estrellas = new Estrella[numEstrellas]; bool terminado = false; //Generar datos for (int i = 0; i < estrellas.Length; i++) { estrellas[i].x = generador.Next(0, 80); estrellas[i].y = generador.Next(0, 20); estrellas[i].incX = (generador.Next(0, 2) == 0) ? 1 : -1; estrellas[i].incY = (generador.Next(0, 2) == 0) ? 1 : -1; } //Bucle bolas con texto while(!terminado) { Console.ForegroundColor = ConsoleColor.DarkCyan; for (int i = 0; i < estrellas.Length; i++) { //Borrar e Incremento posición Console.SetCursorPosition(estrellas[i].x, estrellas[i].y); Console.Write(" "); estrellas[i].x += estrellas[i].incX; estrellas[i].y += estrellas[i].incY; //Detectar colisión y rebote if (estrellas[i].x < 0 || estrellas[i].x > 79) { estrellas[i].incX *= -1; estrellas[i].x += estrellas[i].incX; } if (estrellas[i].y < 0 || estrellas[i].y > 22) { estrellas[i].incY *= -1; estrellas[i].y += estrellas[i].incY; } //Pintar Console.SetCursorPosition(estrellas[i].x, estrellas[i].y); Console.Write("*"); } Console.ForegroundColor = ConsoleColor.Yellow; for (int i = 0; i < texto.Length; i++) { Console.SetCursorPosition(20, 12 - (texto.Length / 2)+i); Console.Write(texto[i]); } Console.SetCursorPosition(0, 23); Console.Write("Pulsa una tecla para continuar..."); if (Console.KeyAvailable) { Console.ReadKey(); terminado = true; } System.Threading.Thread.Sleep(20); } }
static void Main(string[] args) { List <Paint> lista = new List <Paint>(); ///Generamos los objetos de las clases de forma /// var corazon = new Corazon(); var estrella = new Estrella(); var rayo = new Rayo(); /// /// Añadimos los valores correspondientes a cada atributo de los objetos corazon.Borde = "negro"; corazon.Fondo = "rojo"; estrella.Borde = "amarillo"; estrella.Fondo = "blanco"; rayo.Borde = "negro"; rayo.Fondo = "amarillo"; /// /// Añadimos los objetos a la list lista lista.Add(corazon); lista.Add(estrella); lista.Add(rayo); ///Generamos el objeto salida, el comprobador de si alguien indica la salida /// var salida = new Output(Console.ReadLine, Console.WriteLine); /// /// Declaramos la variable exit como falsa var exit = false; do { /// /// Recorre la lista de objetos foreach (var forma in lista) { forma.ImprimirForma(); /// /// Imprime las características de las formas con el método ImprimirForma declarado en la clase Paint } /// /// Comprobante de que si después de imprimir las caracteristicas se escribe exit el valor de exit pasa a ser true exit = salida.Read() == "exit"; } while (!exit); /// /// Realiza el bucle de impresión mientras no se escriba salida }
private void btnAgregarEstrella_Click(object sender, EventArgs e) { if (txtNombreEstrella.Text != String.Empty && txtOrbitaEstrella.Text != String.Empty && numRotacionEstrella.Value > 0 && numPlanetas.Value >= 0 && cmbClase.Text != String.Empty) { estrella = new Estrella(int.Parse(txtOrbitaEstrella.Text), (int)numRotacionEstrella.Value, txtNombreEstrella.Text, (int)numPlanetas.Value, (Clase)cmbClase.SelectedItem); MessageBox.Show("Estrella cargada correctamente.", "OK", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } else { MessageBox.Show("No se pudo cargar la estrella. Asegurese de completar todos los campos.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void CrearEstrellas() { float radioGalaxia = galaxia.Tamanio.Length; float densidadEstrellas = (radioGalaxia - Centro.Length) / radioGalaxia; densidadEstrellas = densidadEstrellas * densidadEstrellas; int cantEstrellas = CantidadMinimaEstrellas + (int)((CantidadMaximaEstrellas - CantidadMinimaEstrellas) * densidadEstrellas); estrellas = new Estrella[cantEstrellas]; for (int i = 0; i < cantEstrellas; i++) { Estrella e = new Estrella(); e.posicion.X = rnd.Next((int)(centro.X - tamanio.X / 2.0f), (int)(centro.X + tamanio.X / 2.0f)); e.posicion.Y = rnd.Next((int)(centro.Y - tamanio.Y / 2.0f), (int)(centro.Y + tamanio.Y / 2.0f)); e.radius = rnd.Next(2000, 4000) / 1000.0f; switch (rnd.Next(4)) { case 0: e.color = Color.RoyalBlue; break; case 1: e.color = Color.Violet; break; case 2: e.color = Color.LightGray; break; case 3: e.color = Color.Yellow; break; } estrellas[i] = e; } }