mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-23 13:05:44 +01:00
Synthskin Limb/Shell Changes (#9127)
This commit is contained in:
@@ -1039,11 +1039,14 @@ Note that amputating the affected organ does in fact remove the infection from t
|
||||
if(R)
|
||||
if (!force_skintone)
|
||||
force_icon = R.icon
|
||||
name = "[R.company] [initial(name)]"
|
||||
desc = "[R.desc]"
|
||||
if(R.lifelike)
|
||||
status |= ORGAN_LIFELIKE
|
||||
name = "[initial(name)]"
|
||||
else
|
||||
name = "[R.company] [initial(name)]"
|
||||
desc = "[R.desc]"
|
||||
if(R.paintable)
|
||||
painted = 1
|
||||
|
||||
brute_mod = R.brute_mod
|
||||
burn_mod = R.burn_mod
|
||||
robotize_type = company
|
||||
@@ -1055,7 +1058,7 @@ Note that amputating the affected organ does in fact remove the infection from t
|
||||
unmutate()
|
||||
for (var/obj/item/organ/external/T in children)
|
||||
if(T)
|
||||
T.robotize()
|
||||
T.robotize(company)
|
||||
|
||||
/obj/item/organ/external/mechassist()
|
||||
..()
|
||||
@@ -1190,22 +1193,31 @@ Note that amputating the affected organ does in fact remove the infection from t
|
||||
. = ""
|
||||
if(status & ORGAN_DESTROYED && !is_stump())
|
||||
. += "tear at [amputation_point] so severe that it hangs by a scrap of flesh"
|
||||
|
||||
//Handle robotic and synthetic organ damage
|
||||
if(status & ORGAN_ASSISTED)
|
||||
var/LL = status & ORGAN_LIFELIKE
|
||||
if(brute_dam)
|
||||
switch(brute_dam)
|
||||
if(0 to 20)
|
||||
. += " some dents"
|
||||
. += "some [LL ? pick ("cuts","bruises","scars") : "dents"]"
|
||||
if(21 to INFINITY)
|
||||
. += pick(" a lot of dents"," severe denting")
|
||||
. += "[LL ? pick("exposed wiring","torn-back synthflesh") : pick("a lot of dents","severe denting")]"
|
||||
if(brute_dam && burn_dam)
|
||||
. += " and"
|
||||
if(burn_dam)
|
||||
switch(burn_dam)
|
||||
if(0 to 20)
|
||||
. += " some burns"
|
||||
. += "some burns"
|
||||
if(21 to INFINITY)
|
||||
. += pick(" a lot of burns"," severe melting")
|
||||
. += "[LL ? pick("roasted synth-flesh","melted internal wiring") : pick("many burns","scorched metal")]"
|
||||
if(open)
|
||||
if(brute_dam || burn_dam)
|
||||
. += " and "
|
||||
if(open == 1)
|
||||
. += "some exposed screws"
|
||||
else
|
||||
. += "an open panel"
|
||||
|
||||
return
|
||||
|
||||
var/list/wound_descriptors = list()
|
||||
|
||||
@@ -16,8 +16,9 @@ var/global/datum/robolimb/basic_robolimb
|
||||
/datum/robolimb
|
||||
var/company = "Unbranded" // Shown when selecting the limb.
|
||||
var/desc = "A generic unbranded robotic prosthesis." // Seen when examining a limb.
|
||||
var/icon = 'icons/mob/human_races/ipc/robotic.dmi' // Icon base to draw from.
|
||||
var/icon = 'icons/mob/human_races/ipc/robotic.dmi' // Icon base to draw from.
|
||||
var/unavailable_at_chargen // If set, not available at chargen.
|
||||
var/lifelike = FALSE // If set, appears organic.
|
||||
var/list/species_can_use = list(
|
||||
"Human",
|
||||
"Skrell",
|
||||
@@ -30,7 +31,7 @@ var/global/datum/robolimb/basic_robolimb
|
||||
"Baseline Frame",
|
||||
"Off-Worlder Human"
|
||||
)
|
||||
var/paintable = 0 //tired of istype exceptions. bullshirt to find, and by god do i know it after this project.
|
||||
var/paintable = 0 //tired of istype exceptions. bullshit to find, and by god do i know it after this project.
|
||||
var/linked_frame = "Unbranded Frame" //which machine species this limb will create
|
||||
var/brute_mod = 0.9 //how resistant is this mode to brute damage
|
||||
var/burn_mod = 1.1 //how resistant is this mode to burn damage
|
||||
@@ -97,6 +98,7 @@ var/global/datum/robolimb/basic_robolimb
|
||||
species_can_use = list("Human")
|
||||
linked_frame = "Shell Frame"
|
||||
fabricator_available = TRUE
|
||||
lifelike = TRUE
|
||||
|
||||
/datum/robolimb/autakh
|
||||
company = PROSTHETIC_AUTAKH
|
||||
|
||||
Reference in New Issue
Block a user