diff --git a/code/__DEFINES/preferences/misc.dm b/code/__DEFINES/preferences/misc.dm index 15257d2e107..2d555fde240 100644 --- a/code/__DEFINES/preferences/misc.dm +++ b/code/__DEFINES/preferences/misc.dm @@ -13,3 +13,6 @@ #define EQUIP_PREVIEW_LOADOUT 1 #define EQUIP_PREVIEW_JOB 2 #define EQUIP_PREVIEW_ALL (EQUIP_PREVIEW_LOADOUT|EQUIP_PREVIEW_JOB) + +///The maximum number of markings a character can have +#define MAXIMUM_MARKINGS 30 diff --git a/code/modules/preferences/preference_setup/general/03_body.dm b/code/modules/preferences/preference_setup/general/03_body.dm index ca2fd84b72c..9d1a93c7a97 100644 --- a/code/modules/preferences/preference_setup/general/03_body.dm +++ b/code/modules/preferences/preference_setup/general/03_body.dm @@ -571,6 +571,10 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O var/datum/sprite_accessory/S = GLOB.sprite_accessory_markings[id] translated[S.name] = id var/new_marking = tgui_input_list(user, "Choose a body marking:", "Character Preference", translated) + var/marking_count = length(pref.body_marking_ids) + if(marking_count >= MAXIMUM_MARKINGS) + to_chat(user, "You may only select up to [MAXIMUM_MARKINGS] markings!") + return if(new_marking && CanUseTopic(user)) pref.body_marking_ids[translated[new_marking]] = "#000000" //New markings start black return PREFERENCES_REFRESH_UPDATE_PREVIEW