Merge remote-tracking branch 'VOREStation/master' into upstream-merge-7697

This commit is contained in:
Unknown
2021-03-11 10:01:39 -05:00
323 changed files with 181375 additions and 155860 deletions
@@ -1,3 +1,5 @@
#define LOADOUT_BAN_STRING "Custom loadout"
/datum/gear_tweak/proc/get_contents(var/metadata)
return
@@ -165,7 +167,7 @@ var/datum/gear_tweak/custom_name/gear_tweak_free_name = new()
return ""
/datum/gear_tweak/custom_name/get_metadata(var/user, var/metadata)
if(jobban_isbanned(user, "Custom loadout"))
if(jobban_isbanned(user, LOADOUT_BAN_STRING))
to_chat(user, SPAN_WARNING("You are banned from using custom loadout names/descriptions."))
return
if(valid_custom_names)
@@ -196,7 +198,7 @@ var/datum/gear_tweak/custom_desc/gear_tweak_free_desc = new()
return ""
/datum/gear_tweak/custom_desc/get_metadata(var/user, var/metadata)
if(jobban_isbanned(user, "Custom loadout"))
if(jobban_isbanned(user, LOADOUT_BAN_STRING))
to_chat(user, SPAN_WARNING("You are banned from using custom loadout names/descriptions."))
return
if(valid_custom_desc)
@@ -507,3 +509,46 @@ var/datum/gear_tweak/custom_desc/gear_tweak_free_desc = new()
var/t = ValidTeslaLinks[metadata[7]]
I.tesla_link = new t(I)
I.update_verbs()
/datum/gear_tweak/implant_location
var/static/list/bodypart_names_to_tokens = list(
"head" = BP_HEAD,
"upper body" = BP_TORSO,
"lower body" = BP_GROIN,
"left hand" = BP_L_HAND,
"left arm" = BP_L_ARM,
"right hand" = BP_R_HAND,
"right arm" = BP_R_ARM,
"left foot" = BP_L_FOOT,
"left leg" = BP_L_LEG,
"right foot" = BP_R_FOOT,
"right leg" = BP_R_LEG
)
var/static/list/bodypart_tokens_to_names = list(
BP_HEAD = "head",
BP_TORSO = "upper body",
BP_GROIN = "lower body",
BP_LEFT_HAND = "left hand",
BP_LEFT_ARM = "left arm",
BP_RIGHT_HAND = "right hand",
BP_RIGHT_ARM = "right arm",
BP_LEFT_FOOT = "left foot",
BP_LEFT_LEG = "left leg",
BP_RIGHT_FOOT = "right foot",
BP_RIGHT_LEG = "right leg"
)
/datum/gear_tweak/implant_location/get_default()
return bodypart_names_to_tokens[1]
/datum/gear_tweak/implant_location/tweak_item(var/obj/item/weapon/implant/I, var/metadata)
if(istype(I))
I.initialize_loc = bodypart_names_to_tokens[metadata] || BP_TORSO
/datum/gear_tweak/implant_location/get_contents(var/metadata)
return "Location: [metadata]"
/datum/gear_tweak/implant_location/get_metadata(var/user, var/metadata)
return (input(user, "Select a bodypart for the implant to be implanted inside.", "Implant Location", metadata || "upper body") as null|anything in bodypart_names_to_tokens) || bodypart_tokens_to_names[BP_TORSO]
#undef LOADOUT_BAN_STRING
@@ -77,6 +77,12 @@
display_name = "drop pouches, white (Medical)"
allowed_roles = list("Paramedic","Chief Medical Officer","Medical Doctor","Chemist","Field Medic")
/datum/gear/accessory/bluespace
display_name = "bluespace badge (Eng, Sec, Med, Exploration, Miner)"
path = /obj/item/clothing/accessory/storage/bluespace
allowed_roles = list("Station Engineer","Atmospheric Technician","Chief Engineer","Security Officer","Detective","Head of Security","Warden","Paramedic","Chief Medical Officer","Medical Doctor","Chemist","Field Medic","Explorer","Pathfinder","Shaft Miner")
cost = 2
/datum/gear/accessory/webbing
cost = 1
@@ -0,0 +1,56 @@
/datum/gear/utility/implant
display_name = "implant, neural assistance web"
description = "A complex web implanted into the subject, medically in order to compensate for neurological disease."
path = /obj/item/weapon/implant/neural
slot = "implant"
exploitable = 1
sort_category = "Cyberware"
cost = 6
/datum/gear/utility/implant/tracking
display_name = "implant, tracking"
path = /obj/item/weapon/implant/tracking/weak
cost = 10
// Remove these after generic implant has been in for awhile and everyone has had a reasonable period to copy their old descs.
/datum/gear/utility/implant/dud1
display_name = "implant, head"
description = "An implant with no obvious purpose (DEPRECATED, USE GENERIC IMPLANT)."
path = /obj/item/weapon/implant/dud
cost = 1
/datum/gear/utility/implant/dud2
display_name = "implant, torso"
description = "An implant with no obvious purpose (DEPRECATED, USE GENERIC IMPLANT)."
path = /obj/item/weapon/implant/dud/torso
cost = 1
// End removal marker.
/datum/gear/utility/implant/generic
display_name = "implant, generic, primary"
description = "An implant with no obvious purpose."
path = /obj/item/weapon/implant
cost = 1
/datum/gear/utility/implant/generic/second
display_name = "implant, generic, secondary"
/datum/gear/utility/implant/generic/third
display_name = "implant, generic, tertiary"
/datum/gear/utility/implant/generic/New()
..()
gear_tweaks += global.gear_tweak_implant_location
/datum/gear/utility/implant/language
cost = 2
exploitable = 0
/datum/gear/utility/implant/language/eal
display_name = "vocal synthesizer, EAL"
description = "A surgically implanted vocal synthesizer which allows the owner to speak EAL, if they know it."
path = /obj/item/weapon/implant/language/eal
/datum/gear/utility/implant/language/skrellian
display_name = "vocal synthesizer, Skrellian"
description = "A surgically implanted vocal synthesizer which allows the owner to speak Common Skrellian, if they know it."
path = /obj/item/weapon/implant/language/skrellian
@@ -391,4 +391,8 @@
/datum/gear/head/blackngoldheaddress
display_name = "black and gold headdress"
path = /obj/item/clothing/head/blackngoldheaddress
path = /obj/item/clothing/head/blackngoldheaddress
/datum/gear/head/plaguedoctor2
display_name = "golden plague doctor's hat"
path = /obj/item/clothing/head/plaguedoctorhat/gold
@@ -24,4 +24,9 @@
/datum/gear/mask/veil
display_name = "black veil"
path = /obj/item/clothing/mask/veil
path = /obj/item/clothing/mask/veil
/datum/gear/mask/plaguedoctor2
display_name = "golden plague doctor's mask"
path = /obj/item/clothing/mask/gas/plaguedoctor/gold
cost = 3 ///Because it functions as a gas mask, and therefore has a mechanical advantage.
@@ -173,6 +173,10 @@ datum/gear/suit/duster
path = /obj/item/clothing/suit/storage/toggle/labcoat/emt
allowed_roles = list("Medical Doctor","Chief Medical Officer","Chemist","Paramedic","Geneticist", "Psychiatrist")
/datum/gear/suit/miscellaneous/labcoat
display_name = "plague doctor's coat"
path = /obj/item/clothing/suit/storage/toggle/labcoat/plaguedoctor
/datum/gear/suit/roles/surgical_apron
display_name = "surgical apron"
path = /obj/item/clothing/suit/surgicalapron
@@ -644,4 +644,16 @@
/datum/gear/uniform/gothic2
display_name = "lacey gothic dress"
path = /obj/item/clothing/under/dress/gothic2
path = /obj/item/clothing/under/dress/gothic2
/datum/gear/uniform/flowerskirt
display_name = "flower skirt"
path = /obj/item/clothing/under/flower_skirt
/datum/gear/uniform/flowerskirt/New()
..()
gear_tweaks += gear_tweak_free_color_choice
/datum/gear/uniform/countess
display_name = "countess dress"
path = /obj/item/clothing/under/dress/countess
@@ -204,3 +204,11 @@ Qipao
/datum/gear/uniform/qipao_white
display_name = "qipao, white"
path = /obj/item/clothing/under/dress/qipao/white
/*
Bluespace jumpsuit
*/
/datum/gear/uniform/hfjumpsuit
display_name = "HYPER jumpsuit"
path = /obj/item/clothing/under/hyperfiber
cost = 2
@@ -115,60 +115,10 @@
display_name = "cell, device"
path = /obj/item/weapon/cell/device
/datum/gear/utility/implant
slot = "implant"
exploitable = 1
/datum/gear/utility/implant/tracking
display_name = "implant, tracking"
path = /obj/item/weapon/implant/tracking/weak
cost = 0 //VOREStation Edit. Changed cost to 0
/datum/gear/utility/implant/neural
display_name = "implant, neural assistance web"
description = "A complex web implanted into the subject, medically in order to compensate for neurological disease."
path = /obj/item/weapon/implant/neural
cost = 6
/datum/gear/utility/implant/dud1
display_name = "implant, head"
description = "An implant with no obvious purpose."
path = /obj/item/weapon/implant/dud
cost = 1
/datum/gear/utility/implant/dud2
display_name = "implant, torso"
description = "An implant with no obvious purpose."
path = /obj/item/weapon/implant/dud/torso
cost = 1
/datum/gear/utility/implant/language
cost = 2
exploitable = 0
/datum/gear/utility/implant/language/eal
display_name = "vocal synthesizer, EAL"
description = "A surgically implanted vocal synthesizer which allows the owner to speak EAL, if they know it."
path = /obj/item/weapon/implant/language/eal
/datum/gear/utility/implant/language/skrellian
display_name = "vocal synthesizer, Skrellian"
description = "A surgically implanted vocal synthesizer which allows the owner to speak Common Skrellian, if they know it."
path = /obj/item/weapon/implant/language/skrellian
/datum/gear/utility/pen
display_name = "Fountain Pen"
path = /obj/item/weapon/pen/fountain
/datum/gear/utility/wheelchair/color
display_name = "wheelchair"
path = /obj/item/wheelchair
cost = 4
/datum/gear/utility/wheelchair/color/New()
..()
gear_tweaks += gear_tweak_free_color_choice
/datum/gear/utility/umbrella
display_name = "Umbrella"
path = /obj/item/weapon/melee/umbrella
@@ -178,6 +128,20 @@
..()
gear_tweaks += gear_tweak_free_color_choice
/datum/gear/utility/wheelchair
display_name = "wheelchair selection"
path = /obj/item/wheelchair
cost = 4
/datum/gear/utility/wheelchair/New()
..()
gear_tweaks += gear_tweak_free_color_choice
var/list/wheelchairs = list(
"wheelchair" = /obj/item/wheelchair,
"motorized wheelchair" = /obj/item/wheelchair/motor
)
gear_tweaks += new/datum/gear_tweak/path(wheelchairs)
/****************
modular computers
****************/
@@ -670,3 +670,10 @@
path = /obj/item/clothing/glasses/aerogelgoggles
whitelisted = SPECIES_TESHARI
sort_category = "Xenowear"
/datum/gear/utility/teshchair
display_name = "small electric wheelchair (Teshari)"
path = /obj/item/wheelchair/motor/small
whitelisted = SPECIES_TESHARI
sort_category = "Xenowear"
cost = 4