mob
proc
LOGIN()
//src.overlays.Cut()
var/listy=list()
for(var/obj/pickup/O in src.contents)
if(O.is_equipped)
listy+=O
O.Unequip(src)
for(var/obj/pickup/O in listy)
O.Equip(src)
listy-=O
loadme()
if(!src)return
if(fexists("players/[src.key]"))
var/savefile/load
load = new ("players/[src.key]")
load["mob"] >> src
load["x"] >> src.x
load["y"] >> src.y
load["z"] >> src.z
src.LOGIN()
saveme()
var/savefile/save
save = new ("players/[src.key]")
save["mob"] << src
//save["overlays"] << null
save["x"] << src.x
save["y"] << src.y
save["z"] << src.z
client
Del()
if(!src.mob)
return ..()
else
//src.mob.overlays.Cut()
src.mob.saveme()
del(mob)
return ..()
ISSUE:
Overlays are blended onto icon.
Only way to stop overlays from blending into icon is to remove upon client/Del()?
I tried plugging 'save["overlays"] << null' into saveme(). Does not work.
Is this due to 'save["mob"] << src'? If so, how do I workaround(without hardcoding every single var)?
If I add 'src.overlays.Cut()' to the beginning of LOGIN(), before var/listy, then no overlays are added back
onto icon when for() procs run.
EDIT:
Equip(mob/M)/Unequip(mob/M) uses M.overlays+=image(...) and is given layer=MOB_LAYER+1