This is a part of my code:
if (direccion.Equals("este"))
{
System.Timers.Timer trampa = new System.Timers.Timer();
trampa.Elapsed += new ElapsedEventHandler(OnTimedEvent);
trampa.Interval = 2000;
trampa.Enabled = true;
Console.WriteLine("Te encuentras con una granja abandonada, al entrar a la misma, te das cuenta que hay un cofre al final del pasillo principal.");
Console.WriteLine("Al acercarte al pasillo, sientes que el piso se mueve.");
Console.ReadLine();
}
}
Problem being that OnTimedEvent never gets executed, I think the timer is not working or at least not properly.
private static void OnTimedEvent(object sender, ElapsedEventArgs e)
{
Random frn = new Random();
int ran = frn.Next(1, 4);
System.Timers.Timer caida = new System.Timers.Timer();
caida.Elapsed += new ElapsedEventHandler(OnTimedEvent2);
var direccion = Console.ReadLine();
Console.WriteLine("¡La madera del piso esta extremadamente podrida y se despedaza hacia un abismo!");
switch (ran)
{
case 1:
caida.Interval = 2500;
caida.Enabled = true;
Console.WriteLine("¡Salta hacia ADELANTE para evitar caerte!");
if (direccion.Equals("adelante"))
{
Console.WriteLine("Saltaste hacia adelante, sin embargo, estas atrapado entre el abismo y el cofre.");
Console.WriteLine("Despues de esperar varios dias por rescate, mueres por deshidratacion.");
Console.ReadLine();
caida.Enabled = false;
}
else
{
Console.WriteLine("No saltaste donde debias y caiste al abismo.");
Console.ReadLine();
}
break;
case 2:
caida.Interval = 2000;
caida.Enabled = true;
Console.WriteLine("¡Salta hacia ATRAS para evitar caerte!");
if (direccion.Equals("atras"))
{
Console.WriteLine("Saltaste hacia atrás, evitando asi caerte, sin embargo ahora no puedes alcanzar el cofre.");
Console.WriteLine("Vuelves a casa con las manos vacias.");
Console.ReadLine();
caida.Enabled = false;
}
else
{
Console.WriteLine("No saltaste donde debias y caiste al abismo.");
Console.ReadLine();
}
break;
case 3:
caida.Interval = 2000;
caida.Enabled = true;
Console.WriteLine("¡Salta hacia IZQUIERDA para evitar caerte!");
if (direccion.Equals("izquierda"))
{
Console.WriteLine("Saltas hacia la izquierda, sin embargo, ahora no puedes alcanzar el cofre.");
Console.WriteLine("Bordeas el agujero del abismo y luego te devuelves a casa con las manos vacias.");
Console.ReadLine();
caida.Enabled = false;
}
else
{
Console.WriteLine("No saltaste donde debias y caiste al abismo.");
Console.ReadLine();
}
break;
}
}
private static void OnTimedEvent2(object sender, ElapsedEventArgs e)
{
Console.WriteLine("X Y Z");
}