Skip to content

Instantly share code, notes, and snippets.

@SebastianCastilloDev
Created September 12, 2023 20:41
Show Gist options
  • Save SebastianCastilloDev/c668ca574ae96b66a94610281479ebdc to your computer and use it in GitHub Desktop.
Save SebastianCastilloDev/c668ca574ae96b66a94610281479ebdc to your computer and use it in GitHub Desktop.
figuras en consola c#
using System.Globalization;
Console.Clear();
Console.CursorVisible = false;
Lineas();
PintarRecuadro(ConsoleColor.White,3,1,18,5);
PintarRecuadro(ConsoleColor.Magenta,3,7,19,7);
PintarRecuadro(ConsoleColor.DarkBlue,25,1,31,5);
PintarRecuadro(ConsoleColor.Black, 25,7,31,7);
TituloMaquina();
MenuDeOpciones();
Tirada();
//Rectangulo(4,4,5,3);
// while(Console.ReadKey().Key==ConsoleKey.D1) {
// AnimacionMaquina();
// Tirada();
// }
void AnimacionMaquina(){
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
string[] caracteresMaquina = new string[5] {"#","%","&","$","X"};
int veces = 4;
while(veces > 0) {
foreach(string simbolo in caracteresMaquina) {
Console.BackgroundColor = ConsoleColor.Yellow;
//Console.ForegroundColor = ConsoleColor.Yellow;
MaquinaDeEscribir(simbolo,7+5*i,8+2*j,3);
}
veces--;
}
}
}
}
PintarRecuadro(ConsoleColor.Yellow, 70,1,60,15);
RectanguloColor(ConsoleColor.DarkBlue, 70,1,60,15);
RectanguloColor(ConsoleColor.Blue, 100,2,1,13);
RectanguloColor(ConsoleColor.Red, 71,7,58,1);
void RectanguloColor(ConsoleColor color, int x, int y, int largoX, int largoY) {
PintarRecuadro(color, x, y, largoX, 1);
PintarRecuadro(color, x, y+largoY-1, largoX, 1);
PintarRecuadro(color, x, y, 1, largoY);
PintarRecuadro(color, x+largoX-1, y, 1, largoY);
}
void PintarRecuadro(ConsoleColor color, int x, int y, int largoX, int largoY){
Console.BackgroundColor = color;
for (int i = 0; i < largoX; i++) {
for (int j = 0; j < largoY; j++) {
MaquinaDeEscribir(" ",x+i,j+y,0);
}
}
}
void Tirada() {
PintarRecuadro(ConsoleColor.Black, 25,7,31,7);
Console.BackgroundColor = ConsoleColor.Magenta;
int velocidad = 0;
int tirada = NumeroAleatorio(1,4);
int apuesta = 2;
int saldo = 10000;
int incremento = 1000;
int decremento = 800;
if (tirada == apuesta) {
MaquinaDeEscribir("Has Ganado! Tirada = " + tirada, 26+4,8,velocidad);
MaquinaDeEscribir("Se han sumado " + incremento.ToString() + " a tu saldo", 26,10,velocidad);
MaquinaDeEscribir("Tu saldo es: " + saldo, 29,12,velocidad);
}else{
saldo -= decremento;
MaquinaDeEscribir("Has perdido! Tirada = " + tirada, 26+4,8,velocidad);
MaquinaDeEscribir("Se han restado " + decremento + " de tu saldo", 26,10,velocidad);
MaquinaDeEscribir("Tu saldo es: " + saldo, 29+3,12,velocidad);
}
}
void Lineas() {
Console.ForegroundColor = ConsoleColor.Cyan;
LineaHorizontal(46+10,2,0);
LineaHorizontal(46+10,2,6);
LineaVertical(10-1+6,2,0);
LineaVertical(10-1+6,23,0);
LineaHorizontal(46+10,2,14);
LineaVertical(10-1+6,47+10,0);
Console.ForegroundColor = ConsoleColor.White;
}
void TituloMaquina() {
Console.ForegroundColor = ConsoleColor.DarkBlue;
MaquinaDeEscribir("M A Q U I N A",7,2,0);
MaquinaDeEscribir("TRAGAMONEDAS",7,4,0);
Console.ForegroundColor = ConsoleColor.White;
}
void MenuDeOpciones() {
Console.ForegroundColor = ConsoleColor.DarkRed;
MaquinaDeEscribir("1.- Tirar la palanca",26+5,2,0);
MaquinaDeEscribir("2.- Retirarse",26+5,4,0);
Console.ForegroundColor = ConsoleColor.White;
}
void Rectangulo(int x, int y, int largoX, int largoY){
LineaVertical(largoY,x,y);
LineaVertical(largoY,x+largoX-1,y);
LineaHorizontal(largoX,x,y);
LineaHorizontal(largoX,x,y+largoY);
}
void MaquinaDeEscribir(string texto, int x, int y, int velocidad)
{
for (int i = 0; i < texto.Length; i++)
{
EscribirEn(Convert.ToString(texto[i]), x+i, y);
Thread.Sleep(velocidad);
}
}
int NumeroAleatorio(int a, int b)
{
Random random = new Random();
return random.Next(a, b+1);
}
Console.SetCursorPosition(0, 45);
void LineaHorizontal(int largo, int x , int y)
{
for (int i = 0; i < largo; i++)
{
EscribirEn("*", i+x,y);
}
}
void LineaVertical(int largo, int x, int y)
{
for (int i = 0; i < largo; i++)
{
EscribirEn("*",x,i+y);
}
}
void EscribirEn (string caracter, int x , int y)
{
Console.SetCursorPosition(x,y);
Console.Write(caracter);
}
// LineaHorizontal(100, 4, 2);
// LineaHorizontal(100, 4, 10);
// LineaHorizontal(50, 53, 25);
// LineaHorizontal(100, 4, 41);
// LineaVertical(40, 4, 2);
// LineaVertical(40, 103, 2);
// LineaVertical(32, 53, 10);
// MaquinaDeEscribir("$$ B i e n v e n i d o a B a n c o T O W A L B A N K $$".ToUpper(),28, 6,30);
// MaquinaDeEscribir("M E N U", 25, 15,15);
// MaquinaDeEscribir("1.Deposito ", 10, 19,15);
// MaquinaDeEscribir("2.Retiro ", 10, 22,15);
// MaquinaDeEscribir("3.Consultar Saldo ", 10, 25,15);
// MaquinaDeEscribir("4.Mostrar informacion de la cuenta ", 10, 28,15);
// MaquinaDeEscribir("5.Salir ", 10, 31,15);
// MaquinaDeEscribir("CARGANDO", 73, 18, 15);
// MaquinaDeEscribir("...", 81, 18, 200);
// MaquinaDeEscribir(" ", 81, 18, 0);
// MaquinaDeEscribir("...", 81, 18, 200);
// MaquinaDeEscribir(" ", 81, 18, 0);
// MaquinaDeEscribir("...", 81, 18, 200);
// MaquinaDeEscribir(" ", 81, 18, 0);
// MaquinaDeEscribir("...", 81, 18, 200);
// MaquinaDeEscribir(" ", 81, 18, 0);
// MaquinaDeEscribir(" ", 73, 18, 0);
// MaquinaDeEscribir("DATOS DE LA CUENTA", 70, 12,15);
// MaquinaDeEscribir("NOMBRE: Cristobal ", 60, 14,15);
// MaquinaDeEscribir("APELLIDO: Storme", 60, 16,15);
// MaquinaDeEscribir("RUT: 18.392.855 - 4", 60, 18,15);
// MaquinaDeEscribir("DIRECCION: Parque Central 6868 ", 60, 20,15);
// MaquinaDeEscribir("SALDO: $2000 ", 60, 22,15);
// MaquinaDeEscribir("..................CARGANDO.............", 60, 32, 60);
// MaquinaDeEscribir(" ", 60, 32, 0);
// MaquinaDeEscribir("..................CARGANDO.............", 60, 32, 60);
// MaquinaDeEscribir(" ", 60, 32, 0);
// MaquinaDeEscribir("RESULTADO DE LA OPERACION ", 65, 27,15);
// MaquinaDeEscribir("Se ha realizado con exito desposito : ", 60, 29,15);
// MaquinaDeEscribir("Se ha abonado : $30000 ", 60, 31,15);
// MaquinaDeEscribir("Cuenta numero: " + Convert.ToString(NumeroAleatorio(1000000,9000000)), 60, 33,15);
// MaquinaDeEscribir("Numero de Operacion: " + Convert.ToString(NumeroAleatorio(1000000, 9000000)), 60, 35,15);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment