obj
Eevee_gun//again....don't ask why.....xD
icon = 'evee.dmi'
icon_state = "rest"
density = 1
var/Spatt = 0
var/Gowner = "nobody"
Bump(A)
if(ismob(A))
var/mob/M = A
var/damage = round(src.Spatt*5)
if(Gowner == A)
del(src)
if(damage <= 0)
world << "Missed"
if(damage >= 1)
M.hp -= damage
view(M) << "[M] was hit by Eevee gun for [damage] damage!!"
world << "Eevee gun done [damage] damage"
M.Death(M)
del(src)
if(istype(A,/turf/))
del(src)
if(istype(A,/obj/))
del(src)
Problem description:(This is a object of a ranged attack) Everything works...if it bumps in a turf or object it gets deleted but if it bumps a turf with a Enter() proc then it gets deleted but i also get a runtime error. I know it's because it tries to sent it to another location because of Enter() but i don't know how to fix it.
runtime error: Cannot modify null.loc.
proc name: Enter (/turf/grassb/Enter)
usr: 0
src: the grassb (10,1,2) (/turf/grassb)
call stack:
the grassb (10,1,2) (/turf/grassb): Enter(Eevee gun (/obj/Eevee_gun))
Eevee gun (/obj/Eevee_gun): Move(the grassb (10,1,2) (/turf/grassb), 2)
Also, there is an isturf() and isobj() proc, so you don't need to use istype() - slightly cleaner.