ID:268767
 
mob/proc/Levelup()
if(src.exp >= src.maxexp)
if(istype(src,/mob/person))
var/leftover = src.exp-src.maxexp
var/atkup = rand(1,6)
src.attack += atkup

var/defup = rand(1,6)
src.defense += defup

var/hpup = rand(10,25)
src.maxhealth += hpup

src.health = src.maxhealth
src.exp = 0
src.maxexp += rand(level+5,level+25)
src.level += 1
src.exp += leftover
Levelup()
src << {"You have been promoted to Level [level]!
Attack +
[atkup]
Defense +
[defup]
Max Health +
[hpup]"}
else
..()


Long story short, enough EXP, no Level Up.
Mega fart cannon wrote:
Long story short, enough EXP, no Level Up.

Conclusion? istype(src,/mob/person) returns false.

Thus, the player isn't a /mob/person.
Mega fart cannon wrote:
> mob/proc/Levelup()
> if(src.exp >= src.maxexp)
> if(istype(src,/mob/person))
> var/leftover = src.exp-src.maxexp
> var/atkup = rand(1,6)
> src.attack += atkup
>
> var/defup = rand(1,6)
> src.defense += defup
>
> var/hpup = rand(10,25)
> src.maxhealth += hpup
>
> src.health = src.maxhealth
> src.exp = 0
> src.maxexp += rand(level+5,level+25)
> src.level += 1
> src.exp += leftover
> Levelup()
> src << {"You have been promoted to Level [level]!
> Attack +
[atkup]
> Defense +
[defup]
> Max Health +
[hpup]"}
> else
> ..()
>

Long story short, enough EXP, no Level Up.

You should make the HP based on your STR and DEF.