mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-22 20:48:56 +01:00
Merge pull request #5702 from Donkie/traylayer
Morgue/Crematorium update
This commit is contained in:
@@ -345,7 +345,7 @@
|
||||
"gG" = (/obj/structure/stool/bed/chair/comfy/beige{dir = 1; icon_state = "comfychair_beige"},/turf/simulated/floor/plasteel{icon_state = "floor"},/area/awaymission/centcomAway/general)
|
||||
"gH" = (/obj/structure/stool/bed/chair,/turf/simulated/floor/fancy/carpet,/area/awaymission/centcomAway/courtroom)
|
||||
"gI" = (/obj/machinery/portable_atmospherics/canister/carbon_dioxide,/turf/simulated/floor/plating,/area/awaymission/centcomAway/maint)
|
||||
"gJ" = (/obj/structure/morgue,/turf/simulated/floor/plasteel{icon_state = "engine"},/area/awaymission/centcomAway/general)
|
||||
"gJ" = (/obj/structure/bodycontainer/morgue,/turf/simulated/floor/plasteel{icon_state = "engine"},/area/awaymission/centcomAway/general)
|
||||
"gK" = (/turf/simulated/floor/plasteel{icon_state = "engine"},/area/awaymission/centcomAway/general)
|
||||
"gL" = (/obj/machinery/door/airlock/centcom{name = "Special Operations"; opacity = 1; req_access_txt = "103"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/awaymission/centcomAway/general)
|
||||
"gM" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/awaymission/centcomAway/general)
|
||||
@@ -409,7 +409,7 @@
|
||||
"hS" = (/obj/structure/table/wood,/obj/item/weapon/paper_bin,/turf/simulated/floor/wood,/area/awaymission/centcomAway/courtroom)
|
||||
"hT" = (/obj/structure/table/wood,/turf/simulated/floor/wood,/area/awaymission/centcomAway/courtroom)
|
||||
"hU" = (/obj/structure/sign/vacuum,/turf/simulated/wall/r_wall,/area/awaymission/centcomAway/hangar)
|
||||
"hV" = (/obj/structure/crematorium,/turf/simulated/floor/plasteel{icon_state = "engine"},/area/awaymission/centcomAway/general)
|
||||
"hV" = (/obj/structure/bodycontainer/crematorium,/turf/simulated/floor/plasteel{icon_state = "engine"},/area/awaymission/centcomAway/general)
|
||||
"hW" = (/obj/structure/flora/kirbyplants,/turf/simulated/floor/plasteel{tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5},/area/awaymission/centcomAway/general)
|
||||
"hX" = (/obj/machinery/crema_switch{pixel_x = 0; pixel_y = 25},/turf/simulated/floor/plasteel{icon_state = "engine"},/area/awaymission/centcomAway/general)
|
||||
"hY" = (/obj/structure/closet/secure_closet/injection,/turf/simulated/floor/plasteel{icon_state = "white"},/area/awaymission/centcomAway/courtroom)
|
||||
|
||||
@@ -559,7 +559,7 @@
|
||||
"kM" = (/obj/structure/sink/kitchen{pixel_y = 32},/turf/simulated/floor/plasteel,/area/awaymission/arrivalblock)
|
||||
"kN" = (/obj/item/weapon/melee/energy/sword/saber/red,/obj/item/clothing/shoes/syndigaloshes,/obj/item/clothing/under/syndicate,/obj/effect/decal/remains/human{desc = "This guy seemed to have died in terrible way! Half his remains are dust."; icon_state = "remains"; name = "Syndicate agent remains"},/obj/item/weapon/paper/sc_safehint_paper_hydro,/turf/simulated/floor/plasteel,/area/awaymission/arrivalblock)
|
||||
"kO" = (/obj/machinery/hydroponics,/turf/simulated/floor/plasteel,/area/awaymission/arrivalblock)
|
||||
"kP" = (/obj/structure/morgue,/turf/simulated/floor/plasteel{icon_state = "white"},/area/awaymission/southblock)
|
||||
"kP" = (/obj/structure/bodycontainer/morgue,/turf/simulated/floor/plasteel{icon_state = "white"},/area/awaymission/southblock)
|
||||
"kQ" = (/obj/machinery/vending/medical,/turf/simulated/floor/plasteel{icon_state = "white"},/area/awaymission/southblock)
|
||||
"kR" = (/obj/structure/stool/bed/roller,/turf/simulated/floor/plasteel{icon_state = "whitehall"; dir = 1},/area/awaymission/southblock)
|
||||
"kS" = (/obj/structure/table,/obj/item/weapon/paper/pamphlet{pixel_x = 2; pixel_y = 2},/obj/item/weapon/paper/pamphlet{pixel_x = -2; pixel_y = -2},/turf/simulated/floor/plasteel{tag = "icon-warningcorner (WEST)"; icon_state = "warningcorner"; dir = 8},/area/awaymission/gateroom)
|
||||
@@ -570,7 +570,7 @@
|
||||
"kX" = (/obj/structure/stool/bed/chair{dir = 4},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/awaymission/arrivalblock)
|
||||
"kY" = (/obj/structure/stool/bed/chair,/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/awaymission/arrivalblock)
|
||||
"kZ" = (/obj/structure/stool/bed/chair{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor3"},/area/awaymission/arrivalblock)
|
||||
"la" = (/obj/structure/morgue,/turf/simulated/floor/plasteel{tag = "icon-whitehall (WEST)"; icon_state = "whitehall"; dir = 8},/area/awaymission/southblock)
|
||||
"la" = (/obj/structure/bodycontainer/morgue,/turf/simulated/floor/plasteel{tag = "icon-whitehall (WEST)"; icon_state = "whitehall"; dir = 8},/area/awaymission/southblock)
|
||||
"lb" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plasteel{icon_state = "whitehall"; dir = 4},/area/awaymission/southblock)
|
||||
"lc" = (/turf/simulated/floor/plasteel{tag = "icon-whitehall (WEST)"; icon_state = "whitehall"; dir = 8},/area/awaymission/southblock)
|
||||
"ld" = (/turf/simulated/floor/plasteel{icon_state = "whitehall"; dir = 4},/area/awaymission/southblock)
|
||||
|
||||
@@ -4251,7 +4251,7 @@
|
||||
"bDM" = (/obj/machinery/door_control{dir = 2; id = "Mechbay"; name = "Mech Bay Door Control"; pixel_x = -24; pixel_y = 0; req_access_txt = "29"},/turf/simulated/floor/plasteel,/area/assembly/chargebay)
|
||||
"bDN" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plasteel,/area/assembly/chargebay)
|
||||
"bDO" = (/turf/simulated/floor/plasteel,/area/assembly/chargebay)
|
||||
"bDP" = (/obj/structure/morgue,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/assembly/assembly_line)
|
||||
"bDP" = (/obj/structure/bodycontainer/morgue,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/assembly/assembly_line)
|
||||
"bDQ" = (/obj/machinery/camera{c_tag = "Robotics Morgue"; dir = 2; network = list("SS13","RD")},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/assembly/assembly_line)
|
||||
"bDR" = (/obj/machinery/light/small{dir = 4},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/assembly/assembly_line)
|
||||
"bDS" = (/obj/machinery/door/window/southleft{name = "Robotics Deliveries"; req_access_txt = "29"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{icon_state = "delivery"; name = "floor"},/area/assembly/assembly_line)
|
||||
@@ -5438,7 +5438,7 @@
|
||||
"caD" = (/obj/structure/cable/cyan{tag = "icon-1-2"; icon_state = "1-2"},/obj/structure/cable/cyan{tag = "icon-1-4"; icon_state = "1-4"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/medbay)
|
||||
"caE" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable/cyan{tag = "icon-2-8"; icon_state = "2-8"},/turf/simulated/floor/plating,/area/maintenance/asteroidstation/medbay)
|
||||
"caF" = (/obj/machinery/power/apc{dir = 1; name = "Genetics Research APC"; pixel_x = 0; pixel_y = 25},/obj/structure/cable/cyan{tag = "icon-0-2"; icon_state = "0-2"},/turf/simulated/floor/plating,/area/medical/genetics)
|
||||
"caG" = (/obj/structure/morgue,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/medical/morgue)
|
||||
"caG" = (/obj/structure/bodycontainer/morgue,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/medical/morgue)
|
||||
"caH" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/medical/morgue)
|
||||
"caI" = (/obj/machinery/camera{c_tag = "Medbay Morgue"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/medical/morgue)
|
||||
"caJ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/medical/morgue)
|
||||
@@ -5586,7 +5586,7 @@
|
||||
"cdv" = (/obj/item/clothing/head/ushanka,/obj/item/clothing/under/soviet,/turf/simulated/floor/plating,/area/hallway/primary/aft{name = "Aft Hallway"})
|
||||
"cdw" = (/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka,/obj/item/toy/snappop,/turf/simulated/floor/plating,/area/hallway/primary/aft{name = "Aft Hallway"})
|
||||
"cdx" = (/obj/structure/table/glass,/obj/item/weapon/storage/box/bodybags{pixel_x = 3; pixel_y = 3},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/chapel/main)
|
||||
"cdy" = (/obj/structure/crematorium,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/chapel/main)
|
||||
"cdy" = (/obj/structure/bodycontainer/crematorium,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/chapel/main)
|
||||
"cdz" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/chapel/main)
|
||||
"cdA" = (/obj/structure/closet/wardrobe/chaplain_black,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/chapel/main)
|
||||
"cdB" = (/turf/simulated/floor/plasteel{icon_state = "dark"},/area/chapel/main)
|
||||
@@ -5683,7 +5683,7 @@
|
||||
"cfo" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden,/obj/structure/disposalpipe/segment,/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor/plasteel{icon_state = "neutral"; dir = 4},/area/hallway/primary/aft{name = "Aft Hallway"})
|
||||
"cfp" = (/obj/machinery/portable_atmospherics/canister/air,/turf/simulated/floor/plating,/area/hallway/primary/aft{name = "Aft Hallway"})
|
||||
"cfq" = (/obj/machinery/portable_atmospherics/scrubber,/turf/simulated/floor/plating,/area/hallway/primary/aft{name = "Aft Hallway"})
|
||||
"cfr" = (/obj/structure/morgue,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/chapel/main)
|
||||
"cfr" = (/obj/structure/bodycontainer/morgue,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/chapel/main)
|
||||
"cfs" = (/obj/machinery/camera{c_tag = "Chapel Crematorium"; dir = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/chapel/main)
|
||||
"cft" = (/obj/machinery/alarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/chapel/main)
|
||||
"cfu" = (/obj/item/device/flashlight/lamp/green{pixel_x = 1; pixel_y = 5},/obj/item/weapon/storage/fancy/crayons,/obj/structure/table/wood,/turf/simulated/floor/fancy/carpet,/area/chapel/main)
|
||||
|
||||
@@ -249,7 +249,7 @@
|
||||
"eO" = (/turf/simulated/floor/airless{icon_state = "damaged4"},/area/space)
|
||||
"eP" = (/obj/structure/stool/bed/chair{dir = 1},/turf/simulated/floor/plasteel,/area/derelict/arrival)
|
||||
"eQ" = (/obj/machinery/door/morgue{name = "coffin storage"; req_access_txt = "22"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/derelict/medical/chapel)
|
||||
"eR" = (/obj/structure/morgue,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/derelict/medical/chapel)
|
||||
"eR" = (/obj/structure/bodycontainer/morgue,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/derelict/medical/chapel)
|
||||
"eS" = (/obj/structure/table,/turf/simulated/floor/airless{icon_state = "white"},/area/derelict/medical)
|
||||
"eT" = (/turf/simulated/floor/airless{icon_state = "white"},/area/space)
|
||||
"eU" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/airless{icon_state = "damaged2"},/area/derelict/hallway/primary)
|
||||
|
||||
@@ -1738,7 +1738,7 @@
|
||||
"aHv" = (/obj/structure/stool/bed/chair/office/dark,/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/wood,/area/library)
|
||||
"aHw" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/wood,/area/library)
|
||||
"aHx" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/wood,/area/library)
|
||||
"aHy" = (/obj/structure/crematorium,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/chapel/office)
|
||||
"aHy" = (/obj/structure/bodycontainer/crematorium,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/chapel/office)
|
||||
"aHz" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/chapel/office)
|
||||
"aHA" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk,/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/chapel/office)
|
||||
"aHB" = (/obj/effect/landmark/start{name = "Chaplain"},/obj/structure/stool/bed/chair,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/chapel/office)
|
||||
@@ -1968,7 +1968,7 @@
|
||||
"aLR" = (/obj/structure/stool/bed/chair/office/dark{dir = 1},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/simulated/floor/wood,/area/library)
|
||||
"aLS" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/simulated/floor/wood,/area/library)
|
||||
"aLT" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/turf/simulated/floor/wood,/area/library)
|
||||
"aLU" = (/obj/structure/morgue,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/chapel/office)
|
||||
"aLU" = (/obj/structure/bodycontainer/morgue,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/chapel/office)
|
||||
"aLV" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/chapel/office)
|
||||
"aLW" = (/turf/simulated/floor/plasteel{icon_state = "grimy"},/area/chapel/office)
|
||||
"aLX" = (/obj/machinery/camera{c_tag = "Chapel North"; dir = 2; network = list("SS13")},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/chapel/main)
|
||||
@@ -3102,8 +3102,8 @@
|
||||
"bhH" = (/obj/structure/stool/bed/chair/office/dark{dir = 8},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 8},/area/security/checkpoint/medical)
|
||||
"bhI" = (/turf/simulated/floor/plasteel,/area/security/checkpoint/medical)
|
||||
"bhJ" = (/obj/machinery/computer/secure_data,/obj/item/device/radio/intercom{pixel_x = 25},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 4},/area/security/checkpoint/medical)
|
||||
"bhK" = (/obj/structure/morgue,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/medical/morgue)
|
||||
"bhL" = (/obj/structure/morgue,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/medical/morgue)
|
||||
"bhK" = (/obj/structure/bodycontainer/morgue,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/medical/morgue)
|
||||
"bhL" = (/obj/structure/bodycontainer/morgue,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/medical/morgue)
|
||||
"bhM" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/medical/morgue)
|
||||
"bhN" = (/turf/simulated/floor/plating,/area/storage/emergency)
|
||||
"bhO" = (/obj/effect/landmark/start{name = "Assistant"},/turf/simulated/floor/plating,/area/storage/emergency)
|
||||
@@ -3251,7 +3251,7 @@
|
||||
"bkA" = (/obj/machinery/power/apc{dir = 8; name = "Medbay Security APC"; pixel_x = -25},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 8},/area/security/checkpoint/medical)
|
||||
"bkB" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/simulated/floor/plasteel,/area/security/checkpoint/medical)
|
||||
"bkC" = (/obj/structure/reagent_dispensers/peppertank{pixel_x = 30; pixel_y = 0},/obj/machinery/atmospherics/unary/vent_pump{on = 1},/turf/simulated/floor/plasteel{icon_state = "red"; dir = 4},/area/security/checkpoint/medical)
|
||||
"bkD" = (/obj/structure/morgue,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/medical/morgue)
|
||||
"bkD" = (/obj/structure/bodycontainer/morgue,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/medical/morgue)
|
||||
"bkE" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{tag = "icon-manifold-b-f (EAST)"; dir = 4},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/medical/morgue)
|
||||
"bkF" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/medical/morgue)
|
||||
"bkG" = (/obj/machinery/mech_bay_recharge_port,/obj/structure/cable,/turf/simulated/floor/plating,/area/assembly/chargebay)
|
||||
|
||||
@@ -352,7 +352,7 @@
|
||||
"gN" = (/obj/structure/stool/bed/chair{dir = 1},/turf/simulated/floor/plasteel,/area/derelict/arrival)
|
||||
"gO" = (/obj/structure/stool/bed/chair{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plasteel,/area/derelict/arrival)
|
||||
"gP" = (/obj/machinery/door/morgue{name = "coffin storage"; req_access_txt = "22"},/turf/simulated/floor/plasteel{icon_state = "dark"},/area/derelict/medical/chapel)
|
||||
"gQ" = (/obj/structure/morgue,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/derelict/medical/chapel)
|
||||
"gQ" = (/obj/structure/bodycontainer/morgue,/turf/simulated/floor/plasteel{icon_state = "dark"},/area/derelict/medical/chapel)
|
||||
"gR" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/airless{icon_state = "white"},/area/derelict/medical)
|
||||
"gS" = (/obj/structure/window/reinforced,/turf/simulated/floor/plating/airless,/area/space)
|
||||
"gT" = (/obj/structure/window/reinforced,/turf/simulated/floor/airless{icon_state = "white"},/area/space)
|
||||
|
||||
@@ -1,40 +1,108 @@
|
||||
/* Morgue stuff
|
||||
* Contains:
|
||||
* Morgue
|
||||
* Morgue trays
|
||||
* Creamatorium
|
||||
* Creamatorium trays
|
||||
* Morgue tray
|
||||
* Crematorium
|
||||
* Crematorium tray
|
||||
* Crematorium button
|
||||
*/
|
||||
|
||||
/*
|
||||
* Morgue
|
||||
* Bodycontainer
|
||||
* Parent class for morgue and crematorium
|
||||
* For overriding only
|
||||
*/
|
||||
|
||||
/obj/structure/morgue
|
||||
name = "Morgue"
|
||||
desc = "Used to keep bodies in until someone fetches them."
|
||||
/obj/structure/bodycontainer
|
||||
icon = 'icons/obj/stationobjs.dmi'
|
||||
icon_state = "morgue1"
|
||||
density = 1
|
||||
var/obj/structure/m_tray/connected = null
|
||||
anchored = 1.0
|
||||
|
||||
/obj/structure/morgue/New()
|
||||
connected = new(src)
|
||||
connected.connected = src
|
||||
var/obj/structure/tray/connected = null
|
||||
var/locked = 0
|
||||
var/opendir = SOUTH
|
||||
|
||||
/obj/structure/bodycontainer/New()
|
||||
..()
|
||||
|
||||
/obj/structure/morgue/Destroy()
|
||||
/obj/structure/bodycontainer/Destroy()
|
||||
open()
|
||||
if(connected)
|
||||
qdel(connected)
|
||||
connected = null
|
||||
..()
|
||||
|
||||
/obj/structure/morgue/on_log()
|
||||
/obj/structure/bodycontainer/on_log()
|
||||
update_icon()
|
||||
|
||||
/obj/structure/morgue/update_icon()
|
||||
/obj/structure/bodycontainer/update_icon()
|
||||
return
|
||||
|
||||
/obj/structure/bodycontainer/alter_health()
|
||||
return src.loc
|
||||
|
||||
/obj/structure/bodycontainer/attack_paw(mob/user as mob)
|
||||
return src.attack_hand(user)
|
||||
|
||||
/obj/structure/bodycontainer/attack_hand(mob/user as mob)
|
||||
if(locked)
|
||||
user << "<span class='danger'>It's locked.</span>"
|
||||
return
|
||||
if(!connected)
|
||||
user << "That doesn't appear to have a tray."
|
||||
return
|
||||
if(connected.loc == src)
|
||||
open()
|
||||
else
|
||||
close()
|
||||
add_fingerprint(user)
|
||||
|
||||
/obj/structure/bodycontainer/attackby(P as obj, mob/user as mob)
|
||||
if (istype(P, /obj/item/weapon/pen))
|
||||
var/t = input(user, "What would you like the label to be?", text("[]", name), null) as text
|
||||
if (user.get_active_hand() != P)
|
||||
return
|
||||
if ((!in_range(src, usr) && src.loc != user))
|
||||
return
|
||||
t = copytext(sanitize(t),1,MAX_MESSAGE_LEN)
|
||||
if (t)
|
||||
name = text("[]- '[]'", initial(name), t)
|
||||
else
|
||||
name = initial(name)
|
||||
add_fingerprint(user)
|
||||
|
||||
/obj/structure/bodycontainer/container_resist()
|
||||
open()
|
||||
|
||||
/obj/structure/bodycontainer/proc/open()
|
||||
playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1)
|
||||
var/turf/T = get_step(src, opendir)
|
||||
for(var/atom/movable/A in src)
|
||||
A.loc = T
|
||||
update_icon()
|
||||
|
||||
/obj/structure/bodycontainer/proc/close()
|
||||
playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1)
|
||||
for(var/atom/movable/A in connected.loc)
|
||||
if(!A.anchored || A == connected)
|
||||
A.loc = src
|
||||
update_icon()
|
||||
|
||||
/*
|
||||
* Morgue
|
||||
*/
|
||||
/obj/structure/bodycontainer/morgue
|
||||
name = "morgue"
|
||||
desc = "Used to keep bodies in until someone fetches them."
|
||||
icon_state = "morgue1"
|
||||
opendir = EAST
|
||||
|
||||
/obj/structure/bodycontainer/morgue/New()
|
||||
connected = new/obj/structure/tray/m_tray(src)
|
||||
connected.connected = src
|
||||
..()
|
||||
|
||||
/obj/structure/bodycontainer/morgue/update_icon()
|
||||
if (!connected || connected.loc != src) //open or the tray broke off somehow
|
||||
src.icon_state = "morgue0"
|
||||
else
|
||||
@@ -55,128 +123,29 @@
|
||||
src.icon_state = "morgue4"//clone that mofo
|
||||
break
|
||||
|
||||
/obj/structure/morgue/alter_health()
|
||||
return src.loc
|
||||
|
||||
/obj/structure/morgue/attack_paw(mob/user as mob)
|
||||
return src.attack_hand(user)
|
||||
|
||||
/obj/structure/morgue/attack_hand(mob/user as mob)
|
||||
if(!connected)
|
||||
user << "That doesn't appear to have a tray."
|
||||
return
|
||||
if(connected.loc == src)
|
||||
open()
|
||||
else
|
||||
close()
|
||||
add_fingerprint(user)
|
||||
|
||||
/obj/structure/morgue/attackby(P as obj, mob/user as mob)
|
||||
if (istype(P, /obj/item/weapon/pen))
|
||||
var/t = input(user, "What would you like the label to be?", text("[]", src.name), null) as text
|
||||
if (user.get_active_hand() != P)
|
||||
return
|
||||
if ((!in_range(src, usr) && src.loc != user))
|
||||
return
|
||||
t = copytext(sanitize(t),1,MAX_MESSAGE_LEN)
|
||||
if (t)
|
||||
src.name = text("Morgue- '[]'", t)
|
||||
else
|
||||
src.name = "Morgue"
|
||||
add_fingerprint(user)
|
||||
|
||||
/obj/structure/morgue/container_resist()
|
||||
open()
|
||||
|
||||
/obj/structure/morgue/proc/open()
|
||||
playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1)
|
||||
var/turf/T = get_step(src, EAST)
|
||||
for(var/atom/movable/A in src)
|
||||
A.loc = T
|
||||
update_icon()
|
||||
|
||||
/obj/structure/morgue/proc/close()
|
||||
playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1)
|
||||
for(var/atom/movable/A in connected.loc)
|
||||
if(!A.anchored || A == connected)
|
||||
A.loc = src
|
||||
update_icon()
|
||||
|
||||
|
||||
/*
|
||||
* Morgue tray
|
||||
*/
|
||||
/obj/structure/m_tray
|
||||
name = "morgue tray"
|
||||
desc = "Apply corpse before closing."
|
||||
icon = 'icons/obj/stationobjs.dmi'
|
||||
icon_state = "morguet"
|
||||
density = 1
|
||||
layer = 2.0
|
||||
var/obj/structure/morgue/connected = null
|
||||
anchored = 1.0
|
||||
throwpass = 1
|
||||
|
||||
/obj/structure/m_tray/Destroy()
|
||||
if(connected)
|
||||
connected.connected = null
|
||||
connected.update_icon()
|
||||
connected = null
|
||||
..()
|
||||
|
||||
/obj/structure/m_tray/attack_paw(mob/user as mob)
|
||||
return src.attack_hand(user)
|
||||
|
||||
/obj/structure/m_tray/attack_hand(mob/user as mob)
|
||||
if (src.connected)
|
||||
connected.close()
|
||||
add_fingerprint(user)
|
||||
else
|
||||
user << "That's not connected to anything."
|
||||
|
||||
/obj/structure/m_tray/MouseDrop_T(atom/movable/O as mob|obj, mob/user as mob)
|
||||
if ((!( istype(O, /atom/movable) ) || O.anchored || get_dist(user, src) > 1 || get_dist(user, O) > 1 || user.contents.Find(src) || user.contents.Find(O)))
|
||||
return
|
||||
if (!ismob(O) && !istype(O, /obj/structure/closet/body_bag))
|
||||
return
|
||||
if (!ismob(user) || user.stat || user.lying || user.stunned)
|
||||
return
|
||||
O.loc = src.loc
|
||||
if (user != O)
|
||||
for(var/mob/B in viewers(user, 3))
|
||||
B.show_message("<span class='danger'>[user] stuffs [O] into [src]!</span>", 1)
|
||||
return
|
||||
|
||||
|
||||
/*
|
||||
* Crematorium
|
||||
*/
|
||||
|
||||
/obj/structure/crematorium
|
||||
var/global/list/crematoriums = new/list()
|
||||
/obj/structure/bodycontainer/crematorium
|
||||
name = "crematorium"
|
||||
desc = "A human incinerator. Works well on barbeque nights."
|
||||
icon = 'icons/obj/stationobjs.dmi'
|
||||
icon_state = "crema1"
|
||||
density = 1
|
||||
var/obj/structure/c_tray/connected = null
|
||||
anchored = 1.0
|
||||
var/cremating = 0
|
||||
opendir = SOUTH
|
||||
var/id = 1
|
||||
var/locked = 0
|
||||
|
||||
/obj/structure/crematorium/New()
|
||||
connected = new(src)
|
||||
/obj/structure/bodycontainer/crematorium/Destroy()
|
||||
crematoriums.Remove(src)
|
||||
..()
|
||||
|
||||
/obj/structure/bodycontainer/crematorium/New()
|
||||
connected = new/obj/structure/tray/c_tray(src)
|
||||
connected.connected = src
|
||||
|
||||
crematoriums.Add(src)
|
||||
..()
|
||||
|
||||
/obj/structure/crematorium/Destroy()
|
||||
open()
|
||||
if(connected)
|
||||
qdel(connected)
|
||||
connected = null
|
||||
..()
|
||||
|
||||
/obj/structure/crematorium/update_icon()
|
||||
/obj/structure/bodycontainer/crematorium/update_icon()
|
||||
if(!connected || connected.loc != src)
|
||||
icon_state = "crema0"
|
||||
else
|
||||
@@ -186,51 +155,13 @@
|
||||
else
|
||||
src.icon_state = "crema1"
|
||||
|
||||
if(cremating)
|
||||
if(locked)
|
||||
src.icon_state = "crema_active"
|
||||
|
||||
return
|
||||
|
||||
|
||||
/obj/structure/crematorium/alter_health()
|
||||
return src.loc
|
||||
|
||||
/obj/structure/crematorium/attack_paw(mob/user as mob)
|
||||
return src.attack_hand(user)
|
||||
|
||||
/obj/structure/crematorium/attack_hand(mob/user as mob)
|
||||
if (cremating || locked)
|
||||
user << "<span class='danger'>It's locked.</span>"
|
||||
return
|
||||
if (!connected)
|
||||
user << "That doesn't appear to have a tray."
|
||||
return
|
||||
if(connected.loc == src)
|
||||
open()
|
||||
else
|
||||
close()
|
||||
add_fingerprint(user)
|
||||
|
||||
/obj/structure/crematorium/attackby(P as obj, mob/user as mob)
|
||||
if (istype(P, /obj/item/weapon/pen))
|
||||
var/t = input(user, "What would you like the label to be?", text("[]", src.name), null) as text
|
||||
if (user.get_active_hand() != P)
|
||||
return
|
||||
if ((!in_range(src, usr) > 1 && src.loc != user))
|
||||
return
|
||||
t = copytext(sanitize(t),1,MAX_MESSAGE_LEN)
|
||||
if (t)
|
||||
src.name = text("Crematorium- '[]'", t)
|
||||
else
|
||||
src.name = "Crematorium"
|
||||
src.add_fingerprint(user)
|
||||
return
|
||||
|
||||
/obj/structure/crematorium/container_resist()
|
||||
open()
|
||||
|
||||
/obj/structure/crematorium/proc/cremate(mob/user as mob)
|
||||
if(cremating)
|
||||
/obj/structure/bodycontainer/crematorium/proc/cremate(mob/user as mob)
|
||||
if(locked)
|
||||
return //don't let you cremate something twice or w/e
|
||||
|
||||
if(contents.len <= 1)
|
||||
@@ -240,7 +171,6 @@
|
||||
else
|
||||
audible_message("<span class='danger'>You hear a roar as the crematorium activates.</span>")
|
||||
|
||||
cremating = 1
|
||||
locked = 1
|
||||
update_icon()
|
||||
|
||||
@@ -261,57 +191,62 @@
|
||||
|
||||
new /obj/effect/decal/cleanable/ash(src)
|
||||
sleep(30)
|
||||
cremating = 0
|
||||
locked = 0
|
||||
update_icon()
|
||||
playsound(src.loc, 'sound/machines/ding.ogg', 50, 1)
|
||||
|
||||
/obj/structure/crematorium/proc/open()
|
||||
playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1)
|
||||
var/turf/T = get_step(src, SOUTH)
|
||||
for(var/atom/movable/A in src)
|
||||
A.loc = T
|
||||
update_icon()
|
||||
|
||||
/obj/structure/crematorium/proc/close()
|
||||
playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1)
|
||||
for(var/atom/movable/A in connected.loc)
|
||||
if(!A.anchored || A == connected)
|
||||
A.loc = src
|
||||
update_icon()
|
||||
playsound(src.loc, 'sound/machines/ding.ogg', 50, 1) //you horrible people
|
||||
|
||||
/*
|
||||
* Crematorium tray
|
||||
Crematorium Switch
|
||||
*/
|
||||
/obj/machinery/crema_switch/attack_hand(mob/user as mob)
|
||||
if(src.allowed(usr))
|
||||
for (var/obj/structure/bodycontainer/crematorium/C in crematoriums)
|
||||
if (C.id != id)
|
||||
continue
|
||||
|
||||
C.cremate(user)
|
||||
else
|
||||
usr << "<span class='danger'>Access denied.</span>"
|
||||
return
|
||||
|
||||
/obj/machinery/crema_switch/attackby(obj/item/W as obj, mob/user as mob)
|
||||
if(W.GetID())
|
||||
attack_hand(user)
|
||||
else
|
||||
return ..()
|
||||
|
||||
|
||||
/*
|
||||
* Generic Tray
|
||||
* Parent class for morguetray and crematoriumtray
|
||||
* For overriding only
|
||||
*/
|
||||
/obj/structure/c_tray
|
||||
name = "crematorium tray"
|
||||
desc = "Apply body before burning."
|
||||
/obj/structure/tray
|
||||
icon = 'icons/obj/stationobjs.dmi'
|
||||
icon_state = "cremat"
|
||||
density = 1
|
||||
layer = 2.0
|
||||
var/obj/structure/crematorium/connected = null
|
||||
layer = 2.9
|
||||
var/obj/structure/bodycontainer/connected = null
|
||||
anchored = 1.0
|
||||
throwpass = 1
|
||||
|
||||
/obj/structure/c_tray/Destroy()
|
||||
/obj/structure/tray/Destroy()
|
||||
if(connected)
|
||||
connected.connected = null
|
||||
connected.update_icon()
|
||||
connected = null
|
||||
..()
|
||||
|
||||
/obj/structure/c_tray/attack_paw(mob/user as mob)
|
||||
/obj/structure/tray/attack_paw(mob/user as mob)
|
||||
return src.attack_hand(user)
|
||||
|
||||
/obj/structure/c_tray/attack_hand(mob/user as mob)
|
||||
/obj/structure/tray/attack_hand(mob/user as mob)
|
||||
if (src.connected)
|
||||
connected.close()
|
||||
add_fingerprint(user)
|
||||
else
|
||||
user << "That's not connected to anything."
|
||||
|
||||
/obj/structure/c_tray/MouseDrop_T(atom/movable/O as mob|obj, mob/user as mob)
|
||||
/obj/structure/tray/MouseDrop_T(atom/movable/O as mob|obj, mob/user as mob)
|
||||
if ((!( istype(O, /atom/movable) ) || O.anchored || get_dist(user, src) > 1 || get_dist(user, O) > 1 || user.contents.Find(src) || user.contents.Find(O)))
|
||||
return
|
||||
if (!ismob(O) && !istype(O, /obj/structure/closet/body_bag))
|
||||
@@ -325,13 +260,19 @@
|
||||
//Foreach goto(99)
|
||||
return
|
||||
|
||||
/obj/machinery/crema_switch/attack_hand(mob/user as mob)
|
||||
if(src.allowed(usr))
|
||||
for (var/obj/structure/crematorium/C in world)
|
||||
if (C.id == id)
|
||||
if (!C.cremating)
|
||||
C.cremate(user)
|
||||
else
|
||||
usr << "<span class='danger'>Access denied.</span>"
|
||||
return
|
||||
/*
|
||||
* Crematorium tray
|
||||
*/
|
||||
/obj/structure/tray/c_tray
|
||||
name = "crematorium tray"
|
||||
desc = "Apply body before burning."
|
||||
icon_state = "cremat"
|
||||
|
||||
/*
|
||||
* Morgue tray
|
||||
*/
|
||||
/obj/structure/tray/m_tray
|
||||
name = "morgue tray"
|
||||
desc = "Apply corpse before closing."
|
||||
icon_state = "morguet"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user