diff --git a/code/modules/client/preference_setup/general/03_body.dm b/code/modules/client/preference_setup/general/03_body.dm index 3c11e5ce31..079713c7ea 100644 --- a/code/modules/client/preference_setup/general/03_body.dm +++ b/code/modules/client/preference_setup/general/03_body.dm @@ -111,7 +111,7 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O else O.robotize() - for(var/name in list(O_HEART,O_EYES,O_BRAIN)) + for(var/name in list(O_HEART,O_EYES,O_LUNGS,O_BRAIN)) var/status = pref.organ_data[name] if(!status) continue @@ -178,6 +178,8 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O organ_name = "eyes" if(O_BRAIN) organ_name = "brain" + if(O_LUNGS) + organ_name = "lungs" if(status == "cyborg") ++ind @@ -211,6 +213,8 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O switch(organ_name) if("heart") . += "\tPacemaker-assisted [organ_name]" + if("lungs") + . += "\tAssisted [organ_name]" if("voicebox") //on adding voiceboxes for speaking skrell/similar replacements . += "\tSurgically altered [organ_name]" if("eyes") @@ -539,7 +543,7 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O else if(href_list["organs"]) - var/organ_name = input(user, "Which internal function do you want to change?") as null|anything in list("Heart", "Eyes", "Brain") + var/organ_name = input(user, "Which internal function do you want to change?") as null|anything in list("Heart", "Eyes", "Lungs", "Brain") if(!organ_name) return var/organ = null @@ -548,6 +552,8 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O organ = O_HEART if("Eyes") organ = O_EYES + if("Lungs") + organ = O_LUNGS if("Brain") if(pref.organ_data[BP_HEAD] != "cyborg") user << "You may only select an assisted or synthetic brain if you have a full prosthetic body." diff --git a/code/modules/organs/internal/eyes.dm b/code/modules/organs/internal/eyes.dm index ddde872662..064a668686 100644 --- a/code/modules/organs/internal/eyes.dm +++ b/code/modules/organs/internal/eyes.dm @@ -11,9 +11,6 @@ /obj/item/organ/internal/eyes/robotize() ..() name = "optical sensor" - icon = 'icons/obj/robot_component.dmi' - icon_state = "camera" - dead_icon = "camera_broken" verbs |= /obj/item/organ/internal/eyes/proc/change_eye_color /obj/item/organ/internal/eyes/robot diff --git a/code/modules/organs/internal/organ_internal.dm b/code/modules/organs/internal/organ_internal.dm index c1bfebb673..edfa5f70b7 100644 --- a/code/modules/organs/internal/organ_internal.dm +++ b/code/modules/organs/internal/organ_internal.dm @@ -33,4 +33,18 @@ if(istype(E)) E.internal_organs -= src ..() +/obj/item/organ/internal/robotize() + ..() + name = "prosthetic [initial(name)]" + icon_state = "[initial(icon_state)]_prosthetic" + if(dead_icon) + dead_icon = "[initial(dead_icon)]_prosthetic" + +/obj/item/organ/internal/mechassist() + ..() + name = "assisted [initial(name)]" + icon_state = "[initial(icon_state)]_assisted" + if(dead_icon) + dead_icon = "[initial(dead_icon)]_assisted" + // Brain is defined in brain.dm \ No newline at end of file diff --git a/code/modules/organs/organ.dm b/code/modules/organs/organ.dm index c3a349df17..ce4103268f 100644 --- a/code/modules/organs/organ.dm +++ b/code/modules/organs/organ.dm @@ -266,7 +266,7 @@ var/list/organ_cache = list() robotize() /obj/item/organ/emp_act(severity) - if(!(robotic >= ORGAN_ROBOT)) + if(!(robotic >= ORGAN_ASSISTED)) return switch (severity) if (1) diff --git a/html/changelogs/Anewbe - Organs.yml b/html/changelogs/Anewbe - Organs.yml new file mode 100644 index 0000000000..02d205572a --- /dev/null +++ b/html/changelogs/Anewbe - Organs.yml @@ -0,0 +1,36 @@ +################################ +# Example Changelog File +# +# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. +# +# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) +# When it is, any changes listed below will disappear. +# +# Valid Prefixes: +# bugfix +# wip (For works in progress) +# tweak +# soundadd +# sounddel +# rscadd (general adding of nice things) +# rscdel (general deleting of nice things) +# imageadd +# imagedel +# maptweak +# spellcheck (typo fixes) +# experiment +################################# + +# Your name. +author: Anewbe + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - rscadd: "Assisted and Prosthetic organs now have sprites." \ No newline at end of file diff --git a/icons/obj/surgery.dmi b/icons/obj/surgery.dmi index 8bdd72ef1f..f8aede48f2 100644 Binary files a/icons/obj/surgery.dmi and b/icons/obj/surgery.dmi differ