diff --git a/code/modules/mob/abstract/new_player/sprite_accessories.dm b/code/modules/mob/abstract/new_player/sprite_accessories.dm
index 883de46f312..134047eb28c 100644
--- a/code/modules/mob/abstract/new_player/sprite_accessories.dm
+++ b/code/modules/mob/abstract/new_player/sprite_accessories.dm
@@ -2317,119 +2317,168 @@ Follow by example and make good judgement based on length which list to include
skr_tentacle_m
icon = 'icons/mob/human_face/skrell_hair.dmi'
- name = "Skrell Short Tentacles"
+ name = "Short Headtails"
icon_state = "skrell_hair_m"
species_allowed = list(/datum/species/skrell,/datum/species/skrell/axiori,/datum/species/zombie/skrell)
- length = 6
- chatname = "Short Tentacles"
+ length = 2
+ chatname = "short headtails"
var/scrunchy_style = "seaweed" // seaweed fits the normal tentacles pretty well
skr_tentacle_f
- name = "Skrell Average Tentacles"
+ name = "Headtails"
icon_state = "skrell_hair_f"
- length = 6
- chatname = "Average Tentacles"
+ length = 4
+ chatname = "headtails"
skr_tentacle_short
- name = "Skrell Very Short Tentacles"
+ name = "Very Short Headtails"
icon_state = "veryshort_s"
- length = 6
- chatname = "Short Tentacles"
+ length = 1
+ chatname = "short headtails"
skr_tentacle_long
- name = "Skrell Very Long Tentacles"
+ name = "Long Headtails"
icon_state = "verylong_s"
length = 6
- chatname = "Very Long Tentacles"
+ chatname = "long headtails"
skr_tentacle_doubletail
- name = "Skrell Hoop Ponytail"
+ name = "Headtails, ponytail (hoop)"
icon_state = "skrell_hoop"
- length = 3
- chatname = "Ponytail, Hoop"
+ length = 5
+ chatname = "headtails"
scrunchy_style = "hoop"
skr_tentacle_flb
- name = "Skrell Reef Ponytail"
+ name = "Headtails, ponytail (reef)"
icon_state = "skrell_reef"
- length = 6
- chatname = "Ponytail, Reef"
+ length = 5
+ chatname = "headtails"
scrunchy_style = "reef"
skr_tentacle_backwater
- name = "Skrell Backwater"
+ name = "Headtails, ponytail (backwater)"
icon_state = "skrell_backwater"
- length = 6
- chatname = "Backwater"
+ length = 5
+ chatname = "headtails"
scrunchy_style = "backwater"
skr_tentacle_reserved
- name = "Skrell Reserved"
+ name = "Expressive Headtails, reserved"
icon_state = "skrell_reserved"
length = 6
- chatname = "Reserved"
+ chatname = "headtails"
+
+ skr_tentacle_excited
+ name = "Expressive Headtails, excited"
+ icon_state = "skrell_excited"
+ length = 6
+ chatname = "headtails"
+
+ skr_tentacle_insulted
+ name = "Expressive Headtails, insulted"
+ icon_state = "skrell_insulted"
+ length = 6
+ chatname = "headtails"
skr_tentacle_tucked
- name = "Skrell Tucked"
+ name = "Short Headtails, tucked"
icon_state = "skrell_tucked"
- length = 3
- chatname = "Tucked"
+ length = 2
+ chatname = "short headtails"
skr_tentacle_tuux_l
- name = "Skrell Tuux, Long"
+ name = "Headtails, tuux"
icon_state = "skrell_long_tuux"
length = 5
- chatname = "Long Tuux"
+ chatname = "headtails"
skr_tentacle_tuux_s
- name = "Skrell Tuux, Short"
+ name = "Short Headtails, tuux"
icon_state = "skrell_short_tuux"
length = 3
- chatname = "Short Tuux"
+ chatname = "short headtails"
skr_tentacle_slicked
- name = "Skrell Slicked"
+ name = "Short Headtails, slicked"
icon_state = "skrell_slicked"
- length = 3
- chatname = "Slicked"
+ length = 2
+ chatname = "short headtails"
skr_tentacle_behind_r
- name = "Skrell Behind, Right"
+ name = "Headtails, behind (right)"
icon_state = "skrell_right_behind"
- length = 6
- chatname = "Right Behind"
+ length = 4
+ chatname = "headtails"
skr_tentacle_behind_l
- name = "Skrell Behind, Left"
+ name = "Headtails, behind (left)"
icon_state = "skrell_left_behind"
- length = 6
- chatname = "Left Behind"
+ length = 4
+ chatname = "headtails"
skr_tentacle_behind_b
- name = "Skrell Behind, Both"
+ name = "Headtails, behind"
icon_state = "skrell_both_behind"
- length = 6
- chatname = "Average Both Behind"
+ length = 4
+ chatname = "headtails"
skr_tentacle_behind_b_s
- name = "Skrell Behind, Both short"
+ name = "Short Headtails, behind"
icon_state = "skrell_both_behind_short"
- length = 6
- chatname = "Short Both Behind"
+ length = 2
+ chatname = "short headtails"
skr_tentacle_behind_b_l
- name = "Skrell Behind, both long"
+ name = "Long Headtails, behind"
icon_state = "skrell_both_behind_long"
length = 6
- chatname = "Long Both Behind"
+ chatname = "long headtails"
+
+ skr_tentacle_behind_l_l
+ name = "Long Headtails, behind (left)"
+ icon_state = "skrell_left_behind_long"
+ length = 6
+ chatname = "long headtails"
+
+ skr_tentacle_behind_r_l
+ name = "Long Headtails, behind (right)"
+ icon_state = "skrell_right_behind_long"
+ length = 6
+ chatname = "long headtails"
skr_tentacle_reef
- name = "Skrell Reef Ponytail, short"
+ name = "Short Headtails, ponytail (reef)"
icon_state = "skrell_reef_short"
- length = 4
- chatname = "Ponytail, Reef"
+ length = 3
+ chatname = "short headtails"
scrunchy_style = "reef"
+ skr_tentacle_emo_l_l
+ name = "Long Headtails, emo (left)"
+ icon_state = "skrell_left_emo_long"
+ length = 6
+ chatname = "long headtails"
+
+ skr_tentacle_emo_r_l
+ name = "Long Headtails, emo (right)"
+ icon_state = "skrell_right_emo_long"
+ length = 6
+ chatname = "long headtails"
+
+ skr_tentacle_emo_l
+ name = "Headtails, emo (left)"
+ icon_state = "skrell_left_emo"
+ length = 4
+ chatname = "headtails"
+
+ skr_tentacle_emo_r
+ name = "Headtails, emo (right)"
+ icon_state = "skrell_right_emo"
+ length = 4
+ chatname = "headtails"
+
+
//tajaran hair
taj_ears
@@ -4697,20 +4746,39 @@ Follow by example and make good judgement based on length which list to include
species_allowed = list(/datum/species/bug,/datum/species/bug/type_b)
skr_tears
- name = "Tear Stains"
+ name = "Skrell Tear Stains (Xiialt)"
icon = 'icons/mob/human_races/markings_skrell.dmi'
icon_state = "skr_tears"
body_parts = list(BP_HEAD)
+ species_allowed = list(/datum/species/skrell,/datum/species/zombie/skrell)
+
+ skr_tears_axiori
+ name = "Skrell Tear Stains (Axiori)"
+ icon = 'icons/mob/human_races/markings_skrell.dmi'
+ icon_state = "skr_tears_axiori"
+ body_parts = list(BP_HEAD)
+ species_allowed = list(/datum/species/skrell,/datum/species/skrell/axiori,/datum/species/zombie/skrell)
+
+ skr_dart_frog
+ name = "Skrell Dart Frog (Xiialt)"
+ icon = 'icons/mob/human_races/markings_skrell.dmi'
+ icon_state = "skr_dart_frog"
+ body_parts = list(BP_HEAD)
+ species_allowed = list(/datum/species/skrell,/datum/species/zombie/skrell)
+
+ skr_dart_frog_axiori
+ name = "Skrell Dart Frog (Axiori)"
+ icon = 'icons/mob/human_races/markings_skrell.dmi'
+ icon_state = "skr_dart_frog_axiori"
+ body_parts = list(BP_HEAD)
species_allowed = list(/datum/species/skrell,/datum/species/skrell/axiori,/datum/species/zombie/skrell)
- do_colouration = FALSE
skr_axiori_eyes
name = "Axiori Eyes"
icon = 'icons/mob/human_races/markings_skrell.dmi'
icon_state = "skr_axiori_eyes"
body_parts = list(BP_HEAD)
- species_allowed = list(/datum/species/skrell, /datum/species/zombie/skrell,/datum/species/zombie/skrell)
- do_colouration = FALSE
+ species_allowed = list(/datum/species/skrell,/datum/species/zombie/skrell)
skr_arms
name = "Skrell Arms"
@@ -4754,6 +4822,20 @@ Follow by example and make good judgement based on length which list to include
body_parts = list(BP_HEAD)
species_allowed = list(/datum/species/skrell,/datum/species/skrell/axiori,/datum/species/zombie/skrell)
+ skr_gills
+ name = "Skrell Gills"
+ icon = 'icons/mob/human_races/markings_skrell.dmi'
+ icon_state = "skr_gills"
+ body_parts = list(BP_HEAD)
+ species_allowed = list(/datum/species/skrell,/datum/species/skrell/axiori,/datum/species/zombie/skrell)
+
+ skr_xibus
+ name = "Skrell Xibus"
+ icon = 'icons/mob/human_races/markings_skrell.dmi'
+ icon_state = "skr_beak"
+ body_parts = list(BP_HEAD)
+ species_allowed = list(/datum/species/skrell,/datum/species/skrell/axiori,/datum/species/zombie/skrell)
+
diona_leaves
name = "Diona Leaves"
icon = 'icons/mob/human_races/markings_diona.dmi'
diff --git a/code/modules/mob/living/carbon/human/human_powers.dm b/code/modules/mob/living/carbon/human/human_powers.dm
index a16e563b5ab..1336bd720c4 100644
--- a/code/modules/mob/living/carbon/human/human_powers.dm
+++ b/code/modules/mob/living/carbon/human/human_powers.dm
@@ -30,6 +30,31 @@
else
to_chat(src, "You're already using that style.")
+/mob/living/carbon/human/proc/adjust_headtails()
+ set name = "Adjust Headtails"
+ set desc = "Adjust your headtails."
+ set category = "IC"
+
+ if(!use_check_and_message())
+ to_chat(src, SPAN_WARNING("You can't adjust your headtails when you're incapacitated!"))
+ return
+
+ if(h_style)
+ var/datum/sprite_accessory/hair/hair_style = hair_styles_list[h_style]
+ var/selected_string
+ var/list/datum/sprite_accessory/hair/valid_hairstyles = list()
+ for(var/hair_string in hair_styles_list)
+ var/datum/sprite_accessory/hair/test = hair_styles_list[hair_string]
+ if(species.type in test.species_allowed)
+ valid_hairstyles.Add(hair_string)
+ selected_string = input("Select a new headtail style", "Your headtail style", hair_style) as null|anything in valid_hairstyles
+ if(selected_string && h_style != selected_string)
+ h_style = selected_string
+ regenerate_icons()
+ visible_message("[src] adjusts [src.get_pronoun("his")] headtails.")
+ else
+ to_chat(src, "You're already using that style.")
+
mob/living/carbon/human/proc/change_monitor()
set name = "Change IPC Screen"
set desc = "Change the display on your screen."
diff --git a/code/modules/mob/living/carbon/human/species/station/skrell/skrell.dm b/code/modules/mob/living/carbon/human/species/station/skrell/skrell.dm
index 1baabd0df2b..4a990317bd7 100644
--- a/code/modules/mob/living/carbon/human/species/station/skrell/skrell.dm
+++ b/code/modules/mob/living/carbon/human/species/station/skrell/skrell.dm
@@ -84,12 +84,16 @@
max_pulse = 130 // Default 160
body_temperature = T0C + 27
- default_h_style = "Skrell Short Tentacles"
+ default_h_style = "Headtails"
possible_cultures = list(
/decl/origin_item/culture/federation,
/decl/origin_item/culture/non_federation
)
+
+ inherent_verbs = list(
+ /mob/living/carbon/human/proc/adjust_headtails
+ )
zombie_type = SPECIES_ZOMBIE_SKRELL
bodyfall_sound = /decl/sound_category/bodyfall_skrell_sound
diff --git a/html/changelogs/llywelwyn-bodymarkings_hairstyles.yml b/html/changelogs/llywelwyn-bodymarkings_hairstyles.yml
new file mode 100644
index 00000000000..e9097614a7d
--- /dev/null
+++ b/html/changelogs/llywelwyn-bodymarkings_hairstyles.yml
@@ -0,0 +1,9 @@
+author: Llywelwyn, RyverStyx
+
+delete-after: True
+
+changes:
+ - rscadd: "Added the 'adjust-headtails' verb to Skrell, found in the IC tab."
+ - rscadd: "Added the following body markings to Skrell: gills, beakmouth, tearstains, and dart frog markings."
+ - rscadd: "Added the following hairstyles to Skrell: emo for regular and long headtails, behind for long headtails, and expressive headtails."
+ - tweak: "Tweaked the order of headtail styles in the hair selection menu for better organisation. They're now organised by general length for ease when adjusting style."
diff --git a/icons/mob/human_face/skrell_hair.dmi b/icons/mob/human_face/skrell_hair.dmi
index fd38b8e0654..551d6b540a5 100644
Binary files a/icons/mob/human_face/skrell_hair.dmi and b/icons/mob/human_face/skrell_hair.dmi differ
diff --git a/icons/mob/human_races/markings_skrell.dmi b/icons/mob/human_races/markings_skrell.dmi
index 04e9d833764..4af1135ad9d 100644
Binary files a/icons/mob/human_races/markings_skrell.dmi and b/icons/mob/human_races/markings_skrell.dmi differ