From fb8413ff70a5b3cf8ac72b2d5faa9791deda018a Mon Sep 17 00:00:00 2001 From: Feenie Date: Sat, 19 Oct 2024 13:01:33 +0300 Subject: [PATCH] IPC hair --- code/__HELPERS/global_lists.dm | 1 + code/__HELPERS/mobs.dm | 5 + code/_globalvars/lists/flavor_misc.dm | 1 + code/modules/client/preferences.dm | 30 +++++- code/modules/client/preferences_savefile.dm | 3 + .../dead/new_player/sprite_accessories/ipc.dm | 2 +- .../living/carbon/human/consistent_human.dm | 1 + .../mob/living/carbon/human/species.dm | 10 ++ .../living/carbon/human/species_types/IPC.dm | 4 +- .../_storge_icons/icons/ipc/ipc_hair.dmi | Bin 0 -> 5405 bytes mod_celadon/ipc_chassis/code/ipc.dm | 43 ++++++++ mod_celadon/ipc_hair/README.md | 97 ++++++++++++++++++ mod_celadon/ipc_hair/_ipc_hair.dm | 8 ++ mod_celadon/ipc_hair/_ipc_hair.dme | 6 ++ 14 files changed, 207 insertions(+), 4 deletions(-) create mode 100644 mod_celadon/_storge_icons/icons/ipc/ipc_hair.dmi create mode 100644 mod_celadon/ipc_hair/README.md create mode 100644 mod_celadon/ipc_hair/_ipc_hair.dm create mode 100644 mod_celadon/ipc_hair/_ipc_hair.dme diff --git a/code/__HELPERS/global_lists.dm b/code/__HELPERS/global_lists.dm index 3565bc3d51a0..da3dccd7f3d3 100644 --- a/code/__HELPERS/global_lists.dm +++ b/code/__HELPERS/global_lists.dm @@ -33,6 +33,7 @@ init_sprite_accessory_subtypes(/datum/sprite_accessory/moth_markings, GLOB.moth_markings_list) init_sprite_accessory_subtypes(/datum/sprite_accessory/moth_fluff, GLOB.moth_fluff_list) init_sprite_accessory_subtypes(/datum/sprite_accessory/squid_face, GLOB.squid_face_list) + init_sprite_accessory_subtypes(/datum/sprite_accessory/ipc_hair, GLOB.ipc_hair_list) // [CELADON-ADD] - CELADON_IPC_HAIR init_sprite_accessory_subtypes(/datum/sprite_accessory/ipc_screens, GLOB.ipc_screens_list) init_sprite_accessory_subtypes(/datum/sprite_accessory/ipc_antennas, GLOB.ipc_antennas_list) init_sprite_accessory_subtypes(/datum/sprite_accessory/ipc_tail, GLOB.ipc_tail_list) diff --git a/code/__HELPERS/mobs.dm b/code/__HELPERS/mobs.dm index fc326cf72420..b56149947e3d 100644 --- a/code/__HELPERS/mobs.dm +++ b/code/__HELPERS/mobs.dm @@ -68,6 +68,10 @@ init_sprite_accessory_subtypes(/datum/sprite_accessory/moth_markings, GLOB.moth_markings_list) if(!GLOB.squid_face_list.len) init_sprite_accessory_subtypes(/datum/sprite_accessory/squid_face, GLOB.squid_face_list) + // [CELADON-ADD] - CELADON_IPC_HAIR + if(!GLOB.ipc_hair_list.len) + init_sprite_accessory_subtypes(/datum/sprite_accessory/ipc_hair, GLOB.ipc_hair_list) + // [/CELADON-ADD] - CELADON_IPC_HAIR if(!GLOB.ipc_screens_list.len) init_sprite_accessory_subtypes(/datum/sprite_accessory/ipc_screens, GLOB.ipc_screens_list) if(!GLOB.ipc_antennas_list.len) @@ -155,6 +159,7 @@ "ipc_brain" = pick(GLOB.ipc_brain_list), "ipc_chassis" = pick(GLOB.ipc_chassis_list), "ipc_screen" = pick(GLOB.ipc_screens_list), + "ipc_hair" = pick(GLOB.ipc_hair_list), // [CELADON-ADD] - CELADON_IPC_HAIR "kepori_body_feathers" = pick(GLOB.kepori_body_feathers_list), "kepori_head_feathers" = pick(GLOB.kepori_head_feathers_list), "kepori_feathers" = pick(GLOB.kepori_feathers_list), diff --git a/code/_globalvars/lists/flavor_misc.dm b/code/_globalvars/lists/flavor_misc.dm index f9edbc500142..1a5cecef67a9 100644 --- a/code/_globalvars/lists/flavor_misc.dm +++ b/code/_globalvars/lists/flavor_misc.dm @@ -37,6 +37,7 @@ GLOBAL_LIST_EMPTY(moth_wings_list) GLOBAL_LIST_EMPTY(moth_fluff_list) GLOBAL_LIST_EMPTY(moth_markings_list) GLOBAL_LIST_EMPTY(squid_face_list) +GLOBAL_LIST_EMPTY(ipc_hair_list) // [CELADON-ADD] - CELADON_IPC_HAIR GLOBAL_LIST_EMPTY(ipc_screens_list) GLOBAL_LIST_EMPTY(ipc_antennas_list) GLOBAL_LIST_EMPTY(ipc_tail_list) diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index e83a47824490..6fb094628cfb 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -128,6 +128,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) "spider_spinneret" = "Plain", "spider_mandibles" = "Plain", "squid_face" = "Squidward", + "ipc_hair" = "None", // [CELADON-ADD] - CELADON_IPC_HAIR "ipc_screen" = "Blue", "ipc_antenna" = "None", "ipc_tail" = "None", @@ -666,6 +667,23 @@ GLOBAL_LIST_EMPTY(preferences_datums) dat += "" mutant_category = 0 + // [CELADON-ADD] - CELADON_IPC_HAIR + if("ipc_hair" in pref_species.default_features) + if(!mutant_category) + dat += APPEARANCE_CATEGORY_COLUMN + + dat += "

IPC hair Style

" + + dat += "[features["ipc_hair"]]
" + + dat += "    Change
" + + mutant_category++ + if(mutant_category >= MAX_MUTANT_ROWS) + dat += "" + mutant_category = 0 + // [/CELADON-ADD] - CELADON_IPC_HAIR + if("ipc_screen" in pref_species.default_features) if(!mutant_category) dat += APPEARANCE_CATEGORY_COLUMN @@ -689,7 +707,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) dat += "[features["ipc_antenna"]]
" - dat += "    Change
" + dat += "    Change
" // [CELADON-EDIT] - CELADON_IPC_HAIR mutant_category++ if(mutant_category >= MAX_MUTANT_ROWS) @@ -2273,6 +2291,16 @@ GLOBAL_LIST_EMPTY(preferences_datums) if(new_spider_spinneret) features["spider_spinneret"] = new_spider_spinneret + // [CELADON-ADD] - CELADON_IPC_HAIR + if("ipc_hair") + var/new_ipc_hair + + new_ipc_hair = input(user, "Choose your character's IPC hair:", "Character Preference") as null|anything in GLOB.ipc_hair_list + + if(new_ipc_hair) + features["ipc_hair"] = new_ipc_hair + // [/CELADON-ADD] - CELADON_IPC_HAIR + if("ipc_screen") var/new_ipc_screen diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm index 49d1db666fa0..be1c4edf4721 100644 --- a/code/modules/client/preferences_savefile.dm +++ b/code/modules/client/preferences_savefile.dm @@ -437,6 +437,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car READ_FILE(S["feature_spider_spinneret"], features["spider_spinneret"]) READ_FILE(S["feature_spider_mandibles"], features["spider_mandibles"]) READ_FILE(S["feature_squid_face"], features["squid_face"]) + READ_FILE(S["feature_ipc_hair"], features["ipc_hair"]) // [CELADON-ADD] - CELADON_IPC_HAIR READ_FILE(S["feature_ipc_screen"], features["ipc_screen"]) READ_FILE(S["feature_ipc_antenna"], features["ipc_antenna"]) READ_FILE(S["feature_ipc_tail"], features["ipc_tail"]) @@ -620,6 +621,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car features["spider_spinneret"] = sanitize_inlist(features["spider_spinneret"], GLOB.spider_spinneret_list, "Plain") features["moth_markings"] = sanitize_inlist(features["moth_markings"], GLOB.moth_markings_list, "None") features["squid_face"] = sanitize_inlist(features["squid_face"], GLOB.squid_face_list, "Squidward") + features["ipc_hair"] = sanitize_inlist(features["ipc_hair"], GLOB.ipc_hair_list) // [CELADON-ADD] - CELADON_IPC_HAIR features["ipc_screen"] = sanitize_inlist(features["ipc_screen"], GLOB.ipc_screens_list) features["ipc_antenna"] = sanitize_inlist(features["ipc_antenna"], GLOB.ipc_antennas_list) features["ipc_tail"] = sanitize_inlist(features["ipc_tail"], GLOB.ipc_tail_list) @@ -738,6 +740,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car WRITE_FILE(S["feature_spider_spinneret"] , features["spider_spinneret"]) WRITE_FILE(S["feature_spider_mandibles"] , features["spider_mandibles"]) WRITE_FILE(S["feature_squid_face"] , features["squid_face"]) + WRITE_FILE(S["feature_ipc_hair"] , features["ipc_hair"]) // [CELADON-ADD] - CELADON_IPC_HAIR WRITE_FILE(S["feature_ipc_screen"] , features["ipc_screen"]) WRITE_FILE(S["feature_ipc_antenna"] , features["ipc_antenna"]) WRITE_FILE(S["feature_ipc_tail"] , features["ipc_tail"]) diff --git a/code/modules/mob/dead/new_player/sprite_accessories/ipc.dm b/code/modules/mob/dead/new_player/sprite_accessories/ipc.dm index 1592a3ef6682..e1441fc11e4e 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/ipc.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/ipc.dm @@ -181,7 +181,7 @@ /datum/sprite_accessory/ipc_antennas icon = 'icons/mob/ipc_accessories.dmi' - color_src = HAIR + color_src = FACEHAIR // [CELADON-EDIT] - CELADON_IPC_HAIR /datum/sprite_accessory/ipc_antennas/none name = "None" diff --git a/code/modules/mob/living/carbon/human/consistent_human.dm b/code/modules/mob/living/carbon/human/consistent_human.dm index 2e0881773b21..248c5759e6fa 100644 --- a/code/modules/mob/living/carbon/human/consistent_human.dm +++ b/code/modules/mob/living/carbon/human/consistent_human.dm @@ -38,6 +38,7 @@ dna.features["tail_elzu"] = GLOB.tails_list_elzu[hex2num(copytext(seed, 17, 18)) % length(GLOB.tails_list_elzu) + 1] dna.features["ipc_chassis"] = GLOB.ipc_chassis_list[hex2num(copytext(seed, 18, 19)) % length(GLOB.ipc_chassis_list) + 1] dna.features["ipc_screen"] = GLOB.ipc_screens_list[hex2num(copytext(seed, 19, 20)) % length(GLOB.ipc_screens_list) + 1] + dna.features["ipc_hair"] = GLOB.ipc_hair_list[hex2num(copytext(seed, 20, 21)) % length(GLOB.ipc_hair_list) + 1] // [CELADON-ADD] - CELADON_IPC_HAIR // [CELADON-ADD] - TAJARA skin_tone_nose = GLOB.skin_tones_nose[hex2num(copytext(seed, 1, 2)) % length(GLOB.skin_tones_nose)] diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index c6fb4d2fa5ec..c68451d6f1e1 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -854,6 +854,12 @@ GLOBAL_LIST_EMPTY(roundstart_races) bodyparts_to_add -= "ears" bodyparts_to_add -= "ears" + // [CELADON-ADD] - CELADON_IPC_HAIR + if("ipc_hair" in mutant_bodyparts) + if(!H.dna.features["ipc_hair"] || H.dna.features["ipc_hair"] == "None" || (H.head && (H.head.flags_inv & HIDEHAIR)) || !HD) + bodyparts_to_add -= "ipc_hair" + // [/CELADON-ADD] - CELADON_IPC_HAIR + if("ipc_screen" in mutant_bodyparts) if(!H.dna.features["ipc_screen"] || H.dna.features["ipc_screen"] == "None" || (H.wear_mask && (H.wear_mask.flags_inv & HIDEEYES)) || !HD) bodyparts_to_add -= "ipc_screen" @@ -1049,6 +1055,10 @@ GLOBAL_LIST_EMPTY(roundstart_races) S = GLOB.moth_markings_list[H.dna.features["moth_markings"]] if("squid_face") S = GLOB.squid_face_list[H.dna.features["squid_face"]] + // [CELADON-ADD] - CELADON_IPC_HAIR + if("ipc_hair") + S = GLOB.ipc_hair_list[H.dna.features["ipc_hair"]] + // [/CELADON-ADD] - CELADON_IPC_HAIR if("ipc_screen") S = GLOB.ipc_screens_list[H.dna.features["ipc_screen"]] if("ipc_antenna") diff --git a/code/modules/mob/living/carbon/human/species_types/IPC.dm b/code/modules/mob/living/carbon/human/species_types/IPC.dm index acff82c13369..dcea79caa971 100644 --- a/code/modules/mob/living/carbon/human/species_types/IPC.dm +++ b/code/modules/mob/living/carbon/human/species_types/IPC.dm @@ -20,8 +20,8 @@ mutantlungs = null //no more collecting change for you mutantappendix = null mutant_organs = list(/obj/item/organ/cyberimp/arm/power_cord) - mutant_bodyparts = list("ipc_screen", "ipc_antenna", "ipc_chassis", "ipc_tail", "ipc_brain") - default_features = list("mcolor" = "#7D7D7D", "ipc_screen" = "Static", "ipc_antenna" = "None", "ipc_chassis" = "Morpheus Cyberkinetics (Custom)", "ipc_tail" = "None", "ipc_brain" = "Posibrain", "body_size" = "Normal") + mutant_bodyparts = list("ipc_hair", "ipc_screen", "ipc_antenna", "ipc_chassis", "ipc_tail", "ipc_brain") // [CELADON-ADD] - CELADON_IPC_HAIR + default_features = list("mcolor" = "#7D7D7D", "ipc_hair" = "None", "ipc_screen" = "Static", "ipc_antenna" = "None", "ipc_chassis" = "Morpheus Cyberkinetics (Custom)", "ipc_tail" = "None", "ipc_brain" = "Posibrain", "body_size" = "Normal") // [CELADON-ADD] - CELADON_IPC_HAIR meat = /obj/item/stack/sheet/plasteel{amount = 5} skinned_type = /obj/item/stack/sheet/metal{amount = 10} exotic_bloodtype = "Coolant" diff --git a/mod_celadon/_storge_icons/icons/ipc/ipc_hair.dmi b/mod_celadon/_storge_icons/icons/ipc/ipc_hair.dmi new file mode 100644 index 0000000000000000000000000000000000000000..9683cacc4a383324cdaa46fed052645fc8eb40bf GIT binary patch literal 5405 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 literal 0 HcmV?d00001 diff --git a/mod_celadon/ipc_chassis/code/ipc.dm b/mod_celadon/ipc_chassis/code/ipc.dm index eff6f084e76e..1fc064d2836e 100644 --- a/mod_celadon/ipc_chassis/code/ipc.dm +++ b/mod_celadon/ipc_chassis/code/ipc.dm @@ -109,3 +109,46 @@ /datum/sprite_accessory/ipc_chassis/zion_spirit name = "Zion AC - spirit" limbs_id = "zen_sp" + +/* + IPC hair +*/ + +/datum/sprite_accessory/ipc_hair + icon = 'mod_celadon/_storge_icons/icons/ipc/ipc_hair.dmi' + color_src = HAIR + +/datum/sprite_accessory/ipc_hair/none + name = "None" + icon_state = null + +/datum/sprite_accessory/ipc_hair/buisness + name = "Buisness" + icon_state = "buisness" + +/datum/sprite_accessory/ipc_hair/sideswipe + name = "Sideswipe" + icon_state = "sideswipe" + +/datum/sprite_accessory/ipc_hair/spiky + name = "Spiky" + icon_state = "spiky" + +/datum/sprite_accessory/ipc_hair/longfringe + name = "Long Fringe" + icon_state = "longfringe" + +/datum/sprite_accessory/ipc_hair/emo + name = "Emo" + icon_state = "emo" +/datum/sprite_accessory/ipc_hair/pigtails + name = "Pigtails" + icon_state = "pigtails" + +/datum/sprite_accessory/ipc_hair/sidetail + name = "Sidetail" + icon_state = "sidetail" + +/datum/sprite_accessory/ipc_hair/slightlymessy + name = "Slightly messy" + icon_state = "slightlymessy" diff --git a/mod_celadon/ipc_hair/README.md b/mod_celadon/ipc_hair/README.md new file mode 100644 index 000000000000..e53614c4e4ad --- /dev/null +++ b/mod_celadon/ipc_hair/README.md @@ -0,0 +1,97 @@ + +#### Список PRов + +- https://github.com/CeladonSS13/Shiptest/pulls/##### + + + +## IPC hair + +ID мода: CELADON_IPC_HAIR + + +### Описание мода + +Добавляет волосы для СПУ + + +### Используется в других проектах? +- Нет + + +### Изменения *кор кода* + +- Отсутствуют + + +### Оверрайды + +- Отсутствуют + + +### Дефайны + +- Отсутствуют + + +### Используемые файлы, не содержащиеся в модпаке + +- Отсутствуют + + +### Авторы + +Feenie + diff --git a/mod_celadon/ipc_hair/_ipc_hair.dm b/mod_celadon/ipc_hair/_ipc_hair.dm new file mode 100644 index 000000000000..4fc518984c36 --- /dev/null +++ b/mod_celadon/ipc_hair/_ipc_hair.dm @@ -0,0 +1,8 @@ +/// name - название модпака. Используется для поиска других модпаков в init. +/// desc - описание для модпака. Может использоваться для списка глаголов модпака в качестве описания. +/// author - автор(ы) этого модпака. + +/datum/modpack/ipc_hair + name = "IPC hair" + desc = "Additional sprite accessory" + author = "Feenie" diff --git a/mod_celadon/ipc_hair/_ipc_hair.dme b/mod_celadon/ipc_hair/_ipc_hair.dme new file mode 100644 index 000000000000..0e6556503cc8 --- /dev/null +++ b/mod_celadon/ipc_hair/_ipc_hair.dme @@ -0,0 +1,6 @@ +#ifndef MODPACK_CELADON_IPC_HAIR +#define MODPACK_CELADON_IPC_HAIR + +#include "_ipc_hair.dm" + +#endif