Enemy Respawn in Developer Help
|
|
Code:
mob var isDead = FALSE
proc attack() flick("Attack",src) for(var/mob/M in get_step(src,src.dir)) if(M != src) var/Damage=rand(0,src.Str-M.Def) if(Damage <= 0) Damage = rand(1,5) view(M)<<"[src] hit [M] for [Damage] Damage!" M.TakeDamage(Damage,src)
DeathCheck()
TakeDamage(var/Damage,var/mob/Attacker) src.HP-=Damage src.DeathCheck(Attacker)
DeathCheck(mob/attacker)
player DeathCheck(mob/attacker) if(src.HP <= 0) if(isDead == TRUE) return view()<<"<b><font color=red>[attacker] killed [src]!</font></b>" src.HP = src.MaxHP src.MP = src.MaxMP src.Stamina = src.MaxStamina attacker.Kills += 1 src.Deaths += 1 src.loc = locate(9,3,1)
Enemies DeathCheck(mob/attacker) if(src.HP <= 0) attacker<<"<b><font color=red>You killed [src] for [src.Exp] exp and for [src.Gold] Gold" attacker.Exp += src.Exp attacker.LevelCheck() isDead = TRUE attacker.Gold += src.Gold src.Respawn()
|
Problem description: It doesnt let it respawn
mob/var/Respawn_Loc
mob/proc/Respawn() del src var/Old_Icon = icon icon = null density = 0 spawn(rand(60,120)) density = 1 icon = Old_Icon loc = Respawn_Loc Dead = 0
mob/New() ..() if(!client) Respawn_Loc = loc
|
|