Bueno, tengo un problema haciendo un RPG con algunas variables. Tengo un objeto jugador (llamado obj_player) que tiene este codigo:
Citar
En el evento create:
[gml]
xp=0
max_xp=100
[/gml]
CitarEn el evento step:
[gml]
if xp>max_xp
{
level+=1;
xp=0
}
if level=1
{
continue;
}
if level=2
{
max_xp=120
}
else
if level=3
{
max_xp=200
}
else
if level=4
{
max_xp=240
}
else
if level=5
{
max_xp=320
}
else
if level=6
{
max_xp=400
}
else
if...
[/gml]
Y en un objeto aparte:
Citar
En el evento step:
[gml]
global.exp_para_terminar=obj_player.max_xp-obj_player.xp
global.exp_acumulada=global.xp
[/gml]
Lo que pasa es que en la pantalla de menu quisiera que se ponga la exp acumulada, es decir, la de todos los niveles, pero se me reinicia a 0 cada vez que avanza de nivel, como soluciono eso? ???
y no seria mas f?cil simplemente hacer que a la experiencia m?xima se le sumen 80 cada nivel?, en lugar de usar much?simos IFs algo as?.
[gml]
if xp>max_xp
{
level+=1;
xp=0
max_xp+=80
}
//la experiencia inicial es 100 mas 80 que se suman cada nivel mas la experiencia de este nivel
global.exp_acumulada=100+(level*80)+xp
[/gml]
tambi?n puedes multiplicarlo por 1.5 en lugar de sumarle 80 claro la operaci?n para global.exp_acumulada seria distinta.
pero si quieres seguir usando tu m?todo puedes hacer que cada vez que se sume algo a xp se le sume la misma cantidad a global.exp_acumulada.
Tambi?n puedes usar un array para guardar la experiencia total de cada nivel te ahorarias muchos IFs.