mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-07-18 18:46:24 +01:00
Merge remote-tracking branch 'VOREStation/master' into upstream-merge-7907
This commit is contained in:
@@ -31,10 +31,8 @@
|
||||
var/last_activate = null
|
||||
|
||||
/obj/item/organ/internal/augment/Initialize()
|
||||
..()
|
||||
|
||||
. = ..()
|
||||
setup_radial_icon()
|
||||
|
||||
if(integrated_object_type)
|
||||
integrated_object = new integrated_object_type(src)
|
||||
integrated_object.canremove = FALSE
|
||||
@@ -66,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."
|
||||
@@ -189,7 +189,7 @@
|
||||
)
|
||||
|
||||
/obj/item/organ/internal/augment/armmounted/shoulder/multiple/Initialize()
|
||||
..()
|
||||
. = ..()
|
||||
|
||||
if(integrated_object)
|
||||
integrated_tools[integrated_object_type] = integrated_object
|
||||
|
||||
@@ -73,7 +73,7 @@
|
||||
spleen_efficiency = 0.5
|
||||
|
||||
/obj/item/organ/internal/spleen/skrell/Initialize()
|
||||
..()
|
||||
. = ..()
|
||||
adjust_scale(0.8,0.7)
|
||||
|
||||
/obj/item/organ/internal/spleen/minor
|
||||
@@ -83,5 +83,5 @@
|
||||
spleen_tick = 15
|
||||
|
||||
/obj/item/organ/internal/spleen/minor/Initialize()
|
||||
..()
|
||||
. = ..()
|
||||
adjust_scale(0.7)
|
||||
|
||||
@@ -12,8 +12,7 @@
|
||||
var/deadly_hold = TRUE // Does the stomach do damage to mobs eaten by its owner? Xenos should probably have this FALSE.
|
||||
|
||||
/obj/item/organ/internal/stomach/Initialize()
|
||||
..()
|
||||
|
||||
. = ..()
|
||||
if(reagents)
|
||||
reagents.maximum_volume = 30
|
||||
else
|
||||
|
||||
@@ -115,8 +115,7 @@ var/list/organ_cache = list()
|
||||
handle_organ_mod_special()
|
||||
|
||||
/obj/item/organ/Initialize()
|
||||
..()
|
||||
|
||||
. = ..()
|
||||
if(owner)
|
||||
if(!meat_type)
|
||||
if(owner.isSynthetic())
|
||||
|
||||
@@ -29,6 +29,7 @@
|
||||
|
||||
// Appearance vars.
|
||||
var/nonsolid // Snowflake warning, reee. Used for slime limbs.
|
||||
var/transparent // As above, so below. Used for transparent limbs.
|
||||
var/icon_name = null // Icon state base.
|
||||
var/body_part = null // Part flag
|
||||
var/icon_position = 0 // Used in mob overlay layering calculations.
|
||||
@@ -235,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]
|
||||
@@ -1129,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]."
|
||||
@@ -1160,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()
|
||||
@@ -1261,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")
|
||||
@@ -1392,4 +1397,8 @@ Note that amputating the affected organ does in fact remove the infection from t
|
||||
for(var/obj/item/organ/external/L in organs)
|
||||
for(var/obj/item/I in L.implants)
|
||||
if(!istype(I,/obj/item/weapon/implant) && !istype(I,/obj/item/device/nif)) //VOREStation Add - NIFs
|
||||
return 1
|
||||
return 1
|
||||
|
||||
/obj/item/organ/external/proc/is_hidden_by_tail()
|
||||
if(owner && owner.tail_style && owner.tail_style.hide_body_parts && (organ_tag in owner.tail_style.hide_body_parts))
|
||||
return 1
|
||||
|
||||
@@ -1,6 +1,3 @@
|
||||
/obj/item/organ/external
|
||||
var/transparent = 0 //For better slime limbs
|
||||
|
||||
//Sideways override for nanoform limbs (ugh)
|
||||
/obj/item/organ/external/robotize(var/company, var/skip_prosthetics = FALSE, var/keep_organs = FALSE)
|
||||
var/original_robotic = robotic
|
||||
@@ -16,7 +13,3 @@
|
||||
min_broken_damage = o_min_broken_damage
|
||||
else
|
||||
return ..()
|
||||
|
||||
/obj/item/organ/external/proc/is_hidden_by_tail()
|
||||
if(owner && owner.tail_style && owner.tail_style.hide_body_parts && (organ_tag in owner.tail_style.hide_body_parts))
|
||||
return 1
|
||||
@@ -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"
|
||||
@@ -409,6 +458,15 @@ var/const/standard_monitor_styles = "blank=ipc_blank;\
|
||||
species_alternates = list(SPECIES_TAJ = "Zeng-Hu - Tajaran")
|
||||
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"
|
||||
@@ -472,7 +530,7 @@ var/const/standard_monitor_styles = "blank=ipc_blank;\
|
||||
var/species = SPECIES_HUMAN
|
||||
|
||||
/obj/item/weapon/disk/species/Initialize()
|
||||
..()
|
||||
. = ..()
|
||||
if(species)
|
||||
name = "[species] [initial(name)]"
|
||||
|
||||
|
||||
@@ -0,0 +1,175 @@
|
||||
/datum/robolimb
|
||||
var/includes_tail //Cyberlimbs dmi includes a tail sprite to wear.
|
||||
var/includes_wing //Cyberlimbs dmi includes a wing sprite to wear.
|
||||
var/list/whitelisted_to //List of ckeys that are allowed to pick this in charsetup.
|
||||
|
||||
//////////////// For-specific-character fluff ones ///////////////// May be viable to place these into a custom_item subfolder, in order to allow CI Repo integration.
|
||||
|
||||
// verkister : Rahwoof Boop
|
||||
/datum/robolimb/eggnerdltd
|
||||
company = "Eggnerd Prototyping Ltd."
|
||||
desc = "This limb has a slight salvaged handicraft vibe to it. The CE-marking on it is definitely not the standardized one, it looks more like a hand-written sharpie monogram."
|
||||
icon = 'icons/mob/human_races/cyberlimbs/_fluff_vr/rahboop.dmi'
|
||||
blood_color = "#5e280d"
|
||||
includes_tail = 1
|
||||
unavailable_to_build = 1
|
||||
|
||||
/obj/item/weapon/disk/limb/eggnerdltd
|
||||
company = "Eggnerd Prototyping Ltd."
|
||||
// icon = 'icons/obj/items_vr.dmi'
|
||||
// icon_state = "verkdisk"
|
||||
|
||||
//////////////// General VS-only ones /////////////////
|
||||
/datum/robolimb/talon //They're buildable by default due to being extremely basic.
|
||||
company = "Talon LLC"
|
||||
desc = "This metallic limb is sleek and featuresless apart from some exposed motors"
|
||||
icon = 'icons/mob/human_races/cyberlimbs/talon/talon_main.dmi' //Sprited by: Viveret
|
||||
|
||||
/obj/item/weapon/disk/limb/talon
|
||||
company = "Talon LLC"
|
||||
|
||||
/datum/robolimb/zenghu_taj //This wasn't indented. At all. It's a miracle this didn't break literally everything.
|
||||
company = "Zeng-Hu - Tajaran"
|
||||
desc = "This limb has a rubbery fleshtone covering with visible seams."
|
||||
icon = 'icons/mob/human_races/cyberlimbs/zenghu/zenghu_taj.dmi'
|
||||
unavailable_to_build = 1
|
||||
parts = list(BP_HEAD)
|
||||
|
||||
/datum/robolimb/eggnerdltdred
|
||||
company = "Eggnerd Prototyping Ltd. (Red)"
|
||||
desc = "A slightly more refined limb variant from Eggnerd Prototyping. Its got red plating instead of orange."
|
||||
icon = 'icons/mob/human_races/cyberlimbs/rahboopred/rahboopred.dmi'
|
||||
blood_color = "#5e280d"
|
||||
includes_tail = 1
|
||||
unavailable_to_build = 1
|
||||
|
||||
/obj/item/weapon/disk/limb/eggnerdltdred
|
||||
company = "Eggnerd Prototyping Ltd. (Red)"
|
||||
// icon = 'icons/obj/items_vr.dmi'
|
||||
// icon_state = "verkdisk"
|
||||
|
||||
|
||||
//Darkside Incorperated synthetic augmentation list! Many current most used fuzzy and notsofuzzy races made into synths here.
|
||||
|
||||
/datum/robolimb/dsi_tajaran
|
||||
company = "DSI - Tajaran"
|
||||
desc = "This limb feels soft and fluffy, realistic design and squish. By Darkside Incorperated."
|
||||
icon = 'icons/mob/human_races/cyberlimbs/DSITajaran/dsi_tajaran.dmi'
|
||||
blood_color = "#ffe2ff"
|
||||
lifelike = 1
|
||||
unavailable_to_build = 1
|
||||
includes_tail = 1
|
||||
skin_tone = 1
|
||||
suggested_species = "Tajara"
|
||||
|
||||
/datum/robolimb/dsi_tajaran/New()
|
||||
species_cannot_use = GLOB.all_species.Copy()
|
||||
// species_cannot_use -= SPECIES_TAJ
|
||||
|
||||
/obj/item/weapon/disk/limb/dsi_tajaran
|
||||
company = "DSI - Tajaran"
|
||||
|
||||
/datum/robolimb/dsi_lizard
|
||||
company = "DSI - Lizard"
|
||||
desc = "This limb feels smooth and scalie, realistic design and squish. By Darkside Incorperated."
|
||||
icon = 'icons/mob/human_races/cyberlimbs/DSILizard/dsi_lizard.dmi'
|
||||
blood_color = "#ffe2ff"
|
||||
lifelike = 1
|
||||
unavailable_to_build = 1
|
||||
includes_tail = 1
|
||||
skin_tone = 1
|
||||
suggested_species = "Unathi"
|
||||
|
||||
/datum/robolimb/dsi_lizard/New()
|
||||
species_cannot_use = GLOB.all_species.Copy()
|
||||
// species_cannot_use -= SPECIES_UNATHI
|
||||
|
||||
/obj/item/weapon/disk/limb/dsi_lizard
|
||||
company = "DSI - Lizard"
|
||||
/*
|
||||
/datum/robolimb/dsi_sergal
|
||||
company = "DSI - Sergal"
|
||||
desc = "This limb feels soft and fluffy, realistic design and toned muscle. By Darkside Incorperated."
|
||||
icon = 'icons/mob/human_races/cyberlimbs/DSISergal/dsi_sergal.dmi'
|
||||
blood_color = "#ffe2ff"
|
||||
lifelike = 1
|
||||
unavailable_to_build = 1
|
||||
includes_tail = 1
|
||||
skin_tone = 1
|
||||
suggested_species = "Sergal"
|
||||
|
||||
/obj/item/weapon/disk/limb/dsi_sergal
|
||||
company = "DSI - Sergal"
|
||||
|
||||
/datum/robolimb/dsi_nevrean
|
||||
company = "DSI - Nevrean"
|
||||
desc = "This limb feels soft and feathery, lightweight, realistic design and squish. By Darkside Incorperated."
|
||||
icon = 'icons/mob/human_races/cyberlimbs/DSINevrean/dsi_nevrean.dmi'
|
||||
blood_color = "#ffe2ff"
|
||||
lifelike = 1
|
||||
unavailable_to_build = 1
|
||||
includes_tail = 1
|
||||
skin_tone = 1
|
||||
suggested_species = "Nevrean"
|
||||
|
||||
/obj/item/weapon/disk/limb/dsi_nevrean
|
||||
company = "DSI - Nevrean"
|
||||
|
||||
/datum/robolimb/dsi_vulpkanin
|
||||
company = "DSI - Vulpkanin"
|
||||
desc = "This limb feels soft and fluffy, realistic design and squish. Seems a little mischievous. By Darkside Incorperated."
|
||||
icon = 'icons/mob/human_races/cyberlimbs/DSIVulpkanin/dsi_vulpkanin.dmi'
|
||||
blood_color = "#ffe2ff"
|
||||
lifelike = 1
|
||||
unavailable_to_build = 1
|
||||
includes_tail = 1
|
||||
skin_tone = 1
|
||||
suggested_species = "Vulpkanin"
|
||||
|
||||
/obj/item/weapon/disk/limb/dsi_vulpkanin
|
||||
company = "DSI - Vulpkanin"
|
||||
|
||||
/datum/robolimb/dsi_akula
|
||||
company = "DSI - Akula"
|
||||
desc = "This limb feels soft and fleshy, realistic design and squish. Seems a little mischievous. By Darkside Incorperated."
|
||||
icon = 'icons/mob/human_races/cyberlimbs/DSIAkula/dsi_akula.dmi'
|
||||
blood_color = "#ffe2ff"
|
||||
lifelike = 1
|
||||
unavailable_to_build = 1
|
||||
includes_tail = 1
|
||||
skin_tone = 1
|
||||
suggested_species = "Akula"
|
||||
|
||||
/obj/item/weapon/disk/limb/dsi_akula
|
||||
company = "DSI - Akula"
|
||||
|
||||
/datum/robolimb/dsi_spider
|
||||
company = "DSI - Vasilissan"
|
||||
desc = "This limb feels hard and chitinous, realistic design. Seems a little mischievous. By Darkside Incorperated."
|
||||
icon = 'icons/mob/human_races/cyberlimbs/DSISpider/dsi_spider.dmi'
|
||||
blood_color = "#ffe2ff"
|
||||
lifelike = 1
|
||||
unavailable_to_build = 1
|
||||
includes_tail = 1
|
||||
skin_tone = 1
|
||||
suggested_species = "Vasilissan"
|
||||
|
||||
/obj/item/weapon/disk/limb/dsi_spider
|
||||
company = "DSI - Vasilissan"
|
||||
*/
|
||||
/datum/robolimb/dsi_teshari
|
||||
company = "DSI - Teshari"
|
||||
desc = "This limb has a thin synthflesh casing with a few connection ports."
|
||||
icon = 'icons/mob/human_races/cyberlimbs/DSITeshari/dsi_teshari.dmi'
|
||||
lifelike = 1
|
||||
skin_tone = 1
|
||||
suggested_species = "Teshari"
|
||||
|
||||
/datum/robolimb/dsi_teshari/New()
|
||||
species_cannot_use = GLOB.all_species.Copy()
|
||||
// species_cannot_use -= SPECIES_TESHARI
|
||||
// species_cannot_use -= SPECIES_CUSTOM
|
||||
..()
|
||||
|
||||
/obj/item/weapon/disk/limb/dsi_teshari
|
||||
company = "DSI - Teshari"
|
||||
@@ -1,8 +1,3 @@
|
||||
/datum/robolimb
|
||||
var/includes_tail //Cyberlimbs dmi includes a tail sprite to wear.
|
||||
var/includes_wing //Cyberlimbs dmi includes a wing sprite to wear.
|
||||
var/list/whitelisted_to //List of ckeys that are allowed to pick this in charsetup.
|
||||
|
||||
//CitRP Port
|
||||
var/const/cyberbeast_monitor_styles = "blank=cyber_blank;\
|
||||
default=cyber_default;\
|
||||
|
||||
@@ -212,7 +212,7 @@
|
||||
vital = TRUE
|
||||
|
||||
/obj/item/organ/internal/brain/cephalon/Initialize()
|
||||
..()
|
||||
. = ..()
|
||||
spawn(30 SECONDS) // FBP Dionaea need some way to be disassembled through surgery, if absolutely necessary.
|
||||
if(!owner.isSynthetic())
|
||||
vital = FALSE
|
||||
|
||||
@@ -92,7 +92,7 @@
|
||||
var/strain_regen_cooldown = 5 MINUTES
|
||||
|
||||
/obj/item/organ/internal/regennetwork/Initialize()
|
||||
..()
|
||||
. = ..()
|
||||
var/mob/living/carbon/human/H = null
|
||||
spawn(15)
|
||||
if(ishuman(owner))
|
||||
|
||||
@@ -266,6 +266,8 @@
|
||||
encased = "skull"
|
||||
base_miss_chance = 40
|
||||
var/can_intake_reagents = 1
|
||||
var/eye_icons = 'icons/mob/human_face_alt.dmi'
|
||||
var/head_offset = 0
|
||||
var/eye_icon = "eyes_s"
|
||||
force = 3
|
||||
throwforce = 7
|
||||
@@ -324,6 +326,54 @@
|
||||
"<span class='notice'>You make \the [I] kiss \the [src]!.</span>")
|
||||
return ..()
|
||||
|
||||
/obj/item/organ/external/head/get_icon()
|
||||
..()
|
||||
overlays.Cut()
|
||||
if(!owner || !owner.species)
|
||||
return
|
||||
|
||||
for(var/M in markings)
|
||||
var/datum/sprite_accessory/marking/mark_style = markings[M]["datum"]
|
||||
var/icon/mark_s = new/icon("icon" = mark_style.icon, "icon_state" = "[mark_style.icon_state]-[organ_tag]")
|
||||
mark_s.Blend(markings[M]["color"], mark_style.color_blend_mode)
|
||||
overlays |= mark_s //So when it's not on your body, it has icons
|
||||
mob_icon.Blend(mark_s, ICON_OVERLAY) //So when it's on your body, it has icons
|
||||
icon_cache_key += "[M][markings[M]["color"]]"
|
||||
|
||||
if(owner.should_have_organ(O_EYES))//Moved on top of markings.
|
||||
var/obj/item/organ/internal/eyes/eyes = owner.internal_organs_by_name[O_EYES]
|
||||
if(eye_icon)
|
||||
var/icon/eyes_icon = new/icon(eye_icons, eye_icon)
|
||||
if(eyes)
|
||||
if(owner.species.appearance_flags & HAS_EYE_COLOR)
|
||||
eyes_icon.Blend(rgb(eyes.eye_colour[1], eyes.eye_colour[2], eyes.eye_colour[3]), ICON_ADD)
|
||||
else
|
||||
eyes_icon.Blend(rgb(128,0,0), ICON_ADD)
|
||||
mob_icon.Blend(eyes_icon, ICON_OVERLAY)
|
||||
overlays |= eyes_icon
|
||||
|
||||
if(owner.lip_style && (species && (species.appearance_flags & HAS_LIPS)))
|
||||
var/icon/lip_icon = new/icon('icons/mob/human_face.dmi', "lips_[owner.lip_style]_s")
|
||||
overlays |= lip_icon
|
||||
mob_icon.Blend(lip_icon, ICON_OVERLAY)
|
||||
|
||||
if(owner.f_style)
|
||||
var/datum/sprite_accessory/facial_hair_style = facial_hair_styles_list[owner.f_style]
|
||||
if(facial_hair_style && facial_hair_style.species_allowed && (species.get_bodytype(owner) in facial_hair_style.species_allowed))
|
||||
var/icon/facial_s = new/icon("icon" = facial_hair_style.icon, "icon_state" = "[facial_hair_style.icon_state]_s")
|
||||
if(facial_hair_style.do_colouration)
|
||||
facial_s.Blend(rgb(owner.r_facial, owner.g_facial, owner.b_facial), ICON_ADD)
|
||||
overlays |= image(facial_s, "pixel_y" = head_offset)
|
||||
|
||||
if(owner.h_style && !(owner.head && (owner.head.flags_inv & BLOCKHEADHAIR)))
|
||||
var/datum/sprite_accessory/hair_style = hair_styles_list[owner.h_style]
|
||||
if(hair_style && (species.get_bodytype(owner) in hair_style.species_allowed))
|
||||
var/icon/hair_s = new/icon("icon" = hair_style.icon, "icon_state" = "[hair_style.icon_state]_s")
|
||||
if(hair_style.do_colouration && islist(h_col) && h_col.len >= 3)
|
||||
hair_s.Blend(rgb(h_col[1], h_col[2], h_col[3]), ICON_MULTIPLY)
|
||||
overlays |= image(hair_s, "pixel_y" = head_offset)
|
||||
return mob_icon
|
||||
|
||||
/obj/item/organ/external/head/skrell
|
||||
eye_icon = "skrell_eyes_s"
|
||||
|
||||
|
||||
@@ -1,58 +1,8 @@
|
||||
//For custom heads with custom parts since the base code is restricted to a single icon file.
|
||||
|
||||
/obj/item/organ/external/head/vr/get_icon()
|
||||
|
||||
..()
|
||||
overlays.Cut()
|
||||
if(!owner || !owner.species)
|
||||
return
|
||||
|
||||
for(var/M in markings)
|
||||
var/datum/sprite_accessory/marking/mark_style = markings[M]["datum"]
|
||||
var/icon/mark_s = new/icon("icon" = mark_style.icon, "icon_state" = "[mark_style.icon_state]-[organ_tag]")
|
||||
mark_s.Blend(markings[M]["color"], mark_style.color_blend_mode)
|
||||
overlays |= mark_s //So when it's not on your body, it has icons
|
||||
mob_icon.Blend(mark_s, ICON_OVERLAY) //So when it's on your body, it has icons
|
||||
icon_cache_key += "[M][markings[M]["color"]]"
|
||||
|
||||
if(owner.should_have_organ(O_EYES))//Moved on top of markings.
|
||||
var/obj/item/organ/internal/eyes/eyes = owner.internal_organs_by_name[O_EYES]
|
||||
if(eye_icon)
|
||||
var/icon/eyes_icon = new/icon(eye_icons_vr, eye_icon_vr)
|
||||
if(eyes)
|
||||
if(owner.species.appearance_flags & HAS_EYE_COLOR)
|
||||
eyes_icon.Blend(rgb(eyes.eye_colour[1], eyes.eye_colour[2], eyes.eye_colour[3]), ICON_ADD)
|
||||
else
|
||||
eyes_icon.Blend(rgb(128,0,0), ICON_ADD)
|
||||
mob_icon.Blend(eyes_icon, ICON_OVERLAY)
|
||||
overlays |= eyes_icon
|
||||
|
||||
if(owner.lip_style && (species && (species.appearance_flags & HAS_LIPS)))
|
||||
var/icon/lip_icon = new/icon('icons/mob/human_face.dmi', "lips_[owner.lip_style]_s")
|
||||
overlays |= lip_icon
|
||||
mob_icon.Blend(lip_icon, ICON_OVERLAY)
|
||||
|
||||
if(owner.f_style)
|
||||
var/datum/sprite_accessory/facial_hair_style = facial_hair_styles_list[owner.f_style]
|
||||
if(facial_hair_style && facial_hair_style.species_allowed && (species.get_bodytype(owner) in facial_hair_style.species_allowed))
|
||||
var/icon/facial_s = new/icon("icon" = facial_hair_style.icon, "icon_state" = "[facial_hair_style.icon_state]_s")
|
||||
if(facial_hair_style.do_colouration)
|
||||
facial_s.Blend(rgb(owner.r_facial, owner.g_facial, owner.b_facial), ICON_ADD)
|
||||
overlays |= image(facial_s, "pixel_y" = head_offset)
|
||||
|
||||
if(owner.h_style && !(owner.head && (owner.head.flags_inv & BLOCKHEADHAIR)))
|
||||
var/datum/sprite_accessory/hair_style = hair_styles_list[owner.h_style]
|
||||
if(hair_style && (species.get_bodytype(owner) in hair_style.species_allowed))
|
||||
var/icon/hair_s = new/icon("icon" = hair_style.icon, "icon_state" = "[hair_style.icon_state]_s")
|
||||
if(hair_style.do_colouration && islist(h_col) && h_col.len >= 3)
|
||||
hair_s.Blend(rgb(h_col[1], h_col[2], h_col[3]), ICON_MULTIPLY)
|
||||
overlays |= image(hair_s, "pixel_y" = head_offset)
|
||||
return mob_icon
|
||||
|
||||
/obj/item/organ/external/head/vr
|
||||
var/eye_icons_vr = 'icons/mob/human_face_vr.dmi'
|
||||
var/eye_icon_vr = "blank_eyes"
|
||||
var/head_offset = 0
|
||||
eye_icon = "blank_eyes"
|
||||
|
||||
/obj/item/organ/external/head/vr/sergal
|
||||
|
||||
Reference in New Issue
Block a user