mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-10 10:12:45 +00:00
DNA Records transfer descriptors and gender (#6479)
This commit is contained in:
@@ -18,6 +18,8 @@
|
||||
var/mind=null
|
||||
var/languages=null
|
||||
var/list/flavor=null
|
||||
var/gender = null
|
||||
var/list/body_descriptors = null
|
||||
var/list/genetic_modifiers = list() // Modifiers with the MODIFIER_GENETIC flag are saved. Note that only the type is saved, not an instance.
|
||||
|
||||
/datum/dna2/record/proc/GetData()
|
||||
@@ -706,7 +708,10 @@
|
||||
databuf.types = DNA2_BUF_UE
|
||||
databuf.dna = src.connected.occupant.dna.Clone()
|
||||
if(ishuman(connected.occupant))
|
||||
databuf.dna.real_name=connected.occupant.dna.real_name
|
||||
var/mob/living/carbon/human/H = connected.occupant
|
||||
databuf.dna.real_name = H.dna.real_name
|
||||
databuf.gender = H.gender
|
||||
databuf.body_descriptors = H.descriptors
|
||||
databuf.name = "Unique Identifier"
|
||||
src.buffers[bufferId] = databuf
|
||||
return 1
|
||||
@@ -717,7 +722,10 @@
|
||||
databuf.types = DNA2_BUF_UI|DNA2_BUF_UE
|
||||
databuf.dna = src.connected.occupant.dna.Clone()
|
||||
if(ishuman(connected.occupant))
|
||||
databuf.dna.real_name=connected.occupant.dna.real_name
|
||||
var/mob/living/carbon/human/H = connected.occupant
|
||||
databuf.dna.real_name = H.dna.real_name
|
||||
databuf.gender = H.gender
|
||||
databuf.body_descriptors = H.descriptors
|
||||
databuf.name = "Unique Identifier + Unique Enzymes"
|
||||
src.buffers[bufferId] = databuf
|
||||
return 1
|
||||
@@ -728,7 +736,10 @@
|
||||
databuf.types = DNA2_BUF_SE
|
||||
databuf.dna = src.connected.occupant.dna.Clone()
|
||||
if(ishuman(connected.occupant))
|
||||
databuf.dna.real_name=connected.occupant.dna.real_name
|
||||
var/mob/living/carbon/human/H = connected.occupant
|
||||
databuf.dna.real_name = H.dna.real_name
|
||||
databuf.gender = H.gender
|
||||
databuf.body_descriptors = H.descriptors
|
||||
databuf.name = "Structural Enzymes"
|
||||
src.buffers[bufferId] = databuf
|
||||
return 1
|
||||
@@ -764,10 +775,18 @@
|
||||
if ((buf.types & DNA2_BUF_UE))
|
||||
src.connected.occupant.real_name = buf.dna.real_name
|
||||
src.connected.occupant.name = buf.dna.real_name
|
||||
if(ishuman(connected.occupant))
|
||||
var/mob/living/carbon/human/H = connected.occupant
|
||||
H.gender = buf.gender
|
||||
H.descriptors = buf.body_descriptors
|
||||
src.connected.occupant.UpdateAppearance(buf.dna.UI.Copy())
|
||||
else if (buf.types & DNA2_BUF_SE)
|
||||
src.connected.occupant.dna.SE = buf.dna.SE
|
||||
src.connected.occupant.dna.UpdateSE()
|
||||
if(ishuman(connected.occupant))
|
||||
var/mob/living/carbon/human/H = connected.occupant
|
||||
H.gender = buf.gender
|
||||
H.descriptors = buf.body_descriptors
|
||||
domutcheck(src.connected.occupant,src.connected)
|
||||
src.connected.occupant.apply_effect(rand(20,50), IRRADIATE, check_protection = 0)
|
||||
return 1
|
||||
|
||||
@@ -113,6 +113,8 @@
|
||||
if(!R.dna.real_name) //to prevent null names
|
||||
R.dna.real_name = "clone ([rand(0,999)])"
|
||||
H.real_name = R.dna.real_name
|
||||
H.gender = R.gender
|
||||
H.descriptors = R.body_descriptors
|
||||
|
||||
//Get the clone body ready
|
||||
H.adjustCloneLoss(150) // New damage var so you can't eject a clone early then stab them to abuse the current damage system --NeoFite
|
||||
|
||||
Reference in New Issue
Block a user