Hola a todos.
Bueno he hecho un código en C# (!!! Fuera de unity !!!) , el problema es que tengo un if que no se como usarlo para que se salga de el si solo una de las condiciones sea 0 o menos.
He probado a usar un while pero tampoco. Claro lo que hacia era mientras vida1>0 o vida2>2 se repita claro esto no parara hasta que los dos sean 0 o negativos. Ese es el fallo (Me pregunto como se haría para que solo si fuera uno 0 o menos se parar)
Después probé el if, Si vida1> 0 || vida2>0 haga ... pero parte del código no acaba de ejecutarse. Es decir se va repitiendo todo correcto hasta que llega el momento que uno estará a 0 o menos, no acaba de hacer lo que quiero que haga y acaba el if como si ya hubiera acabado.
Bueno he hecho un código en C# (!!! Fuera de unity !!!) , el problema es que tengo un if que no se como usarlo para que se salga de el si solo una de las condiciones sea 0 o menos.
He probado a usar un while pero tampoco. Claro lo que hacia era mientras vida1>0 o vida2>2 se repita claro esto no parara hasta que los dos sean 0 o negativos. Ese es el fallo (Me pregunto como se haría para que solo si fuera uno 0 o menos se parar)
Después probé el if, Si vida1> 0 || vida2>0 haga ... pero parte del código no acaba de ejecutarse. Es decir se va repitiendo todo correcto hasta que llega el momento que uno estará a 0 o menos, no acaba de hacer lo que quiero que haga y acaba el if como si ya hubiera acabado.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication2
{
class Program
{
static void Main(string[] args)
{
byte Turno = 0;
int porcentageArmadura = 2;
//Personaje1
int vida1 = 200; //Vida del perosonaje o bicho.
int defensa1 = 50; //Cada 10 de armadura son - 5% menos de daño.
int daño1 = 100; // Daño fisico.
int dañomagico1 = 25; //Daño magico.
int velocidadA1 = 2; //Determina quien empiza primero.
//Personaje2
int vida2 = 150;
int defensa2 = 100;
int daño2 = 70;
int dañomagico2 = 10;
int velocidadA2 = 1;
if (velocidadA1 > velocidadA2){ Turno = 1; Console.WriteLine("P1 es mas rapido"); }else{ Turno = 2; Console.WriteLine("P2 es mas rapido"); }
if (vida1>0 || vida2>0) {
if (Turno==1) {
Console.WriteLine("P1 Vida: {0}",vida1);
Console.WriteLine("P2 Vida: {0}", vida2);
Console.WriteLine("P1 ATACA!!!");
Console.WriteLine("/////"); Console.WriteLine("/////"); Console.WriteLine("/////"); Console.WriteLine("/////");
int dañoCausado;
dañoCausado = daño1 + dañomagico1 - defensa2/porcentageArmadura;
Console.WriteLine("P1 le causa {0} de daño a P2",dañoCausado);
vida2 = vida2 - dañoCausado;
Console.WriteLine("P2 Vida: {0}", vida2);
dañoCausado = 0;
Turno = 2;
Console.WriteLine("/////"); Console.WriteLine("/////"); Console.WriteLine("/////"); Console.WriteLine("/////");
}
if (Turno == 2)
{
Console.WriteLine("P1 Vida: {0}", vida1);
Console.WriteLine("P2 Vida: {0}", vida2);
Console.WriteLine("P2 ATACA!!!");
Console.WriteLine("/////"); Console.WriteLine("/////"); Console.WriteLine("/////"); Console.WriteLine("/////");
int dañoCausado;
dañoCausado = daño2 + dañomagico2 - defensa1/porcentageArmadura;
Console.WriteLine("P2 le causa {0} de daño a P1", dañoCausado);
vida1 = vida1 - dañoCausado;
Console.WriteLine("P1 Vida: {0}", vida1);
dañoCausado = 0;
Turno = 1;
Console.WriteLine("/////"); Console.WriteLine("/////"); Console.WriteLine("/////"); Console.WriteLine("/////");
}
}
Console.ReadKey();
}
}
}
).