From 9af7280e67358e06bc97b33ff05d0966eccb1e33 Mon Sep 17 00:00:00 2001 From: SomeguyManperson Date: Mon, 11 Nov 2019 20:07:44 -0500 Subject: [PATCH 1/4] bubububububububbeatentodeath --- .../subsystem/processing/quirks.dm | 2 +- code/datums/traits/negative.dm | 29 ++++++++++++++++++- 2 files changed, 29 insertions(+), 2 deletions(-) diff --git a/code/controllers/subsystem/processing/quirks.dm b/code/controllers/subsystem/processing/quirks.dm index 85f75e48e91b..0396ad18bd18 100644 --- a/code/controllers/subsystem/processing/quirks.dm +++ b/code/controllers/subsystem/processing/quirks.dm @@ -17,7 +17,7 @@ PROCESSING_SUBSYSTEM_DEF(quirks) if(!quirks.len) SetupQuirks() - quirk_blacklist = list(list("Blind","Nearsighted"),list("Jolly","Depression","Apathetic","Hypersensitive"),list("Ageusia","Vegetarian","Deviant Tastes"),list("Ananas Affinity","Ananas Aversion"),list("Alcohol Tolerance","Light Drinker")) + quirk_blacklist = list(list("Blind","Nearsighted"),list("Jolly","Depression","Apathetic","Hypersensitive"),list("Ageusia","Vegetarian","Deviant Tastes"),list("Ananas Affinity","Ananas Aversion"),list("Alcohol Tolerance","Light Drinker"),list("Prosthetic Limb (Left Arm)","Prosthetic Limb (Right Arm)","Prosthetic Limb (Left Leg)","Prosthetic Limb (Right Leg)","Prosthetic Limb")) return ..() /datum/controller/subsystem/processing/quirks/proc/SetupQuirks() diff --git a/code/datums/traits/negative.dm b/code/datums/traits/negative.dm index 1c94bedac575..e905af51f894 100644 --- a/code/datums/traits/negative.dm +++ b/code/datums/traits/negative.dm @@ -337,10 +337,13 @@ desc = "An accident caused you to lose one of your limbs. Because of this, you now have a random prosthetic!" value = -1 var/slot_string = "limb" + var/specific = FALSE + var/limb_slot medical_record_text = "During physical examination, patient was found to have a prosthetic limb." /datum/quirk/prosthetic_limb/on_spawn() - var/limb_slot = pick(BODY_ZONE_L_ARM, BODY_ZONE_R_ARM, BODY_ZONE_L_LEG, BODY_ZONE_R_LEG) + if(!specific) + limb_slot = pick(BODY_ZONE_L_ARM, BODY_ZONE_R_ARM, BODY_ZONE_L_LEG, BODY_ZONE_R_LEG) var/mob/living/carbon/human/H = quirk_holder var/obj/item/bodypart/old_part = H.get_bodypart(limb_slot) var/obj/item/bodypart/prosthetic @@ -365,6 +368,30 @@ to_chat(quirk_holder, "Your [slot_string] has been replaced with a surplus prosthetic. It is fragile and will easily come apart under duress. Additionally, \ you need to use a welding tool and cables to repair it, instead of bruise packs and ointment.") +/datum/quirk/prosthetic_limb/left_arm + name = "Prosthetic Limb (Left Arm)" + desc = "An accident caused you to lose your left arm. Because of this, it's replaced with a prosthetic!" + limb_slot = BODY_ZONE_L_ARM + specific = TRUE + +/datum/quirk/prosthetic_limb/right_arm + name = "Prosthetic Limb (Right Arm)" + desc = "An accident caused you to lose your right arm. Because of this, it's replaced with a prosthetic!" + limb_slot = BODY_ZONE_R_ARM + specific = TRUE + +/datum/quirk/prosthetic_limb/left_leg + name = "Prosthetic Limb (Left Leg)" + desc = "An accident caused you to lose your left leg. Because of this, it's replaced with a prosthetic!" + limb_slot = BODY_ZONE_L_LEG + specific = TRUE + +/datum/quirk/prosthetic_limb/right_leg + name = "Prosthetic Limb (Right Leg)" + desc = "An accident caused you to lose your right leg. Because of this, it's replaced with a prosthetic!" + limb_slot = BODY_ZONE_R_LEG + specific = TRUE + /datum/quirk/insanity name = "Reality Dissociation Syndrome" desc = "You suffer from a severe disorder that causes very vivid hallucinations. Mindbreaker toxin can suppress its effects, and you are immune to mindbreaker's hallucinogenic properties. This is not a license to grief." From 2f7024f4e14c2333b88e95c12881868618636c0f Mon Sep 17 00:00:00 2001 From: alexkar598 <25136265+alexkar598@users.noreply.github.com> Date: Mon, 11 Nov 2019 20:26:02 -0500 Subject: [PATCH 2/4] Update negative.dm --- code/datums/traits/negative.dm | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/code/datums/traits/negative.dm b/code/datums/traits/negative.dm index e905af51f894..caf362766f80 100644 --- a/code/datums/traits/negative.dm +++ b/code/datums/traits/negative.dm @@ -342,8 +342,10 @@ medical_record_text = "During physical examination, patient was found to have a prosthetic limb." /datum/quirk/prosthetic_limb/on_spawn() - if(!specific) - limb_slot = pick(BODY_ZONE_L_ARM, BODY_ZONE_R_ARM, BODY_ZONE_L_LEG, BODY_ZONE_R_LEG) + var/limb_slot = pick(BODY_ZONE_L_ARM, BODY_ZONE_R_ARM, BODY_ZONE_L_LEG, BODY_ZONE_R_LEG) + if(specific) + limb_slot = specific + var/mob/living/carbon/human/H = quirk_holder var/obj/item/bodypart/old_part = H.get_bodypart(limb_slot) var/obj/item/bodypart/prosthetic @@ -371,26 +373,22 @@ /datum/quirk/prosthetic_limb/left_arm name = "Prosthetic Limb (Left Arm)" desc = "An accident caused you to lose your left arm. Because of this, it's replaced with a prosthetic!" - limb_slot = BODY_ZONE_L_ARM - specific = TRUE + specific = BODY_ZONE_L_ARM /datum/quirk/prosthetic_limb/right_arm name = "Prosthetic Limb (Right Arm)" desc = "An accident caused you to lose your right arm. Because of this, it's replaced with a prosthetic!" - limb_slot = BODY_ZONE_R_ARM - specific = TRUE + specific = BODY_ZONE_R_ARM /datum/quirk/prosthetic_limb/left_leg name = "Prosthetic Limb (Left Leg)" desc = "An accident caused you to lose your left leg. Because of this, it's replaced with a prosthetic!" - limb_slot = BODY_ZONE_L_LEG - specific = TRUE + specific = BODY_ZONE_L_LEG /datum/quirk/prosthetic_limb/right_leg name = "Prosthetic Limb (Right Leg)" desc = "An accident caused you to lose your right leg. Because of this, it's replaced with a prosthetic!" - limb_slot = BODY_ZONE_R_LEG - specific = TRUE + specific = BODY_ZONE_R_LEG /datum/quirk/insanity name = "Reality Dissociation Syndrome" From fceb85d78edbf5c30376200d6bfd49187f998ebb Mon Sep 17 00:00:00 2001 From: alexkar598 <25136265+alexkar598@users.noreply.github.com> Date: Mon, 11 Nov 2019 20:26:42 -0500 Subject: [PATCH 3/4] whoops --- code/datums/traits/negative.dm | 1 - 1 file changed, 1 deletion(-) diff --git a/code/datums/traits/negative.dm b/code/datums/traits/negative.dm index caf362766f80..ab61ef9c5238 100644 --- a/code/datums/traits/negative.dm +++ b/code/datums/traits/negative.dm @@ -338,7 +338,6 @@ value = -1 var/slot_string = "limb" var/specific = FALSE - var/limb_slot medical_record_text = "During physical examination, patient was found to have a prosthetic limb." /datum/quirk/prosthetic_limb/on_spawn() From a9690cdda79acd8e36b2ad1e29c7e261fb1cb684 Mon Sep 17 00:00:00 2001 From: alexkar598 <25136265+alexkar598@users.noreply.github.com> Date: Mon, 11 Nov 2019 20:27:29 -0500 Subject: [PATCH 4/4] reeeeeeeeeeeeeeeee --- code/datums/traits/negative.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/datums/traits/negative.dm b/code/datums/traits/negative.dm index ab61ef9c5238..466ce4959dbb 100644 --- a/code/datums/traits/negative.dm +++ b/code/datums/traits/negative.dm @@ -337,7 +337,7 @@ desc = "An accident caused you to lose one of your limbs. Because of this, you now have a random prosthetic!" value = -1 var/slot_string = "limb" - var/specific = FALSE + var/specific = null medical_record_text = "During physical examination, patient was found to have a prosthetic limb." /datum/quirk/prosthetic_limb/on_spawn()