diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm index d5750778a71..4f153b8ad86 100644 --- a/code/modules/mob/living/carbon/human/examine.dm +++ b/code/modules/mob/living/carbon/human/examine.dm @@ -162,12 +162,6 @@ if(100 to 200) msg += "[t_He] [t_is] twitching ever so slightly.\n" - if(gender_ambiguous) //someone fucked up a gender reassignment surgery - if (gender == MALE) - msg += "[t_He] has a strange feminine quality to [t_him].\n" - else - msg += "[t_He] has a strange masculine quality to [t_him].\n" - var/appears_dead = 0 if(stat == DEAD || (status_flags & FAKEDEATH)) appears_dead = 1 diff --git a/code/modules/mob/living/carbon/human/human_defines.dm b/code/modules/mob/living/carbon/human/human_defines.dm index d4b6b9512b4..ada7a5cceaf 100644 --- a/code/modules/mob/living/carbon/human/human_defines.dm +++ b/code/modules/mob/living/carbon/human/human_defines.dm @@ -42,8 +42,6 @@ var/global/default_martial_art = new/datum/martial_art var/special_voice = "" // For changing our voice. Used by a symptom. - var/gender_ambiguous = 0 //if something goes wrong during gender reassignment this generates a line in examine - var/bleed_rate = 0 //how much are we bleeding var/bleedsuppress = 0 //for stopping bloodloss, eventually this will be limb-based like bleeding diff --git a/code/modules/reagents/chemistry/recipes/slime_extracts.dm b/code/modules/reagents/chemistry/recipes/slime_extracts.dm index 405df161612..7ff2156e3d0 100644 --- a/code/modules/reagents/chemistry/recipes/slime_extracts.dm +++ b/code/modules/reagents/chemistry/recipes/slime_extracts.dm @@ -472,6 +472,20 @@ var/obj/item/slimepotion/docility/P = new /obj/item/slimepotion/docility P.loc = get_turf(holder.my_atom) +/datum/chemical_reaction/gender + name = "Gender Potion" + id = "m_gender" + result = null + required_reagents = list("blood" = 1) + result_amount = 1 + required_container = /obj/item/slime_extract/pink + required_other = 1 + +/datum/chemical_reaction/gender/on_reaction(datum/reagents/holder) + feedback_add_details("slime_cores_used","[type]") + var/obj/item/slimepotion/genderchange/G = new /obj/item/slimepotion/genderchange + G.loc = get_turf(holder.my_atom) + //Black /datum/chemical_reaction/slimemutate2 name = "Advanced Mutation Toxin" diff --git a/code/modules/research/xenobiology/xenobiology.dm b/code/modules/research/xenobiology/xenobiology.dm index 810d8aedba4..5534256453f 100644 --- a/code/modules/research/xenobiology/xenobiology.dm +++ b/code/modules/research/xenobiology/xenobiology.dm @@ -383,6 +383,30 @@ if(!uses) qdel(src) +/obj/item/slimepotion/genderchange + name = "gender change potion" + desc = "An interesting chemical mix that changes the biological gender of what its applied to. Cannot be used on things that lack gender entirely." + icon = 'icons/obj/chemical.dmi' + icon_state = "potlightpink" + +/obj/item/slimepotion/genderchange/attack(mob/living/L, mob/user) + if(!istype(L) || L.stat == DEAD) + user << "The potion can only be used on living things!" + return + + if(L.gender != MALE && L.gender != FEMALE) + user << "The potion can only be used on gendered things!" + return + + if(L.gender == MALE) + L.gender = FEMALE + L.visible_message("[L] suddenly looks more feminine!") + else + L.gender = MALE + L.visible_message("[L] suddenly looks more masculine!") + L.regenerate_icons() + qdel(src) + ////////Adamantine Golem stuff I dunno where else to put it // This will eventually be removed. diff --git a/icons/obj/chemical.dmi b/icons/obj/chemical.dmi index 17c68ddb123..e7769484894 100644 Binary files a/icons/obj/chemical.dmi and b/icons/obj/chemical.dmi differ