Hola, buenas a todos, he estado probando de hacer un sistema de niveles, he conseguido dar puntos de habilidad a diferentes habilidades como puede ser el HP para tener mas vida, etc.. Ahora quería hacer que cuando subas de nivel te de 3 puntos de resto (para luego subir tus habilidades).
por el momento tengo esto:
if nivel_jugador = 1 {global.puntos_de_habilidad_restantes += 3;}
if nivel_jugador = 2 {global.puntos_de_habilidad_restantes += 3;}
if nivel_jugador = 3 {global.puntos_de_habilidad_restantes += 3;}
if nivel_jugador = 4 {global.puntos_de_habilidad_restantes += 3;}
if nivel_jugador = 5 {global.puntos_de_habilidad_restantes += 3;}
if nivel_jugador = 6 {global.puntos_de_habilidad_restantes += 3;}
if nivel_jugador = 7 {global.puntos_de_habilidad_restantes += 3;}
if nivel_jugador = 8 {global.puntos_de_habilidad_restantes += 3;}
if nivel_jugador = 9 {global.puntos_de_habilidad_restantes += 3;}
if nivel_jugador = 10 {global.puntos_de_habilidad_restantes += 3;}
El problema esta en que siendo el nivel que seas constantemente te esta dando 3 puntos de habilidad, el motivo se que es porque detecta que mi personaje por ejemplo es nivel 5 y al detectar que es nivel 5 me da los puntos constantemente que es lo que yo he pedido, pero no se como hacer para que solo te los de 1 vez.
Y otra pregunta es si por ejemplo tengo 100 nieveles, tengo que escribir los 100 o puedo hacer un comando que básicamente cada nivel que suba me de "x" cosas porque lo único que quiero darle al jugador cuando suba de nivel son los 3 puntos de habilidad.
Muchísimas gracias de antemano! :)
Prueba esto al recibir la experiencia:
if(experiencia>pow(nivel+1,2) && nivel<100){nivel++ bonus+=3}