mirror of
https://github.com/Sandstorm-Station/Sandstorm-Station-13.git
synced 2026-08-21 20:28:14 +01:00
Merge branch 'master' of https://github.com/Citadel-Station-13/Citadel-Station-13
This commit is contained in:
@@ -3,9 +3,9 @@
|
||||
/turf/template_noop,
|
||||
/area/template_noop)
|
||||
"ac" = (
|
||||
/obj/item/stack/medical/ointment,
|
||||
/obj/item/stack/medical/mesh,
|
||||
/obj/structure/table,
|
||||
/obj/item/stack/medical/bruise_pack,
|
||||
/obj/item/stack/medical/suture,
|
||||
/turf/open/floor/plating,
|
||||
/area/ruin/powered/snow_biodome)
|
||||
"ad" = (
|
||||
|
||||
@@ -2368,7 +2368,7 @@
|
||||
/turf/open/floor/plasteel/airless/white,
|
||||
/area/ruin/space/derelict/medical)
|
||||
"hW" = (
|
||||
/obj/item/stack/medical/bruise_pack,
|
||||
/obj/item/stack/medical/suture,
|
||||
/turf/open/floor/plasteel/airless/white,
|
||||
/area/ruin/space/derelict/medical)
|
||||
"hX" = (
|
||||
@@ -2610,13 +2610,13 @@
|
||||
/turf/open/floor/plasteel/airless/white,
|
||||
/area/ruin/space/derelict/medical)
|
||||
"iM" = (
|
||||
/obj/item/stack/medical/bruise_pack,
|
||||
/obj/item/stack/medical/suture,
|
||||
/turf/open/floor/plasteel/airless{
|
||||
icon_state = "damaged2"
|
||||
},
|
||||
/area/ruin/space/derelict/medical)
|
||||
"iN" = (
|
||||
/obj/item/stack/medical/ointment,
|
||||
/obj/item/stack/medical/mesh,
|
||||
/turf/open/floor/plasteel/airless{
|
||||
icon_state = "damaged3"
|
||||
},
|
||||
@@ -2866,7 +2866,7 @@
|
||||
/turf/open/floor/plasteel/airless/white,
|
||||
/area/ruin/space/derelict/medical)
|
||||
"jB" = (
|
||||
/obj/item/stack/medical/ointment,
|
||||
/obj/item/stack/medical/mesh,
|
||||
/turf/open/floor/plasteel/airless/white,
|
||||
/area/ruin/space/derelict/medical)
|
||||
"jC" = (
|
||||
|
||||
@@ -843,7 +843,7 @@
|
||||
/area/ruin/space/has_grav/ancientstation/deltacorridor)
|
||||
"cx" = (
|
||||
/obj/effect/decal/cleanable/dirt,
|
||||
/obj/item/stack/medical/bruise_pack,
|
||||
/obj/item/stack/medical/suture,
|
||||
/obj/effect/decal/cleanable/dirt,
|
||||
/turf/open/floor/plasteel,
|
||||
/area/ruin/space/has_grav/ancientstation/deltacorridor)
|
||||
|
||||
@@ -1610,7 +1610,7 @@
|
||||
/turf/open/floor/plasteel/cafeteria,
|
||||
/area/awaymission/wildwest/mines)
|
||||
"fi" = (
|
||||
/obj/item/stack/medical/bruise_pack,
|
||||
/obj/item/stack/medical/suture,
|
||||
/obj/effect/turf_decal/tile/blue{
|
||||
dir = 4
|
||||
},
|
||||
|
||||
@@ -15264,8 +15264,8 @@
|
||||
},
|
||||
/obj/item/stack/medical/gauze,
|
||||
/obj/item/reagent_containers/blood,
|
||||
/obj/item/stack/medical/bruise_pack,
|
||||
/obj/item/stack/medical/ointment,
|
||||
/obj/item/stack/medical/suture,
|
||||
/obj/item/stack/medical/mesh,
|
||||
/obj/structure/extinguisher_cabinet{
|
||||
pixel_x = -26
|
||||
},
|
||||
|
||||
@@ -77360,8 +77360,8 @@
|
||||
"cBx" = (
|
||||
/obj/structure/rack,
|
||||
/obj/item/stack/medical/gauze,
|
||||
/obj/item/stack/medical/bruise_pack,
|
||||
/obj/item/stack/medical/ointment,
|
||||
/obj/item/stack/medical/suture,
|
||||
/obj/item/stack/medical/mesh,
|
||||
/obj/item/reagent_containers/syringe/epinephrine{
|
||||
pixel_x = -3;
|
||||
pixel_y = 3
|
||||
@@ -85495,8 +85495,8 @@
|
||||
"cPs" = (
|
||||
/obj/structure/table,
|
||||
/obj/item/stack/medical/gauze,
|
||||
/obj/item/stack/medical/bruise_pack,
|
||||
/obj/item/stack/medical/ointment,
|
||||
/obj/item/stack/medical/suture,
|
||||
/obj/item/stack/medical/mesh,
|
||||
/obj/effect/turf_decal/tile/blue{
|
||||
dir = 4
|
||||
},
|
||||
@@ -91727,8 +91727,8 @@
|
||||
"cZH" = (
|
||||
/obj/structure/table/glass,
|
||||
/obj/item/stack/medical/gauze,
|
||||
/obj/item/stack/medical/bruise_pack,
|
||||
/obj/item/stack/medical/ointment,
|
||||
/obj/item/stack/medical/suture,
|
||||
/obj/item/stack/medical/mesh,
|
||||
/obj/machinery/camera{
|
||||
c_tag = "Medbay - Sleepers";
|
||||
name = "medbay camera";
|
||||
@@ -94026,8 +94026,8 @@
|
||||
"ddp" = (
|
||||
/obj/structure/table/glass,
|
||||
/obj/item/stack/medical/gauze,
|
||||
/obj/item/stack/medical/bruise_pack,
|
||||
/obj/item/stack/medical/ointment,
|
||||
/obj/item/stack/medical/suture,
|
||||
/obj/item/stack/medical/mesh,
|
||||
/obj/structure/sign/warning/nosmoking{
|
||||
pixel_y = 32
|
||||
},
|
||||
@@ -101144,8 +101144,8 @@
|
||||
"dqj" = (
|
||||
/obj/structure/table,
|
||||
/obj/item/stack/medical/gauze,
|
||||
/obj/item/stack/medical/bruise_pack,
|
||||
/obj/item/stack/medical/ointment,
|
||||
/obj/item/stack/medical/suture,
|
||||
/obj/item/stack/medical/mesh,
|
||||
/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{
|
||||
dir = 1
|
||||
},
|
||||
|
||||
@@ -25243,7 +25243,7 @@
|
||||
pixel_y = 4
|
||||
},
|
||||
/obj/item/lighter,
|
||||
/obj/item/stack/medical/bruise_pack,
|
||||
/obj/item/stack/medical/suture,
|
||||
/turf/open/floor/plasteel/dark,
|
||||
/area/maintenance/port)
|
||||
"aPO" = (
|
||||
@@ -27105,8 +27105,8 @@
|
||||
"aSy" = (
|
||||
/obj/structure/table,
|
||||
/obj/item/stack/medical/gauze,
|
||||
/obj/item/stack/medical/ointment,
|
||||
/obj/item/stack/medical/bruise_pack{
|
||||
/obj/item/stack/medical/mesh,
|
||||
/obj/item/stack/medical/suture{
|
||||
pixel_x = 4
|
||||
},
|
||||
/obj/item/storage/firstaid/regular,
|
||||
@@ -55554,10 +55554,10 @@
|
||||
/obj/structure/table,
|
||||
/obj/item/storage/firstaid/regular,
|
||||
/obj/item/stack/medical/gauze,
|
||||
/obj/item/stack/medical/ointment{
|
||||
/obj/item/stack/medical/mesh{
|
||||
pixel_y = 4
|
||||
},
|
||||
/obj/item/stack/medical/bruise_pack,
|
||||
/obj/item/stack/medical/suture,
|
||||
/obj/effect/turf_decal/tile/neutral{
|
||||
dir = 8
|
||||
},
|
||||
|
||||
@@ -16073,11 +16073,11 @@
|
||||
pixel_y = -1
|
||||
},
|
||||
/obj/item/reagent_containers/dropper,
|
||||
/obj/item/stack/medical/bruise_pack{
|
||||
/obj/item/stack/medical/suture{
|
||||
pixel_x = -2;
|
||||
pixel_y = 6
|
||||
},
|
||||
/obj/item/stack/medical/ointment,
|
||||
/obj/item/stack/medical/mesh,
|
||||
/obj/item/healthanalyzer,
|
||||
/turf/open/floor/plasteel/white,
|
||||
/area/science/explab)
|
||||
@@ -34517,8 +34517,8 @@
|
||||
/area/gateway)
|
||||
"bmm" = (
|
||||
/obj/structure/rack,
|
||||
/obj/item/stack/medical/ointment,
|
||||
/obj/item/stack/medical/bruise_pack,
|
||||
/obj/item/stack/medical/mesh,
|
||||
/obj/item/stack/medical/suture,
|
||||
/obj/item/reagent_containers/syringe/charcoal,
|
||||
/obj/item/reagent_containers/syringe/epinephrine{
|
||||
pixel_x = -1;
|
||||
@@ -64186,8 +64186,8 @@
|
||||
pixel_y = -32
|
||||
},
|
||||
/obj/item/stack/medical/gauze,
|
||||
/obj/item/stack/medical/bruise_pack,
|
||||
/obj/item/stack/medical/ointment,
|
||||
/obj/item/stack/medical/suture,
|
||||
/obj/item/stack/medical/mesh,
|
||||
/obj/structure/table/glass,
|
||||
/turf/open/floor/plating,
|
||||
/area/medical/abandoned)
|
||||
@@ -75822,11 +75822,11 @@
|
||||
/obj/item/folder,
|
||||
/obj/item/folder,
|
||||
/obj/structure/table/reinforced,
|
||||
/obj/item/stack/medical/ointment{
|
||||
/obj/item/stack/medical/mesh{
|
||||
pixel_x = 3;
|
||||
pixel_y = -2
|
||||
},
|
||||
/obj/item/stack/medical/bruise_pack{
|
||||
/obj/item/stack/medical/suture{
|
||||
pixel_x = -3;
|
||||
pixel_y = 2
|
||||
},
|
||||
|
||||
@@ -4919,11 +4919,11 @@
|
||||
/area/maintenance/solars/port/fore)
|
||||
"ajj" = (
|
||||
/obj/structure/table,
|
||||
/obj/item/stack/medical/ointment{
|
||||
/obj/item/stack/medical/mesh{
|
||||
pixel_x = 3;
|
||||
pixel_y = -2
|
||||
},
|
||||
/obj/item/stack/medical/bruise_pack{
|
||||
/obj/item/stack/medical/suture{
|
||||
pixel_x = -3;
|
||||
pixel_y = 2
|
||||
},
|
||||
@@ -46804,8 +46804,8 @@
|
||||
/area/bridge/showroom/corporate)
|
||||
"bOG" = (
|
||||
/obj/structure/rack,
|
||||
/obj/item/stack/medical/ointment,
|
||||
/obj/item/stack/medical/bruise_pack,
|
||||
/obj/item/stack/medical/mesh,
|
||||
/obj/item/stack/medical/suture,
|
||||
/obj/item/reagent_containers/syringe/charcoal,
|
||||
/obj/item/reagent_containers/syringe/epinephrine{
|
||||
pixel_x = -1;
|
||||
@@ -52251,8 +52251,8 @@
|
||||
"cap" = (
|
||||
/obj/structure/table,
|
||||
/obj/item/stack/medical/gauze,
|
||||
/obj/item/stack/medical/ointment,
|
||||
/obj/item/stack/medical/bruise_pack,
|
||||
/obj/item/stack/medical/mesh,
|
||||
/obj/item/stack/medical/suture,
|
||||
/obj/effect/turf_decal/tile/blue{
|
||||
dir = 1
|
||||
},
|
||||
@@ -58829,11 +58829,11 @@
|
||||
pixel_y = -1
|
||||
},
|
||||
/obj/item/reagent_containers/dropper,
|
||||
/obj/item/stack/medical/bruise_pack{
|
||||
/obj/item/stack/medical/suture{
|
||||
pixel_x = -2;
|
||||
pixel_y = 6
|
||||
},
|
||||
/obj/item/stack/medical/ointment,
|
||||
/obj/item/stack/medical/mesh,
|
||||
/obj/item/healthanalyzer,
|
||||
/obj/effect/turf_decal/stripes/line,
|
||||
/turf/open/floor/plasteel,
|
||||
@@ -60419,9 +60419,9 @@
|
||||
/obj/effect/decal/cleanable/blood/gibs/limb,
|
||||
/obj/structure/rack,
|
||||
/obj/item/storage/firstaid/regular,
|
||||
/obj/item/stack/medical/bruise_pack,
|
||||
/obj/item/stack/medical/bruise_pack,
|
||||
/obj/item/stack/medical/ointment,
|
||||
/obj/item/stack/medical/suture,
|
||||
/obj/item/stack/medical/suture,
|
||||
/obj/item/stack/medical/mesh,
|
||||
/obj/item/clothing/glasses/hud/health,
|
||||
/turf/open/floor/plating,
|
||||
/area/maintenance/starboard/aft)
|
||||
|
||||
@@ -34525,8 +34525,8 @@
|
||||
/area/maintenance/department/engine)
|
||||
"bBY" = (
|
||||
/obj/structure/closet/crate/medical,
|
||||
/obj/item/stack/medical/ointment,
|
||||
/obj/item/stack/medical/bruise_pack,
|
||||
/obj/item/stack/medical/mesh,
|
||||
/obj/item/stack/medical/suture,
|
||||
/turf/open/floor/plating,
|
||||
/area/maintenance/department/engine)
|
||||
"bBZ" = (
|
||||
@@ -40238,7 +40238,7 @@
|
||||
},
|
||||
/area/maintenance/department/chapel/monastery)
|
||||
"bNF" = (
|
||||
/obj/item/stack/medical/bruise_pack,
|
||||
/obj/item/stack/medical/suture,
|
||||
/turf/open/floor/plasteel/dark,
|
||||
/area/maintenance/department/engine)
|
||||
"bNG" = (
|
||||
|
||||
@@ -49,7 +49,7 @@
|
||||
/area/holodeck/rec_center/bunker)
|
||||
"ak" = (
|
||||
/obj/structure/table,
|
||||
/obj/item/stack/medical/ointment{
|
||||
/obj/item/stack/medical/mesh{
|
||||
heal_burn = 10
|
||||
},
|
||||
/turf/open/floor/holofloor/asteroid,
|
||||
@@ -355,7 +355,7 @@
|
||||
/area/holodeck/rec_center/lounge)
|
||||
"bc" = (
|
||||
/obj/structure/table,
|
||||
/obj/item/stack/medical/bruise_pack{
|
||||
/obj/item/stack/medical/suture{
|
||||
heal_brute = 10
|
||||
},
|
||||
/turf/open/floor/holofloor/asteroid,
|
||||
@@ -10568,8 +10568,8 @@
|
||||
/area/wizard_station)
|
||||
"yD" = (
|
||||
/obj/structure/table/wood,
|
||||
/obj/item/stack/medical/bruise_pack,
|
||||
/obj/item/stack/medical/ointment,
|
||||
/obj/item/stack/medical/suture,
|
||||
/obj/item/stack/medical/mesh,
|
||||
/turf/open/floor/engine/cult,
|
||||
/area/wizard_station)
|
||||
"yE" = (
|
||||
|
||||
@@ -333,8 +333,8 @@
|
||||
"aT" = (
|
||||
/obj/structure/table,
|
||||
/obj/item/stack/medical/gauze,
|
||||
/obj/item/stack/medical/bruise_pack,
|
||||
/obj/item/stack/medical/ointment,
|
||||
/obj/item/stack/medical/suture,
|
||||
/obj/item/stack/medical/mesh,
|
||||
/obj/machinery/light{
|
||||
dir = 4
|
||||
},
|
||||
|
||||
@@ -365,11 +365,11 @@
|
||||
/area/shuttle/escape)
|
||||
"bi" = (
|
||||
/obj/structure/table,
|
||||
/obj/item/stack/medical/bruise_pack{
|
||||
/obj/item/stack/medical/suture{
|
||||
pixel_x = 5;
|
||||
pixel_y = 5
|
||||
},
|
||||
/obj/item/stack/medical/bruise_pack,
|
||||
/obj/item/stack/medical/suture,
|
||||
/turf/open/floor/mineral/plastitanium,
|
||||
/area/shuttle/escape)
|
||||
"bj" = (
|
||||
|
||||
@@ -608,8 +608,8 @@
|
||||
"bu" = (
|
||||
/obj/structure/table/reinforced,
|
||||
/obj/item/stack/medical/gauze,
|
||||
/obj/item/stack/medical/bruise_pack,
|
||||
/obj/item/stack/medical/ointment,
|
||||
/obj/item/stack/medical/suture,
|
||||
/obj/item/stack/medical/mesh,
|
||||
/obj/effect/turf_decal/bot_white,
|
||||
/turf/open/floor/plasteel/dark,
|
||||
/area/shuttle/syndicate/medical)
|
||||
|
||||
@@ -51,7 +51,7 @@ GLOBAL_LIST_INIT(maintenance_loot, list(
|
||||
/obj/item/airlock_painter = 1,
|
||||
/obj/item/stack/cable_coil/random = 4,
|
||||
/obj/item/stack/cable_coil/random/five = 6,
|
||||
/obj/item/stack/medical/bruise_pack = 1,
|
||||
/obj/item/stack/medical/suture = 1,
|
||||
/obj/item/stack/rods/ten = 9,
|
||||
/obj/item/stack/rods/twentyfive = 1,
|
||||
/obj/item/stack/rods/fifty = 1,
|
||||
|
||||
@@ -124,9 +124,9 @@
|
||||
category = CAT_MISC
|
||||
subcategory = CAT_TOOL
|
||||
|
||||
/datum/crafting_recipe/bruise_pack
|
||||
name = "Bruise Pack"
|
||||
result = /obj/item/stack/medical/bruise_pack/one
|
||||
/datum/crafting_recipe/brute_pack
|
||||
name = "Suture Pack"
|
||||
result = /obj/item/stack/medical/suture/one
|
||||
time = 1
|
||||
reqs = list(/obj/item/stack/medical/gauze = 1,
|
||||
/datum/reagent/medicine/styptic_powder = 10)
|
||||
@@ -134,8 +134,8 @@
|
||||
subcategory = CAT_TOOL
|
||||
|
||||
/datum/crafting_recipe/burn_pack
|
||||
name = "Burn Ointment"
|
||||
result = /obj/item/stack/medical/ointment/one
|
||||
name = "Regenerative Mesh"
|
||||
result = /obj/item/stack/medical/mesh/one
|
||||
time = 1
|
||||
reqs = list(/obj/item/stack/medical/gauze = 1,
|
||||
/datum/reagent/medicine/silver_sulfadiazine = 10)
|
||||
|
||||
@@ -491,7 +491,7 @@
|
||||
/obj/item/kitchen/knife = 5,
|
||||
/obj/item/screwdriver = 5,
|
||||
/obj/item/crowbar/red = 1, //Dont you need a crowbar to open this?
|
||||
/obj/item/stack/medical/bruise_pack = 3,
|
||||
/obj/item/stack/medical/suture = 3,
|
||||
/obj/item/reagent_containers/food/drinks/bottle/vodka = 2,
|
||||
/obj/item/radio = 5,
|
||||
/obj/item/flashlight = 4,
|
||||
|
||||
@@ -83,7 +83,7 @@
|
||||
/obj/item/card/emag/bluespace
|
||||
name = "bluespace cryptographic sequencer"
|
||||
desc = "It's a blue card with a magnetic strip attached to some circuitry. It appears to have some sort of transmitter attached to it."
|
||||
color = rgb(40, 130, 255)
|
||||
icon_state = "emag_bs"
|
||||
prox_check = FALSE
|
||||
|
||||
/obj/item/card/emag/attack()
|
||||
@@ -166,6 +166,7 @@
|
||||
slot_flags = ITEM_SLOT_ID
|
||||
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 100)
|
||||
resistance_flags = FIRE_PROOF | ACID_PROOF
|
||||
var/id_type_name = "identification card"
|
||||
var/mining_points = 0 //For redeeming at mining equipment vendors
|
||||
var/list/access = list()
|
||||
var/registered_name = null // The name registered_name on the card
|
||||
@@ -174,6 +175,8 @@
|
||||
var/bank_support = ID_FREE_BANK_ACCOUNT
|
||||
var/datum/bank_account/registered_account
|
||||
var/obj/machinery/paystand/my_store
|
||||
var/uses_overlays = TRUE
|
||||
var/icon/cached_flat_icon
|
||||
|
||||
/obj/item/card/id/Initialize(mapload)
|
||||
. = ..()
|
||||
@@ -362,20 +365,38 @@
|
||||
/obj/item/card/id/RemoveID()
|
||||
return src
|
||||
|
||||
/*
|
||||
Usage:
|
||||
update_label()
|
||||
Sets the id name to whatever registered_name and assignment is
|
||||
/obj/item/card/id/update_overlays()
|
||||
. = ..()
|
||||
if(!uses_overlays)
|
||||
return
|
||||
cached_flat_icon = null
|
||||
var/job = assignment ? ckey(GetJobName()) : null
|
||||
if(registered_name == "Captain")
|
||||
job = "captain"
|
||||
if(registered_name && registered_name != "Captain")
|
||||
. += mutable_appearance(icon, "assigned")
|
||||
if(job)
|
||||
. += mutable_appearance(icon, "id[job]")
|
||||
|
||||
/obj/item/card/id/proc/get_cached_flat_icon()
|
||||
if(!cached_flat_icon)
|
||||
cached_flat_icon = getFlatIcon(src)
|
||||
return cached_flat_icon
|
||||
|
||||
|
||||
/obj/item/card/id/get_examine_string(mob/user, thats = FALSE)
|
||||
if(uses_overlays)
|
||||
return "[icon2html(get_cached_flat_icon(), user)] [thats? "That's ":""][get_examine_name(user)]" //displays all overlays in chat
|
||||
return ..()
|
||||
|
||||
update_label("John Doe", "Clowny")
|
||||
Properly formats the name and occupation and sets the id name to the arguments
|
||||
*/
|
||||
/obj/item/card/id/proc/update_label(newname, newjob)
|
||||
if(newname || newjob)
|
||||
name = "[(!newname) ? "identification card" : "[newname]'s ID Card"][(!newjob) ? "" : " ([newjob])"]"
|
||||
update_icon()
|
||||
return
|
||||
|
||||
name = "[(!registered_name) ? "identification card" : "[registered_name]'s ID Card"][(!assignment) ? "" : " ([assignment])"]"
|
||||
update_icon()
|
||||
|
||||
/obj/item/card/id/silver
|
||||
name = "silver identification card"
|
||||
@@ -388,6 +409,7 @@ update_label("John Doe", "Clowny")
|
||||
/obj/item/card/id/silver/reaper
|
||||
name = "Thirteen's ID Card (Reaper)"
|
||||
access = list(ACCESS_MAINT_TUNNELS)
|
||||
icon_state = "reaper"
|
||||
assignment = "Reaper"
|
||||
registered_name = "Thirteen"
|
||||
|
||||
@@ -539,7 +561,7 @@ update_label("John Doe", "Clowny")
|
||||
/obj/item/card/id/ert
|
||||
name = "\improper CentCom ID"
|
||||
desc = "An ERT ID card."
|
||||
icon_state = "centcom"
|
||||
icon_state = "ert_commander"
|
||||
registered_name = "Emergency Response Team Commander"
|
||||
assignment = "Emergency Response Team Commander"
|
||||
|
||||
@@ -548,6 +570,7 @@ update_label("John Doe", "Clowny")
|
||||
. = ..()
|
||||
|
||||
/obj/item/card/id/ert/Security
|
||||
icon_state = "ert_security"
|
||||
registered_name = "Security Response Officer"
|
||||
assignment = "Security Response Officer"
|
||||
|
||||
@@ -556,6 +579,7 @@ update_label("John Doe", "Clowny")
|
||||
. = ..()
|
||||
|
||||
/obj/item/card/id/ert/Engineer
|
||||
icon_state = "ert_engineer"
|
||||
registered_name = "Engineer Response Officer"
|
||||
assignment = "Engineer Response Officer"
|
||||
|
||||
@@ -564,6 +588,7 @@ update_label("John Doe", "Clowny")
|
||||
. = ..()
|
||||
|
||||
/obj/item/card/id/ert/Medical
|
||||
icon_state = "ert_medical"
|
||||
registered_name = "Medical Response Officer"
|
||||
assignment = "Medical Response Officer"
|
||||
|
||||
@@ -572,6 +597,7 @@ update_label("John Doe", "Clowny")
|
||||
. = ..()
|
||||
|
||||
/obj/item/card/id/ert/chaplain
|
||||
icon_state = "ert_chaplain"
|
||||
registered_name = "Religious Response Officer"
|
||||
assignment = "Religious Response Officer"
|
||||
|
||||
@@ -624,40 +650,49 @@ update_label("John Doe", "Clowny")
|
||||
. += "<span class='notice'>Your sentence is up! You're free!</span>"
|
||||
|
||||
/obj/item/card/id/prisoner/one
|
||||
icon_state = "prisoner_001"
|
||||
name = "Prisoner #13-001"
|
||||
registered_name = "Prisoner #13-001"
|
||||
|
||||
/obj/item/card/id/prisoner/two
|
||||
icon_state = "prisoner_002"
|
||||
name = "Prisoner #13-002"
|
||||
registered_name = "Prisoner #13-002"
|
||||
|
||||
/obj/item/card/id/prisoner/three
|
||||
icon_state = "prisoner_003"
|
||||
name = "Prisoner #13-003"
|
||||
registered_name = "Prisoner #13-003"
|
||||
|
||||
/obj/item/card/id/prisoner/four
|
||||
icon_state = "prisoner_004"
|
||||
name = "Prisoner #13-004"
|
||||
registered_name = "Prisoner #13-004"
|
||||
|
||||
/obj/item/card/id/prisoner/five
|
||||
icon_state = "prisoner_005"
|
||||
name = "Prisoner #13-005"
|
||||
registered_name = "Prisoner #13-005"
|
||||
|
||||
/obj/item/card/id/prisoner/six
|
||||
icon_state = "prisoner_006"
|
||||
name = "Prisoner #13-006"
|
||||
registered_name = "Prisoner #13-006"
|
||||
|
||||
/obj/item/card/id/prisoner/seven
|
||||
icon_state = "prisoner_007"
|
||||
name = "Prisoner #13-007"
|
||||
registered_name = "Prisoner #13-007"
|
||||
|
||||
/obj/item/card/id/mining
|
||||
name = "mining ID"
|
||||
icon_state = "retro"
|
||||
access = list(ACCESS_MINING, ACCESS_MINING_STATION, ACCESS_MAILSORTING, ACCESS_MINERAL_STOREROOM)
|
||||
|
||||
/obj/item/card/id/away
|
||||
name = "a perfectly generic identification card"
|
||||
desc = "A perfectly generic identification card. Looks like it could use some flavor."
|
||||
icon_state = "retro"
|
||||
access = list(ACCESS_AWAY_GENERAL)
|
||||
|
||||
/obj/item/card/id/away/hotel
|
||||
@@ -700,6 +735,7 @@ update_label("John Doe", "Clowny")
|
||||
/obj/item/card/id/departmental_budget
|
||||
name = "departmental card (FUCK)"
|
||||
desc = "Provides access to the departmental budget."
|
||||
icon_state = "budgetcard"
|
||||
var/department_ID = ACCOUNT_CIV
|
||||
var/department_name = ACCOUNT_CIV_NAME
|
||||
|
||||
@@ -712,6 +748,7 @@ update_label("John Doe", "Clowny")
|
||||
B.bank_cards += src
|
||||
name = "departmental card ([department_name])"
|
||||
desc = "Provides access to the [department_name]."
|
||||
icon_state = "[lowertext(department_ID)]_budget"
|
||||
SSeconomy.dep_cards += src
|
||||
|
||||
/obj/item/card/id/departmental_budget/Destroy()
|
||||
|
||||
@@ -13,18 +13,33 @@
|
||||
novariants = FALSE
|
||||
item_flags = NOBLUDGEON
|
||||
var/self_delay = 50
|
||||
var/other_delay = 0
|
||||
var/repeating = FALSE
|
||||
|
||||
/obj/item/stack/medical/attack(mob/living/M, mob/user)
|
||||
. = ..()
|
||||
try_heal(M, user)
|
||||
|
||||
|
||||
/obj/item/stack/medical/proc/try_heal(mob/living/M, mob/user, silent = FALSE)
|
||||
if(!M.can_inject(user, TRUE))
|
||||
return
|
||||
if(M == user)
|
||||
user.visible_message("<span class='notice'>[user] starts to apply \the [src] on [user.p_them()]self...</span>", "<span class='notice'>You begin applying \the [src] on yourself...</span>")
|
||||
if(!silent)
|
||||
user.visible_message("<span class='notice'>[user] starts to apply \the [src] on [user.p_them()]self...</span>", "<span class='notice'>You begin applying \the [src] on yourself...</span>")
|
||||
if(!do_mob(user, M, self_delay, extra_checks=CALLBACK(M, /mob/living/proc/can_inject, user, TRUE)))
|
||||
return
|
||||
else if(other_delay)
|
||||
if(!silent)
|
||||
user.visible_message("<span class='notice'>[user] starts to apply \the [src] on [M].</span>", "<span class='notice'>You begin applying \the [src] on [M]...</span>")
|
||||
if(!do_mob(user, M, other_delay, extra_checks=CALLBACK(M, /mob/living/proc/can_inject, user, TRUE)))
|
||||
return
|
||||
|
||||
if(heal(M, user))
|
||||
log_combat(user, M, "healed", src.name)
|
||||
use(1)
|
||||
if(repeating && amount > 0)
|
||||
try_heal(M, user, TRUE)
|
||||
|
||||
|
||||
/obj/item/stack/medical/proc/heal(mob/living/M, mob/user)
|
||||
@@ -174,3 +189,108 @@
|
||||
/obj/item/stack/medical/ointment/suicide_act(mob/living/user)
|
||||
user.visible_message("<span class='suicide'>[user] is squeezing \the [src] into [user.p_their()] mouth! [user.p_do(TRUE)]n't [user.p_they()] know that stuff is toxic?</span>")
|
||||
return TOXLOSS
|
||||
|
||||
/obj/item/stack/medical/suture
|
||||
name = "suture"
|
||||
desc = "Sterile sutures used to seal up cuts and lacerations."
|
||||
gender = PLURAL
|
||||
singular_name = "suture"
|
||||
icon_state = "suture"
|
||||
self_delay = 30
|
||||
other_delay = 10
|
||||
amount = 15
|
||||
max_amount = 15
|
||||
repeating = TRUE
|
||||
var/heal_brute = 10
|
||||
grind_results = list(/datum/reagent/medicine/spaceacillin = 2)
|
||||
|
||||
/obj/item/stack/medical/suture/one
|
||||
amount = 1
|
||||
|
||||
/obj/item/stack/medical/suture/heal(mob/living/M, mob/user)
|
||||
. = ..()
|
||||
if(M.stat == DEAD)
|
||||
to_chat(user, "<span class='warning'>[M] is dead! You can not help [M.p_them()].</span>")
|
||||
return
|
||||
if(iscarbon(M))
|
||||
return heal_carbon(M, user, heal_brute, 0)
|
||||
if(isanimal(M))
|
||||
var/mob/living/simple_animal/critter = M
|
||||
if (!(critter.healable))
|
||||
to_chat(user, "<span class='warning'>You cannot use \the [src] on [M]!</span>")
|
||||
return FALSE
|
||||
else if (critter.health == critter.maxHealth)
|
||||
to_chat(user, "<span class='notice'>[M] is at full health.</span>")
|
||||
return FALSE
|
||||
user.visible_message("<span class='green'>[user] applies \the [src] on [M].</span>", "<span class='green'>You apply \the [src] on [M].</span>")
|
||||
M.heal_bodypart_damage(heal_brute)
|
||||
return TRUE
|
||||
|
||||
to_chat(user, "<span class='warning'>You can't heal [M] with the \the [src]!</span>")
|
||||
|
||||
/obj/item/stack/medical/mesh
|
||||
name = "regenerative mesh"
|
||||
desc = "A bacteriostatic mesh used to dress burns."
|
||||
gender = PLURAL
|
||||
singular_name = "regenerative mesh"
|
||||
icon_state = "regen_mesh"
|
||||
self_delay = 30
|
||||
other_delay = 10
|
||||
amount = 15
|
||||
max_amount = 15
|
||||
repeating = TRUE
|
||||
var/heal_burn = 10
|
||||
var/is_open = TRUE ///This var determines if the sterile packaging of the mesh has been opened.
|
||||
grind_results = list(/datum/reagent/medicine/spaceacillin = 2)
|
||||
|
||||
/obj/item/stack/medical/mesh/one
|
||||
amount = 1
|
||||
|
||||
/obj/item/stack/medical/mesh/Initialize()
|
||||
. = ..()
|
||||
if(amount == max_amount) //only seal full mesh packs
|
||||
is_open = FALSE
|
||||
update_icon()
|
||||
|
||||
/obj/item/stack/medical/mesh/update_icon_state()
|
||||
if(!is_open)
|
||||
icon_state = "regen_mesh_closed"
|
||||
else
|
||||
return ..()
|
||||
|
||||
/obj/item/stack/medical/mesh/heal(mob/living/M, mob/user)
|
||||
. = ..()
|
||||
if(M.stat == DEAD)
|
||||
to_chat(user, "<span class='warning'>[M] is dead! You can not help [M.p_them()].</span>")
|
||||
return
|
||||
if(iscarbon(M))
|
||||
return heal_carbon(M, user, 0, heal_burn)
|
||||
to_chat(user, "<span class='warning'>You can't heal [M] with the \the [src]!</span>")
|
||||
|
||||
|
||||
/obj/item/stack/medical/mesh/try_heal(mob/living/M, mob/user, silent = FALSE)
|
||||
if(!is_open)
|
||||
to_chat(user, "<span class='warning'>You need to open [src] first.</span>")
|
||||
return
|
||||
. = ..()
|
||||
|
||||
/obj/item/stack/medical/mesh/AltClick(mob/living/user)
|
||||
if(!is_open)
|
||||
to_chat(user, "<span class='warning'>You need to open [src] first.</span>")
|
||||
return
|
||||
. = ..()
|
||||
|
||||
/obj/item/stack/medical/mesh/attack_hand(mob/user)
|
||||
if(!is_open & user.get_inactive_held_item() == src)
|
||||
to_chat(user, "<span class='warning'>You need to open [src] first.</span>")
|
||||
return
|
||||
. = ..()
|
||||
|
||||
/obj/item/stack/medical/mesh/attack_self(mob/user)
|
||||
if(!is_open)
|
||||
is_open = TRUE
|
||||
to_chat(user, "<span class='notice'>You open the sterile mesh package.</span>")
|
||||
update_icon()
|
||||
playsound(src, 'sound/items/poster_ripped.ogg', 20, TRUE)
|
||||
return
|
||||
. = ..()
|
||||
|
||||
@@ -745,8 +745,8 @@
|
||||
|
||||
//////
|
||||
/obj/item/storage/box/hug/medical/PopulateContents()
|
||||
new /obj/item/stack/medical/bruise_pack(src)
|
||||
new /obj/item/stack/medical/ointment(src)
|
||||
new /obj/item/stack/medical/suture(src)
|
||||
new /obj/item/stack/medical/mesh(src)
|
||||
new /obj/item/reagent_containers/hypospray/medipen(src)
|
||||
|
||||
// Clown survival box
|
||||
|
||||
@@ -37,10 +37,10 @@
|
||||
if(empty)
|
||||
return
|
||||
new /obj/item/stack/medical/gauze(src)
|
||||
new /obj/item/stack/medical/bruise_pack(src)
|
||||
new /obj/item/stack/medical/bruise_pack(src)
|
||||
new /obj/item/stack/medical/ointment(src)
|
||||
new /obj/item/stack/medical/ointment(src)
|
||||
new /obj/item/stack/medical/suture(src)
|
||||
new /obj/item/stack/medical/suture(src)
|
||||
new /obj/item/stack/medical/mesh(src)
|
||||
new /obj/item/stack/medical/mesh(src)
|
||||
new /obj/item/reagent_containers/hypospray/medipen(src)
|
||||
new /obj/item/healthanalyzer(src)
|
||||
|
||||
@@ -52,12 +52,12 @@
|
||||
if(empty)
|
||||
return
|
||||
new /obj/item/stack/medical/gauze(src)
|
||||
new /obj/item/stack/medical/bruise_pack(src)
|
||||
new /obj/item/stack/medical/bruise_pack(src)
|
||||
new /obj/item/stack/medical/bruise_pack(src)
|
||||
new /obj/item/stack/medical/ointment(src)
|
||||
new /obj/item/stack/medical/ointment(src)
|
||||
new /obj/item/stack/medical/ointment(src)
|
||||
new /obj/item/stack/medical/suture(src)
|
||||
new /obj/item/stack/medical/suture(src)
|
||||
new /obj/item/stack/medical/suture(src)
|
||||
new /obj/item/stack/medical/mesh(src)
|
||||
new /obj/item/stack/medical/mesh(src)
|
||||
new /obj/item/stack/medical/mesh(src)
|
||||
|
||||
/obj/item/storage/firstaid/fire
|
||||
name = "burn treatment kit"
|
||||
|
||||
@@ -581,7 +581,7 @@
|
||||
uniform = /obj/item/clothing/under/rank/rnd/scientist
|
||||
shoes = /obj/item/clothing/shoes/laceup
|
||||
id = /obj/item/card/id/away/old/sci
|
||||
l_pocket = /obj/item/stack/medical/bruise_pack
|
||||
l_pocket = /obj/item/stack/medical/suture
|
||||
assignedrole = "Ancient Crew"
|
||||
job_description = "Oldstation Crew"
|
||||
|
||||
|
||||
@@ -88,7 +88,7 @@
|
||||
/obj/item/t_scanner = 5,
|
||||
/obj/item/airlock_painter = 1,
|
||||
/obj/item/stack/cable_coil = 6,
|
||||
/obj/item/stack/medical/bruise_pack = 1,
|
||||
/obj/item/stack/medical/suture = 1,
|
||||
/obj/item/stack/rods = 3,
|
||||
/obj/item/stack/sheet/cardboard = 2,
|
||||
/obj/item/stack/sheet/metal = 1,
|
||||
|
||||
@@ -250,7 +250,7 @@
|
||||
if(istype(O, /obj/item/stack/medical/gauze))
|
||||
var/obj/item/stack/medical/gauze/G = O
|
||||
reac_volume = min((reac_volume / 10), G.amount)
|
||||
new/obj/item/stack/medical/ointment(get_turf(G), reac_volume)
|
||||
new/obj/item/stack/medical/mesh(get_turf(G), reac_volume)
|
||||
G.use(reac_volume)
|
||||
|
||||
/datum/reagent/medicine/silver_sulfadiazine/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message = 1)
|
||||
@@ -336,7 +336,7 @@
|
||||
if(istype(O, /obj/item/stack/medical/gauze))
|
||||
var/obj/item/stack/medical/gauze/G = O
|
||||
reac_volume = min((reac_volume / 10), G.amount)
|
||||
new/obj/item/stack/medical/bruise_pack(get_turf(G), reac_volume)
|
||||
new/obj/item/stack/medical/suture(get_turf(G), reac_volume)
|
||||
G.use(reac_volume)
|
||||
|
||||
/datum/reagent/medicine/styptic_powder/on_mob_life(mob/living/carbon/M)
|
||||
|
||||
@@ -51,6 +51,11 @@
|
||||
<div class="commit sansserif">
|
||||
|
||||
<h2 class="date">17 June 2020</h2>
|
||||
<h3 class="author">SmArtKar updated:</h3>
|
||||
<ul class="changes bgimages16">
|
||||
<li class="rscadd">New ID icons</li>
|
||||
<li class="rscadd">Sutures and Meshes</li>
|
||||
</ul>
|
||||
<h3 class="author">Trilbyspaceclone updated:</h3>
|
||||
<ul class="changes bgimages16">
|
||||
<li class="bugfix">Gin export takes gin now</li>
|
||||
|
||||
@@ -25978,5 +25978,8 @@ DO NOT EDIT THIS FILE BY HAND! AUTOMATICALLY GENERATED BY ss13_genchangelog.py.
|
||||
drinks.
|
||||
- rscadd: slimes can now change their color using alter form
|
||||
2020-06-17:
|
||||
SmArtKar:
|
||||
- rscadd: New ID icons
|
||||
- rscadd: Sutures and Meshes
|
||||
Trilbyspaceclone:
|
||||
- bugfix: Gin export takes gin now
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 5.8 KiB After Width: | Height: | Size: 15 KiB |
Reference in New Issue
Block a user