Garbage collection fixes

This commit is contained in:
ZomgPonies
2014-02-19 20:24:31 -05:00
parent d26777a0d9
commit 1ab8df4b13
141 changed files with 2310 additions and 2278 deletions
+1 -1
View File
@@ -283,7 +283,7 @@
return
return
/obj/effect/beam/i_beam/Del()
/obj/effect/beam/i_beam/Destroy()
del(next)
..()
return
+1 -1
View File
@@ -9,7 +9,7 @@
w_class = 5.0
flags = FPRINT | CONDUCT
/obj/item/assembly/shock_kit/Del()
/obj/item/assembly/shock_kit/Destroy()
del(part1)
del(part2)
..()
+1 -1
View File
@@ -119,7 +119,7 @@
goodbye_horses(loc)
..()
/obj/item/clothing/mask/horsehead/Del()
/obj/item/clothing/mask/horsehead/Destroy()
if(!canremove)
goodbye_horses(loc)
..()
+2 -2
View File
@@ -39,7 +39,7 @@
New()
return
Del()
Destroy()
if(master)
master.vines -= src
master.growth_queue -= src
@@ -128,7 +128,7 @@
spawn_spacevine_piece(src.loc)
processing_objects.Add(src)
Del()
Destroy()
processing_objects.Remove(src)
..()
+1 -1
View File
@@ -131,7 +131,7 @@ obj/effect/liquid/proc/apply_calculated_effect()
obj/effect/liquid/Move()
return 0
obj/effect/liquid/Del()
obj/effect/liquid/Destroy()
src.controller.liquid_objects.Remove(src)
..()
+1 -1
View File
@@ -89,7 +89,7 @@
swapmap.New()
Create a new map datum, but does not allocate space or assign an
ID (used for loading).
swapmap.Del()
swapmap.Destroy()
Deletes a map but does not save
swapmap.Save()
Saves to map_[id].sav
@@ -22,7 +22,7 @@
else
del(src)
/mob/living/carbon/alien/embryo/Del()
/mob/living/carbon/alien/embryo/Destroy()
if(affected_mob)
affected_mob.status_flags &= ~(XENO_HOST)
spawn(0)
@@ -15,7 +15,7 @@
R.my_atom = src
..()
Del()
Destroy()
if(key) //If there is a mob connected to this thing. Have to check key twice to avoid false death reporting.
if(stat!=DEAD) //If not dead.
death(1) //Brains can die again. AND THEY SHOULD AHA HA HA HA HA HA
@@ -20,7 +20,7 @@
..()
processing_objects.Add(src)
/obj/item/weapon/holder/Del()
/obj/item/weapon/holder/Destroy()
//Hopefully this will stop the icon from remaining on human mobs.
if(istype(loc,/mob/living))
var/mob/living/A = src.loc
+1 -1
View File
@@ -126,7 +126,7 @@ var/list/ai_list = list()
..()
return
/mob/living/silicon/ai/Del()
/mob/living/silicon/ai/Destroy()
ai_list -= src
..()
@@ -7,7 +7,7 @@ var/const/CHUNK_SIZE = 16 // Only chunk sizes that are to the power of 2. E.g: 2
var/datum/cameranet/cameranet = new()
/datum/cameranet
// The cameras on the map, no matter if they work or not. Updated in obj/machinery/camera.dm by New() and Del().
// The cameras on the map, no matter if they work or not. Updated in obj/machinery/camera.dm by New() and Destroy().
var/list/cameras = list()
// The chunks of the map, mapping the areas that the cameras can see.
var/list/chunks = list()
@@ -50,7 +50,7 @@
spawn(5)
eyeobj.loc = src.loc
/mob/living/silicon/ai/Del()
/mob/living/silicon/ai/Destroy()
eyeobj.ai = null
del(eyeobj) // No AI, no Eye
..()
@@ -20,7 +20,7 @@
HOW IT WORKS
It works by first creating a camera network datum. Inside of this camera network are "chunks" (which will be
explained later) and "cameras". The cameras list is kept up to date by obj/machinery/camera/New() and Del().
explained later) and "cameras". The cameras list is kept up to date by obj/machinery/camera/New() and Destroy().
Next the camera network has chunks. These chunks are a 16x16 tile block of turfs and cameras contained inside the chunk.
These turfs are then sorted out based on what the cameras can and cannot see. If none of the cameras can see the turf, inside
@@ -11,7 +11,7 @@
if(ticker)
cameranet.updateVisibility(src)
/turf/simulated/Del()
/turf/simulated/Destroy()
visibilityChanged()
..()
@@ -23,7 +23,7 @@
// STRUCTURES
/obj/structure/Del()
/obj/structure/Destroy()
if(ticker)
cameranet.updateVisibility(src)
..()
@@ -35,7 +35,7 @@
// EFFECTS
/obj/effect/Del()
/obj/effect/Destroy()
if(ticker)
cameranet.updateVisibility(src)
..()
@@ -93,7 +93,7 @@
if(open_networks.len) //If there is at least one open network, chunk is available for AI usage.
cameranet.addCamera(src)
/obj/machinery/camera/Del()
/obj/machinery/camera/Destroy()
cameranet.cameras -= src
var/list/open_networks = difflist(network,RESTRICTED_CAMERA_NETWORKS)
if(open_networks.len)
@@ -153,7 +153,7 @@
//If there's an MMI in the robot, have it ejected when the mob goes away. --NEO
//Improved /N
/mob/living/silicon/robot/Del()
/mob/living/silicon/robot/Destroy()
if(mmi)//Safety for when a cyborg gets dust()ed. Or there is no MMI inside.
var/turf/T = get_turf(loc)//To hopefully prevent run time errors.
if(T) mmi.loc = T
@@ -645,7 +645,7 @@
C.r_arm = new/obj/item/robot_parts/r_arm(C)
C.updateicon()
new/obj/item/robot_parts/chest(loc)
src.Del()
src.Destroy()
else
// Okay we're not removing the cell or an MMI, but maybe something else?
var/list/removable_components = list()
@@ -32,7 +32,7 @@
parent = new_parent
verbs -= /atom/movable/verb/pull
/mob/living/simple_animal/bee/Del()
/mob/living/simple_animal/bee/Destroy()
if(parent)
parent.owned_bee_swarms.Remove(src)
..()
@@ -187,7 +187,7 @@
src.name = "Spider-bot"
update_icon()
/mob/living/simple_animal/spiderbot/Del()
/mob/living/simple_animal/spiderbot/Destroy()
eject_brain()
..()
@@ -212,7 +212,7 @@
held_item = null
robogibs(src.loc, viruses)
src.Del()
src.Destroy()
return
//copy paste from alien/larva, if that func is updated please update this one also
@@ -161,7 +161,7 @@
..()
del(src)
/mob/living/simple_animal/hostile/retaliate/malf_drone/Del()
/mob/living/simple_animal/hostile/retaliate/malf_drone/Destroy()
//some random debris left behind
if(has_loot)
var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread
@@ -94,7 +94,7 @@
return
Del() //if a chunk a destroyed, make a new worm out of the split halves
Destroy() //if a chunk a destroyed, make a new worm out of the split halves
if(previous)
previous.Detach()
..()
+1 -1
View File
@@ -1,4 +1,4 @@
/mob/Del()//This makes sure that mobs with clients/keys are not just deleted from the game.
/mob/Destroy()//This makes sure that mobs with clients/keys are not just deleted from the game.
mob_list -= src
dead_mob_list -= src
living_mob_list -= src
+1 -1
View File
@@ -207,6 +207,6 @@
del(src)
/obj/item/weapon/grab/Del()
/obj/item/weapon/grab/Destroy()
del(hud)
..()
+1 -1
View File
@@ -35,7 +35,7 @@
linked_cores = list()
/obj/machinery/power/am_control_unit/Del()//Perhaps damage and run stability checks rather than just del on the others
/obj/machinery/power/am_control_unit/Destroy()//Perhaps damage and run stability checks rather than just del on the others
for(var/obj/machinery/am_shielding/AMS in linked_shielding)
del(AMS)
..()
+1 -1
View File
@@ -65,7 +65,7 @@ proc/cardinalrange(var/center)
return
/obj/machinery/am_shielding/Del()
/obj/machinery/am_shielding/Destroy()
if(control_unit) control_unit.remove_shielding(src)
if(processing) shutdown_core()
visible_message("\red The [src.name] melts!")
+2 -2
View File
@@ -1235,7 +1235,7 @@ obj/machinery/power/apc/proc/autoset(var/val, var/on)
switch(severity)
if(1.0)
//set_broken() //now Del() do what we need
//set_broken() //now Destroy() do what we need
if (cell)
cell.ex_act(1.0) // more lags woohoo
qdel(src)
@@ -1284,7 +1284,7 @@ obj/machinery/power/apc/proc/autoset(var/val, var/on)
L.broken()
sleep(1)
/obj/machinery/power/apc/Del()
/obj/machinery/power/apc/Destroy()
if(malfai && operating)
if (ticker.mode.config_tag == "malfunction")
if (src.z == 1) //if (is_type_in_list(get_area(src), the_station_areas))
+1 -1
View File
@@ -85,7 +85,7 @@
cable_list += src
/obj/structure/cable/Del() // called when a cable is deleted
/obj/structure/cable/Destroy() // called when a cable is deleted
if(!defer_powernet_rebuild) // set if network will be rebuilt manually
if(powernet)
powernet.cut_cable(src) // update the powernets
+1 -1
View File
@@ -253,7 +253,7 @@
spawn(1)
update(0)
/obj/machinery/light/Del()
/obj/machinery/light/Destroy()
var/area/A = get_area(src)
if(A)
on = 0
+1 -1
View File
@@ -122,7 +122,7 @@ display round(lastgen) and plasmatank amount
sheet_name = sheet.name
RefreshParts()
/obj/machinery/power/port_gen/pacman/Del()
/obj/machinery/power/port_gen/pacman/Destroy()
DropFuel()
..()
+1 -1
View File
@@ -9,7 +9,7 @@
idle_power_usage = 0
active_power_usage = 0
/obj/machinery/power/Del()
/obj/machinery/power/Destroy()
disconnect_from_network()
..()
+1 -1
View File
@@ -21,7 +21,7 @@ var/global/list/rad_collectors = list()
..()
rad_collectors += src
/obj/machinery/power/rad_collector/Del()
/obj/machinery/power/rad_collector/Destroy()
rad_collectors -= src
..()
@@ -14,7 +14,7 @@
var/obj/machinery/field_generator/FG2 = null
var/hasShocked = 0 //Used to add a delay between shocks. In some cases this used to crash servers by spawning hundreds of sparks every second.
/obj/machinery/containment_field/Del()
/obj/machinery/containment_field/Destroy()
if(FG1 && !FG1.clean_up)
FG1.cleanup()
if(FG2 && !FG2.clean_up)
+1 -1
View File
@@ -39,7 +39,7 @@
connect_to_network()
src.directwired = 1
/obj/machinery/power/emitter/Del()
/obj/machinery/power/emitter/Destroy()
message_admins("Emitter deleted at ([x],[y],[z] - <A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[x];Y=[y];Z=[z]'>JMP</a>)",0,1)
log_game("Emitter deleted at ([x],[y],[z])")
investigate_log("<font color='red'>deleted</font> at ([x],[y],[z])","singulo")
@@ -173,7 +173,7 @@ field_generator power level display
return 0
/obj/machinery/field_generator/Del()
/obj/machinery/field_generator/Destroy()
src.cleanup()
..()
@@ -34,7 +34,7 @@ obj/item/weapon/gun/energy/laser/retro
processing_objects.Add(src)
Del()
Destroy()
processing_objects.Remove(src)
..()
@@ -120,7 +120,7 @@ obj/item/weapon/gun/energy/laser/retro
processing_objects.Add(src)
Del()
Destroy()
processing_objects.Remove(src)
..()
@@ -157,7 +157,7 @@ obj/item/weapon/gun/energy/laser/retro
processing_objects.Add(src)
Del()
Destroy()
processing_objects.Remove(src)
..()
@@ -46,7 +46,7 @@
processing_objects.Add(src)
Del()
Destroy()
processing_objects.Remove(src)
..()
@@ -45,7 +45,7 @@
processing_objects.Add(src)
Del()
Destroy()
processing_objects.Remove(src)
..()
@@ -94,7 +94,7 @@
processing_objects.Add(src)
Del()
Destroy()
processing_objects.Remove(src)
..()
+2 -2
View File
@@ -25,7 +25,7 @@
processing_objects.Add(src)
Del()
Destroy()
processing_objects.Remove(src)
..()
@@ -78,7 +78,7 @@
processing_objects.Add(src)
Del()
Destroy()
processing_objects.Remove(src)
..()
@@ -17,7 +17,7 @@
processing_objects.Add(src)
Del()
Destroy()
processing_objects.Remove(src)
..()
+1 -1
View File
@@ -36,7 +36,7 @@
if(can_charge) processing_objects.Add(src)
/obj/item/weapon/gun/magic/Del()
/obj/item/weapon/gun/magic/Destroy()
if(can_charge) processing_objects.Remove(src)
..()
@@ -32,7 +32,7 @@
user << "[src] shatters into a scattering of overstressed metal shards as it leaves the crossbow."
var/obj/item/weapon/shard/shrapnel/S = new()
S.loc = get_turf(src)
src.Del()
src.Destroy()
/obj/item/weapon/arrow/baguette
name = "baguette"
+1 -1
View File
@@ -184,7 +184,7 @@ datum
/* Must check the transfering of reagents and their data first. They all can point to one disease datum.
Del()
Destroy()
if(src.data["virus"])
var/datum/disease/D = src.data["virus"]
D.cure(0)
@@ -26,7 +26,7 @@
processing_objects.Add(src)
/obj/item/weapon/reagent_containers/borghypo/Del()
/obj/item/weapon/reagent_containers/borghypo/Destroy()
processing_objects.Remove(src)
..()
@@ -190,16 +190,16 @@
if(istype(target, /obj/item/weapon/reagent_containers/food/snacks))
if(!reagents.total_volume)
user << "<span class='warning'>You tear open [src], but there's nothing in it.</span>"
Del()
Destroy()
return
if(target.reagents.total_volume >= target.reagents.maximum_volume)
user << "<span class='warning'>You tear open [src], but [target] is stacked so high that it just drips off!</span>" //Not sure if food can ever be full, but better safe than sorry.
Del()
Destroy()
return
else
user << "<span class='notice'>You tear open [src] above [target] and the condiments drip onto it.</span>"
src.reagents.trans_to(target, amount_per_transfer_from_this)
Del()
Destroy()
/obj/item/weapon/reagent_containers/food/condiment/pack/on_reagent_change()
if(reagents.reagent_list.len > 0)
@@ -73,7 +73,7 @@
if(length(name) > 80) name = "[pick(list("absurd","colossal","enormous","ridiculous"))] sandwich"
w_class = n_ceil(Clamp((ingredients.len/2),1,3))
/obj/item/weapon/reagent_containers/food/snacks/csandwich/Del()
/obj/item/weapon/reagent_containers/food/snacks/csandwich/Destroy()
for(var/obj/item/O in ingredients)
del(O)
..()
@@ -178,7 +178,7 @@
del(src)
return
/obj/item/weapon/reagent_containers/food/snacks/Del()
/obj/item/weapon/reagent_containers/food/snacks/Destroy()
if(contents)
for(var/atom/movable/something in contents)
something.loc = get_turf(src)
@@ -315,7 +315,7 @@
reagents.add_reagent("uranium", 3+round(potency / 5, 1))
bitesize = 1+round(reagents.total_volume / 2, 1)
/obj/item/weapon/reagent_containers/food/snacks/grown/glowberries/Del()
/obj/item/weapon/reagent_containers/food/snacks/grown/glowberries/Destroy()
if(istype(loc,/mob))
loc.SetLuminosity(round(loc.luminosity - potency/5,1))
..()
@@ -1048,7 +1048,7 @@
user << "<span class='notice'>You plant the glowshroom.</span>"
/obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/glowshroom/Del()
/obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/glowshroom/Destroy()
if(istype(loc,/mob))
loc.SetLuminosity(round(loc.luminosity - potency/10,1))
..()
+1 -1
View File
@@ -635,7 +635,7 @@
// pipe is deleted
// ensure if holder is present, it is expelled
Del()
Destroy()
var/obj/structure/disposalholder/H = locate() in src
if(H)
// holder was present
+2 -2
View File
@@ -66,7 +66,7 @@ var/global/list/obj/machinery/message_server/message_servers = list()
..()
return
/obj/machinery/message_server/Del()
/obj/machinery/message_server/Destroy()
message_servers -= src
..()
return
@@ -195,7 +195,7 @@ var/obj/machinery/blackbox_recorder/blackbox
del(src)
blackbox = src
/obj/machinery/blackbox_recorder/Del()
/obj/machinery/blackbox_recorder/Destroy()
var/turf/T = locate(1,1,2)
if(T)
blackbox = null
+1 -1
View File
@@ -24,7 +24,7 @@
RefreshParts()
src.initialize(); //Agouri
/obj/machinery/r_n_d/server/Del()
/obj/machinery/r_n_d/server/Destroy()
griefProtection()
..()
@@ -17,7 +17,7 @@
"Something twinkles faintly as you look at it.",\
"It's mesmerizing to behold.")
/obj/structure/crystal/Del()
/obj/structure/crystal/Destroy()
src.visible_message("\red<b>[src] shatters!</b>")
if(prob(75))
new /obj/item/weapon/shard/plasma(src.loc)
@@ -191,6 +191,6 @@
p = min(p, 100)
icon_state = "anodev[round(p,25)]"
/obj/item/weapon/anodevice/Del()
/obj/item/weapon/anodevice/Destroy()
processing_objects.Remove(src)
..()
@@ -309,7 +309,7 @@
del(suspension_field)
icon_state = "suspension2"
/obj/machinery/suspension_gen/Del()
/obj/machinery/suspension_gen/Destroy()
//safety checks: clear the field and drop anything it's holding
deactivate()
..()
@@ -331,7 +331,7 @@
density = 1
var/field_type = "chlorine"
/obj/effect/suspension_field/Del()
/obj/effect/suspension_field/Destroy()
for(var/obj/I in src)
I.loc = src.loc
..()
@@ -16,7 +16,7 @@
..()
processing_objects.Add(src)
/obj/item/device/beacon_locator/Del()
/obj/item/device/beacon_locator/Destroy()
processing_objects.Remove(src)
..()
+1 -1
View File
@@ -74,7 +74,7 @@
radio = new (src)
/obj/machinery/power/supermatter/Del()
/obj/machinery/power/supermatter/Destroy()
del radio
. = ..()