mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-22 11:37:40 +01:00
Destroy Pass III
This commit is contained in:
@@ -31,13 +31,6 @@
|
||||
|
||||
/atom/Destroy()
|
||||
set_opacity(0)
|
||||
|
||||
|
||||
if(reagents)
|
||||
qdel(reagents)
|
||||
reagents = null
|
||||
|
||||
// Idea by ChuckTheSheep to make the object even more unreferencable.
|
||||
invisibility = 101
|
||||
return ..()
|
||||
|
||||
|
||||
@@ -23,8 +23,16 @@
|
||||
|
||||
|
||||
/atom/movable/Destroy()
|
||||
..()
|
||||
if(reagents)
|
||||
qdel(reagents)
|
||||
for(var/atom/movable/AM in contents)
|
||||
qdel(AM)
|
||||
loc = null
|
||||
if (pulledby)
|
||||
if (pulledby.pulling == src)
|
||||
pulledby.pulling = null
|
||||
pulledby = null
|
||||
..()
|
||||
return QDEL_HINT_QUEUE
|
||||
|
||||
// Used in shuttle movement and AI eye stuff.
|
||||
|
||||
@@ -42,8 +42,7 @@ would spawn and follow the beaker, even if it is carried or thrown.
|
||||
/obj/effect/proc/delete()
|
||||
loc = null
|
||||
if(reagents)
|
||||
reagents.my_atom = null
|
||||
reagents.delete()
|
||||
qdel(reagents)
|
||||
return
|
||||
|
||||
|
||||
|
||||
@@ -52,17 +52,9 @@
|
||||
var/list/species_fit = null //This object has a different appearance when worn by these species
|
||||
|
||||
/obj/item/Destroy()
|
||||
if(istype(src.loc, /mob))
|
||||
var/mob/H = src.loc
|
||||
H.unEquip(src) // items at the very least get unequipped from their mob before being deleted
|
||||
if(reagents && istype(reagents))
|
||||
reagents.my_atom = null
|
||||
reagents.delete()
|
||||
if(hasvar(src, "holder"))
|
||||
src:holder = null
|
||||
/* BROKEN, FUCK BYOND
|
||||
if(hasvar(src, "my_atom"))
|
||||
src:my_atom = null*/
|
||||
if(ismob(loc))
|
||||
var/mob/m = loc
|
||||
m.unEquip(src, 1)
|
||||
return ..()
|
||||
|
||||
/obj/item/device
|
||||
|
||||
@@ -33,4 +33,4 @@
|
||||
smoke.set_up(R, rand(1, 2), 0, vent, 0, silent = 1)
|
||||
playsound(vent.loc, 'sound/effects/smoke.ogg', 50, 1, -3)
|
||||
smoke.start(3)
|
||||
R.delete() //GC the reagents
|
||||
qdel(R)
|
||||
|
||||
@@ -41,7 +41,7 @@
|
||||
if(AC.reagents && AC.BB.reagents)
|
||||
var/datum/reagents/casting_reagents = AC.reagents
|
||||
casting_reagents.trans_to(AC.BB, casting_reagents.total_volume) //For chemical darts/bullets
|
||||
casting_reagents.delete()
|
||||
qdel(casting_reagents)
|
||||
in_chamber = AC.BB //Load projectile into chamber.
|
||||
AC.BB.loc = src //Set projectile loc to gun.
|
||||
AC.update_icon()
|
||||
|
||||
@@ -601,12 +601,6 @@ datum
|
||||
//world << "reagent data set ([reagent_id])"
|
||||
D.data = new_data
|
||||
|
||||
delete()
|
||||
for(var/datum/reagent/R in reagent_list)
|
||||
R.holder = null
|
||||
if(my_atom)
|
||||
my_atom.reagents = null
|
||||
|
||||
copy_data(var/datum/reagent/current_reagent)
|
||||
if (!current_reagent || !current_reagent.data) return null
|
||||
if (!istype(current_reagent.data, /list)) return current_reagent.data
|
||||
@@ -636,10 +630,11 @@ atom/proc/create_reagents(var/max_vol)
|
||||
reagents.my_atom = src
|
||||
|
||||
/datum/reagents/Destroy()
|
||||
for(var/datum/reagent/reagent in reagent_list)
|
||||
qdel(reagent)
|
||||
|
||||
if(my_atom)
|
||||
my_atom = null
|
||||
|
||||
processing_objects.Remove(src)
|
||||
for(var/datum/reagent/R in reagent_list)
|
||||
qdel(R)
|
||||
reagent_list.Cut()
|
||||
reagent_list = null
|
||||
if(my_atom && my_atom.reagents == src)
|
||||
my_atom.reagents = null
|
||||
return ..()
|
||||
@@ -3235,8 +3235,5 @@ datum
|
||||
|
||||
|
||||
/datum/reagent/Destroy()
|
||||
if(holder)
|
||||
holder.reagent_list -= src
|
||||
holder = null
|
||||
|
||||
holder = null
|
||||
return ..()
|
||||
|
||||
@@ -27,10 +27,6 @@
|
||||
R.my_atom = src
|
||||
processing_objects.Add(src)
|
||||
|
||||
/obj/item/weapon/reagent_containers/Destroy()
|
||||
processing_objects.Remove(src)
|
||||
return ..()
|
||||
|
||||
/obj/item/weapon/reagent_containers/process()
|
||||
if(reagents)
|
||||
reagents.reagent_on_tick()
|
||||
|
||||
Reference in New Issue
Block a user