mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-08-25 13:09:11 +01:00
Adds more transformation types for specific
Changes "Species Transformation" to "Replica Transformation" for clarity, as people were using it and expecting them to change species, not be a perfect 1:1 replica of the person doing the TF. Adds "Change_species_and_taur" mode, which does exactly as it says without making the person appear as a 1:1 replica as the pred TFing them Adds "Change_hair_and_eyes" tf mode, which allows the changing of the prey's hair and eye color without having to completely TF them or change their gender. Fixes a bug that infinitely drained the pred's nutrition when they used a TF mode. Slightly increases amount of nutrition the prey gets from the pred.
This commit is contained in:
@@ -1,19 +1,22 @@
|
||||
// Belly Mode Constants
|
||||
#define DM_HOLD "Hold"
|
||||
#define DM_DIGEST "Digest"
|
||||
#define DM_HEAL "Heal"
|
||||
#define DM_ABSORB "Absorb"
|
||||
#define DM_TRANSFORM_MALE "Transform (Male)"
|
||||
#define DM_TRANSFORM_FEMALE "Transform (Female)"
|
||||
#define DM_TRANSFORM_KEEP_GENDER "Transform (Keep Gender)"
|
||||
#define DM_TRANSFORM_CHANGE_SPECIES "Transform (Change Species)"
|
||||
#define DM_TRANSFORM_CHANGE_SPECIES_EGG "Transform (Change Species) (EGG)"
|
||||
#define DM_TRANSFORM_KEEP_GENDER_EGG "Transform (Keep Gender) (EGG)"
|
||||
#define DM_TRANSFORM_MALE_EGG "Transform (Male) (EGG)"
|
||||
#define DM_TRANSFORM_FEMALE_EGG "Transform (Female) (EGG)"
|
||||
#define DM_EGG "Encase In Egg"
|
||||
#define DM_DRAIN "Drain"
|
||||
#define DM_UNABSORB "Unabsorb"
|
||||
#define DM_HOLD "Hold"
|
||||
#define DM_DIGEST "Digest"
|
||||
#define DM_HEAL "Heal"
|
||||
#define DM_ABSORB "Absorb"
|
||||
#define DM_TRANSFORM_HAIR_AND_EYES "Transform (Hair and eyes)"
|
||||
#define DM_TRANSFORM_MALE "Transform (Male)"
|
||||
#define DM_TRANSFORM_FEMALE "Transform (Female)"
|
||||
#define DM_TRANSFORM_KEEP_GENDER "Transform (Keep Gender)"
|
||||
#define DM_TRANSFORM_REPLICA "Transform (Replica Of Self)"
|
||||
#define DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR "Transform (Change Species and Taur)"
|
||||
#define DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR_EGG "Transform (Change Species and Taur) (EGG)"
|
||||
#define DM_TRANSFORM_REPLICA_EGG "Transform (Replica Of Self) (EGG)"
|
||||
#define DM_TRANSFORM_KEEP_GENDER_EGG "Transform (Keep Gender) (EGG)"
|
||||
#define DM_TRANSFORM_MALE_EGG "Transform (Male) (EGG)"
|
||||
#define DM_TRANSFORM_FEMALE_EGG "Transform (Female) (EGG)"
|
||||
#define DM_EGG "Encase In Egg"
|
||||
#define DM_DRAIN "Drain"
|
||||
#define DM_UNABSORB "Unabsorb"
|
||||
|
||||
|
||||
// Stance for hostile mobs to be in while devouring someone.
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
|
||||
var/tmp/digest_mode = DM_HOLD // Whether or not to digest. Default to not digest.
|
||||
var/tmp/list/digest_modes = list(DM_HOLD,DM_DIGEST,DM_HEAL,DM_ABSORB,DM_DRAIN,DM_UNABSORB) // Possible digest modes
|
||||
var/tmp/list/transform_modes = list(DM_TRANSFORM_MALE,DM_TRANSFORM_FEMALE,DM_TRANSFORM_KEEP_GENDER,DM_TRANSFORM_CHANGE_SPECIES,DM_TRANSFORM_CHANGE_SPECIES_EGG,DM_TRANSFORM_KEEP_GENDER_EGG,DM_TRANSFORM_MALE_EGG,DM_TRANSFORM_FEMALE_EGG, DM_EGG)
|
||||
var/tmp/list/transform_modes = list(DM_TRANSFORM_MALE,DM_TRANSFORM_FEMALE,DM_TRANSFORM_KEEP_GENDER,DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR,DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR_EGG,DM_TRANSFORM_REPLICA,DM_TRANSFORM_REPLICA_EGG,DM_TRANSFORM_KEEP_GENDER_EGG,DM_TRANSFORM_MALE_EGG,DM_TRANSFORM_FEMALE_EGG, DM_EGG)
|
||||
var/tmp/mob/living/owner // The mob whose belly this is.
|
||||
var/tmp/list/internal_contents = list() // People/Things you've eaten into this belly!
|
||||
var/tmp/is_full // Flag for if digested remeans are present. (for disposal messages)
|
||||
|
||||
@@ -144,6 +144,37 @@
|
||||
M.nutrition += 1
|
||||
return
|
||||
|
||||
///////////////////////////// DM_TRANSFORM_HAIR_AND_EYES /////////////////////////////
|
||||
if(digest_mode == DM_TRANSFORM_HAIR_AND_EYES && ishuman(owner))
|
||||
for (var/mob/living/carbon/human/P in internal_contents)
|
||||
if(P.stat)
|
||||
continue
|
||||
|
||||
var/mob/living/carbon/human/O = owner
|
||||
|
||||
var/TFchance = 1 //This used to be RNG, resulting people waiting ages. This way does it instantly.
|
||||
if(TFchance == 1)
|
||||
if(P.r_hair != O.r_hair || P.g_hair != O.g_hair || P.b_hair != O.b_hair || P.r_skin != O.r_skin || P.g_skin != O.g_skin || P.b_skin != O.b_skin || P.r_facial != O.r_facial || P.g_facial != O.g_facial || P.b_facial != O.b_facial)
|
||||
P.r_hair = O.r_hair
|
||||
P.r_facial = O.r_facial
|
||||
P.g_hair = O.g_hair
|
||||
P.g_facial = O.g_facial
|
||||
P.b_hair = O.b_hair
|
||||
P.b_facial = O.b_facial
|
||||
P.r_skin = O.r_skin
|
||||
P.g_skin = O.g_skin
|
||||
P.b_skin = O.b_skin
|
||||
P.h_style = O.h_style
|
||||
P << "<span class='notice'>Your body tingles all over...</span>"
|
||||
owner << "<span class='notice'>You tingle as you make noticeable changes to your captive's body.</span>"
|
||||
P.update_hair()
|
||||
P.update_body()
|
||||
P.updateicon()
|
||||
|
||||
if(O.nutrition > 400 && P.nutrition < 400)
|
||||
O.nutrition -= 2
|
||||
P.nutrition += 1.5
|
||||
return
|
||||
///////////////////////////// DM_TRANSFORM_MALE /////////////////////////////
|
||||
if(digest_mode == DM_TRANSFORM_MALE && ishuman(owner))
|
||||
for (var/mob/living/carbon/human/P in internal_contents)
|
||||
@@ -188,10 +219,9 @@
|
||||
P.update_body()
|
||||
P.updateicon()
|
||||
|
||||
if(O.nutrition > 0)
|
||||
if(O.nutrition > 400 && P.nutrition < 400)
|
||||
O.nutrition -= 2
|
||||
if(P.nutrition < 400)
|
||||
P.nutrition += 1
|
||||
P.nutrition += 1.5
|
||||
return
|
||||
|
||||
|
||||
@@ -236,10 +266,9 @@
|
||||
P.update_body()
|
||||
P.updateicon()
|
||||
|
||||
if(O.nutrition > 0)
|
||||
if(O.nutrition > 400 && P.nutrition < 400)
|
||||
O.nutrition -= 2
|
||||
if(P.nutrition < 400)
|
||||
P.nutrition += 1
|
||||
P.nutrition += 1.5
|
||||
return
|
||||
|
||||
///////////////////////////// DM_TRANSFORM_KEEP_GENDER /////////////////////////////
|
||||
@@ -279,14 +308,47 @@
|
||||
P.update_body()
|
||||
P.updateicon()
|
||||
|
||||
if(O.nutrition > 0)
|
||||
if(O.nutrition > 400 && P.nutrition < 400)
|
||||
O.nutrition -= 2
|
||||
if(P.nutrition < 400)
|
||||
P.nutrition += 1
|
||||
P.nutrition += 1.5
|
||||
return
|
||||
|
||||
///////////////////////////// DM_TRANSFORM_CHANGE_SPECIES /////////////////////////////
|
||||
if(digest_mode == DM_TRANSFORM_CHANGE_SPECIES && ishuman(owner))
|
||||
///////////////////////////// DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR /////////////////////////////
|
||||
if(digest_mode == DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR && ishuman(owner))
|
||||
for (var/mob/living/carbon/human/P in internal_contents)
|
||||
if(P.stat)
|
||||
continue
|
||||
|
||||
var/mob/living/carbon/human/O = owner
|
||||
|
||||
var/TFchance = 1 //This used to be RNG, resulting people waiting ages. This way does it instantly.
|
||||
if(TFchance == 1)
|
||||
if(P.species != O.species || P.tail_style != O.tail_style || P.custom_species != O.custom_species || P.ear_style != O.ear_style)
|
||||
P.tail_style = O.tail_style
|
||||
P.ear_style = O.ear_style
|
||||
P.species = O.species
|
||||
P.custom_species = O.custom_species
|
||||
for(var/obj/item/organ/I in P.internal_organs) //This prevents organ rejection
|
||||
I.species = O.species
|
||||
for(var/obj/item/organ/external/chest/A in O.organs)
|
||||
for(var/obj/item/organ/external/Z in P.organs) //This makes their limb sprites look correct.
|
||||
Z.species = O.species
|
||||
//Z.h_col = A.h_col //We're not making them a replica of the other person. Sprite changes, but they stay the same color.
|
||||
//Z.s_col = A.s_col
|
||||
P << "<span class='notice'>You lose sensation of your body, feeling only the warmth of everything around you... </span>"
|
||||
owner << "<span class='notice'>Your body shifts as you make dramatic changes to your captive's body.</span>"
|
||||
P.fixblood()
|
||||
P.update_body()
|
||||
P.update_tail_showing()
|
||||
P.updateicon()
|
||||
|
||||
if(O.nutrition > 400 && P.nutrition < 400)
|
||||
O.nutrition -= 2
|
||||
P.nutrition += 1.5
|
||||
return
|
||||
|
||||
///////////////////////////// DM_TRANSFORM_REPLICA /////////////////////////////
|
||||
if(digest_mode == DM_TRANSFORM_REPLICA && ishuman(owner))
|
||||
for (var/mob/living/carbon/human/P in internal_contents)
|
||||
if(P.stat)
|
||||
continue
|
||||
@@ -353,15 +415,13 @@
|
||||
P.update_tail_showing()
|
||||
P.updateicon()
|
||||
|
||||
if(O.nutrition > 0)
|
||||
if(O.nutrition > 400 && P.nutrition < 400)
|
||||
O.nutrition -= 2
|
||||
if(P.nutrition < 400)
|
||||
P.nutrition += 1
|
||||
P.nutrition += 1.5
|
||||
return
|
||||
|
||||
|
||||
///////////////////////////// DM_TRANSFORM_CHANGE_SPECIES_EGG /////////////////////////////
|
||||
if(digest_mode == DM_TRANSFORM_CHANGE_SPECIES_EGG && ishuman(owner))
|
||||
///////////////////////////// DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR_EGG /////////////////////////////
|
||||
if(digest_mode == DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR_EGG && ishuman(owner))
|
||||
for (var/mob/living/carbon/human/P in internal_contents)
|
||||
if(P.stat)
|
||||
continue
|
||||
@@ -371,26 +431,10 @@
|
||||
|
||||
if (O.custom_species)
|
||||
var/defined_species = O.custom_species
|
||||
P.r_hair = O.r_hair
|
||||
P.r_facial = O.r_facial
|
||||
P.g_hair = O.g_hair
|
||||
P.g_facial = O.g_facial
|
||||
P.b_hair = O.b_hair
|
||||
P.b_facial = O.b_facial
|
||||
P.r_skin = O.r_skin
|
||||
P.g_skin = O.g_skin
|
||||
P.b_skin = O.b_skin
|
||||
P.tail_style = O.tail_style
|
||||
P.r_tail = O.r_tail
|
||||
P.g_tail = O.g_tail
|
||||
P.b_tail = O.b_tail
|
||||
P.ear_style = O.ear_style
|
||||
P.h_style = O.h_style //Since some things are required, like the cobra hood.
|
||||
P.species = O.species
|
||||
P.custom_species = O.custom_species
|
||||
P.r_eyes = O.r_eyes
|
||||
P.g_eyes = O.g_eyes
|
||||
P.b_eyes = O.b_eyes
|
||||
P.tail_style = O.tail_style
|
||||
P.ear_style = O.ear_style
|
||||
P.species = O.species
|
||||
P.custom_species = O.custom_species
|
||||
|
||||
for(var/obj/item/organ/I in P.internal_organs) //This prevents organ rejection
|
||||
I.species = O.species
|
||||
@@ -398,8 +442,6 @@
|
||||
for(var/obj/item/organ/external/chest/A in O.organs)
|
||||
for(var/obj/item/organ/external/Z in P.organs) //This makes their limb sprites look correct.
|
||||
Z.species = O.species
|
||||
Z.h_col = A.h_col
|
||||
Z.s_col = A.s_col
|
||||
P << "<span class='notice'>You lose sensation of your body, feeling only the warmth around you as you're encased in an egg. </span>"
|
||||
owner << "<span class='notice'>You shift as you make dramatic changes to your captive's body as you encase them in an egg.</span>"
|
||||
P.fixblood()
|
||||
@@ -477,33 +519,14 @@
|
||||
J.desc = "This egg has a very unique look to it."
|
||||
internal_contents -= P
|
||||
else
|
||||
P.r_hair = O.r_hair
|
||||
P.r_facial = O.r_facial
|
||||
P.g_hair = O.g_hair
|
||||
P.g_facial = O.g_facial
|
||||
P.b_hair = O.b_hair
|
||||
P.b_facial = O.b_facial
|
||||
P.r_skin = O.r_skin
|
||||
P.g_skin = O.g_skin
|
||||
P.b_skin = O.b_skin
|
||||
P.tail_style = O.tail_style
|
||||
P.r_tail = O.r_tail
|
||||
P.g_tail = O.g_tail
|
||||
P.b_tail = O.b_tail
|
||||
P.ear_style = O.ear_style
|
||||
P.h_style = O.h_style
|
||||
P.species = O.species
|
||||
P.custom_species = O.custom_species
|
||||
P.r_eyes = O.r_eyes
|
||||
P.g_eyes = O.g_eyes
|
||||
P.b_eyes = O.b_eyes
|
||||
P.tail_style = O.tail_style
|
||||
P.ear_style = O.ear_style
|
||||
P.species = O.species
|
||||
for(var/obj/item/organ/I in P.internal_organs) //This prevents organ rejection
|
||||
I.species = O.species
|
||||
for(var/obj/item/organ/external/chest/A in O.organs)
|
||||
for(var/obj/item/organ/external/Z in P.organs) //This makes their limb sprites look correct.
|
||||
Z.species = O.species
|
||||
Z.h_col = A.h_col
|
||||
Z.s_col = A.s_col
|
||||
P << "<span class='notice'>You lose sensation of your body, feeling only the warmth around you as are you as you're encased in an egg. </span>"
|
||||
owner << "<span class='notice'>You shift as you make dramatic changes to your captive's body as you encase them in an egg.</span>"
|
||||
P.fixblood()
|
||||
@@ -744,6 +767,214 @@
|
||||
internal_contents -= P
|
||||
return
|
||||
|
||||
///////////////////////////// DM_TRANSFORM_REPLICA_EGG /////////////////////////////
|
||||
if(digest_mode == DM_TRANSFORM_REPLICA_EGG && ishuman(owner))
|
||||
for (var/mob/living/carbon/human/P in internal_contents)
|
||||
if(P.stat)
|
||||
continue
|
||||
if(P.absorbed) //If they're absorbed, don't egg them
|
||||
return
|
||||
var/mob/living/carbon/human/O = owner
|
||||
|
||||
if (O.custom_species)
|
||||
var/defined_species = O.custom_species
|
||||
P.r_hair = O.r_hair
|
||||
P.r_facial = O.r_facial
|
||||
P.g_hair = O.g_hair
|
||||
P.g_facial = O.g_facial
|
||||
P.b_hair = O.b_hair
|
||||
P.b_facial = O.b_facial
|
||||
P.r_skin = O.r_skin
|
||||
P.g_skin = O.g_skin
|
||||
P.b_skin = O.b_skin
|
||||
P.tail_style = O.tail_style
|
||||
P.r_tail = O.r_tail
|
||||
P.g_tail = O.g_tail
|
||||
P.b_tail = O.b_tail
|
||||
P.ear_style = O.ear_style
|
||||
P.h_style = O.h_style //Since some things are required, like the cobra hood.
|
||||
P.species = O.species
|
||||
P.custom_species = O.custom_species
|
||||
P.r_eyes = O.r_eyes
|
||||
P.g_eyes = O.g_eyes
|
||||
P.b_eyes = O.b_eyes
|
||||
|
||||
for(var/obj/item/organ/I in P.internal_organs) //This prevents organ rejection
|
||||
I.species = O.species
|
||||
|
||||
for(var/obj/item/organ/external/chest/A in O.organs)
|
||||
for(var/obj/item/organ/external/Z in P.organs) //This makes their limb sprites look correct.
|
||||
Z.species = O.species
|
||||
Z.h_col = A.h_col
|
||||
Z.s_col = A.s_col
|
||||
P << "<span class='notice'>You lose sensation of your body, feeling only the warmth around you as you're encased in an egg. </span>"
|
||||
owner << "<span class='notice'>You shift as you make dramatic changes to your captive's body as you encase them in an egg.</span>"
|
||||
P.fixblood()
|
||||
P.update_hair()
|
||||
P.update_body()
|
||||
P.update_tail_showing()
|
||||
P.update_eyes()
|
||||
P.updateicon()
|
||||
switch(O.egg_type)
|
||||
if("Unathi")
|
||||
var/obj/structure/closet/secure_closet/egg/unathi/J = new /obj/structure/closet/secure_closet/egg/unathi(O.loc)
|
||||
P.forceMove(J)
|
||||
J.name = "[defined_species] egg"
|
||||
J.desc = "This egg has a very unique look to it."
|
||||
for(var/mob/living/M in internal_contents)
|
||||
internal_contents -= P
|
||||
if("Tajaran")
|
||||
var/obj/structure/closet/secure_closet/egg/tajaran/J = new /obj/structure/closet/secure_closet/egg/tajaran(O.loc)
|
||||
P.forceMove(J)
|
||||
J.name = "[defined_species] egg"
|
||||
J.desc = "This egg has a very unique look to it."
|
||||
internal_contents -= P
|
||||
if("Akula")
|
||||
var/obj/structure/closet/secure_closet/egg/shark/J = new /obj/structure/closet/secure_closet/egg/shark(O.loc)
|
||||
P.forceMove(J)
|
||||
J.name = "[defined_species] egg"
|
||||
J.desc = "This egg has a very unique look to it."
|
||||
internal_contents -= P
|
||||
if("Skrell")
|
||||
var/obj/structure/closet/secure_closet/egg/skrell/J = new /obj/structure/closet/secure_closet/egg/skrell(O.loc)
|
||||
P.forceMove(J)
|
||||
J.name = "[defined_species] egg"
|
||||
J.desc = "This egg has a very unique look to it."
|
||||
internal_contents -= P
|
||||
if("Sergal")
|
||||
var/obj/structure/closet/secure_closet/egg/sergal/J = new /obj/structure/closet/secure_closet/egg/sergal(O.loc)
|
||||
P.forceMove(J)
|
||||
J.name = "[defined_species] egg"
|
||||
J.desc = "This egg has a very unique look to it."
|
||||
internal_contents -= P
|
||||
if("Human")
|
||||
var/obj/structure/closet/secure_closet/egg/human/J = new /obj/structure/closet/secure_closet/egg/human(O.loc)
|
||||
P.forceMove(J)
|
||||
J.name = "[defined_species] egg"
|
||||
J.desc = "This egg has a very unique look to it."
|
||||
internal_contents -= P
|
||||
if("Slime")
|
||||
var/obj/structure/closet/secure_closet/egg/slime/J = new /obj/structure/closet/secure_closet/egg/slime(O.loc)
|
||||
P.forceMove(J)
|
||||
J.name = "[defined_species] egg"
|
||||
J.desc = "This egg has a very unique look to it."
|
||||
internal_contents -= P
|
||||
if("Egg")
|
||||
var/obj/structure/closet/secure_closet/egg/J = new /obj/structure/closet/secure_closet/egg(O.loc)
|
||||
P.forceMove(J)
|
||||
J.name = "[defined_species] egg"
|
||||
J.desc = "This egg has a very unique look to it."
|
||||
internal_contents -= P
|
||||
if("Xenochimera")
|
||||
var/obj/structure/closet/secure_closet/egg/scree/J = new /obj/structure/closet/secure_closet/egg/scree(O.loc)
|
||||
P.forceMove(J)
|
||||
J.name = "[defined_species] egg"
|
||||
J.desc = "This egg has a very unique look to it."
|
||||
internal_contents -= P
|
||||
if("Xenomorph")
|
||||
var/obj/structure/closet/secure_closet/egg/xenomorph/J = new /obj/structure/closet/secure_closet/egg/xenomorph(O.loc)
|
||||
P.forceMove(J)
|
||||
J.name = "[defined_species] egg"
|
||||
J.desc = "This egg has a very unique look to it."
|
||||
internal_contents -= P
|
||||
else
|
||||
var/obj/structure/closet/secure_closet/egg/J = new /obj/structure/closet/secure_closet/egg(O.loc)
|
||||
P.forceMove(J)
|
||||
J.name = "[defined_species] egg"
|
||||
J.desc = "This egg has a very unique look to it."
|
||||
internal_contents -= P
|
||||
else
|
||||
P.r_hair = O.r_hair
|
||||
P.r_facial = O.r_facial
|
||||
P.g_hair = O.g_hair
|
||||
P.g_facial = O.g_facial
|
||||
P.b_hair = O.b_hair
|
||||
P.b_facial = O.b_facial
|
||||
P.r_skin = O.r_skin
|
||||
P.g_skin = O.g_skin
|
||||
P.b_skin = O.b_skin
|
||||
P.tail_style = O.tail_style
|
||||
P.r_tail = O.r_tail
|
||||
P.g_tail = O.g_tail
|
||||
P.b_tail = O.b_tail
|
||||
P.ear_style = O.ear_style
|
||||
P.h_style = O.h_style
|
||||
P.species = O.species
|
||||
P.custom_species = O.custom_species
|
||||
P.r_eyes = O.r_eyes
|
||||
P.g_eyes = O.g_eyes
|
||||
P.b_eyes = O.b_eyes
|
||||
for(var/obj/item/organ/I in P.internal_organs) //This prevents organ rejection
|
||||
I.species = O.species
|
||||
for(var/obj/item/organ/external/chest/A in O.organs)
|
||||
for(var/obj/item/organ/external/Z in P.organs) //This makes their limb sprites look correct.
|
||||
Z.species = O.species
|
||||
Z.h_col = A.h_col
|
||||
Z.s_col = A.s_col
|
||||
P << "<span class='notice'>You lose sensation of your body, feeling only the warmth around you as are you as you're encased in an egg. </span>"
|
||||
owner << "<span class='notice'>You shift as you make dramatic changes to your captive's body as you encase them in an egg.</span>"
|
||||
P.fixblood()
|
||||
P.update_hair()
|
||||
P.update_body()
|
||||
P.update_tail_showing()
|
||||
P.update_eyes()
|
||||
P.updateicon()
|
||||
switch(O.egg_type)
|
||||
if("Unathi")
|
||||
var/obj/structure/closet/secure_closet/egg/unathi/J = new /obj/structure/closet/secure_closet/egg/unathi(O.loc)
|
||||
P.forceMove(J)
|
||||
J.name = "Unathi egg"
|
||||
internal_contents -= P
|
||||
if("Tajaran")
|
||||
var/obj/structure/closet/secure_closet/egg/tajaran/J = new /obj/structure/closet/secure_closet/egg/tajaran(O.loc)
|
||||
P.forceMove(J)
|
||||
J.name = "Tajaran egg"
|
||||
internal_contents -= P
|
||||
if("Akula")
|
||||
var/obj/structure/closet/secure_closet/egg/shark/J = new /obj/structure/closet/secure_closet/egg/shark(O.loc)
|
||||
P.forceMove(J)
|
||||
J.name = "Akula egg"
|
||||
internal_contents -= P
|
||||
if("Skrell")
|
||||
var/obj/structure/closet/secure_closet/egg/skrell/J = new /obj/structure/closet/secure_closet/egg/skrell(O.loc)
|
||||
P.forceMove(J)
|
||||
J.name = "Skrell egg"
|
||||
internal_contents -= P
|
||||
if("Sergal")
|
||||
var/obj/structure/closet/secure_closet/egg/sergal/J = new /obj/structure/closet/secure_closet/egg/sergal(O.loc)
|
||||
P.forceMove(J)
|
||||
J.name = "Segal egg"
|
||||
internal_contents -= P
|
||||
if("Human")
|
||||
var/obj/structure/closet/secure_closet/egg/human/J = new /obj/structure/closet/secure_closet/egg/human(O.loc)
|
||||
P.forceMove(J)
|
||||
J.name = "Human egg"
|
||||
internal_contents -= P
|
||||
if("Slime")
|
||||
var/obj/structure/closet/secure_closet/egg/slime/J = new /obj/structure/closet/secure_closet/egg/slime(O.loc)
|
||||
P.forceMove(J)
|
||||
J.name = "Slime egg"
|
||||
internal_contents -= P
|
||||
if("Egg")
|
||||
var/obj/structure/closet/secure_closet/egg/J = new /obj/structure/closet/secure_closet/egg(O.loc)
|
||||
P.forceMove(J)
|
||||
J.name = "Egg"
|
||||
internal_contents -= P
|
||||
if("Xenochimera")
|
||||
var/obj/structure/closet/secure_closet/egg/scree/J = new /obj/structure/closet/secure_closet/egg/scree(O.loc)
|
||||
P.forceMove(J)
|
||||
internal_contents -= P
|
||||
if("Xenomorph")
|
||||
var/obj/structure/closet/secure_closet/egg/xenomorph/J = new /obj/structure/closet/secure_closet/egg/xenomorph(O.loc)
|
||||
P.forceMove(J)
|
||||
internal_contents -= P
|
||||
else
|
||||
var/obj/structure/closet/secure_closet/egg/J = new /obj/structure/closet/secure_closet/egg(O.loc)
|
||||
P.forceMove(J)
|
||||
J.name = "Odd egg" //Something went wrong. Since the default is "egg", they shouldn't see this.
|
||||
internal_contents -= P
|
||||
return
|
||||
|
||||
///////////////////////////// DM_TRANSFORM_MALE_EGG /////////////////////////////
|
||||
if(digest_mode == DM_TRANSFORM_MALE_EGG && ishuman(owner))
|
||||
for (var/mob/living/carbon/human/P in internal_contents)
|
||||
|
||||
@@ -102,13 +102,19 @@
|
||||
spanstyle = "color:purple;"
|
||||
if(DM_TRANSFORM_MALE)
|
||||
spanstyle = "color:purple;"
|
||||
if(DM_TRANSFORM_HAIR_AND_EYES)
|
||||
spanstyle = "color:purple;"
|
||||
if(DM_TRANSFORM_FEMALE)
|
||||
spanstyle = "color:purple;"
|
||||
if(DM_TRANSFORM_KEEP_GENDER)
|
||||
spanstyle = "color:purple;"
|
||||
if(DM_TRANSFORM_CHANGE_SPECIES)
|
||||
if(DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR)
|
||||
spanstyle = "color:purple;"
|
||||
if(DM_TRANSFORM_CHANGE_SPECIES_EGG)
|
||||
if(DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR_EGG)
|
||||
spanstyle = "color:purple;"
|
||||
if(DM_TRANSFORM_REPLICA)
|
||||
spanstyle = "color:purple;"
|
||||
if(DM_TRANSFORM_REPLICA_EGG)
|
||||
spanstyle = "color:purple;"
|
||||
if(DM_TRANSFORM_KEEP_GENDER_EGG)
|
||||
spanstyle = "color:purple;"
|
||||
|
||||
Reference in New Issue
Block a user