From f45e803bd069359cf3a92c88e216d0f4c09bf8d1 Mon Sep 17 00:00:00 2001 From: sarcoph <83266791+sarcoph@users.noreply.github.com> Date: Fri, 13 May 2022 05:09:32 -0800 Subject: [PATCH] IPC randomization and toggleable markings --- code/__HELPERS/mobs.dm | 18 ++++++++++-- code/modules/client/preferences.dm | 8 +++++- code/modules/surgery/bodyparts/bodyparts.dm | 28 ++++++++++--------- .../modules/client/hyper_pref_savefile.dm | 4 ++- .../mob/dead/new_player/sprite_accessories.dm | 1 + 5 files changed, 41 insertions(+), 18 deletions(-) diff --git a/code/__HELPERS/mobs.dm b/code/__HELPERS/mobs.dm index 9ab5a52fa..ae5638d48 100644 --- a/code/__HELPERS/mobs.dm +++ b/code/__HELPERS/mobs.dm @@ -136,15 +136,27 @@ var/datum/sprite_accessory/S = instance if(!S.ckeys_allowed) snowflake_mam_snouts_list[S.name] = mspath + var/list/snowflake_ipc_antenna_list = list() for(var/mspath in GLOB.ipc_antennas_list) - var/datum/sprite_accessory/mam_snouts/instance = GLOB.ipc_antennas_list[mspath] + var/datum/sprite_accessory/antenna/instance = GLOB.ipc_antennas_list[mspath] if(istype(instance, /datum/sprite_accessory)) var/datum/sprite_accessory/S = instance if(intendedspecies && S.recommended_species && !S.recommended_species.Find(intendedspecies)) continue if(!S.ckeys_allowed) snowflake_ipc_antenna_list[S.name] = mspath + + var/list/snowflake_ipc_screen_list = list() + for(var/mspath in GLOB.ipc_screens_list) + var/datum/sprite_accessory/screen/instance = GLOB.ipc_screens_list[mspath] + if(istype(instance, /datum/sprite_accessory)) + var/datum/sprite_accessory/S = instance + if(intendedspecies && S.recommended_species && !S.recommended_species.Find(intendedspecies)) + continue + if(!S.ckeys_allowed) + snowflake_ipc_screen_list[S.name] = mspath + var/color1 = random_short_color() var/color2 = random_short_color() var/color3 = random_short_color() @@ -233,8 +245,8 @@ "womb_cum_mult" = CUM_RATE_MULT, "womb_efficiency" = CUM_EFFICIENCY, "womb_fluid" = "femcum", - "ipc_screen" = snowflake_ipc_antenna_list ? pick(snowflake_ipc_antenna_list) : "None", - "ipc_antenna" = "None", + "ipc_screen" = snowflake_ipc_screen_list ? pick(snowflake_ipc_screen_list) : "None", + "ipc_antenna" = snowflake_ipc_antenna_list ? pick(snowflake_ipc_antenna_list) : "None", "flavor_text" = "", "silicon_flavor_text" = "", "ooc_text" = "", diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 59bc2d63e..b8d8a1879 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -201,7 +201,8 @@ GLOBAL_LIST_EMPTY(preferences_datums) "cosmetic_l_arm" = /datum/cosmetic_part/arms/default, "cosmetic_r_arm" = /datum/cosmetic_part/arms/default, "cosmetic_l_leg" = /datum/cosmetic_part/legs/default, - "cosmetic_r_leg" = /datum/cosmetic_part/legs/default + "cosmetic_r_leg" = /datum/cosmetic_part/legs/default, + "cosmetic_markings" = FALSE ) /// Security record note section @@ -840,6 +841,8 @@ GLOBAL_LIST_EMPTY(preferences_datums) dat += "