mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-10 18:32:03 +00:00
Fixed buildmode hard del, mem leak (#27178)
This commit is contained in:
@@ -17,11 +17,7 @@
|
||||
holder = H
|
||||
break
|
||||
if(holder)
|
||||
holder.buildmode.copycat = null
|
||||
if(M.client.buildmode_objs && M.client.buildmode_objs.len)
|
||||
for(var/BM in M.client.buildmode_objs)
|
||||
qdel(BM)
|
||||
M.client.buildmode_objs.Cut()
|
||||
qdel(holder)
|
||||
else
|
||||
log_admin("[key_name(usr)] has entered build mode.")
|
||||
M.client.buildmode = 1
|
||||
@@ -34,7 +30,6 @@
|
||||
hold.buildquit = new /obj/effect/bmode/buildquit(hold)
|
||||
M.client.screen += list(hold.builddir,hold.buildhelp,hold.buildmode,hold.buildquit)
|
||||
hold.cl = M.client
|
||||
M.client.buildmode_objs |= list(hold,hold.builddir,hold.buildhelp,hold.buildmode,hold.buildquit)
|
||||
|
||||
/obj/effect/bmode//Cleaning up the tree a bit
|
||||
density = 1
|
||||
@@ -50,10 +45,10 @@
|
||||
master = loc
|
||||
|
||||
/obj/effect/bmode/Destroy()
|
||||
..()
|
||||
if(master && master.cl)
|
||||
master.cl.buildmode_objs &= ~src
|
||||
master.cl.screen -= src
|
||||
master = null
|
||||
..()
|
||||
|
||||
/obj/effect/bmode/builddir
|
||||
icon_state = "build"
|
||||
@@ -172,7 +167,6 @@ obj/effect/bmode/buildholder/New()
|
||||
/obj/effect/bmode/buildholder/Destroy()
|
||||
..()
|
||||
cl.screen -= list(builddir,buildhelp,buildmode,buildquit)
|
||||
cl.buildmode_objs &= ~list(builddir,buildhelp,buildmode,buildquit,src)
|
||||
cl.images -= buildmode.area_overlay
|
||||
buildmodeholders -= src
|
||||
|
||||
@@ -187,9 +181,12 @@ obj/effect/bmode/buildholder/New()
|
||||
|
||||
/obj/effect/bmode/buildmode/New()
|
||||
..()
|
||||
|
||||
area_overlay = image('icons/turf/areas.dmi', "yellow")
|
||||
|
||||
/obj/effect/bmode/buildmode/Destroy()
|
||||
copycat = null
|
||||
..()
|
||||
|
||||
/obj/effect/bmode/buildmode/Click(location, control, params)
|
||||
var/list/pa = params2list(params)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user