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
+5 -1
View File
@@ -31,7 +31,7 @@
var/last_activate = null
/obj/item/organ/internal/augment/Initialize()
. ..()
. = ..()
setup_radial_icon()
if(integrated_object_type)
integrated_object = new integrated_object_type(src)
@@ -64,6 +64,10 @@
else
return
if(robotic && owner.get_restraining_bolt())
to_chat(owner, "<span class='warning'>\The [src] doesn't respond.</span>")
return
var/item_to_equip = integrated_object
if(!item_to_equip && integrated_object_type)
item_to_equip = integrated_object_type
@@ -143,7 +143,7 @@
if(istype(owner, /mob/living/carbon/human))
var/mob/living/carbon/human/H = owner
H.add_modifier(/datum/modifier/melee_surge, 0.75 MINUTES)
/obj/item/organ/internal/augment/armmounted/shoulder/blade
name = "armblade implant"
desc = "A large implant that fits into a subject's arm. It deploys a large metal blade by some painful means."
+5 -1
View File
@@ -236,6 +236,7 @@
owner.organs |= src
for(var/obj/item/organ/organ in src)
organ.replaced(owner,src)
owner.refresh_modular_limb_verbs()
if(parent_organ)
parent = owner.organs_by_name[src.parent_organ]
@@ -1130,6 +1131,8 @@ Note that amputating the affected organ does in fact remove the infection from t
if(R.lifelike)
robotic = ORGAN_LIFELIKE
name = "[initial(name)]"
else if(R.modular_bodyparts == MODULAR_BODYPART_PROSTHETIC)
name = "prosthetic [initial(name)]"
else
name = "robotic [initial(name)]"
desc = "[R.desc] It looks like it was produced by [R.company]."
@@ -1161,7 +1164,7 @@ Note that amputating the affected organ does in fact remove the infection from t
while(null in owner.internal_organs)
owner.internal_organs -= null
owner.refresh_modular_limb_verbs()
return 1
/obj/item/organ/external/proc/mutate()
@@ -1262,6 +1265,7 @@ Note that amputating the affected organ does in fact remove the infection from t
qdel(spark_system)
qdel(src)
victim.refresh_modular_limb_verbs()
victim.update_icons_body()
/obj/item/organ/external/proc/disfigure(var/type = "brute")
+75 -17
View File
@@ -47,22 +47,24 @@ var/const/standard_monitor_styles = "blank=ipc_blank;\
var/icon = 'icons/mob/human_races/robotic.dmi' // Icon base to draw from.
var/monitor_icon = 'icons/mob/monitor_icons.dmi' // Where it draws the monitor icon from.
var/unavailable_at_chargen // If set, not available at chargen.
var/unavailable_to_build // If set, can't be constructed.
var/lifelike // If set, appears organic.
var/skin_tone // If set, applies skin tone rather than part color Overrides color.
var/skin_color // If set, applies skin color rather than part color.
var/blood_color = "#030303"
var/blood_name = "oil"
var/unavailable_to_build // If set, can't be constructed.
var/lifelike // If set, appears organic.
var/skin_tone // If set, applies skin tone rather than part color Overrides color.
var/skin_color // If set, applies skin color rather than part color.
var/blood_color = SYNTH_BLOOD_COLOUR // Colour for blood splatters.
var/blood_name = "oil" // Descriptor for blood splatters.
var/list/monitor_styles // If empty, the model of limbs offers a head compatible with monitors.
var/parts = BP_ALL // Defines what parts said brand can replace on a body.
var/health_hud_intensity = 1 // Intensity modifier for the health GUI indicator.
var/suggested_species = "Human" // If it should make the torso a species
var/speech_bubble_appearance = "synthetic" // What icon_state to use for speech bubbles when talking. Check talk.dmi for all the icons.
var/modular_bodyparts = MODULAR_BODYPART_PROSTHETIC // Whether or not this limb allows attaching/detaching, and whether or not it checks its parent as well. //VOREStation Edit; Let's just do full detachment/reattachment by default.
var/robo_brute_mod = 1 // Multiplier for incoming brute damage.
var/robo_burn_mod = 1 // As above for burn.
// Species in this list cannot take these prosthetics.
var/list/species_cannot_use = list(SPECIES_TESHARI, SPECIES_PROMETHEAN, SPECIES_DIONA, SPECIES_XENOCHIMERA) //VOREStation Edit
var/list/species_alternates = list(SPECIES_TAJ = "Unbranded - Tajaran", SPECIES_UNATHI = "Unbranded - Unathi") //"Species Name" = "Robolimb Company" , List, when initialized, will become "Species Name" = RobolimbDatum, used for alternate species sprites.
var/list/monitor_styles //If empty, the model of limbs offers a head compatible with monitors.
var/parts = BP_ALL //Defines what parts said brand can replace on a body.
var/health_hud_intensity = 1 // Intensity modifier for the health GUI indicator.
var/suggested_species = "Human" //If it should make the torso a species
var/speech_bubble_appearance = "synthetic" // What icon_state to use for speech bubbles when talking. Check talk.dmi for all the icons.
var/robo_brute_mod = 1 // Multiplier for incoming brute damage.
var/robo_burn_mod = 1 // As above for burn.
// "Species Name" = "Robolimb Company", List, when initialized, will become "Species Name" = RobolimbDatum, used for alternate species sprites.
var/list/species_alternates = list(SPECIES_TAJ = "Unbranded - Tajaran", SPECIES_UNATHI = "Unbranded - Unathi")
/datum/robolimb/unbranded_monitor
company = "Unbranded Monitor"
@@ -77,12 +79,14 @@ var/const/standard_monitor_styles = "blank=ipc_blank;\
desc = "A simple robotic limb with retro design. Seems rather stiff."
icon = 'icons/mob/human_races/cyberlimbs/unbranded/unbranded_alt1.dmi'
unavailable_to_build = 1
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/unbranded_alt2
company = "Unbranded - Mantis Prosis"
desc = "This limb has a casing of sleek black metal and repulsive insectile design."
icon = 'icons/mob/human_races/cyberlimbs/unbranded/unbranded_alt2.dmi'
unavailable_to_build = 1
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/unbranded_tajaran
company = "Unbranded - Tajaran"
@@ -91,6 +95,7 @@ var/const/standard_monitor_styles = "blank=ipc_blank;\
desc = "A simple robotic limb with feline design. Seems rather stiff."
icon = 'icons/mob/human_races/cyberlimbs/unbranded/unbranded_tajaran.dmi'
unavailable_to_build = 1
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/unbranded_unathi
company = "Unbranded - Unathi"
@@ -99,6 +104,7 @@ var/const/standard_monitor_styles = "blank=ipc_blank;\
desc = "A simple robotic limb with reptilian design. Seems rather stiff."
icon = 'icons/mob/human_races/cyberlimbs/unbranded/unbranded_unathi.dmi'
unavailable_to_build = 1
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/unbranded_teshari
company = "Unbranded - Teshari"
@@ -107,12 +113,20 @@ var/const/standard_monitor_styles = "blank=ipc_blank;\
desc = "A simple robotic limb with a small, raptor-like design. Seems rather stiff."
icon = 'icons/mob/human_races/cyberlimbs/unbranded/unbranded_teshari.dmi'
unavailable_to_build = 0
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
parts = list(BP_HEAD, BP_TORSO, BP_GROIN)
/datum/robolimb/unbranded_teshari/limbs
company = "Unbranded - Teshari (Limbs)"
parts = list(BP_L_ARM, BP_R_ARM, BP_L_HAND, BP_R_HAND, BP_L_LEG, BP_R_LEG, BP_L_FOOT, BP_R_FOOT)
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC
/datum/robolimb/nanotrasen
company = "NanoTrasen"
desc = "A simple but efficient robotic limb, created by NanoTrasen."
icon = 'icons/mob/human_races/cyberlimbs/nanotrasen/nanotrasen_main.dmi'
species_alternates = list(SPECIES_TAJ = "NanoTrasen - Tajaran", SPECIES_UNATHI = "NanoTrasen - Unathi")
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/nanotrasen_tajaran
company = "NanoTrasen - Tajaran"
@@ -122,6 +136,7 @@ var/const/standard_monitor_styles = "blank=ipc_blank;\
desc = "A simple but efficient robotic limb, created by NanoTrasen."
icon = 'icons/mob/human_races/cyberlimbs/nanotrasen/nanotrasen_tajaran.dmi'
unavailable_to_build = 1
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/nanotrasen_unathi
company = "NanoTrasen - Unathi"
@@ -131,6 +146,7 @@ var/const/standard_monitor_styles = "blank=ipc_blank;\
desc = "A simple but efficient robotic limb, created by NanoTrasen."
icon = 'icons/mob/human_races/cyberlimbs/nanotrasen/nanotrasen_unathi.dmi'
unavailable_to_build = 1
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/cenilimicybernetics_teshari
company = "Cenilimi Cybernetics"
@@ -140,12 +156,14 @@ var/const/standard_monitor_styles = "blank=ipc_blank;\
desc = "Made by a Teshari-owned company, for Teshari."
icon = 'icons/mob/human_races/cyberlimbs/cenilimicybernetics/cenilimicybernetics_teshari.dmi'
unavailable_to_build = 1
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/bishop
company = "Bishop"
desc = "This limb has a white polymer casing with blue holo-displays."
icon = 'icons/mob/human_races/cyberlimbs/bishop/bishop_main.dmi'
unavailable_to_build = 1
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/bishop_alt1
company = "Bishop - Glyph"
@@ -153,12 +171,14 @@ var/const/standard_monitor_styles = "blank=ipc_blank;\
icon = 'icons/mob/human_races/cyberlimbs/bishop/bishop_alt1.dmi'
unavailable_to_build = 1
parts = list(BP_HEAD)
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/bishop_alt2
company = "Bishop - Rook"
desc = "This limb has a solid plastic casing with blue lights along it."
icon = 'icons/mob/human_races/cyberlimbs/bishop/bishop_alt2.dmi'
unavailable_to_build = 1
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/bishop_monitor
company = "Bishop Monitor"
@@ -167,6 +187,7 @@ var/const/standard_monitor_styles = "blank=ipc_blank;\
unavailable_to_build = 1
parts = list(BP_HEAD)
monitor_styles = standard_monitor_styles
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/gestaltframe
company = "Skrellian Exoskeleton"
@@ -181,24 +202,28 @@ var/const/standard_monitor_styles = "blank=ipc_blank;\
// Dionaea are naturally very tanky, so the robotic limbs are actually far weaker than their normal bodies.
robo_brute_mod = 1.3
robo_burn_mod = 1.3
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/cybersolutions
company = "Cyber Solutions"
desc = "This limb is grey and rough, with little in the way of aesthetic."
icon = 'icons/mob/human_races/cyberlimbs/cybersolutions/cybersolutions_main.dmi'
unavailable_to_build = 1
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/cybersolutions_alt2
company = "Cyber Solutions - Outdated"
desc = "This limb is of severely outdated design; there's no way it's comfortable or very functional to use."
icon = 'icons/mob/human_races/cyberlimbs/cybersolutions/cybersolutions_alt2.dmi'
unavailable_to_build = 1
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/cybersolutions_alt1
company = "Cyber Solutions - Wight"
desc = "This limb has cheap plastic panels mounted on grey metal."
icon = 'icons/mob/human_races/cyberlimbs/cybersolutions/cybersolutions_alt1.dmi'
unavailable_to_build = 1
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/cybersolutions_alt3
company = "Cyber Solutions - Array"
@@ -206,12 +231,14 @@ var/const/standard_monitor_styles = "blank=ipc_blank;\
icon = 'icons/mob/human_races/cyberlimbs/cybersolutions/cybersolutions_alt3.dmi'
unavailable_to_build = 1
parts = list(BP_HEAD)
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/einstein
company = "Einstein Engines"
desc = "This limb is lightweight with a sleek design."
icon = 'icons/mob/human_races/cyberlimbs/einstein/einstein_main.dmi'
unavailable_to_build = 1
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/grayson
company = "Grayson"
@@ -223,6 +250,7 @@ var/const/standard_monitor_styles = "blank=ipc_blank;\
green=grayson_green;\
blue=grayson_blue;\
rgb=grayson_rgb"
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/grayson_alt1
company = "Grayson - Reinforced"
@@ -235,6 +263,7 @@ var/const/standard_monitor_styles = "blank=ipc_blank;\
scroll=grayson_alt_scroll;\
rgb=grayson_alt_rgb;\
rainbow=grayson_alt_rainbow"
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/grayson_monitor
company = "Grayson Monitor"
@@ -243,12 +272,14 @@ var/const/standard_monitor_styles = "blank=ipc_blank;\
unavailable_to_build = 1
parts = list(BP_HEAD)
monitor_styles = standard_monitor_styles
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/hephaestus
company = "Hephaestus"
desc = "This limb has a militaristic black and green casing with gold stripes."
icon = 'icons/mob/human_races/cyberlimbs/hephaestus/hephaestus_main.dmi'
unavailable_to_build = 1
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/hephaestus_alt1
company = "Hephaestus - Frontier"
@@ -263,6 +294,7 @@ var/const/standard_monitor_styles = "blank=ipc_blank;\
scroll=hephaestus_alt_scroll;\
rgb=hephaestus_alt_rgb;\
rainbow=hephaestus_alt_rainbow"
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/hephaestus_alt2
company = "Hephaestus - Athena"
@@ -271,6 +303,7 @@ var/const/standard_monitor_styles = "blank=ipc_blank;\
unavailable_to_build = 1
monitor_styles = "red=athena_red;\
blank=athena_off"
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/hephaestus_monitor
company = "Hephaestus Monitor"
@@ -279,6 +312,7 @@ var/const/standard_monitor_styles = "blank=ipc_blank;\
unavailable_to_build = 1
parts = list(BP_HEAD)
monitor_styles = standard_monitor_styles
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/morpheus
company = "Morpheus"
@@ -286,6 +320,7 @@ var/const/standard_monitor_styles = "blank=ipc_blank;\
icon = 'icons/mob/human_races/cyberlimbs/morpheus/morpheus_main.dmi'
unavailable_to_build = 1
monitor_styles = standard_monitor_styles
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/morpheus_alt1
company = "Morpheus - Zenith"
@@ -293,6 +328,7 @@ var/const/standard_monitor_styles = "blank=ipc_blank;\
icon = 'icons/mob/human_races/cyberlimbs/morpheus/morpheus_alt1.dmi'
unavailable_to_build = 1
parts = list(BP_HEAD)
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/morpheus_alt2
company = "Morpheus - Skeleton Crew"
@@ -300,6 +336,7 @@ var/const/standard_monitor_styles = "blank=ipc_blank;\
icon = 'icons/mob/human_races/cyberlimbs/morpheus/morpheus_alt2.dmi'
unavailable_to_build = 1
parts = list(BP_HEAD)
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/veymed
company = "Vey-Med"
@@ -314,6 +351,7 @@ var/const/standard_monitor_styles = "blank=ipc_blank;\
speech_bubble_appearance = "normal"
//robo_brute_mod = 1.1 //VOREStation Edit
//robo_burn_mod = 1.1 //VOREStation Edit
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/veymed_skrell
company = "Vey-Med - Skrell"
@@ -326,14 +364,16 @@ var/const/standard_monitor_styles = "blank=ipc_blank;\
blood_color = "#4451cf"
blood_name = "coolant"
speech_bubble_appearance = "normal"
robo_brute_mod = 1.05
robo_burn_mod = 1.05
//robo_brute_mod = 1.05 //VOREStation Edit
//robo_burn_mod = 1.05 //VOREStation Edit
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/wardtakahashi
company = "Ward-Takahashi"
desc = "This limb features sleek black and white polymers."
icon = 'icons/mob/human_races/cyberlimbs/wardtakahashi/wardtakahashi_main.dmi'
unavailable_to_build = 1
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/wardtakahashi_alt1
company = "Ward-Takahashi - Shroud"
@@ -341,12 +381,14 @@ var/const/standard_monitor_styles = "blank=ipc_blank;\
icon = 'icons/mob/human_races/cyberlimbs/wardtakahashi/wardtakahashi_alt1.dmi'
unavailable_to_build = 1
parts = list(BP_HEAD)
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/wardtakahashi_alt2
company = "Ward-Takahashi - Spirit"
desc = "This limb has white and purple features, with a heavier casing."
icon = 'icons/mob/human_races/cyberlimbs/wardtakahashi/wardtakahashi_alt2.dmi'
unavailable_to_build = 1
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/wardtakahashi_monitor
company = "Ward-Takahashi Monitor"
@@ -355,12 +397,14 @@ var/const/standard_monitor_styles = "blank=ipc_blank;\
unavailable_to_build = 1
parts = list(BP_HEAD)
monitor_styles = standard_monitor_styles
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/xion
company = "Xion"
desc = "This limb has a minimalist black and red casing."
icon = 'icons/mob/human_races/cyberlimbs/xion/xion_main.dmi'
unavailable_to_build = 1
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/xion_alt1
company = "Xion - Breach"
@@ -368,6 +412,7 @@ var/const/standard_monitor_styles = "blank=ipc_blank;\
icon = 'icons/mob/human_races/cyberlimbs/xion/xion_alt1.dmi'
unavailable_to_build = 1
parts = list(BP_HEAD)
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/xion_alt2
company = "Xion - Hull"
@@ -379,12 +424,14 @@ var/const/standard_monitor_styles = "blank=ipc_blank;\
green=xion_green;\
blue=xion_blue;\
rgb=xion_rgb"
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/xion_alt3
company = "Xion - Whiteout"
desc = "This limb has a minimalist black and white casing."
icon = 'icons/mob/human_races/cyberlimbs/xion/xion_alt3.dmi'
unavailable_to_build = 1
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/xion_alt4
company = "Xion - Breach - Whiteout"
@@ -392,6 +439,7 @@ var/const/standard_monitor_styles = "blank=ipc_blank;\
icon = 'icons/mob/human_races/cyberlimbs/xion/xion_alt4.dmi'
unavailable_to_build = 1
parts = list(BP_HEAD)
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/xion_monitor
@@ -401,6 +449,7 @@ var/const/standard_monitor_styles = "blank=ipc_blank;\
unavailable_to_build = 1
parts = list(BP_HEAD)
monitor_styles = standard_monitor_styles
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/zenghu
company = "Zeng-Hu"
@@ -408,6 +457,15 @@ var/const/standard_monitor_styles = "blank=ipc_blank;\
icon = 'icons/mob/human_races/cyberlimbs/zenghu/zenghu_main.dmi'
unavailable_to_build = 1
skin_tone = 1
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC //VOREStation Edit - remove the restrictions
/datum/robolimb/wooden
company = "Morgan Trading Co"
desc = "A simplistic, metal-banded, wood-panelled prosthetic."
icon = 'icons/mob/human_races/cyberlimbs/prosthesis/wooden.dmi'
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC
parts = list(BP_L_ARM, BP_R_ARM, BP_L_HAND, BP_R_HAND, BP_L_LEG, BP_R_LEG, BP_L_FOOT, BP_R_FOOT)
modular_bodyparts = MODULAR_BODYPART_PROSTHETIC
/obj/item/weapon/disk/limb
name = "Limb Blueprints"