mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-29 15:08:02 +01:00
Merge pull request #2091 from Fox-McCloud/destroy-them-all
Fixes up a few Destroys
This commit is contained in:
@@ -25,7 +25,16 @@
|
||||
if(ks2type)
|
||||
keyslot2 = new ks2type(src)
|
||||
recalculateChannels(1)
|
||||
|
||||
|
||||
/obj/item/device/radio/headset/Destroy()
|
||||
if(keyslot1)
|
||||
qdel(keyslot1)
|
||||
if(keyslot2)
|
||||
qdel(keyslot2)
|
||||
keyslot1 = null
|
||||
keyslot2 = null
|
||||
return ..()
|
||||
|
||||
/obj/item/device/radio/headset/list_channels(var/mob/user)
|
||||
return list_secure_channels()
|
||||
|
||||
@@ -326,7 +335,7 @@
|
||||
user.drop_item()
|
||||
W.loc = src
|
||||
keyslot2 = W
|
||||
|
||||
|
||||
recalculateChannels()
|
||||
return
|
||||
|
||||
|
||||
@@ -69,6 +69,17 @@ var/global/list/default_medbay_channels = list(
|
||||
|
||||
internal_channels = default_internal_channels.Copy()
|
||||
|
||||
/obj/item/device/radio/Destroy()
|
||||
qdel(wires)
|
||||
wires = null
|
||||
if(radio_controller)
|
||||
radio_controller.remove_object(src, frequency)
|
||||
for (var/ch_name in channels)
|
||||
radio_controller.remove_object(src, radiochannels[ch_name])
|
||||
patch_link = null
|
||||
return ..()
|
||||
|
||||
|
||||
/obj/item/device/radio/initialize()
|
||||
if(frequency < RADIO_LOW_FREQ || frequency > RADIO_HIGH_FREQ)
|
||||
frequency = sanitize_frequency(frequency, RADIO_LOW_FREQ, RADIO_HIGH_FREQ)
|
||||
|
||||
@@ -13,16 +13,13 @@
|
||||
var/playsleepseconds = 0
|
||||
var/obj/item/device/tape/mytape
|
||||
var/open_panel = 0
|
||||
var/datum/wires/taperecorder/wires = null
|
||||
var/canprint = 1
|
||||
|
||||
|
||||
/obj/item/device/taperecorder/New()
|
||||
wires = new(src)
|
||||
mytape = new /obj/item/device/tape/random(src)
|
||||
update_icon()
|
||||
|
||||
|
||||
/obj/item/device/taperecorder/examine(mob/user)
|
||||
if(..(user, 1))
|
||||
user << "The wire panel is [open_panel ? "opened" : "closed"]."
|
||||
@@ -35,14 +32,6 @@
|
||||
mytape = I
|
||||
user << "<span class='notice'>You insert [I] into [src].</span>"
|
||||
update_icon()
|
||||
else if(istype(I, /obj/item/weapon/screwdriver))
|
||||
open_panel = !open_panel
|
||||
user << "<span class='notice'>You [open_panel ? "open" : "close"] the wire panel.</span>"
|
||||
if(open_panel)
|
||||
wires.Interact(user)
|
||||
else if(istype(I, /obj/item/weapon/wirecutters) || istype(I, /obj/item/device/multitool) || istype(I, /obj/item/device/assembly/signaler))
|
||||
wires.Interact(user)
|
||||
|
||||
|
||||
/obj/item/device/taperecorder/proc/eject(mob/user)
|
||||
if(mytape)
|
||||
@@ -118,8 +107,6 @@
|
||||
return
|
||||
if(playing)
|
||||
return
|
||||
if(!wires.get_record())
|
||||
return
|
||||
|
||||
if(mytape.used_capacity < mytape.max_capacity)
|
||||
usr << "<span class='notice'>Recording started.</span>"
|
||||
@@ -132,8 +119,6 @@
|
||||
for(used, used < max)
|
||||
if(recording == 0)
|
||||
break
|
||||
if(!wires.get_record())
|
||||
break
|
||||
mytape.used_capacity++
|
||||
used++
|
||||
sleep(10)
|
||||
@@ -175,8 +160,6 @@
|
||||
return
|
||||
if(playing)
|
||||
return
|
||||
if(!wires.get_play())
|
||||
return
|
||||
|
||||
playing = 1
|
||||
update_icon()
|
||||
@@ -186,8 +169,6 @@
|
||||
for(var/i = 1, used < max, sleep(10 * playsleepseconds))
|
||||
if(!mytape)
|
||||
break
|
||||
if(!wires.get_play())
|
||||
break
|
||||
if(playing == 0)
|
||||
break
|
||||
if(mytape.storedinfo.len < i)
|
||||
@@ -250,7 +231,6 @@
|
||||
|
||||
//empty tape recorders
|
||||
/obj/item/device/taperecorder/empty/New()
|
||||
wires = new(src)
|
||||
return
|
||||
|
||||
|
||||
|
||||
@@ -17,6 +17,12 @@
|
||||
wires = new(src)
|
||||
..()
|
||||
|
||||
/obj/item/weapon/c4/Destroy()
|
||||
qdel(wires)
|
||||
wires = null
|
||||
target = null
|
||||
return ..()
|
||||
|
||||
/obj/item/weapon/c4/suicide_act(var/mob/user)
|
||||
. = (BRUTELOSS)
|
||||
viewers(user) << "<span class='suicide'>[user] activates the C4 and holds it above his head! It looks like \he's going out with a bang!</span>"
|
||||
|
||||
@@ -13,6 +13,10 @@
|
||||
src.smoke = new /datum/effect/effect/system/bad_smoke_spread
|
||||
src.smoke.attach(src)
|
||||
|
||||
Destroy()
|
||||
qdel(smoke)
|
||||
return ..()
|
||||
|
||||
prime()
|
||||
playsound(src.loc, 'sound/effects/smoke.ogg', 50, 1, -3)
|
||||
src.smoke.set_up(10, 0, usr.loc)
|
||||
|
||||
Reference in New Issue
Block a user