From d78434e441d9e2a6f4e9c225327874b9768181e6 Mon Sep 17 00:00:00 2001 From: Vitalya <73825194+oi98@users.noreply.github.com> Date: Mon, 30 Dec 2024 18:50:27 +0700 Subject: [PATCH] add: Cosmetic Wryn Update: Resprite and Character Setup Update (#6168) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Wryn body, tail and antannae resprite changed body, tail and antannae sprites for Wryn * New tail sprite Made it more good * Added test hair Addedd test hair "Curvy" * New hair styles for Wryn Added seven new hair style for wryn in character setup menu. Renamed original "antennae" to "Normal Antennae". Renamed icons/mob/sprite_accessories/wryn/wryn_face.dm to "wryn_head_accesories"/ * Small fixes for new resprite Added unique eyes overlay for wryn Fixed species sprite in r_wryn.dmi * fixed new wryn hair now it shows new hair styles ingame * minor sprite changes + comments fixed wryn tail sprite, changed female sprite and some comments were rewriten. * new customization element for wryn added mane customization for wryn with six new options including shaved variant * Small updates and changes Added wryn tail variant, fixed body_accessories visibility in Character setup, light changes in r_wryn * final touches changed: * hands in r_wryn.dmi * head in r_wryn * wryn tails in body_accessory.dmi * Light changes Почистил код где надо, переместил иконки органов вринов в отдельный файл. * tweak bullshit Deleted antennae icon state from r_wryn.dmi since it pointless now. * Update wryn.dm * fix #1 * contibutor fix * final final touches fixes * доработка * доработка x2 * fix * Hair path cleared Сделал красивые пути к прическам переименовал wryn_face в wryn_hair * fix * доработка x10 * error fix * fix x2 * fix x3 * Update code/__HELPERS/mobs.dm * may be better * Update code/__HELPERS/mobs.dm --------- Co-authored-by: Antoonij <42318445+Antoonij@users.noreply.github.com> --- code/__DEFINES/dcs/signals.dm | 3 ++ code/__HELPERS/mobs.dm | 47 +++++++----------- code/game/gamemodes/nuclear/nuclear.dm | 2 +- code/modules/awaymissions/corpse.dm | 2 +- code/modules/client/preference/preferences.dm | 8 +-- .../living/carbon/human/body_accessories.dm | 19 ++++++- .../living/carbon/human/species/_species.dm | 2 + .../living/carbon/human/species/machine.dm | 40 ++++++++++----- .../mob/living/carbon/human/species/wryn.dm | 15 +++--- .../mob/new_player/preferences_setup.dm | 2 +- .../sprite_accessories/wryn/wryn_face.dm | 8 --- .../wryn/wryn_facial_hair.dm | 25 ++++++++++ .../sprite_accessories/wryn/wryn_hair.dm | 36 ++++++++++++++ .../reagents/chemistry/reagents/misc.dm | 4 +- code/modules/response_team/ert.dm | 2 +- code/modules/surgery/organs/subtypes/wryn.dm | 41 +++++++++------ icons/mob/clothing/body_accessory.dmi | Bin 21298 -> 9353 bytes icons/mob/human_face.dmi | Bin 2250 -> 2199 bytes icons/mob/human_races/r_wryn.dmi | Bin 15761 -> 3578 bytes .../mob/sprite_accessories/wryn/wryn_face.dmi | Bin 280 -> 0 bytes .../wryn/wryn_facial_hair.dmi | Bin 0 -> 1762 bytes .../wryn/wryn_head_accessories.dmi | Bin 0 -> 1087 bytes icons/obj/species_organs/wryn.dmi | Bin 0 -> 887 bytes paradise.dme | 3 +- 24 files changed, 175 insertions(+), 84 deletions(-) delete mode 100644 code/modules/mob/new_player/sprite_accessories/wryn/wryn_face.dm create mode 100644 code/modules/mob/new_player/sprite_accessories/wryn/wryn_facial_hair.dm create mode 100644 code/modules/mob/new_player/sprite_accessories/wryn/wryn_hair.dm delete mode 100644 icons/mob/sprite_accessories/wryn/wryn_face.dmi create mode 100644 icons/mob/sprite_accessories/wryn/wryn_facial_hair.dmi create mode 100644 icons/mob/sprite_accessories/wryn/wryn_head_accessories.dmi create mode 100644 icons/obj/species_organs/wryn.dmi diff --git a/code/__DEFINES/dcs/signals.dm b/code/__DEFINES/dcs/signals.dm index aa521e47314..e5c1393b4d6 100644 --- a/code/__DEFINES/dcs/signals.dm +++ b/code/__DEFINES/dcs/signals.dm @@ -1200,3 +1200,6 @@ /// Source: /mob/living/simple_animal/borer, listening in datum/antagonist/borer #define COMSIG_BORER_ENTERED_HOST "borer_on_enter" // when borer entered host #define COMSIG_BORER_LEFT_HOST "borer_on_leave" // when borer left host + +/// Source: /proc/random_hair_style (mob/living/carbon/human/human, valid_hairstyles, robohead) +#define COMSIG_RANDOM_HAIR_STYLE "random_hair_style" diff --git a/code/__HELPERS/mobs.dm b/code/__HELPERS/mobs.dm index 5409069747a..4cd2817a65d 100644 --- a/code/__HELPERS/mobs.dm +++ b/code/__HELPERS/mobs.dm @@ -46,41 +46,33 @@ return pick(valid_picks) -/proc/random_hair_style(gender, species = SPECIES_HUMAN, datum/robolimb/robohead, mob/living/carbon/human/H) +/proc/random_hair_style( + gender, + datum/species/species, + datum/robolimb/robohead = GLOB.all_robolimbs["Morpheus Cyberkinetics"], + mob/living/carbon/human/human + ) var/h_style = "Bald" var/list/valid_hairstyles = list() - if(species == SPECIES_WRYN) // wryns antennaes now bound to hivenode, no need to change them - if(H) - var/obj/item/organ/external/head/head_organ = H.get_organ(BODY_ZONE_HEAD) - if(head_organ?.h_style) - return head_organ.h_style - else - return "Antennae" - for(var/hairstyle in GLOB.hair_styles_public_list) - var/datum/sprite_accessory/S = GLOB.hair_styles_public_list[hairstyle] + var/datum/sprite_accessory/style = GLOB.hair_styles_public_list[hairstyle] - if(hairstyle == "Bald") //Just in case. - valid_hairstyles += hairstyle + if(!LAZYIN(style.species_allowed, species.name)) continue - if(gender == S.unsuitable_gender) + + if(gender == style.unsuitable_gender) + continue + + if(!species.is_allowed_hair_style(human, robohead, style)) continue - if(species == SPECIES_MACNINEPERSON) //If the user is a species who can have a robotic head... - if(!robohead) - robohead = GLOB.all_robolimbs["Morpheus Cyberkinetics"] - if((species in S.species_allowed) && robohead.is_monitor && ((S.models_allowed && (robohead.company in S.models_allowed)) || !S.models_allowed)) //If this is a hair style native to the user's species, check to see if they have a head with an ipc-style screen and that the head's company is in the screen style's allowed models list. - valid_hairstyles += hairstyle //Give them their hairstyles if they do. - else - if(!robohead.is_monitor && (SPECIES_HUMAN in S.species_allowed)) /*If the hairstyle is not native to the user's species and they're using a head with an ipc-style screen, don't let them access it. - But if the user has a robotic humanoid head and the hairstyle can fit humans, let them use it as a wig. */ - valid_hairstyles += hairstyle - else //If the user is not a species who can have robotic heads, use the default handling. - if(species in S.species_allowed) //If the user's head is of a species the hairstyle allows, add it to the list. - valid_hairstyles += hairstyle - if(valid_hairstyles.len) - h_style = pick(valid_hairstyles) + LAZYADD(valid_hairstyles, hairstyle) + + if(human) + SEND_SIGNAL(human, COMSIG_RANDOM_HAIR_STYLE, valid_hairstyles, robohead) + + h_style = safepick(valid_hairstyles) return h_style @@ -668,4 +660,3 @@ out_ckey = "(Disconnected)" return out_ckey - diff --git a/code/game/gamemodes/nuclear/nuclear.dm b/code/game/gamemodes/nuclear/nuclear.dm index 9891af7473d..6bb93fc1094 100644 --- a/code/game/gamemodes/nuclear/nuclear.dm +++ b/code/game/gamemodes/nuclear/nuclear.dm @@ -159,7 +159,7 @@ head_organ.sec_hair_colour = hair_c M.change_eye_color(eye_c) M.s_tone = skin_tone - head_organ.h_style = random_hair_style(M.gender, head_organ.dna.species.name) + head_organ.h_style = random_hair_style(M.gender, head_organ.dna.species) head_organ.f_style = random_facial_hair_style(M.gender, head_organ.dna.species.name) M.body_accessory = null M.regenerate_icons() diff --git a/code/modules/awaymissions/corpse.dm b/code/modules/awaymissions/corpse.dm index d0d562f8cc7..e10c2ba63c9 100644 --- a/code/modules/awaymissions/corpse.dm +++ b/code/modules/awaymissions/corpse.dm @@ -349,7 +349,7 @@ if(hair_style) D.h_style = hair_style else - D.h_style = random_hair_style(gender, D.dna.species.name) + D.h_style = random_hair_style(gender, D.dna.species) D.hair_colour = rand_hex_color() if(facial_hair_style) D.f_style = facial_hair_style diff --git a/code/modules/client/preference/preferences.dm b/code/modules/client/preference/preferences.dm index 6e9a574847c..63b5bc8fe58 100644 --- a/code/modules/client/preference/preferences.dm +++ b/code/modules/client/preference/preferences.dm @@ -1551,7 +1551,7 @@ GLOBAL_LIST_INIT(special_role_times, list( //minimum age (in days) for accounts if(species in list(SPECIES_HUMAN, SPECIES_UNATHI, SPECIES_TAJARAN, SPECIES_SKRELL, SPECIES_MACNINEPERSON, SPECIES_WRYN, SPECIES_VULPKANIN, SPECIES_VOX)) h_sec_colour = rand_hex_color() if("h_style") - h_style = random_hair_style(gender, species, robohead) + h_style = random_hair_style(gender, S, robohead) if("facial") if(species in list(SPECIES_HUMAN, SPECIES_UNATHI, SPECIES_TAJARAN, SPECIES_SKRELL, SPECIES_MACNINEPERSON, SPECIES_WRYN, SPECIES_VULPKANIN, SPECIES_VOX)) f_colour = rand_hex_color() @@ -1647,7 +1647,7 @@ GLOBAL_LIST_INIT(special_role_times, list( //minimum age (in days) for accounts var/head_model = "[!rlimb_data["head"] ? "Morpheus Cyberkinetics" : rlimb_data["head"]]" robohead = GLOB.all_robolimbs[head_model] //grab one of the valid hair styles for the newly chosen species - h_style = random_hair_style(gender, species, robohead) + h_style = random_hair_style(gender, S, robohead) //grab one of the valid facial hair styles for the newly chosen species f_style = random_facial_hair_style(gender, species, robohead) @@ -1994,7 +1994,7 @@ GLOBAL_LIST_INIT(special_role_times, list( //minimum age (in days) for accounts if("facial") - if(species in list(SPECIES_HUMAN, SPECIES_UNATHI, SPECIES_TAJARAN, SPECIES_SKRELL, SPECIES_MACNINEPERSON, SPECIES_VULPKANIN, SPECIES_VOX)) //Species that have facial hair. (No HAS_HAIR_FACIAL flag) + if(species in list(SPECIES_HUMAN, SPECIES_UNATHI, SPECIES_TAJARAN, SPECIES_SKRELL, SPECIES_MACNINEPERSON, SPECIES_VULPKANIN, SPECIES_VOX, SPECIES_WRYN)) //Species that have facial hair. (No HAS_HAIR_FACIAL flag) var/new_facial = input(user, "Choose your character's facial-hair colour:", "Character Preference", f_colour) as color|null if(new_facial) f_colour = new_facial @@ -2397,7 +2397,7 @@ GLOBAL_LIST_INIT(special_role_times, list( //minimum age (in days) for accounts var/head_model = "[!rlimb_data["head"] ? "Morpheus Cyberkinetics" : rlimb_data["head"]]" robohead = GLOB.all_robolimbs[head_model] - h_style = random_hair_style(gender, species, robohead) + h_style = random_hair_style(gender, S, robohead) f_style = random_facial_hair_style(gender, species, robohead) m_styles["body"] = random_marking_style("body", species, gender = src.gender) diff --git a/code/modules/mob/living/carbon/human/body_accessories.dm b/code/modules/mob/living/carbon/human/body_accessories.dm index 6ba77904998..74a5cc990e2 100644 --- a/code/modules/mob/living/carbon/human/body_accessories.dm +++ b/code/modules/mob/living/carbon/human/body_accessories.dm @@ -120,9 +120,24 @@ GLOBAL_LIST_INIT(body_accessory_by_species, list()) allowed_species = list(SPECIES_VULPKANIN) //Wryn -/datum/body_accessory/tail/wryn +/datum/body_accessory/tail/bee name = "Bee Tail" - icon_state = "wryntail" + icon_state = "beetail" + allowed_species = list(SPECIES_WRYN) + +/datum/body_accessory/tail/roach + name = "Cockroach Tail" + icon_state = "roachtail" + allowed_species = list(SPECIES_WRYN) + +/datum/body_accessory/tail/wasp + name = "Wasp Tail" + icon_state = "wasptail" + allowed_species = list(SPECIES_WRYN) + +/datum/body_accessory/tail/wasper + name = "Wasper Tail" + icon_state = "waspertail" allowed_species = list(SPECIES_WRYN) //Nian diff --git a/code/modules/mob/living/carbon/human/species/_species.dm b/code/modules/mob/living/carbon/human/species/_species.dm index 70d7d6b7c41..1ed47e2c5ef 100644 --- a/code/modules/mob/living/carbon/human/species/_species.dm +++ b/code/modules/mob/living/carbon/human/species/_species.dm @@ -272,6 +272,8 @@ var/datum/language/species_language = GLOB.all_languages[language] return species_language.get_random_name(gender) +/datum/species/proc/is_allowed_hair_style(mob/living/carbon/human/human, datum/robolimb/robohead, datum/sprite_accessory/style) + return TRUE /proc/get_age_limits(datum/species/species, list/tags) if(!islist(tags)) diff --git a/code/modules/mob/living/carbon/human/species/machine.dm b/code/modules/mob/living/carbon/human/species/machine.dm index c12df2472d3..a8b58784216 100644 --- a/code/modules/mob/living/carbon/human/species/machine.dm +++ b/code/modules/mob/living/carbon/human/species/machine.dm @@ -102,17 +102,18 @@ JOB_MIN_AGE_COMMAND = 15, ) -/datum/species/machine/on_species_gain(mob/living/carbon/human/H) +/datum/species/machine/on_species_gain(mob/living/carbon/human/human) . = ..() - var/datum/action/innate/change_monitor/monitor = locate() in H.actions + var/datum/action/innate/change_monitor/monitor = locate() in human.actions + if(!monitor) monitor = new - monitor.Grant(H) - monitor = new() - monitor.Grant(H) + monitor.Grant(human) + var/datum/atom_hud/data/human/medical/advanced/medhud = GLOB.huds[DATA_HUD_MEDICAL_ADVANCED] - medhud.remove_from_hud(H) - add_verb(H, list( + medhud.remove_from_hud(human) + + add_verb(human, list( /mob/living/carbon/human/proc/emote_ping, /mob/living/carbon/human/proc/emote_beep, /mob/living/carbon/human/proc/emote_buzz, @@ -120,14 +121,15 @@ /mob/living/carbon/human/proc/emote_yes, /mob/living/carbon/human/proc/emote_no)) - -/datum/species/machine/on_species_loss(mob/living/carbon/human/H) +/datum/species/machine/on_species_loss(mob/living/carbon/human/human) . = ..() - var/datum/action/innate/change_monitor/monitor = locate() in H.actions - monitor?.Remove(H) + var/datum/action/innate/change_monitor/monitor = locate() in human.actions + monitor?.Remove(human) + var/datum/atom_hud/data/human/medical/advanced/medhud = GLOB.huds[DATA_HUD_MEDICAL_ADVANCED] - medhud.add_to_hud(H) - remove_verb(H, list( + medhud.add_to_hud(human) + + remove_verb(human, list( /mob/living/carbon/human/proc/emote_ping, /mob/living/carbon/human/proc/emote_beep, /mob/living/carbon/human/proc/emote_buzz, @@ -135,6 +137,18 @@ /mob/living/carbon/human/proc/emote_yes, /mob/living/carbon/human/proc/emote_no)) +/datum/species/machine/is_allowed_hair_style(mob/living/carbon/human/human, datum/robolimb/robohead, datum/sprite_accessory/style) + . = ..() + + if(!.) + return + + if(!robohead.is_monitor || !(style.models_allowed && (robohead.company in style.models_allowed)) && style.models_allowed) + return FALSE + + else if(robohead.is_monitor || !(SPECIES_HUMAN in style.species_allowed)) + return FALSE + // Allows IPC's to change their monitor display /datum/action/innate/change_monitor name = "Change Monitor" diff --git a/code/modules/mob/living/carbon/human/species/wryn.dm b/code/modules/mob/living/carbon/human/species/wryn.dm index 8774d576256..676a5a97482 100644 --- a/code/modules/mob/living/carbon/human/species/wryn.dm +++ b/code/modules/mob/living/carbon/human/species/wryn.dm @@ -5,6 +5,7 @@ deform = 'icons/mob/human_races/r_wryn.dmi' blacklisted = TRUE tail = "wryntail" + eyes = "wryn_eyes_s" punchdamagelow = 0 punchdamagehigh = 1 speed_mod = 1 @@ -60,7 +61,7 @@ TRAIT_NO_SCAN, ) clothing_flags = HAS_UNDERWEAR | HAS_UNDERSHIRT | HAS_SOCKS - bodyflags = HAS_SKIN_COLOR + bodyflags = HAS_SKIN_COLOR | HAS_BODY_ACCESSORY dies_at_threshold = TRUE @@ -70,8 +71,10 @@ blood_color = "#FFFF99" blood_species = "Wryn" //Default styles for created mobs. - default_hair = "Antennae" - + default_hair = "Normal antennae" + default_fhair = "Default mane" + default_bodyacc = "Bee Tail" + default_fhair_colour = "#704300" age_sheet = list( SPECIES_AGE_MIN = 15, SPECIES_AGE_MAX = 55, @@ -93,14 +96,10 @@ /datum/species/wryn/after_equip_job(datum/job/J, mob/living/carbon/human/H) var/comb_deafness = H.client.prefs.speciesprefs + if(comb_deafness) var/obj/item/organ/internal/wryn/hivenode/node = H.get_int_organ(/obj/item/organ/internal/wryn/hivenode) - node.remove(H) qdel(node) - else - var/obj/item/organ/external/head/head_organ = H.get_organ(BODY_ZONE_HEAD) - head_organ.h_style = "Antennae" - H.update_hair() /* Wryn Sting Action Begin */ diff --git a/code/modules/mob/new_player/preferences_setup.dm b/code/modules/mob/new_player/preferences_setup.dm index 3acc97bba80..ba197d6d9d6 100644 --- a/code/modules/mob/new_player/preferences_setup.dm +++ b/code/modules/mob/new_player/preferences_setup.dm @@ -21,7 +21,7 @@ body_accessory = random_body_accessory(species, S.optional_body_accessory) if(S.bodyflags & (HAS_SKIN_TONE|HAS_ICON_SKIN_TONE)) s_tone = random_skin_tone(species) - h_style = random_hair_style(gender, species, robohead) + h_style = random_hair_style(gender, S, robohead) f_style = random_facial_hair_style(gender, species, robohead) if(species in list(SPECIES_HUMAN, SPECIES_UNATHI, SPECIES_TAJARAN, SPECIES_SKRELL, SPECIES_MACNINEPERSON, SPECIES_WRYN, SPECIES_VULPKANIN, SPECIES_VOX)) randomize_hair_color("hair") diff --git a/code/modules/mob/new_player/sprite_accessories/wryn/wryn_face.dm b/code/modules/mob/new_player/sprite_accessories/wryn/wryn_face.dm deleted file mode 100644 index 9cf722e1449..00000000000 --- a/code/modules/mob/new_player/sprite_accessories/wryn/wryn_face.dm +++ /dev/null @@ -1,8 +0,0 @@ -/datum/sprite_accessory/hair/wryn - icon = 'icons/mob/sprite_accessories/wryn/wryn_face.dmi' - species_allowed = list(SPECIES_WRYN) - glasses_over = 1 - -/datum/sprite_accessory/hair/wryn/wry_antennae_default - name = "Antennae" - icon_state = "antennae" diff --git a/code/modules/mob/new_player/sprite_accessories/wryn/wryn_facial_hair.dm b/code/modules/mob/new_player/sprite_accessories/wryn/wryn_facial_hair.dm new file mode 100644 index 00000000000..1dcaba6dad6 --- /dev/null +++ b/code/modules/mob/new_player/sprite_accessories/wryn/wryn_facial_hair.dm @@ -0,0 +1,25 @@ +/datum/sprite_accessory/facial_hair/wryn + icon = 'icons/mob/sprite_accessories/wryn/wryn_facial_hair.dmi' + species_allowed = list(SPECIES_WRYN) + unsuitable_gender = null + over_hair = TRUE + +/datum/sprite_accessory/facial_hair/wryn/default + name = "Default mane" + icon_state = "default" + +/datum/sprite_accessory/facial_hair/wryn/fluff + name = "Fluff mane" + icon_state = "fluff" + +/datum/sprite_accessory/facial_hair/wryn/sharp + name = "Sharp mane" + icon_state = "sharp" + +/datum/sprite_accessory/facial_hair/wryn/square + name = "Square mane" + icon_state = "square" + +/datum/sprite_accessory/facial_hair/wryn/round + name = "Round mane" + icon_state = "round" diff --git a/code/modules/mob/new_player/sprite_accessories/wryn/wryn_hair.dm b/code/modules/mob/new_player/sprite_accessories/wryn/wryn_hair.dm new file mode 100644 index 00000000000..5ec3493d7bf --- /dev/null +++ b/code/modules/mob/new_player/sprite_accessories/wryn/wryn_hair.dm @@ -0,0 +1,36 @@ +/datum/sprite_accessory/hair/wryn + icon = 'icons/mob/sprite_accessories/wryn/wryn_head_accessories.dmi' + species_allowed = list(SPECIES_WRYN) + glasses_over = 1 + +/datum/sprite_accessory/hair/wryn/default + name = "Normal antennae" + icon_state = "antennae" + +/datum/sprite_accessory/hair/wryn/curvy + name = "Curvy antennae" + icon_state = "curvy" + +/datum/sprite_accessory/hair/wryn/nian + name = "Nian antennae" + icon_state = "moth" + +/datum/sprite_accessory/hair/wryn/perky + name = "Perky antennae" + icon_state = "perky" + +/datum/sprite_accessory/hair/wryn/sweep + name = "Sweep antennae" + icon_state = "sweep" + +/datum/sprite_accessory/hair/wryn/short + name = "Short antennae" + icon_state = "short" + +/datum/sprite_accessory/hair/wryn/long + name = "Long antennae" + icon_state = "long" + +/datum/sprite_accessory/hair/wryn/long + name = "Low Long antennae" + icon_state = "low_long" diff --git a/code/modules/reagents/chemistry/reagents/misc.dm b/code/modules/reagents/chemistry/reagents/misc.dm index 6380e5ef680..51aa51aa12d 100644 --- a/code/modules/reagents/chemistry/reagents/misc.dm +++ b/code/modules/reagents/chemistry/reagents/misc.dm @@ -355,7 +355,7 @@ if(ishuman(M)) var/mob/living/carbon/human/H = M var/obj/item/organ/external/head/head_organ = H.get_organ(BODY_ZONE_HEAD) - head_organ.h_style = random_hair_style(H.gender, head_organ.dna.species.name, H = H) + head_organ.h_style = random_hair_style(H.gender, head_organ.dna.species.name, human = H) head_organ.f_style = random_facial_hair_style(H.gender, head_organ.dna.species.name) H.update_hair() H.update_fhair() @@ -380,7 +380,7 @@ if(head_organ.dna.species.name in tmp_hair_style.species_allowed) //If 'Very Long Hair' is a style the person's species can have, give it to them. head_organ.h_style = "Very Long Hair" else //Otherwise, give them a random hair style. - head_organ.h_style = random_hair_style(H.gender, head_organ.dna.species.name, H = H) + head_organ.h_style = random_hair_style(H.gender, head_organ.dna.species, human = H) if(head_organ.dna.species.name in tmp_facial_hair_style.species_allowed) //If 'Very Long Beard' is a style the person's species can have, give it to them. head_organ.f_style = "Very Long Beard" else //Otherwise, give them a random facial hair style. diff --git a/code/modules/response_team/ert.dm b/code/modules/response_team/ert.dm index 5ff39a32833..65c5e94b687 100644 --- a/code/modules/response_team/ert.dm +++ b/code/modules/response_team/ert.dm @@ -170,7 +170,7 @@ GLOBAL_VAR_INIT(ert_request_answered, FALSE) head_organ.sec_hair_colour = hair_c M.change_eye_color(eye_c) M.s_tone = skin_tone - head_organ.h_style = random_hair_style(M.gender, head_organ.dna.species.name) + head_organ.h_style = random_hair_style(M.gender, head_organ.dna.species) head_organ.f_style = random_facial_hair_style(M.gender, head_organ.dna.species.name) M.rename_character(null, "Безымянный") // Rewritten in /datum/outfit/job/centcom/response_team/pre_equip M.age = rand(23,35) diff --git a/code/modules/surgery/organs/subtypes/wryn.dm b/code/modules/surgery/organs/subtypes/wryn.dm index 2a106bd4d19..715c11a37a0 100644 --- a/code/modules/surgery/organs/subtypes/wryn.dm +++ b/code/modules/surgery/organs/subtypes/wryn.dm @@ -2,29 +2,42 @@ /obj/item/organ/internal/wryn/hivenode species_type = /datum/species/wryn name = "antennae" - icon = 'icons/mob/human_races/r_wryn.dmi' + icon = 'icons/obj/species_organs/wryn.dmi' icon_state = "antennae" parent_organ_zone = BODY_ZONE_HEAD slot = INTERNAL_ORGAN_HIVENODE + /// Stored hair style, defines only on creation and changes original h_style when inserted + var/hair_style = "Normal antennae" -/obj/item/organ/internal/wryn/hivenode/insert(mob/living/carbon/human/M, special = ORGAN_MANIPULATION_DEFAULT) - ..() - M.add_language(LANGUAGE_WRYN) - var/obj/item/organ/external/head/head_organ = M.get_organ(BODY_ZONE_HEAD) - head_organ.h_style = "Antennae" - M.update_hair() - -/obj/item/organ/internal/wryn/hivenode/remove(mob/living/carbon/human/M, special = ORGAN_MANIPULATION_DEFAULT) - M.remove_language(LANGUAGE_WRYN) - var/obj/item/organ/external/head/head_organ = M.get_organ(BODY_ZONE_HEAD) - head_organ.h_style = "Bald" - M.update_hair() +/obj/item/organ/internal/wryn/hivenode/New(mob/living/carbon/carbon) + if(istype(carbon)) + var/obj/item/organ/external/head/head_organ = carbon.get_organ(BODY_ZONE_HEAD) + hair_style = head_organ.h_style + + return ..(carbon) + +/obj/item/organ/internal/wryn/hivenode/insert(mob/living/carbon/human/human, special = ORGAN_MANIPULATION_DEFAULT) . = ..() + human.add_language(LANGUAGE_WRYN) + var/obj/item/organ/external/head/head_organ = human.get_organ(BODY_ZONE_HEAD) + + head_organ.h_style = hair_style + human.update_hair() + +/obj/item/organ/internal/wryn/hivenode/remove(mob/living/carbon/human/human, special = ORGAN_MANIPULATION_DEFAULT) + human.remove_language(LANGUAGE_WRYN) + var/obj/item/organ/external/head/head_organ = human.get_organ(BODY_ZONE_HEAD) + + head_organ.h_style = "Bald" + human.update_hair() + + return ..() /obj/item/organ/internal/wryn/glands species_type = /datum/species/wryn name = "wryn wax glands" - icon_state = "eggsac" + icon = 'icons/obj/species_organs/wryn.dmi' + icon_state = "waxsac" parent_organ_zone = BODY_ZONE_PRECISE_MOUTH slot = INTERNAL_ORGAN_WAX_GLANDS var/datum/action/innate/honeycomb/honeycomb = new diff --git a/icons/mob/clothing/body_accessory.dmi b/icons/mob/clothing/body_accessory.dmi index e79c0a1214315f6da0f532464ae17ad7d51a882b..fc3f57629efc5e32804024dcd02244730c6909ef 100644 GIT binary patch literal 9353 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 diff --git a/icons/mob/human_face.dmi b/icons/mob/human_face.dmi index 876057298bf7391e6ff0c7c17dd92bb5cac23450..ba5464f9ddbef79e7d96b6df99a2e64ace9429cb 100644 GIT binary patch literal 2199 zcmcImeKgzm8vn*yR82ZMl#=RpR_3kix^}7(inBSTP2Z^ZOsKjvL4wl657pUfm9xVg zDq8KildH6$CSDSW=#^|CUKUbqDzRPS5|Ktq7D;4w|GWR)Ke~UOm-9U5dCqg5=X^fT zH<&Y@zhmcS2LN~{>Whf;0Kj%kFmG$KBUi)vFguD@a`7@LB7=y_&&nlb5%2(9r``D_ z*x}}3dobBZJ6JKeLQtJQcgcRy?mI7=hm};Ctx$FP(f1;Kv~gZn zJ|OVJWD6U)dw)(N{fGHmzH?Mnt7@3>8fJmdN+=f#=?AC2BCk3|g-_zf&O&26?0Zl8 z&c2@(owF-$RJ(=o(BvH(nZt+WIXeD^ z{LIH}*=OYz0sHzktIlw?(&#jq{EJsaWcc|6-BJh1dSorRR;zm7-tAje;>0++OKTv1 zaCFwrzz-yFK4CgtVP5ugJ0L!OK@ARjz{;=|fM*3Nb^$9VVEZB16AcbDfY8H#Q9$WY zrYCb&@!}a8oH&jtfn&Qaj}1skpDukV3<}f~uP^-U0{e&>xm=`FWZL3HUA0?38z*gb^w&#)f z0;*?70{#Z=%I)Xq85$beCKs2KY>mt=<`tLTHobr=73tC8O{LTUGIUKu9VdUL}kJi@KGVY<#XhJ|hz+C|q87Sva+zVZlFF8G$aRfctM`Ip=6u4 zdQ=>h0iMb&HR+urC+>x`mr5T|+@RZ(h7u$971vyBgiPzFH}rD4hCW;MfUhpF#yHE# zD1s-7d>NmhpGn)FxR2q%%Avb*4O`jjXDdpEN!{Ydfl~0&)b{Ew$?u}df2S_?hr2>c z;Kyn+|Bkz;3V}r7vjc_-HNCj{Ya+|sIVGbXp-h295M0I6JzrcGthb+x(;i3)`F*FZ zN4G(_Do&cl@Dn_^ECOqG**~;MgG3_hPuFCyuDQ%N)IV%;hIF7K&xd`Yun5KXWL*^` z%vE)n3e~de?pD2ql?qX&P`YF>+j}>|PuNs1^$8GUXIow;1tBud2#KFJ2klGTryMsK z+6`}>HG877mnOhV>*wTzvY1RSN$1+UdR3fmn7sHk)_uOZx|-pz?Z$w_2Ls`zsm0Az z*`VU;0>v9Qx140Xx9IMGnkT)6*yS^68`HneES4Nm$fsC zuuxi+i-T-1Oew0eqhL>T0r>u7N#ub@-B2n8FLw}z=PvewIR@t##rC-3(A174N#2%h zoxqEGK~Kzv|4`jPX8(+Cz6V{|{;A~B#vI)j-s0Dp*ozklE2K<+^D9?jquP8YnTbm+ z&)JQ6%z)8lRc$1fVqFJ!?NM2Ke?Abxn4^XE7iyC0`u@!51sBxMP_u&W*Iw&pi#M3y zlZF9=Vfa!gG{~_oqjXX4|Acgm1N-Z)WtPOjSWdt}$m|~UEuY&3;39)r`7Us{_Xz}9 z422Olxt_53mLNka_5Xs`WM81w8xe-%lcy?VFmJe7Og|erUwZ_>NEvja1PEOfvbRhRc&?Ngl=($4yyb?1;F7lf_n{SXT`KO*%(k&@$!Or3 zDE+FuyFMvq3~qBPn&;^$0F%j6Z{?p_9x8_q3G3biAav=Mf+Ph zfjlzmKFQb?6Jm}YeeZw4y;Et0?SJ~icv1twhS&_oVwuy8yR{-L+xo4sTc;UT=0F4p8z5oCK literal 2250 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 T%E)B@SxVQ<;8&_m+#dZK>-?j{ literal 15761 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 A{r~^~ diff --git a/icons/mob/sprite_accessories/wryn/wryn_face.dmi b/icons/mob/sprite_accessories/wryn/wryn_face.dmi deleted file mode 100644 index f826b969c57d04b1d3a469dc09063f03d42d8e37..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 280 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0L3?#3!&-4XSoB=)|t_KbrNK8y@X=$;l?5qL` zGL{7S1v5B2yO9Ru;Gk7X)592i=XT0hQ|3V0c4;KRsp XVh5{s!Nf>V7%+Ic`njxgN@xNAwH;!! diff --git a/icons/mob/sprite_accessories/wryn/wryn_facial_hair.dmi b/icons/mob/sprite_accessories/wryn/wryn_facial_hair.dmi new file mode 100644 index 0000000000000000000000000000000000000000..d1658362b7f6785f563e90bc0be358598ce8ee8a GIT binary patch literal 1762 zcma)7dpy$%8=uS2a_u6dT65{$n6R8QGnZyAi^S3#j)~;t5=p&lZsTx@Enc^ggp)97 z(G(LF(m|_!QIX5eTDh*x94A{|t#h3B^7)+eIsI||c%JVc&-2go{eC~+C)eN4QwL%K z0f9g|-d?zXb*x!0nwG|TXGBJ9{~f4AQZg>;Y-G}@#N<;6r$Hb}WnfTZ(mBP4z{H&| zjwGmC{PV5s9NdzKnf2lj23wr@++TLe;CZGSx3#H0Ra{ z0@#nE#svZGE-AB>WgRbb3a8M_U#DfFy>>#Oa712RRdquubjoOQ0x5JGj&F{3Orn#%@jEW7$N=`xu@U ze7hmCx|HK)ynJE2sn_7*9CEdF+KOTc0{om`itcqMCd(9u#+X;0TM6eQvVS^M0`L90 zb6kp?w0UQG;Pb_Eyn(@(@_S99q-Cd(&ytw(nI9Hd50?z2l9k;NSNFoh&5!W!JcB+O z#>KUEg}1|?jNV$ue`V32U==sWpLm6Oxw(F6fN9w&;~gn*LH%Lju?s3AG_1fhZO5kD zzH2cOhMJAad%CEucOnyUTzSB%w5BT~Wt#9B724Rmle%yMWnZD!8;|Jam`MTSA>zu6 z3O{9xZg|E7j_DN|dj~tL#Q63_ z1(COtwrt%TU~b~Qr_~R4aE_J|DEl~j`$cS%Zr7YCJge;~d#cNexhY6g0BN}EGvBS{ zu#tt)jH5rmSns$7v~SfPmm?2mcc=DAtYpp`JQr!@d)>usrkqKTcaRAoQ*79YdZM(h z*pRcC6SLzwu%AsFy1uBU+x&g5xMzM{lA~e$N2_ztO9X>03MK4(+m%VVFf_;SDfTOM^QB$-(LDSrFS#_8H=iAF7)!>xH|{sJ=O}O8 zH#`pxrSIx=$C6Lnp$ffu$WTC{Td5|!E9ltzY{@Tht z2y@lG<`-@0HfvqVm7TZd!zIqJdL^sP>^umFG2*k0WXSU0S&PgNr%)9=Nb7-$4wu1V z{qmEutc!oW{=Wo$+2tK;;KueA=!eI)YX6UwP!VovS8PH<6j)V&)|wB0KeL3Wo2yIY zKHvSi;+LY*;7DJ~OS&5O&-Hui3TV7VjcliB$!#MlJ;N^Ldm!^!?Q*o@Vb zGP1U*S(B*#$g?e%wr$&zICM7HcFOX9ar}o=__BFt^kR0Qj@9I;;MSiO$lJpYciTNY F>o<8>BpLt! literal 0 HcmV?d00001 diff --git a/icons/mob/sprite_accessories/wryn/wryn_head_accessories.dmi b/icons/mob/sprite_accessories/wryn/wryn_head_accessories.dmi new file mode 100644 index 0000000000000000000000000000000000000000..b33cf2b4fec8d8d2eb64ceec95e8996caffbe425 GIT binary patch literal 1087 zcmeAS@N?(olHy`uVBq!ia0vp^2SAvE4M+yv$zcalbE-ljN?cNllZ!G7N;32F7#J$% z^j@&#Yc}9vePC(n%2IuG|5k5SC!VKV8cfq&bU8Q0F1oibpe=9e_U}vHR~F>0OAR$& zw&Q9Qn~Hq%&KaNc)`xzw-Mw^9UzFvC=ErLVqT5u{%nVu*7B2N!eNTC<_u6+E?h&6K zy6+Z0m)|I@Y|S{EL4H#46b7}pmOeosH~NR3=GV1 zo-U3d6?5L+Jy5SI!m5Ak`=0-Mz3%+^^Z(6s zjHxk9b9-gcVgAW%^&A)y5gt^q_1yszjkr=`_0*%=j6AZ51f_# zx7O)KvD)u9)*sHCd3xt(xb~Ht-2Fv$*}M~%U7z-{ui)m-FXCtWPu(%9t!;RfXDq*e zSGknJWzX{=-l8-6Dwjo}TL|P!WaV?be9^e_;?KayYNM+~nr)ARqRt0gyjJ;V@w0F4 z&(EKGVfy-eUCxs;5i6g6`ExJnJKv`llLh9=Pu-e+tg!yiiHK*l`rB;fo?kQ8*Jqajke3ITbge5kHya~ z7YFO|7Hs9ta#MbD_Vjb5D5-?kPtvSjW^YYd^}f$Y_P)i(*>w$^pJ!-8oy7ZgO>KE4>e z%*6d0LS;na0%N#I^ZGj1|L#9*%sS@=J X5_t!n&3}`p1`1nGS3j3^P6IP)V=-0C=2JR&a84_w-Y6@%7{?OD!tS%+FJ>RWQ*r;NmRLOex6#a*U0*I5Sc+ z(=$pSoZ^zil2jm5DKW1kH7_qQRf&r;C9|j)C}haRnO2mTn+jpW6_zJf6elL*Ql_ln z>gNJ>007dRCVHGkN9OoJ);PJ_mefxQX7=&Lrf53!uNz9j(H?B5&&f3gjE*E2n_i41F!8a`FA{d7I#^#1Q zQaxir5Kh~*+X%Zq|G-SLsCcqyhWu#!a>phQ?f4r*MF1h+ub&70uCtrZmYcToh((~< zQ>QOkTltMi7^KgLPix=p9@c@O45$PJFYNy-60bbh4nKam-erOWX%3=!rv9tXWiti1 z?+@xgat9&ApFP^_2@}dzMQC6otftLYYFQ-S$xw z2G1CLi_G_wQu;@z*E?RRz%C<(ou$|@u7aqLr?27%iUN&eE-B%k8!>TpZzw`MBw@gx@NI5|cr|lap^z!$^A-