From 584b5b1a699fc6f59a508b59c1a7366e8fd3fa91 Mon Sep 17 00:00:00 2001 From: RimiNosha Date: Tue, 19 Dec 2023 01:48:19 +0000 Subject: [PATCH 1/6] Let's not encourage this. --- code/modules/surgery/organs/external/tails.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/surgery/organs/external/tails.dm b/code/modules/surgery/organs/external/tails.dm index aa5e0606db1..175e2079e16 100644 --- a/code/modules/surgery/organs/external/tails.dm +++ b/code/modules/surgery/organs/external/tails.dm @@ -144,4 +144,4 @@ /obj/item/organ/external/tail/lizard/fake name = "fabricated lizard tail" - desc = "A fabricated severed lizard tail. This one's made of synthflesh. Probably not usable for lizard wine." + desc = "A fabricated severed lizard tail." From 7e0c6d8c6f8a67875ed7e0e90fdf58bf6b788491 Mon Sep 17 00:00:00 2001 From: RimiNosha Date: Tue, 19 Dec 2023 02:50:43 +0000 Subject: [PATCH 2/6] Fuck you DNA code. --- .../modules/client/preferences/_preference.dm | 2 +- .../preferences/species_features/lizard.dm | 57 ++++++++++++------- .../human/species_types/lizardpeople.dm | 6 +- .../preferences/features/species_features.tsx | 10 ++++ 4 files changed, 51 insertions(+), 24 deletions(-) diff --git a/code/modules/client/preferences/_preference.dm b/code/modules/client/preferences/_preference.dm index b5b30e96d70..cd965159ae6 100644 --- a/code/modules/client/preferences/_preference.dm +++ b/code/modules/client/preferences/_preference.dm @@ -354,7 +354,7 @@ GLOBAL_LIST_INIT(preference_entries_by_key, init_preference_entries_by_key()) abstract_type = /datum/preference/choiced - /// A list of the four co-ordinates to crop to, if `generate_icons` is enabled. Useful for icons whose main contents are smaller than 32x32. Please keep it square. + /// A list of the four co-ordinates to crop to, if `generate_icons` is enabled. Useful for icons whose main contents are smaller than 32x32. Please keep it square. (x1, y1, x2, y2) var/list/crop_area /// A color to apply to the icon if it's greyscale, and `generate_icons` is enabled. var/greyscale_color diff --git a/code/modules/client/preferences/species_features/lizard.dm b/code/modules/client/preferences/species_features/lizard.dm index b20def08fda..24492e9398f 100644 --- a/code/modules/client/preferences/species_features/lizard.dm +++ b/code/modules/client/preferences/species_features/lizard.dm @@ -101,30 +101,49 @@ MUTANT_CHOICED_NEW(lizard_snout, GLOB.snouts_list) relevant_mutant_bodypart = MUTANT_SNOUT choiced_preference_datum = /datum/preference/choiced/mutant/lizard_snout -/datum/preference/choiced/lizard_spines +/datum/preference/choiced/mutant/lizard_spines savefile_key = "feature_lizard_spines" - savefile_identifier = PREFERENCE_CHARACTER - category = PREFERENCE_CATEGORY_APPEARANCE_LIST - relevant_mutant_bodypart = "spines" + main_feature_name = "Spines" + should_generate_icons = TRUE + relevant_mutant_bodypart = MUTANT_SPINES + color_feature_id = "lizard_spines_color" + organ_to_add = /obj/item/organ/external/spines + sprite_direction = NORTH + greyscale_color = COLOR_VIBRANT_LIME -/datum/preference/choiced/lizard_spines/init_possible_values() - return assoc_to_keys(GLOB.spines_list) +MUTANT_CHOICED_NEW(lizard_spines, GLOB.spines_list) + +/datum/preference/choiced/mutant/lizard_spines/generate_icon_state(datum/sprite_accessory/sprite_accessory, original_icon_state, suffix) + return "m_spines_[original_icon_state]_ADJ[suffix]" + +/datum/preference/choiced/mutant/lizard_spines/create_default_value() + return pick(sprite_accessory) -/datum/preference/choiced/lizard_spines/apply_to_human(mob/living/carbon/human/target, value, datum/preferences/preferences) - target.dna.features["spines"] = value +/datum/preference/color/mutant/lizard_spines + savefile_key = "lizard_spines_color" + relevant_mutant_bodypart = MUTANT_SPINES + choiced_preference_datum = /datum/preference/choiced/mutant/lizard_spines -/datum/preference/choiced/lizard_tail +/datum/preference/choiced/mutant/lizard_tail savefile_key = "feature_lizard_tail" - savefile_identifier = PREFERENCE_CHARACTER - category = PREFERENCE_CATEGORY_APPEARANCE_LIST - relevant_external_organ = /obj/item/organ/external/tail/lizard + main_feature_name = "Lizard Tail" + should_generate_icons = TRUE + relevant_mutant_bodypart = MUTANT_LIZARD_TAIL + color_feature_id = "lizard_tail_color" + organ_to_add = /obj/item/organ/external/tail/lizard + sprite_direction = SOUTH + greyscale_color = COLOR_VIBRANT_LIME + crop_area = list(1, 1, 20, 20) // We want just the lower+mid left legs+torso area. + +MUTANT_CHOICED_NEW(lizard_tail, GLOB.tails_list_lizard) -/datum/preference/choiced/lizard_tail/init_possible_values() - return assoc_to_keys(GLOB.tails_list_lizard) +/datum/preference/choiced/mutant/lizard_tail/generate_icon_state(datum/sprite_accessory/sprite_accessory, original_icon_state, suffix) + return "m_tail_lizard_[original_icon_state]_BEHIND[suffix]" -/datum/preference/choiced/lizard_tail/apply_to_human(mob/living/carbon/human/target, value, datum/preferences/preferences) - target.dna.features["tail_lizard"] = value +/datum/preference/choiced/mutant/lizard_tail/create_default_value() + return pick(sprite_accessory) -/datum/preference/choiced/lizard_tail/create_default_value() - var/datum/sprite_accessory/tails/lizard/smooth/tail = /datum/sprite_accessory/tails/lizard/smooth - return initial(tail.name) +/datum/preference/color/mutant/lizard_tail + savefile_key = "lizard_tail_color" + relevant_mutant_bodypart = MUTANT_LIZARD_TAIL + choiced_preference_datum = /datum/preference/choiced/mutant/lizard_tail diff --git a/code/modules/mob/living/carbon/human/species_types/lizardpeople.dm b/code/modules/mob/living/carbon/human/species_types/lizardpeople.dm index 27e69b64f4a..b88fac9e4fb 100644 --- a/code/modules/mob/living/carbon/human/species_types/lizardpeople.dm +++ b/code/modules/mob/living/carbon/human/species_types/lizardpeople.dm @@ -19,11 +19,9 @@ MUTANT_HORNS = "None", MUTANT_FRILLS = "None", MUTANT_SNOUT = "Round", + MUTANT_SPINES = "Long", + MUTANT_LIZARD_TAIL = "Smooth", ) - external_organs = list( - /obj/item/organ/external/spines = "None", - /obj/item/organ/external/tail/lizard = "Smooth", - ) mutanttongue = /obj/item/organ/internal/tongue/lizard coldmod = 1.5 heatmod = 0.67 diff --git a/tgui/packages/tgui/interfaces/PreferencesMenu/preferences/features/species_features.tsx b/tgui/packages/tgui/interfaces/PreferencesMenu/preferences/features/species_features.tsx index 00a650361e9..86e7277c16a 100644 --- a/tgui/packages/tgui/interfaces/PreferencesMenu/preferences/features/species_features.tsx +++ b/tgui/packages/tgui/interfaces/PreferencesMenu/preferences/features/species_features.tsx @@ -148,3 +148,13 @@ export const lizard_snout_color: Feature = { name: 'Snout Color', component: FeatureTriColorInput, }; + +export const lizard_tail_color: Feature = { + name: 'Tail Color', + component: FeatureTriColorInput, +}; + +export const lizard_spines_color: Feature = { + name: 'Spines Color', + component: FeatureTriColorInput, +}; From 046a474c7af6d1819ba288b539bc06f524cef572 Mon Sep 17 00:00:00 2001 From: RimiNosha Date: Tue, 19 Dec 2023 04:02:24 +0000 Subject: [PATCH 3/6] I hate this solution, but I'm not making a second set of code that does literally the same thing --- .../client/preferences/species_features/lizard.dm | 14 ++++++++++++++ .../mob/dead/new_player/sprite_accessories.dm | 1 - .../preferences/features/species_features.tsx | 5 +++++ 3 files changed, 19 insertions(+), 1 deletion(-) diff --git a/code/modules/client/preferences/species_features/lizard.dm b/code/modules/client/preferences/species_features/lizard.dm index 24492e9398f..bea49f5a24f 100644 --- a/code/modules/client/preferences/species_features/lizard.dm +++ b/code/modules/client/preferences/species_features/lizard.dm @@ -5,6 +5,15 @@ main_feature_name = "Body markings" should_generate_icons = TRUE relevant_mutant_bodypart = "body_markings" + var/sprite_accessory // Shitcode cause I don't want to write new code to do the same shit as mutant stuff + +/datum/preference/choiced/lizard_body_markings/New() + . = ..() + sprite_accessory = GLOB.body_markings_list + +/datum/preference/choiced/lizard_body_markings/compile_constant_data() + . = ..() + .[SUPPLEMENTAL_FEATURE_KEY] = "body_markings_color" /datum/preference/choiced/lizard_body_markings/init_possible_values() var/list/values = list() @@ -36,6 +45,11 @@ /datum/preference/choiced/lizard_body_markings/apply_to_human(mob/living/carbon/human/target, value, datum/preferences/preferences) target.dna.features["body_markings"] = value +/datum/preference/color/mutant/lizard_body_markings + savefile_key = "body_markings_color" + relevant_mutant_bodypart = "body_markings" + choiced_preference_datum = /datum/preference/choiced/lizard_body_markings + /datum/preference/choiced/mutant/lizard_frills savefile_key = "feature_lizard_frills" main_feature_name = "Frills" diff --git a/code/modules/mob/dead/new_player/sprite_accessories.dm b/code/modules/mob/dead/new_player/sprite_accessories.dm index 8c80783b384..65338fa09d3 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories.dm @@ -113,7 +113,6 @@ GLOBAL_LIST_INIT(sprite_accessory_layers, list( \ /datum/sprite_accessory/New() . = ..() if(color_src == TRI_COLOR_LAYERS) - color_layer_names = list() if(!GLOB.cached_sprite_accessory_sprites[icon]) GLOB.cached_sprite_accessory_sprites[icon] = icon_states(new /icon(icon)) for(var/layer in GLOB.sprite_accessory_layers) diff --git a/tgui/packages/tgui/interfaces/PreferencesMenu/preferences/features/species_features.tsx b/tgui/packages/tgui/interfaces/PreferencesMenu/preferences/features/species_features.tsx index 86e7277c16a..5bff1531494 100644 --- a/tgui/packages/tgui/interfaces/PreferencesMenu/preferences/features/species_features.tsx +++ b/tgui/packages/tgui/interfaces/PreferencesMenu/preferences/features/species_features.tsx @@ -158,3 +158,8 @@ export const lizard_spines_color: Feature = { name: 'Spines Color', component: FeatureTriColorInput, }; + +export const body_markings_color: Feature = { + name: 'Body Markings Color', + component: FeatureTriColorInput, +}; From a99b13a94c068451390b91d1087cf86304e7a78a Mon Sep 17 00:00:00 2001 From: RimiNosha Date: Tue, 19 Dec 2023 16:40:43 +0000 Subject: [PATCH 4/6] WHAT IN THE SHITCODE IS THIS?! --- .../client/preferences/species_features/_mutant.dm | 9 ++++----- .../modules/client/preferences/species_features/human.dm | 3 --- .../client/preferences/species_features/lizard.dm | 4 ---- code/modules/client/preferences/species_features/pod.dm | 5 ++--- .../modules/client/preferences/species_features/synth.dm | 2 -- .../dead/new_player/sprite_accessories/mutant/ears.dm | 1 + .../dead/new_player/sprite_accessories/mutant/frills.dm | 1 + .../dead/new_player/sprite_accessories/mutant/horns.dm | 2 ++ .../dead/new_player/sprite_accessories/mutant/snouts.dm | 1 + .../dead/new_player/sprite_accessories/mutant/spines.dm | 3 +++ .../dead/new_player/sprite_accessories/mutant/tails.dm | 1 + .../mob/dead/new_player/synth_sprite_accessories.dm | 2 ++ 12 files changed, 17 insertions(+), 17 deletions(-) diff --git a/code/modules/client/preferences/species_features/_mutant.dm b/code/modules/client/preferences/species_features/_mutant.dm index 22fe10177da..af3a69e7815 100644 --- a/code/modules/client/preferences/species_features/_mutant.dm +++ b/code/modules/client/preferences/species_features/_mutant.dm @@ -9,8 +9,6 @@ var/color_feature_id /// The global list containing the sprite accessories to use. Override New to set. var/list/sprite_accessory - /// The typepath of the external organ to add. - var/organ_to_add /// Direction to render the preview on. Can take NORTH, SOUTH, EAST, WEST. var/sprite_direction = SOUTH /// A list of types to exclude, including their subtypes. @@ -24,13 +22,14 @@ /datum/preference/choiced/mutant/apply_to_human(mob/living/carbon/human/target, value, datum/preferences/preferences) target.dna.features[relevant_mutant_bodypart] = value - if(organ_to_add) - var/datum/sprite_accessory/accessory = sprite_accessory[value] + + var/datum/sprite_accessory/accessory = sprite_accessory[value] + if(accessory.organ_type_to_use) if(!accessory) CRASH("Accessory is null for [value]!") if(accessory.name == "None" || !is_accessible(preferences)) return - var/obj/item/organ/external/new_organ_to_add = new organ_to_add(FALSE, accessory.type) + var/obj/item/organ/external/new_organ_to_add = new accessory.organ_type_to_use(FALSE, accessory.type) new_organ_to_add.Insert(target, TRUE, FALSE) /datum/preference/choiced/mutant/is_accessible(datum/preferences/preferences) diff --git a/code/modules/client/preferences/species_features/human.dm b/code/modules/client/preferences/species_features/human.dm index 0b77ee175e1..9c00dcf2026 100644 --- a/code/modules/client/preferences/species_features/human.dm +++ b/code/modules/client/preferences/species_features/human.dm @@ -6,7 +6,6 @@ greyscale_color = COLOR_DARK_BROWN main_feature_name = "Tail" color_feature_id = "tail_human_color" - organ_to_add = /obj/item/organ/external/tail sprite_direction = NORTH accessories_to_ignore = list(/datum/sprite_accessory/tails/lizard) @@ -30,7 +29,6 @@ MUTANT_CHOICED_NEW(tail_human, GLOB.tails_list) greyscale_color = COLOR_DARK_BROWN main_feature_name = "Ears" color_feature_id = "ears_color" - organ_to_add = /obj/item/organ/internal/ears crop_area = list(11, 22, 21, 32) // We want just the head area. MUTANT_CHOICED_NEW(ears, GLOB.ears_list) @@ -53,7 +51,6 @@ MUTANT_CHOICED_NEW(ears, GLOB.ears_list) greyscale_color = COLOR_DARK_BROWN main_feature_name = "Horns" color_feature_id = "horns_color" - organ_to_add = /obj/item/organ/external/horns crop_area = list(11, 22, 21, 32) // We want just the head area. MUTANT_CHOICED_NEW(horns, GLOB.horns_list) diff --git a/code/modules/client/preferences/species_features/lizard.dm b/code/modules/client/preferences/species_features/lizard.dm index bea49f5a24f..49ad16e9873 100644 --- a/code/modules/client/preferences/species_features/lizard.dm +++ b/code/modules/client/preferences/species_features/lizard.dm @@ -56,7 +56,6 @@ relevant_mutant_bodypart = MUTANT_FRILLS should_generate_icons = TRUE color_feature_id = "lizard_frills_color" - organ_to_add = /obj/item/organ/external/frills sprite_direction = EAST greyscale_color = COLOR_VIBRANT_LIME crop_area = list(11, 22, 21, 32) // We want just the head. @@ -97,7 +96,6 @@ MUTANT_CHOICED_NEW(lizard_frills, GLOB.frills_list) should_generate_icons = TRUE relevant_mutant_bodypart = MUTANT_SNOUT color_feature_id = "lizard_snout_color" - organ_to_add = /obj/item/organ/external/snout sprite_direction = EAST greyscale_color = COLOR_VIBRANT_LIME crop_area = list(14, 22, 24, 32) // We want just the head. @@ -121,7 +119,6 @@ MUTANT_CHOICED_NEW(lizard_snout, GLOB.snouts_list) should_generate_icons = TRUE relevant_mutant_bodypart = MUTANT_SPINES color_feature_id = "lizard_spines_color" - organ_to_add = /obj/item/organ/external/spines sprite_direction = NORTH greyscale_color = COLOR_VIBRANT_LIME @@ -144,7 +141,6 @@ MUTANT_CHOICED_NEW(lizard_spines, GLOB.spines_list) should_generate_icons = TRUE relevant_mutant_bodypart = MUTANT_LIZARD_TAIL color_feature_id = "lizard_tail_color" - organ_to_add = /obj/item/organ/external/tail/lizard sprite_direction = SOUTH greyscale_color = COLOR_VIBRANT_LIME crop_area = list(1, 1, 20, 20) // We want just the lower+mid left legs+torso area. diff --git a/code/modules/client/preferences/species_features/pod.dm b/code/modules/client/preferences/species_features/pod.dm index 5a36bea5ec2..50041897f0e 100644 --- a/code/modules/client/preferences/species_features/pod.dm +++ b/code/modules/client/preferences/species_features/pod.dm @@ -6,6 +6,8 @@ should_generate_icons = TRUE color_feature_id = "pod_hair_color" +MUTANT_CHOICED_NEW(pod_hair, GLOB.pod_hair_list) + /datum/preference/choiced/mutant/pod_hair/init_possible_values() var/list/values = list() @@ -27,9 +29,6 @@ return values -/datum/preference/choiced/mutant/pod_hair/create_default_value() - return pick(GLOB.pod_hair_list) - /datum/preference/color/mutant/pod_hair savefile_key = "pod_hair_color" relevant_mutant_bodypart = MUTANT_POD_HAIR diff --git a/code/modules/client/preferences/species_features/synth.dm b/code/modules/client/preferences/species_features/synth.dm index 0fa0c2f1c18..5c22ca5c68b 100644 --- a/code/modules/client/preferences/species_features/synth.dm +++ b/code/modules/client/preferences/species_features/synth.dm @@ -58,7 +58,6 @@ relevant_mutant_bodypart = MUTANT_SYNTH_SCREEN crop_area = list(11, 22, 21, 32) // We want just the head. color_feature_id = "synth_screen_color" - organ_to_add = /obj/item/organ/external/screen /datum/preference/choiced/mutant/synth_screen/New() . = ..() @@ -88,7 +87,6 @@ crop_area = list(11, 22, 21, 32) // We want just the head. color_feature_id = "synth_antenna_color" greyscale_color = DEFAULT_SYNTH_PART_COLOR - organ_to_add = /obj/item/organ/external/synth_antenna MUTANT_CHOICED_NEW(synth_antenna, GLOB.synth_antennae) diff --git a/code/modules/mob/dead/new_player/sprite_accessories/mutant/ears.dm b/code/modules/mob/dead/new_player/sprite_accessories/mutant/ears.dm index 9b49b714469..b63112de6a3 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/mutant/ears.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/mutant/ears.dm @@ -3,6 +3,7 @@ key = "ears" em_block = TRUE color_src = TRI_COLOR_LAYERS + organ_type_to_use = /obj/item/organ/internal/ears /datum/sprite_accessory/ears/none name = "None" diff --git a/code/modules/mob/dead/new_player/sprite_accessories/mutant/frills.dm b/code/modules/mob/dead/new_player/sprite_accessories/mutant/frills.dm index ce514ac9672..f2bea3029cb 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/mutant/frills.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/mutant/frills.dm @@ -1,5 +1,6 @@ /datum/sprite_accessory/frills icon = 'icons/mob/species/lizard/lizard_misc.dmi' + organ_type_to_use = /obj/item/organ/external/frills /datum/sprite_accessory/frills/none name = "None" diff --git a/code/modules/mob/dead/new_player/sprite_accessories/mutant/horns.dm b/code/modules/mob/dead/new_player/sprite_accessories/mutant/horns.dm index a34f9914b9f..c3c8210d9bd 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/mutant/horns.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/mutant/horns.dm @@ -1,6 +1,8 @@ +// Oh man, these really are horny /datum/sprite_accessory/horns icon = 'icons/mob/species/lizard/lizard_misc.dmi' em_block = TRUE + organ_type_to_use = /obj/item/organ/external/horns /datum/sprite_accessory/horns/none name = "None" diff --git a/code/modules/mob/dead/new_player/sprite_accessories/mutant/snouts.dm b/code/modules/mob/dead/new_player/sprite_accessories/mutant/snouts.dm index 58b57fe8bd2..6970b995bbe 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/mutant/snouts.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/mutant/snouts.dm @@ -1,6 +1,7 @@ /datum/sprite_accessory/snouts icon = 'icons/mob/species/lizard/lizard_misc.dmi' em_block = TRUE + organ_type_to_use = /obj/item/organ/external/snout /datum/sprite_accessory/snouts/sharp name = "Sharp" diff --git a/code/modules/mob/dead/new_player/sprite_accessories/mutant/spines.dm b/code/modules/mob/dead/new_player/sprite_accessories/mutant/spines.dm index 9262a74c60f..4a0e43fd04f 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/mutant/spines.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/mutant/spines.dm @@ -1,10 +1,13 @@ /datum/sprite_accessory/spines icon = 'icons/mob/species/lizard/lizard_spines.dmi' em_block = TRUE + organ_type_to_use = /obj/item/organ/external/spines /datum/sprite_accessory/spines_animated icon = 'icons/mob/species/lizard/lizard_spines.dmi' em_block = TRUE + // This shouldn't be needed... but shitcode has it's ways. + organ_type_to_use = /obj/item/organ/external/spines /datum/sprite_accessory/spines/none name = "None" diff --git a/code/modules/mob/dead/new_player/sprite_accessories/mutant/tails.dm b/code/modules/mob/dead/new_player/sprite_accessories/mutant/tails.dm index 1de3911f2fd..8726076d1e4 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/mutant/tails.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/mutant/tails.dm @@ -6,6 +6,7 @@ /datum/sprite_accessory/tails/lizard icon = 'icons/mob/species/lizard/lizard_tails.dmi' key = "tail_lizard" + organ_type_to_use = /obj/item/organ/external/tail/lizard /datum/sprite_accessory/tails/lizard/smooth name = "Smooth" diff --git a/code/modules/mob/dead/new_player/synth_sprite_accessories.dm b/code/modules/mob/dead/new_player/synth_sprite_accessories.dm index 198007023ac..ce3acfe4583 100644 --- a/code/modules/mob/dead/new_player/synth_sprite_accessories.dm +++ b/code/modules/mob/dead/new_player/synth_sprite_accessories.dm @@ -6,6 +6,7 @@ icon = 'icons/mob/species/synth/screens.dmi' gender_specific = FALSE color_src = null + organ_type_to_use = /obj/item/organ/external/screen /datum/sprite_accessory/screen/none name = "None" @@ -148,6 +149,7 @@ /datum/sprite_accessory/antenna icon = 'icons/mob/species/synth/synth_antennas.dmi' key = "synth_antenna" + organ_type_to_use = /obj/item/organ/external/synth_antenna /datum/sprite_accessory/antenna/none name = "None" From 26e1b86e90a208a3110468e30449f802522b35aa Mon Sep 17 00:00:00 2001 From: RimiNosha Date: Tue, 19 Dec 2023 22:31:02 +0000 Subject: [PATCH 5/6] Fuck --- code/modules/client/preferences/species_features/pod.dm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/code/modules/client/preferences/species_features/pod.dm b/code/modules/client/preferences/species_features/pod.dm index 50041897f0e..8a955fbc5a1 100644 --- a/code/modules/client/preferences/species_features/pod.dm +++ b/code/modules/client/preferences/species_features/pod.dm @@ -29,6 +29,9 @@ MUTANT_CHOICED_NEW(pod_hair, GLOB.pod_hair_list) return values +/datum/preference/choiced/mutant/pod_hair/create_default_value() + return "Cabbage" + /datum/preference/color/mutant/pod_hair savefile_key = "pod_hair_color" relevant_mutant_bodypart = MUTANT_POD_HAIR From 4ac127a980140ed12cc28f9e6edcadfc7877f9f1 Mon Sep 17 00:00:00 2001 From: RimiNosha Date: Tue, 19 Dec 2023 23:22:48 +0000 Subject: [PATCH 6/6] I don't have the patience or the adderall required to fucking refactor species code. Eat shit. --- ...enshot_humanoids__datum_species_lizard.png | Bin 1330 -> 1175 bytes ...anoids__datum_species_lizard_ashwalker.png | Bin 1104 -> 964 bytes ...oids__datum_species_lizard_silverscale.png | Bin 1125 -> 976 bytes 3 files changed, 0 insertions(+), 0 deletions(-) diff --git a/code/modules/unit_tests/screenshots/screenshot_humanoids__datum_species_lizard.png b/code/modules/unit_tests/screenshots/screenshot_humanoids__datum_species_lizard.png index c52a9c194d4574d2e7deab3f31c2b055a5072173..04e24da91b207a9837a05b96e124131fee2c3379 100644 GIT binary patch delta 907 zcmV;619bed3YQ6xBmsMoC42_}JUlLD=OU54fqz*^L_t(oh22)|QsXcT^hfJL2qCVW z*acdO%U$#SPk1Z0aM#2#GxzJ}lt}|wX(K0+wL<)9l1%XSEv~fIiuaI;tcL5=dc`vs zsmY|_2#l7SyN%SGgE4sthQ*~+>(yFG<`E{Zkkrc+o3mtyQXL@U8QB$KGwZ_@URblN#4D z?nX~Gx-u@+K;IbOdMMVSRAKbvh%*%NZPWu*3C=;sWtPB$cOY;+lyI@##Ubvr(fL{+ z*u~%iR)F6UF2UO4@#q)T<7x9Gf%ngY3x6-c4bS}&#|kClcDwCv2PU~#CGLcw&l&VX zSmLO2Bfbdoe@h(6UycHf60z;8dc_j<`+aK{{Xlr|VZ`A>0f$3p4{wL#@wh)6Y*!%Y zY;Z6B-M_d{z^TmJbV?sTKGM%ayKE@JPXV9MyKpMt@MuLkr}Oy?0#RrP+&ZWH27l7I zgp(zeP)I4IA}T~oxzJK%a1m*@LM?L+QDt1!2#hc_0(?C%{KEt;gdlJ_4tE)M94>N| z(wAaz?=$W_7w=tmz?DhhO2DLm-RA0mKT7fAR|aE|0l;Sl#T4kt7o1CxOmc(qYNoCa zvOrK32BWI_f#NZn)oNXa*DFFR41d_D$YHa-E8}4SW1Mh(Cyar?F zgeX<@0anQvLa`rn4`FP5S7|igsO<{z=rt5-je+7(%pp6^32+OuQ5jMh9Df0c52G+V z-Lj+6rNLnC%OTbX;vgXu40+Em8vf`t8T)z$eMCJP(g?Ezat0{#9wVOLwt+!AsGPxV z3Jz1-8QAtaf-QMr$j)8@cB#>s33DGBK~3fONkKe7C`<;d_ND>Mm)k-;$)plJO zYpp=V9IN~Oe?S0nP?>vz3ND0s0o)K2`t+6{Pw*N6Gn&5=@XJQNB?zVM>UaD&E^By3 hfbq{0kV2Rd`~tpwM>BjGDaQZ+002ovPDHLkV1jV}vU&gj delta 1063 zcmV+?1laqR39<^1Bmt0-C43yVwzia%lzMu4+S=O3$H%0kqyRiTWMpK8DubtysDXdq zNklqCIxpsjf-z7|i$25@Tg%)Pm9-@myZ=WM;9 z2!FG9goUwh0UQ}w;x6uTxqyEl32X>_b#eCETw8Yu;S^3fG?H^Jh$czxny%?OS2K80 z(`kiX<`Qbz50KEu2vnnD1fnGg|3WZHVDOd*x;TMq2WSX0bXQ}oP4G4hfk8q-8k#n6 z`Sv>aE~Q>&2#SJmXt*}*f}%tDU<%_2@W}}91g0m7uKm4^mag73IBkEX1o|UXUllW6 z^lb-@c9PNF0>Di{Pyz{@aQxM`eM>*9n<2QtIERY+18)#ygh9!uf1rBIX1Uph;q8Xd z2m=l(O4x1h!uZ{Gm--amfk+Aep>~{t9SlIq&-d9K2+5cjDi(7RBO%lGhrNDa$7}YW z_lJXyjBhE6hfz$YpQ@WImL{@C3t>0K3#G%zaVTF@m}jFbayY z7Z?qH>@`v6aRqseepKWU76QBiw0VvZ&!79i;2oq_@TUZWscnB0;`koHk+Lvk7dHW? zRAtnNxet#Z$8h~9VIE)TT3IBagr- zAoGxEJ;EpiPyUM=Gw%_?^++J|kd0hI+c^P;;9{-pC{!01ZA5VGl&E7{fttA%3Ns}v z;5vMaV7LY)KtOx*F@h#2fdup)Bj`gC+6Dr8m;+`s&w&Q8wr^;_udd(pogd9{0zbjK zzWGxFruER1abZXEF9CjnCrBQK8-=$A{p5SlprPaHcYRgOJxmmnL-^@qwj1PcOt?)w h0Xc-*Cg`Wi{{Y1aXc+>FI9dPz002ovPDHLkV1nye|1$sp diff --git a/code/modules/unit_tests/screenshots/screenshot_humanoids__datum_species_lizard_ashwalker.png b/code/modules/unit_tests/screenshots/screenshot_humanoids__datum_species_lizard_ashwalker.png index 59bc786abf1f4c220cfb2bdf74ab3e5d297013da..8849aa3250b115bad6a06d7d1cbc2676711e2d83 100644 GIT binary patch delta 735 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 AqyPW_