diff --git a/code/__DEFINES/dna.dm b/code/__DEFINES/dna.dm index 2643a1077d4..c3cdf346f92 100644 --- a/code/__DEFINES/dna.dm +++ b/code/__DEFINES/dna.dm @@ -58,7 +58,9 @@ #define DNA_UI_HEAD_MARK_STYLE 43 #define DNA_UI_BODY_MARK_STYLE 44 #define DNA_UI_TAIL_MARK_STYLE 45 -#define DNA_UI_LENGTH 46 // Update this when you add something, or you WILL break shit. +#define DNA_UI_PHYSIQUE 46 +#define DNA_UI_HEIGHT 47 +#define DNA_UI_LENGTH 48 // Update this when you add something, or you WILL break shit. #define DNA_SE_LENGTH 55 // Was STRUCDNASIZE, size 27. 15 new blocks added = 42, plus room to grow. diff --git a/code/game/dna/dna2.dm b/code/game/dna/dna2.dm index 930c4147e72..4c9a7c0f582 100644 --- a/code/game/dna/dna2.dm +++ b/code/game/dna/dna2.dm @@ -130,6 +130,9 @@ GLOBAL_LIST_EMPTY(bad_blocks) SetUIValueRange(DNA_UI_BODY_MARK_STYLE, body_marks, GLOB.marking_styles_list.len, 1) SetUIValueRange(DNA_UI_TAIL_MARK_STYLE, tail_marks, GLOB.marking_styles_list.len, 1) + SetUIValueRange(DNA_UI_PHYSIQUE, GLOB.character_physiques.Find(character.physique), length(GLOB.character_physiques), 1) + SetUIValueRange(DNA_UI_HEIGHT, GLOB.character_heights.Find(character.height), length(GLOB.character_heights), 1) + var/list/bodyacc = GLOB.body_accessory_by_name.Find(character.body_accessory?.name || "None") SetUIValueRange(DNA_UI_BACC_STYLE, bodyacc, length(GLOB.body_accessory_by_name), 1) diff --git a/code/game/dna/dna2_helpers.dm b/code/game/dna/dna2_helpers.dm index 0201bcb7bb2..e8008e25ba9 100644 --- a/code/game/dna/dna2_helpers.dm +++ b/code/game/dna/dna2_helpers.dm @@ -175,6 +175,16 @@ if((tail_marks > 0) && (tail_marks <= GLOB.marking_styles_list.len)) H.m_styles["tail"] = GLOB.marking_styles_list[tail_marks] + // Physique (examine fluff) + var/new_physique = dna.GetUIValueRange(DNA_UI_PHYSIQUE, length(GLOB.character_physiques)) + if(ISINDEXSAFE(GLOB.character_physiques, new_physique)) + H.physique = GLOB.character_physiques[new_physique] + + // Height (examine fluff) + var/new_height = dna.GetUIValueRange(DNA_UI_HEIGHT, length(GLOB.character_heights)) + if(ISINDEXSAFE(GLOB.character_heights, new_height)) + H.height = GLOB.character_heights[new_height] + var/bodyacc = dna.GetUIValueRange(DNA_UI_BACC_STYLE, length(GLOB.body_accessory_by_name)) if(bodyacc > 0 && bodyacc <= length(GLOB.body_accessory_by_name)) H.body_accessory = GLOB.body_accessory_by_name[GLOB.body_accessory_by_name[bodyacc]]