Skip to content

Commit

Permalink
Resprites humans, gives humans a choice of 9 bodies, replaces ethnici…
Browse files Browse the repository at this point in the history
…ty system (#6073)

<!-- Write **BELOW** The Headers and **ABOVE** The comments else it may
not be viewable. -->

# About the pull request

<!-- Remove this text and explain what the purpose of your PR is.

Mention if you have tested your changes. If you changed a map, make sure
you used the mapmerge tool.
If this is an Issue Correction, you can type "Fixes Issue #169420" to
link the PR to the corresponding Issue number #169420.

Remember: something that is self-evident to you might not be to others.
Explain your rationale fully, even if you feel it goes without saying.
-->

**Major Changes:**
-gives humans (and human passing synths) a choice of body size: Thin,
Average, Large (determines the 'weight class' look)

-gives humans (and human passing synths) a choice of body muscularity:
No Muscles, Lean, Ripped (determines how beefy they look)

-Humans/synths can mix and match this to create 9 unique body shapes

-Redoes most of the underwear to be less bad, removes the gender split
from underwear bottom, redoes thongs and a hidden option into a Tanga
for the bigger bunch and Satin for those who think regular underwear is
too rough.

-Replaces the old ethnicity system with a new skintone, with there being
11 total options, Extra Pale, Pale 1,2,3, Tan 1,2,3, Dark 1,2,3, and
Melanated.

-🎉black people are no longer purple🎉

---

**Minor Changes:**
-**NEW**: Changes dogtags to not be visible by default, adds an
accessory dogtag for those who want it, the dogtags both looked bad and
harmed sprite quality by just existing and being the way they were, this
allows players who want it to show off their dogtags, it can look pretty
good with a rolled down uniform

-Resprites most of the bra's to just look less bad

-Touches the way that icons are effected and drawn in order for this PR
to work, I tested this PR excessively and could notice no bugs but pls
look over this part, it took me some hours to get it functional.

---

Notes: this doesnt change the human shape or ratio at all, they still
fit in exactly what they did before. the only notable sprite change is
that humans are now on a palette of 5 (sometimes 4 if they have no
muscle and arent large) instead of a constant 6 to 7

# Explain why it's good for the game

<!-- Please add a short description of why you think these changes would
benefit the game. If you can't justify it in words, it might not be
worth adding, and may discourage maintainers from reviewing or merging
your PR. This section is not strictly required for (non-controversial)
fix PRs or backend PRs. -->

Our human sprites were pretty outdated, this touchup gives both a lot of
player customization to their characters, opens up ideas for funny RP,
makes being thin not look ????, makes being overweight look actually
overweight, in general makes being shirtless at all look less awful (it
was so bad), replaces our old ethnicity system which looked like it was
designed by an 19th century anthropologist who was obsessed with
phrenology (seriously, orient hasn't been used in anthropology in nearly
a century), also black people no longer are purple so rejoice

# Testing Photographs and Procedure
<!-- Include any screenshots/videos/debugging steps of the modified code
functioning successfully, ideally including edge cases. -->

<!-- !! If you are modifying sprites, you **must** include one or more
in-game screenshots or videos of the new sprites. !! -->

<details>
<summary>Screenshots & Videos</summary>

As of 2:00PM EST on May 30th, the large and muscled sprite has been
updated to not have abs anymore cause it looked weird, the back sprites
for skinny + no muscle and skinny + lean have also been adjusted, this
is how the human sprites look now.


![image](https://github.com/cmss13-devs/cmss13/assets/158611449/24b67a64-7286-4f8a-beed-5887291b809c)


![image](https://github.com/cmss13-devs/cmss13/assets/158611449/8809efd0-6f0b-47a7-ba57-a81216dfd1ba)


As of 7:13PM EST on April 5th, the large body no muscle sprite has been
updated to be smoother (side sprite has been edited too but I dont feel
like getting the pic for that)


![image](https://github.com/cmss13-devs/cmss13/assets/158611449/7b8a5e05-6a7a-459c-aa70-8e490a06da12)



![image](https://github.com/cmss13-devs/cmss13/assets/158611449/850b202f-0125-4440-be37-374f7be07c2f)



![image](https://github.com/cmss13-devs/cmss13/assets/158611449/93c8d602-42bf-46e0-84ac-6c2724125db9)

note: not all skintones are 1:1

![image](https://github.com/cmss13-devs/cmss13/assets/158611449/07ac5a74-0285-4262-aa7e-34749e487f9c)


![image](https://github.com/cmss13-devs/cmss13/assets/158611449/30f8d1b4-676f-4373-bd5e-d03d8c3e47e6)


![image](https://github.com/cmss13-devs/cmss13/assets/158611449/83093ef8-2130-4712-a935-61af701495f8)


![image](https://github.com/cmss13-devs/cmss13/assets/158611449/957f0346-95e1-4431-888e-5e44aa2e0c92)


![image](https://github.com/cmss13-devs/cmss13/assets/158611449/69b24fb5-06d1-4562-bc4b-8d994c00ec66)


![image](https://github.com/cmss13-devs/cmss13/assets/158611449/a19d3761-0e89-49e8-8d0f-434a1d1edbf3)


![image](https://github.com/cmss13-devs/cmss13/assets/158611449/56d2b2f8-aa86-4c8a-a13a-3647b10b9df8)


https://github.com/cmss13-devs/cmss13/assets/158611449/a65557d0-2a06-4d06-a1c2-4dd8d4fe503b

(finally, overweight sprites that dont look dumb, also shoutout to this
scene, link starts at 00:15, for my inspiration for bigger marines
https://youtu.be/eWH2w-LUVc0?si=uu9ybD61HjLw_Xqn&t=15)

</details>


# Changelog

<!-- If your PR modifies aspects of the game that can be concretely
observed by players or admins you should add a changelog. If your change
does NOT meet this description, remove this section. Be sure to properly
label your changes in the changelog. Please note that maintainers freely
reserve the right to remove and add tags should they deem it
appropriate. You can attempt to finagle the system all you want, but
it's best to shoot for clear communication right off the bat. -->
<!-- If you add a name after the ':cl', that name will be used in the
changelog. You must add your CKEY after the CL if your GitHub name
doesn't match. Maintainers freely reserve the right to remove and add
tags should they deem it appropriate. -->

:cl:
add: replaces the old ethnicity system with a new skintone system
imageadd: Resprites humans, adds 9 new mix and match body options to
replace the old 3 options
add: resprites dogtags and adds an accessory dogtag that can be made
visible via attaching to suit/armor
imageadd: Touches up a lot of the underwear sprites
/:cl:

<!-- Both :cl:'s are required for the changelog to work! -->

---------

Co-authored-by: Vero <[email protected]>
  • Loading branch information
GrrrKitten and vero5123 authored Jun 6, 2024
1 parent fd8c22f commit 884ab17
Show file tree
Hide file tree
Showing 36 changed files with 392 additions and 315 deletions.
3 changes: 2 additions & 1 deletion code/__HELPERS/icons.dm
Original file line number Diff line number Diff line change
Expand Up @@ -919,8 +919,9 @@ world
// From /datum/preferences/proc/copy_appearance_to
body.age = original.age
body.gender = original.gender
body.ethnicity = original.ethnicity
body.skin_color = original.skin_color
body.body_type = original.body_type
body.body_size = original.body_size

body.r_eyes = original.r_eyes
body.g_eyes = original.g_eyes
Expand Down
9 changes: 6 additions & 3 deletions code/__HELPERS/mobs.dm
Original file line number Diff line number Diff line change
@@ -1,11 +1,14 @@
#define isdeaf(A) (ismob(A) && ((A?:sdisabilities & DISABILITY_DEAF) || A?:ear_deaf))
#define xeno_hivenumber(A) (isxeno(A) ? A?:hivenumber : FALSE)

/proc/random_ethnicity()
return pick(GLOB.ethnicities_list)
/proc/random_skin_color()
return pick(GLOB.skin_color_list)

/proc/random_body_type()
return pick(GLOB.body_types_list)
return pick(GLOB.body_type_list)

/proc/random_body_size()
return pick(GLOB.body_size_list)

/proc/random_hair_style(gender, species = "Human")
var/h_style = "Crewcut"
Expand Down
16 changes: 11 additions & 5 deletions code/__HELPERS/sanitize_values.dm
Original file line number Diff line number Diff line change
Expand Up @@ -45,18 +45,24 @@
else return default
return default

/proc/sanitize_ethnicity(ethnicity, default = "Western")
if (ethnicity in GLOB.ethnicities_list)
return ethnicity
/proc/sanitize_skin_color(skin_color, default = "Pale 2")
if(skin_color in GLOB.skin_color_list)
return skin_color

return default

/proc/sanitize_body_type(body_type, default = "Mesomorphic (Average)")
if (body_type in GLOB.body_types_list)
/proc/sanitize_body_type(body_type, default = "Lean")
if(body_type in GLOB.body_type_list)
return body_type

return default

/proc/sanitize_body_size(body_size, default = "Average")
if(body_size in GLOB.body_size_list)
return body_size

return default

/proc/sanitize_hexcolor(color, default="#000000")
if(!istext(color)) return default
var/len = length(color)
Expand Down
9 changes: 5 additions & 4 deletions code/_globalvars/global_lists.dm
Original file line number Diff line number Diff line change
Expand Up @@ -198,10 +198,11 @@ GLOBAL_LIST_INIT(custom_event_info_list, setup_custom_event_info())
GLOBAL_LIST_INIT(poster_designs, subtypesof(/datum/poster))

//Preferences stuff
// Ethnicities
GLOBAL_REFERENCE_LIST_INDEXED(ethnicities_list, /datum/ethnicity, name) // Stores /datum/ethnicity indexed by name
// Body Types
GLOBAL_REFERENCE_LIST_INDEXED(body_types_list, /datum/body_type, name) // Stores /datum/body_type indexed by name
// Skin colors
GLOBAL_REFERENCE_LIST_INDEXED(skin_color_list, /datum/skin_color, name) // Stores /datum/skin_color indexed by name
// Body
GLOBAL_REFERENCE_LIST_INDEXED(body_type_list, /datum/body_type, name) // Stores /datum/body_type indexed by name
GLOBAL_REFERENCE_LIST_INDEXED(body_size_list, /datum/body_size, name) // Stores /datum/body_size indexed by name
//Hairstyles
GLOBAL_REFERENCE_LIST_INDEXED(hair_styles_list, /datum/sprite_accessory/hair, name) //stores /datum/sprite_accessory/hair indexed by name
GLOBAL_REFERENCE_LIST_INDEXED(facial_hair_styles_list, /datum/sprite_accessory/facial_hair, name) //stores /datum/sprite_accessory/facial_hair indexed by name
Expand Down
35 changes: 21 additions & 14 deletions code/datums/datacore.dm
Original file line number Diff line number Diff line change
Expand Up @@ -351,31 +351,38 @@ GLOBAL_DATUM_INIT(data_core, /datum/datacore, new)
var/icon/icobase = H.species.icobase
var/icon/temp

var/datum/ethnicity/ET = GLOB.ethnicities_list[H.ethnicity]
var/datum/body_type/B = GLOB.body_types_list[H.body_type]
var/datum/skin_color/set_skin_color = GLOB.skin_color_list[H.skin_color]
var/datum/body_type/set_body_type = GLOB.body_type_list[H.body_type]
var/datum/body_size/set_body_size = GLOB.body_size_list[H.body_size]

var/e_icon
var/b_icon
var/skin_color_icon
var/body_type_icon
var/body_size_icon

if (!ET)
e_icon = "western"
if(!set_skin_color)
skin_color_icon = "pale2"
else
e_icon = ET.icon_name
skin_color_icon = set_skin_color.icon_name

if (!B)
b_icon = "mesomorphic"
if(!set_body_type)
body_type_icon = "lean"
else
b_icon = B.icon_name
body_type_icon = set_body_type.icon_name

preview_icon = new /icon(icobase, get_limb_icon_name(H.species, b_icon, H.gender, "torso", e_icon))
temp = new /icon(icobase, get_limb_icon_name(H.species, b_icon, H.gender, "groin", e_icon))
if(!set_body_size)
body_size_icon = "avg"
else
body_size_icon = set_body_size.icon_name

preview_icon = new /icon(icobase, get_limb_icon_name(H.species, body_size_icon, body_type_icon, H.gender, "torso", skin_color_icon))
temp = new /icon(icobase, get_limb_icon_name(H.species, body_size_icon, body_type_icon, H.gender, "groin", skin_color_icon))
preview_icon.Blend(temp, ICON_OVERLAY)
temp = new /icon(icobase, get_limb_icon_name(H.species, b_icon, H.gender, "head", e_icon))
temp = new /icon(icobase, get_limb_icon_name(H.species, body_size_icon, body_type_icon, H.gender, "head", skin_color_icon))
preview_icon.Blend(temp, ICON_OVERLAY)

for(var/obj/limb/E in H.limbs)
if(E.status & LIMB_DESTROYED) continue
temp = new /icon(icobase, get_limb_icon_name(H.species, b_icon, H.gender, E.name, e_icon))
temp = new /icon(icobase, get_limb_icon_name(H.species, body_size_icon, body_type_icon, H.gender, E.name, skin_color_icon))
if(E.status & LIMB_ROBOT)
temp.MapColors(rgb(77,77,77), rgb(150,150,150), rgb(28,28,28), rgb(0,0,0))
preview_icon.Blend(temp, ICON_OVERLAY)
Expand Down
2 changes: 1 addition & 1 deletion code/defines/procs/records.dm
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
general_record.fields["real_rank"] = "Unassigned"
general_record.fields["sex"] = "Male"
general_record.fields["age"] = "Unknown"
general_record.fields["ethnicity"] = "Unknown"
general_record.fields["skin_color"] = "Unknown"
general_record.fields["p_stat"] = "Active"
general_record.fields["m_stat"] = "Stable"
general_record.fields["species"] = "Human"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -187,6 +187,7 @@
list("M10 Helmet Netting", floor(scale * 10), /obj/item/prop/helmetgarb/netting, VENDOR_ITEM_REGULAR),
list("M10 Helmet Rain Cover", floor(scale * 10), /obj/item/prop/helmetgarb/raincover, VENDOR_ITEM_REGULAR),
list("Firearm Lubricant", floor(scale * 15), /obj/item/prop/helmetgarb/gunoil, VENDOR_ITEM_REGULAR),
list("Attachable Dogtags", floor(scale * 15), /obj/item/clothing/accessory/dogtags, VENDOR_ITEM_REGULAR),
list("USCM Flair", floor(scale * 15), /obj/item/prop/helmetgarb/flair_uscm, VENDOR_ITEM_REGULAR),
list("Falling Falcons Shoulder Patch", floor(scale * 15), /obj/item/clothing/accessory/patch/falcon, VENDOR_ITEM_REGULAR),
list("USCM Shoulder Patch", floor(scale * 15), /obj/item/clothing/accessory/patch, VENDOR_ITEM_REGULAR),
Expand Down
41 changes: 27 additions & 14 deletions code/modules/client/preferences.dm
Original file line number Diff line number Diff line change
Expand Up @@ -154,8 +154,10 @@ GLOBAL_LIST_INIT(bgstate_options, list(
var/g_eyes = 0 //Eye color
var/b_eyes = 0 //Eye color
var/species = "Human" //Species datum to use.
var/ethnicity = "Western" // Ethnicity
var/body_type = "Mesomorphic (Average)" // Body Type
var/ethnicity = "Western" //Legacy, kept to update save files
var/skin_color = "Pale 2" // Skin color
var/body_size = "Average" // Body Size
var/body_type = "Lean" // Body Type
var/language = "None" //Secondary language
var/list/gear //Custom/fluff item loadout.
var/preferred_squad = "None"
Expand Down Expand Up @@ -337,8 +339,9 @@ GLOBAL_LIST_INIT(bgstate_options, list(
dat += "<a href='?_src_=prefs;preference=all;task=random'>&reg;</A></h2>"
dat += "<b>Age:</b> <a href='?_src_=prefs;preference=age;task=input'><b>[age]</b></a><br>"
dat += "<b>Gender:</b> <a href='?_src_=prefs;preference=gender'><b>[gender == MALE ? "Male" : "Female"]</b></a><br>"
dat += "<b>Ethnicity:</b> <a href='?_src_=prefs;preference=ethnicity;task=input'><b>[ethnicity]</b></a><br>"
dat += "<b>Body Type:</b> <a href='?_src_=prefs;preference=body_type;task=input'><b>[body_type]</b></a><br>"
dat += "<b>Skin Color:</b> <a href='?_src_=prefs;preference=skin_color;task=input'><b>[skin_color]</b></a><br>"
dat += "<b>Body Size:</b> <a href='?_src_=prefs;preference=body_size;task=input'><b>[body_size]</b></a><br>"
dat += "<b>Body Muscularity:</b> <a href='?_src_=prefs;preference=body_type;task=input'><b>[body_type]</b></a><br>"
dat += "<b>Traits:</b> <a href='byond://?src=\ref[user];preference=traits;task=open'><b>Character Traits</b></a>"
dat += "<br>"

Expand Down Expand Up @@ -1178,10 +1181,12 @@ GLOBAL_LIST_INIT(bgstate_options, list(
real_name = character_origin.generate_human_name(gender)
if ("age")
age = rand(AGE_MIN, AGE_MAX)
if ("ethnicity")
ethnicity = random_ethnicity()
if ("skin_color")
skin_color = random_skin_color()
if ("body_type")
body_type = random_body_type()
if ("body_size")
body_size = random_body_size()
if ("hair")
r_hair = rand(0,255)
g_hair = rand(0,255)
Expand Down Expand Up @@ -1552,14 +1557,20 @@ GLOBAL_LIST_INIT(bgstate_options, list(
if(new_h_gradient_style)
grad_style = new_h_gradient_style

if ("ethnicity")
var/new_ethnicity = tgui_input_list(user, "Choose your character's ethnicity:", "Character Preferences", GLOB.ethnicities_list)
if ("skin_color")
var/new_skin_color = tgui_input_list(user, "Choose your character's skin color:", "Character Preferences", GLOB.skin_color_list)

if (new_ethnicity)
ethnicity = new_ethnicity
if (new_skin_color)
skin_color = new_skin_color

if ("body_size")
var/new_body_size = tgui_input_list(user, "Choose your character's body size:", "Character Preferences", GLOB.body_size_list)

if (new_body_size)
body_size = new_body_size

if ("body_type")
var/new_body_type = tgui_input_list(user, "Choose your character's body type:", "Character Preferences", GLOB.body_types_list)
var/new_body_type = tgui_input_list(user, "Choose your character's body type:", "Character Preferences", GLOB.body_type_list)

if (new_body_type)
body_type = new_body_type
Expand Down Expand Up @@ -2063,8 +2074,9 @@ GLOBAL_LIST_INIT(bgstate_options, list(

character.age = age
character.gender = gender
character.ethnicity = ethnicity
character.skin_color = skin_color
character.body_type = body_type
character.body_size = body_size

character.r_eyes = r_eyes
character.g_eyes = g_eyes
Expand Down Expand Up @@ -2136,15 +2148,16 @@ GLOBAL_LIST_INIT(bgstate_options, list(
message_admins("[character] ([character.ckey]) has spawned with their gender as plural or neuter. Please notify coders.")
character.gender = MALE

// Transfers the character's physical characteristics (age, gender, ethnicity, etc) to the mob
// Transfers the character's physical characteristics (age, gender, skin_color, etc) to the mob
/datum/preferences/proc/copy_appearance_to(mob/living/carbon/human/character, safety = 0)
if(!istype(character))
return

character.age = age
character.gender = gender
character.ethnicity = ethnicity
character.skin_color = skin_color
character.body_type = body_type
character.body_size = body_size

character.r_eyes = r_eyes
character.g_eyes = g_eyes
Expand Down
7 changes: 7 additions & 0 deletions code/modules/client/preferences_gear.dm
Original file line number Diff line number Diff line change
Expand Up @@ -952,6 +952,13 @@ GLOBAL_LIST_EMPTY(gear_datums_by_name)
cost = 1 //The cadmium poisoning pays for the discounted cost longterm
allowed_origins = USCM_ORIGINS

/datum/gear/misc/dogtags
display_name = "Attachable Dogtags"
path = /obj/item/clothing/accessory/dogtags
cost = 1
slot = WEAR_IN_ACCESSORY
allowed_origins = USCM_ORIGINS

/datum/gear/misc/patch_uscm
display_name = "USCM shoulder patch"
path = /obj/item/clothing/accessory/patch
Expand Down
56 changes: 54 additions & 2 deletions code/modules/client/preferences_savefile.dm
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#define SAVEFILE_VERSION_MIN 8
#define SAVEFILE_VERSION_MAX 22
#define SAVEFILE_VERSION_MAX 23

//handles converting savefiles to new formats
//MAKE SURE YOU KEEP THIS UP TO DATE!
Expand Down Expand Up @@ -95,6 +95,53 @@
sound_toggles |= SOUND_OBSERVER_ANNOUNCEMENTS
S["toggles_sound"] << sound_toggles

if(savefile_version < 23)
var/ethnicity
var/skin_color = "pale2"
S["ethnicity"] >> ethnicity
switch(ethnicity)
if("anglo")
skin_color = "pale2"
if("western")
skin_color = "tan2"
if("germanic")
skin_color = "pale2"
if("scandinavian")
skin_color = "pale3"
if("baltic")
skin_color = "pale3"
if("sinoorient")
skin_color = "pale1"
if("southorient")
skin_color = "tan1"
if("indian")
skin_color = "tan3"
if("sino")
skin_color = "tan1"
if("mesoamerican")
skin_color = "tan3"
if("northamerican")
skin_color = "tan3"
if("southamerican")
skin_color = "tan2"
if("circumpolar")
skin_color = "tan1"
if("northafrican")
skin_color = "tan3"
if("centralafrican")
skin_color = "dark1"
if("costalafrican")
skin_color = "dark3"
if("persian")
skin_color = "tan3"
if("levant")
skin_color = "tan3"
if("australasian")
skin_color = "dark2"
if("polynesian")
skin_color = "tan3"
S["skin_color"] << skin_color

savefile_version = SAVEFILE_VERSION_MAX
return 1

Expand Down Expand Up @@ -429,7 +476,9 @@
S["gender"] >> gender
S["age"] >> age
S["ethnicity"] >> ethnicity
S["skin_color"] >> skin_color
S["body_type"] >> body_type
S["body_size"] >> body_size
S["language"] >> language
S["spawnpoint"] >> spawnpoint

Expand Down Expand Up @@ -508,8 +557,9 @@
be_random_body = sanitize_integer(be_random_body, 0, 1, initial(be_random_body))
gender = sanitize_gender(gender)
age = sanitize_integer(age, AGE_MIN, AGE_MAX, initial(age))
ethnicity = sanitize_ethnicity(ethnicity)
skin_color = sanitize_skin_color(skin_color)
body_type = sanitize_body_type(body_type)
body_size = sanitize_body_size(body_size)
r_hair = sanitize_integer(r_hair, 0, 255, initial(r_hair))
g_hair = sanitize_integer(g_hair, 0, 255, initial(g_hair))
b_hair = sanitize_integer(b_hair, 0, 255, initial(b_hair))
Expand Down Expand Up @@ -580,7 +630,9 @@
S["gender"] << gender
S["age"] << age
S["ethnicity"] << ethnicity
S["skin_color"] << skin_color
S["body_type"] << body_type
S["body_size"] << body_size
S["language"] << language
S["hair_red"] << r_hair
S["hair_green"] << g_hair
Expand Down
8 changes: 8 additions & 0 deletions code/modules/clothing/under/ties.dm
Original file line number Diff line number Diff line change
Expand Up @@ -400,6 +400,14 @@
desc = "A fire-resistant shoulder patch, worn by the men and women of the UPP Naval Infantry."
icon_state = "navalpatch"

//misc

/obj/item/clothing/accessory/dogtags
name = "Attachable Dogtags"
desc = "A robust pair of dogtags to be worn around the neck of the United States Colonial Marines, however due to a combination of budget reallocation, Marines losing their dogtags, and multiple incidents of marines swallowing their tags, they now attach to the uniform or armor."
icon_state = "dogtag"
slot = ACCESSORY_SLOT_MEDAL

/obj/item/clothing/accessory/poncho
name = "USCM Poncho"
desc = "The standard USCM poncho has variations for every climate. Custom fitted to be attached to standard USCM armor variants it is comfortable, warming or cooling as needed, and well-fit. A marine couldn't ask for more. Affectionately referred to as a \"woobie\"."
Expand Down
4 changes: 2 additions & 2 deletions code/modules/gear_presets/fun.dm
Original file line number Diff line number Diff line change
Expand Up @@ -300,7 +300,7 @@
new_human.change_real_name(new_human, "Ivan")
new_human.f_style = "Shaved"
new_human.h_style = "Shaved Head"
new_human.ethnicity = "Scandinavian"
new_human.skin_color = "pale3"
new_human.r_hair = 165
new_human.g_hair = 42
new_human.b_hair = 42
Expand Down Expand Up @@ -363,7 +363,7 @@
new_human.b_facial = 51
new_human.h_style = "Mullet"
new_human.f_style = "Full English"
new_human.ethnicity = "Anglo"
new_human.skin_color = "pale2"
new_human.r_eyes = 102 //Brown eyes.
new_human.g_eyes = 51
new_human.b_eyes = 0
Expand Down
4 changes: 2 additions & 2 deletions code/modules/gear_presets/yautja.dm
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,13 @@

/datum/equipment_preset/yautja/load_race(mob/living/carbon/human/new_human, client/mob_client)
new_human.set_species(SPECIES_YAUTJA)
new_human.ethnicity = "tan"
new_human.skin_color = "tan"
new_human.body_type = "pred" //can be removed in future for body types
if(!mob_client)
mob_client = new_human.client
if(mob_client?.prefs)
new_human.h_style = mob_client.prefs.predator_h_style
new_human.ethnicity = mob_client.prefs.predator_skin_color
new_human.skin_color = mob_client.prefs.predator_skin_color

/datum/equipment_preset/yautja/load_id(mob/living/carbon/human/new_human)
new_human.job = rank
Expand Down
Loading

0 comments on commit 884ab17

Please sign in to comment.