mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-12 07:33:34 +01:00
Adds hair gradient to DNA (#23134)
* Adds hair gradient to DNA * Improved define names * Update code/game/dna/dna2_helpers.dm Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com> * Update code/game/dna/dna2_helpers.dm Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com> * Update code/game/dna/dna2_helpers.dm Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com> * Update code/game/dna/dna2_helpers.dm Co-authored-by: Contrabang <91113370+Contrabang@users.noreply.github.com> * Update code/game/dna/dna2_helpers.dm Co-authored-by: Contrabang <91113370+Contrabang@users.noreply.github.com> --------- Co-authored-by: Adrer <adrermail@gmail.com> Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com> Co-authored-by: Contrabang <91113370+Contrabang@users.noreply.github.com>
This commit is contained in:
+18
-12
@@ -41,18 +41,24 @@
|
||||
#define DNA_UI_TAIL_MARK_R 26
|
||||
#define DNA_UI_TAIL_MARK_G 27
|
||||
#define DNA_UI_TAIL_MARK_B 28
|
||||
#define DNA_UI_EYES_R 29
|
||||
#define DNA_UI_EYES_G 30
|
||||
#define DNA_UI_EYES_B 31
|
||||
#define DNA_UI_GENDER 32
|
||||
#define DNA_UI_BEARD_STYLE 33
|
||||
#define DNA_UI_HAIR_STYLE 34
|
||||
#define DNA_UI_HACC_STYLE 35
|
||||
#define DNA_UI_BACC_STYLE 36
|
||||
#define DNA_UI_HEAD_MARK_STYLE 37
|
||||
#define DNA_UI_BODY_MARK_STYLE 38
|
||||
#define DNA_UI_TAIL_MARK_STYLE 39
|
||||
#define DNA_UI_LENGTH 40 // Update this when you add something, or you WILL break shit.
|
||||
#define DNA_UI_HAIR_GRADIENT_R 29
|
||||
#define DNA_UI_HAIR_GRADIENT_G 30
|
||||
#define DNA_UI_HAIR_GRADIENT_B 31
|
||||
#define DNA_UI_HAIR_GRADIENT_X 32
|
||||
#define DNA_UI_HAIR_GRADIENT_Y 33
|
||||
#define DNA_UI_EYES_R 34
|
||||
#define DNA_UI_EYES_G 35
|
||||
#define DNA_UI_EYES_B 36
|
||||
#define DNA_UI_GENDER 37
|
||||
#define DNA_UI_BEARD_STYLE 38
|
||||
#define DNA_UI_HAIR_STYLE 39
|
||||
#define DNA_UI_HACC_STYLE 40
|
||||
#define DNA_UI_BACC_STYLE 41
|
||||
#define DNA_UI_HAIR_GRADIENT_STYLE 42
|
||||
#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_SE_LENGTH 55 // Was STRUCDNASIZE, size 27. 15 new blocks added = 42, plus room to grow.
|
||||
|
||||
|
||||
@@ -204,6 +204,14 @@
|
||||
head_organ.hair_colour = rgb(head_organ.dna.GetUIValueRange(DNA_UI_HAIR_R, 255), head_organ.dna.GetUIValueRange(DNA_UI_HAIR_G, 255), head_organ.dna.GetUIValueRange(DNA_UI_HAIR_B, 255))
|
||||
head_organ.sec_hair_colour = rgb(head_organ.dna.GetUIValueRange(DNA_UI_HAIR2_R, 255), head_organ.dna.GetUIValueRange(DNA_UI_HAIR2_G, 255), head_organ.dna.GetUIValueRange(DNA_UI_HAIR2_B, 255))
|
||||
|
||||
//Hair Gradient
|
||||
var/gradient = GetUIValueRange(DNA_UI_HAIR_GRADIENT_STYLE, length(GLOB.hair_gradients_list))
|
||||
if(ISINDEXSAFE(GLOB.hair_gradients_list, gradient))
|
||||
head_organ.h_grad_style = GLOB.hair_gradients_list[gradient]
|
||||
head_organ.h_grad_offset_x = GetUIValueRange(DNA_UI_HAIR_GRADIENT_X, 32) - 16
|
||||
head_organ.h_grad_offset_y = GetUIValueRange(DNA_UI_HAIR_GRADIENT_Y, 32) - 16
|
||||
|
||||
head_organ.h_grad_colour = rgb(head_organ.dna.GetUIValueRange(DNA_UI_HAIR_GRADIENT_R, 255), head_organ.dna.GetUIValueRange(DNA_UI_HAIR_GRADIENT_G, 255), head_organ.dna.GetUIValueRange(DNA_UI_HAIR_GRADIENT_B, 255))
|
||||
//Facial Hair
|
||||
var/beard = GetUIValueRange(DNA_UI_BEARD_STYLE,GLOB.facial_hair_styles_list.len)
|
||||
if((beard > 0) && (beard <= GLOB.facial_hair_styles_list.len))
|
||||
@@ -255,6 +263,10 @@
|
||||
head_organ.f_style = "Shaved"
|
||||
var/beard = GLOB.facial_hair_styles_list.Find(head_organ.f_style)
|
||||
|
||||
if(!head_organ.h_grad_style)
|
||||
head_organ.h_grad_style = "None"
|
||||
var/gradient = GLOB.hair_gradients_list.Find(head_organ.h_grad_style)
|
||||
|
||||
// Head Accessory
|
||||
if(!head_organ.ha_style)
|
||||
head_organ.ha_style = "None"
|
||||
@@ -279,8 +291,16 @@
|
||||
SetUIValueRange(DNA_UI_HACC_G, color2G(head_organ.headacc_colour), 255, 1)
|
||||
SetUIValueRange(DNA_UI_HACC_B, color2B(head_organ.headacc_colour), 255, 1)
|
||||
|
||||
SetUIValueRange(DNA_UI_HAIR_GRADIENT_R, color2R(head_organ.h_grad_colour), 255, 1)
|
||||
SetUIValueRange(DNA_UI_HAIR_GRADIENT_G, color2G(head_organ.h_grad_colour), 255, 1)
|
||||
SetUIValueRange(DNA_UI_HAIR_GRADIENT_B, color2B(head_organ.h_grad_colour), 255, 1)
|
||||
|
||||
SetUIValueRange(DNA_UI_HAIR_GRADIENT_X, head_organ.h_grad_offset_x + 16, 32, 1)
|
||||
SetUIValueRange(DNA_UI_HAIR_GRADIENT_Y, head_organ.h_grad_offset_y + 16, 32, 1)
|
||||
|
||||
SetUIValueRange(DNA_UI_HAIR_STYLE, hair, GLOB.hair_styles_full_list.len, 1)
|
||||
SetUIValueRange(DNA_UI_BEARD_STYLE, beard, GLOB.facial_hair_styles_list.len, 1)
|
||||
SetUIValueRange(DNA_UI_HAIR_GRADIENT_STYLE, gradient, length(GLOB.hair_gradients_list), 1)
|
||||
|
||||
var/list/available = character.generate_valid_head_accessories()
|
||||
SetUIValueRange(DNA_UI_HACC_STYLE, available.Find(head_organ.ha_style), max(length(available), 1), 1)
|
||||
|
||||
Reference in New Issue
Block a user