From 8d831760ee50d605140ab5626aa6e381abdc5b71 Mon Sep 17 00:00:00 2001 From: Incoming Date: Sat, 28 Feb 2015 21:37:02 -0500 Subject: [PATCH 1/2] Tweaks and fixes for the apperence window: Fixes an unreported bug where all the lizardpeople were horrifying on the character preview because it wasn't rendering their tains and noses. Incidentally the proc for character previews is horrifying. Only relevent appearence settings will appear on the appearence screen for each race. Moves the skin tones selector to the relevent appearence settings area for humans. --- code/modules/client/preferences.dm | 55 +++++++++++++------ .../mob/new_player/preferences_setup.dm | 14 +++++ 2 files changed, 51 insertions(+), 18 deletions(-) diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index f22870a8cf8..270457451cb 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -176,44 +176,63 @@ datum/preferences dat += "Species: Human
" dat += "Blood Type: [blood_type]
" - dat += "Skin Tone:
[skin_tone]
" dat += "Underwear:
[underwear]
" dat += "Undershirt:
[undershirt]
" dat += "Socks:
[socks]
" dat += "Backpack:
[backbaglist[backbag]]
" + if(pref_species.use_skintones) - dat += "" + dat += "" - dat += "

Hair Style

" + dat += "

Skin Tone

" - dat += "[hair_style]
" - dat += "< >
" - dat += "    Change
" + dat += "[skin_tone]
" + + dat += "" + + if(HAIR in pref_species.specflags) + + dat += "" + + dat += "

Hair Style

" + + dat += "[hair_style]
" + dat += "< >
" + dat += "    Change
" - dat += "" + dat += "" - dat += "

Facial Hair Style

" + dat += "

Facial Hair Style

" - dat += "[facial_hair_style]
" - dat += "< >
" - dat += "    Change
" + dat += "[facial_hair_style]
" + dat += "< >
" + dat += "    Change
" + dat += "" - dat += "" + if(EYECOLOR in pref_species.specflags) - dat += "

Eye Color

" + dat += "" - dat += "    Change
" + dat += "

Eye Color

" - dat += "" + dat += "    Change
" - dat += "

Alien Color

" // even if choosing your mutantrace is off, this is here in case you gain one during a round + dat += "" - dat += "    Change
" + if(MUTCOLORS in pref_species.specflags) - dat += "" + dat += "" + + dat += "

Alien Color

" + + dat += "    Change
" + + dat += "" + + dat += "" if (1) // Game Preferences diff --git a/code/modules/mob/new_player/preferences_setup.dm b/code/modules/mob/new_player/preferences_setup.dm index 08029e1a5f5..b18e0b21888 100644 --- a/code/modules/mob/new_player/preferences_setup.dm +++ b/code/modules/mob/new_player/preferences_setup.dm @@ -65,6 +65,20 @@ facial_s.Blend("#[facial_hair_color]", ICON_MULTIPLY) eyes_s.Blend(facial_s, ICON_OVERLAY) + var/list/relevent_layers = list(BODY_BEHIND_LAYER, BODY_ADJ_LAYER, BODY_FRONT_LAYER) + var/icon_state_string = "[pref_species.id]_" + + if(pref_species.sexes) + icon_state_string += "[g]_s" + else + icon_state_string += "_s" + + for(var/layer in relevent_layers) + for(var/bodypart in pref_species.mutant_bodyparts) + var/icon/part = new/icon("icon" = 'icons/mob/mutant_bodyparts.dmi', "icon_state" = "[icon_state_string]_[bodypart]_[layer]") + part.Blend("#[mutant_color]", ICON_MULTIPLY) + preview_icon.Blend(part, ICON_OVERLAY) + var/icon/clothes_s = null if(job_civilian_low & ASSISTANT)//This gives the preview icon clothes depending on which job(if any) is set to 'high' clothes_s = new /icon('icons/mob/uniform.dmi', "grey_s") From 546c5eedc4ca9f6b9cb44809036734e928bb3505 Mon Sep 17 00:00:00 2001 From: Incoming Date: Thu, 5 Mar 2015 14:23:19 -0500 Subject: [PATCH 2/2] if you have AI or cyborg set to high, you'll see that in the preview window instead of a nondescript naked human --- code/modules/mob/new_player/preferences_setup.dm | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/code/modules/mob/new_player/preferences_setup.dm b/code/modules/mob/new_player/preferences_setup.dm index b18e0b21888..3d5581648d2 100644 --- a/code/modules/mob/new_player/preferences_setup.dm +++ b/code/modules/mob/new_player/preferences_setup.dm @@ -23,6 +23,21 @@ del(preview_icon_side) var/icon/preview_icon = null + if(job_engsec_high) //cyborg/AI check, put first to avoid so much unneeded blending + switch(job_engsec_high) + if(AI) + preview_icon = new /icon('icons/mob/AI.dmi', "AI") + + if(CYBORG) + preview_icon = new /icon('icons/mob/robots.dmi', "robot") + + if(preview_icon) //We're busting out! + preview_icon_front = new(preview_icon, dir = SOUTH) + preview_icon_side = new(preview_icon, dir = WEST) + + del(preview_icon) + return + var/g = "m" if(gender == FEMALE) g = "f"