diff --git a/code/modules/client/preference/loadout/gear_tweaks.dm b/code/modules/client/preference/loadout/gear_tweaks.dm index 9759f3cf7c3..d384bc7baf7 100644 --- a/code/modules/client/preference/loadout/gear_tweaks.dm +++ b/code/modules/client/preference/loadout/gear_tweaks.dm @@ -47,13 +47,13 @@ /datum/gear_tweak/rename display_type = "Name" fa_icon = "edit" - info = "Renameable" + info = "Customizable name" /datum/gear_tweak/rename/get_default() return "" /datum/gear_tweak/rename/get_metadata(user, metadata) - var/new_name = tgui_input_text(user, "Rename an object. Enter empty line for stock name", "Rename Gear", metadata, MAX_NAME_LEN) + var/new_name = tgui_input_text(user, "Rename an object. Enter empty line for stock name.", "Rename Gear", metadata, MAX_NAME_LEN) if(isnull(new_name)) return metadata return new_name @@ -63,3 +63,24 @@ return gear.name = metadata + +// MARK: Redesc +/datum/gear_tweak/redesc + display_type = "Description" + fa_icon = "edit" + info = "Customizable description" + +/datum/gear_tweak/redesc/get_default() + return "" + +/datum/gear_tweak/redesc/get_metadata(user, metadata) + var/new_desc = tgui_input_text(user, "Edit an object's description. Enter empty line for stock description.", "Edit Gear Description", metadata, MAX_NAME_LEN) + if(isnull(new_desc)) + return metadata + return new_desc + +/datum/gear_tweak/redesc/tweak_item(obj/item/gear, metadata) + if(!metadata) + return + + gear.desc = metadata diff --git a/code/modules/client/preference/loadout/loadout.dm b/code/modules/client/preference/loadout/loadout.dm index 2eaf2a612c1..3f52803822b 100644 --- a/code/modules/client/preference/loadout/loadout.dm +++ b/code/modules/client/preference/loadout/loadout.dm @@ -17,6 +17,10 @@ GLOBAL_LIST_EMPTY(gear_datums) var/sort_category = "General" /// List of datums which will alter the item after it has been spawned. (NYI) var/list/gear_tweaks = list() + /// Can this item's name be customized? + var/tweakname = TRUE + /// Can this item's description be customized? + var/tweakdesc = TRUE /// Set on empty category datums to skip them being added to the list. (/datum/gear/accessory, /datum/gear/suit/coat/job, etc.) var/main_typepath = /datum/gear /// Does selecting a second item with the same `main_typepath` cost loadout points. @@ -29,6 +33,11 @@ GLOBAL_LIST_EMPTY(gear_datums) if(!description) var/obj/O = path description = initial(O.desc) + if(tweakname == TRUE) // makes either option not work if their respective var is set to `false` + gear_tweaks |= new /datum/gear_tweak/rename + if(tweakdesc == TRUE) + gear_tweaks |= new /datum/gear_tweak/redesc + /datum/gear_data var/path diff --git a/code/modules/client/preference/loadout/loadout_general.dm b/code/modules/client/preference/loadout/loadout_general.dm index 0bd67c38c59..7b5e7953c55 100644 --- a/code/modules/client/preference/loadout/loadout_general.dm +++ b/code/modules/client/preference/loadout/loadout_general.dm @@ -15,34 +15,70 @@ display_name = "D20" path = /obj/item/dice/d20 -/datum/gear/uplift - display_name = "Pack of Uplifts" - path = /obj/item/storage/fancy/cigarettes/cigpack_uplift +/datum/gear/carp + display_name = "Pack of Carps" + path = /obj/item/storage/fancy/cigarettes/cigpack_carp + +/datum/gear/dromedary + display_name = "Pack of Dromedaries" + path = /obj/item/storage/fancy/cigarettes/dromedaryco + +/datum/gear/ourbrand + display_name = "Pack of Our Brand" + path = /obj/item/storage/fancy/cigarettes/cigpack_our_brand /datum/gear/robust display_name = "Pack of Robusts" path = /obj/item/storage/fancy/cigarettes/cigpack_robust -/datum/gear/carp - display_name = "Pack of Carps" - path = /obj/item/storage/fancy/cigarettes/cigpack_carp +/datum/gear/robustgold + display_name = "Pack of Robust Golds" + path = /obj/item/storage/fancy/cigarettes/cigpack_robustgold + +/datum/gear/robustjunior + display_name = "Pack of Robust Juniors" + path = /obj/item/storage/fancy/cigarettes/cigpack_candy + +/datum/gear/shadyjims + display_name = "Pack of Shady Jims" + path = /obj/item/storage/fancy/cigarettes/cigpack_shadyjims + +/datum/gear/solarrays + display_name = "Pack of Solar Rays" + path = /obj/item/storage/fancy/cigarettes/cigpack_solar_rays + +/datum/gear/uplift + display_name = "Pack of Uplifts" + path = /obj/item/storage/fancy/cigarettes/cigpack_uplift /datum/gear/midori display_name = "Pack of Midoris" path = /obj/item/storage/fancy/cigarettes/cigpack_midori +/datum/gear/carcinoma + display_name = "Pack of Carcinomas" + path = /obj/item/storage/fancy/cigarettes/cigpack_carcinoma + +/datum/gear/matches + display_name = "Box of matches" + path = /obj/item/storage/fancy/matches + +/datum/gear/lighter + display_name = "Cheap lighter" + path = /obj/item/lighter + +/datum/gear/zippolighter + display_name = "Zippo lighter" + path = /obj/item/lighter/zippo + /datum/gear/smokingpipe display_name = "Smoking pipe" path = /obj/item/clothing/mask/cigarette/pipe cost = 2 -/datum/gear/lighter - display_name = "Cheap lighter" - path = /obj/item/lighter - -/datum/gear/matches - display_name = "Box of matches" - path = /obj/item/storage/fancy/matches +/datum/gear/kingsown + display_name = "King's Own tobacco" + path = /obj/item/food/grown/tobacco/pre_dried /datum/gear/candlebox display_name = "Box of candles" @@ -57,73 +93,227 @@ display_name = "Camera" path = /obj/item/camera +/datum/gear/photo_album + display_name = "Photo album" + path = /obj/item/storage/photo_album + +/datum/gear/filmcartridge + display_name = "Film cartridge" + path = /obj/item/camera_film + /datum/gear/taperecorder display_name = "Universal recorder" path = /obj/item/taperecorder +/datum/gear/tapebox + display_name = "Box of tapes" + path = /obj/item/storage/box/tapes + +// MARK: Plushies /datum/gear/redfoxplushie display_name = "Red fox plushie" path = /obj/item/toy/plushie/red_fox + sort_category = "Plushies" + +/datum/gear/blackfoxplushie + display_name = "Black fox plushie" + path = /obj/item/toy/plushie/black_fox + sort_category = "Plushies" + +/datum/gear/marblefoxplushie + display_name = "Marble fox plushie" + path = /obj/item/toy/plushie/marble_fox + sort_category = "Plushies" + +/datum/gear/bluefoxplushie + display_name = "Blue fox plushie" + path = /obj/item/toy/plushie/blue_fox + sort_category = "Plushies" + +/datum/gear/orangefoxplushie + display_name = "Orange fox plushie" + path = /obj/item/toy/plushie/orange_fox + sort_category = "Plushies" + +/datum/gear/coffeefoxplushie + display_name = "Coffee fox plushie" + path = /obj/item/toy/plushie/coffee_fox + sort_category = "Plushies" + +/datum/gear/pinkfoxplushie + display_name = "Pink fox plushie" + path = /obj/item/toy/plushie/pink_fox + sort_category = "Plushies" + +/datum/gear/purplefoxplushie + display_name = "Purple fox plushie" + path = /obj/item/toy/plushie/purple_fox + sort_category = "Plushies" + +/datum/gear/crimsonfoxplushie + display_name = "Crimson fox plushie" + path = /obj/item/toy/plushie/crimson_fox + sort_category = "Plushies" /datum/gear/blackcatplushie display_name = "Black cat plushie" path = /obj/item/toy/plushie/black_cat + sort_category = "Plushies" -/datum/gear/voxplushie - display_name = "Vox plushie" - path = /obj/item/toy/plushie/voxplushie +/datum/gear/greycatplushie + display_name = "Grey cat plushie" + path = /obj/item/toy/plushie/grey_cat + sort_category = "Plushies" + +/datum/gear/whitecatplushie + display_name = "White cat plushie" + path = /obj/item/toy/plushie/white_cat + sort_category = "Plushies" + +/datum/gear/orangecatplushie + display_name = "Orange cat plushie" + path = /obj/item/toy/plushie/orange_cat + sort_category = "Plushies" + +/datum/gear/siamesecatplushie + display_name = "Siamese cat plushie" + path = /obj/item/toy/plushie/siamese_cat + sort_category = "Plushies" + +/datum/gear/tabbycatplushie + display_name = "Tabby cat plushie" + path = /obj/item/toy/plushie/tabby_cat + sort_category = "Plushies" + +/datum/gear/tuxedocatplushie + display_name = "Tuxedo cat plushie" + path = /obj/item/toy/plushie/tuxedo_cat + sort_category = "Plushies" /datum/gear/lizardplushie display_name = "Lizard plushie" path = /obj/item/toy/plushie/lizardplushie + sort_category = "Plushies" /datum/gear/deerplushie display_name = "Deer plushie" path = /obj/item/toy/plushie/deer + sort_category = "Plushies" /datum/gear/carpplushie display_name = "Carp plushie" path = /obj/item/toy/plushie/carpplushie + sort_category = "Plushies" -/datum/gear/greyplushie - display_name = "Grey Plushie" - path = /obj/item/toy/plushie/greyplushie +/datum/gear/icecarpplushie + display_name = "Ice carp plushie" + path = /obj/item/toy/plushie/carpplushie/ice + sort_category = "Plushies" -/datum/gear/nianplushie - display_name = "Nian plushie" - path = /obj/item/toy/plushie/nianplushie +/datum/gear/silentcarpplushie + display_name = "Silent carp plushie" + path = /obj/item/toy/plushie/carpplushie/silent + sort_category = "Plushies" -/datum/gear/ipcplushie - display_name = "IPC plushie" - path = /obj/item/toy/plushie/ipcplushie +/datum/gear/electriccarpplushie + display_name = "Electric carp plushie" + path = /obj/item/toy/plushie/carpplushie/electric + sort_category = "Plushies" -/datum/gear/kidanplushie - display_name = "Kidan plushie" - path = /obj/item/toy/plushie/kidanplushie +/datum/gear/goldcarpplushie + display_name = "Gold carp plushie" + path = /obj/item/toy/plushie/carpplushie/gold + sort_category = "Plushies" -/datum/gear/plasmaplushie - display_name = "Plasmaman plushie" - path = /obj/item/toy/plushie/plasmamanplushie +/datum/gear/toxincarpplushie + display_name = "Toxin carp plushie" + path = /obj/item/toy/plushie/carpplushie/toxin + sort_category = "Plushies" + +/datum/gear/dragoncarpplushie + display_name = "Dragon carp plushie" + path = /obj/item/toy/plushie/carpplushie/dragon + sort_category = "Plushies" + +/datum/gear/pinkcarpplushie + display_name = "Pink carp plushie" + path = /obj/item/toy/plushie/carpplushie/pink + sort_category = "Plushies" + +/datum/gear/candycarpplushie + display_name = "Candy carp plushie" + path = /obj/item/toy/plushie/carpplushie/candy + sort_category = "Plushies" + +/datum/gear/nebulacarpplushie + display_name = "Nebula carp plushie" + path = /obj/item/toy/plushie/carpplushie/nebula + sort_category = "Plushies" + +/datum/gear/voidcarpplushie + display_name = "Void carp plushie" + path = /obj/item/toy/plushie/carpplushie/void + sort_category = "Plushies" + +/datum/gear/humanplushie + display_name = "Human plushie" + path = /obj/item/toy/plushie/humanplushie + sort_category = "Plushies" /datum/gear/skrellplushie display_name = "Skrell plushie" path = /obj/item/toy/plushie/skrellplushie + sort_category = "Plushies" + +/datum/gear/voxplushie + display_name = "Vox plushie" + path = /obj/item/toy/plushie/voxplushie + sort_category = "Plushies" /datum/gear/draskplushie display_name = "Drask plushie" path = /obj/item/toy/plushie/draskplushie + sort_category = "Plushies" -/datum/gear/borgplushie - display_name = "Borg plushie" - path = /obj/item/toy/plushie/borgplushie +/datum/gear/greyplushie + display_name = "Grey Plushie" + path = /obj/item/toy/plushie/greyplushie + sort_category = "Plushies" /datum/gear/nymphplushie display_name = "Diona nymph plushie" path = /obj/item/toy/plushie/nymphplushie + sort_category = "Plushies" + +/datum/gear/ipcplushie + display_name = "IPC plushie" + path = /obj/item/toy/plushie/ipcplushie + sort_category = "Plushies" + +/datum/gear/kidanplushie + display_name = "Kidan plushie" + path = /obj/item/toy/plushie/kidanplushie + sort_category = "Plushies" + +/datum/gear/plasmaplushie + display_name = "Plasmaman plushie" + path = /obj/item/toy/plushie/plasmamanplushie + sort_category = "Plushies" + +/datum/gear/nianplushie + display_name = "Nian plushie" + path = /obj/item/toy/plushie/nianplushie + sort_category = "Plushies" + +/datum/gear/borgplushie + display_name = "Borg plushie" + path = /obj/item/toy/plushie/borgplushie + sort_category = "Plushies" /datum/gear/sharkplushie display_name = "Shark plushie" path = /obj/item/toy/plushie/shark + sort_category = "Plushies" /datum/gear/cryaonbox display_name = "Box of crayons" @@ -210,30 +400,26 @@ display_name = "Wizard's staff" path = /obj/item/staff -/datum/gear/photo_album - display_name = "Photo album" - path = /obj/item/storage/photo_album - ////////////////////// // Mugs // ////////////////////// /datum/gear/mug display_name = "Coffee mug, random" - description = "A randomly colored coffee mug. You'll need to supply your own beverage though." + description = "A randomly colored coffee mug. You'll need to supply your own beverage, though." path = /obj/item/reagent_containers/drinks/mug sort_category = "Mugs" /datum/gear/novelty_mug display_name = "Coffee mug, novelty" - description = "A random novelty coffee mug. You'll need to supply your own beverage though." + description = "A random novelty coffee mug. You'll need to supply your own beverage, though." path = /obj/item/reagent_containers/drinks/mug/novelty cost = 2 sort_category = "Mugs" /datum/gear/mug/flask display_name = "Flask" - description = "A flask for drink transportation. You'll need to supply your own beverage though." + description = "A flask for drink transportation. You'll need to supply your own beverage, though." path = /obj/item/reagent_containers/drinks/flask/barflask /datum/gear/mug/department @@ -327,3 +513,52 @@ /datum/gear/instrument/xylo display_name = "Xylophone" path = /obj/item/instrument/xylophone + +////////////////////// +// Paperwork // +////////////////////// + +/datum/gear/paperwork + display_name = "Paper bin" + path = /obj/item/paper_bin + sort_category = "Paperwork" + +/datum/gear/paperwork/clipboard + display_name = "Clipboard" + path = /obj/item/clipboard + +/datum/gear/paperwork/redpen + display_name = "Red pen" + path = /obj/item/pen/red + +/datum/gear/paperwork/bluepen + display_name = "Blue pen" + path = /obj/item/pen/blue + +/datum/gear/paperwork/graypen + display_name = "Gray pen" // is this not a pencil + path = /obj/item/pen/gray + +/datum/gear/paperwork/multipen + display_name = "Multicolored pen" + path = /obj/item/pen/multi + +/datum/gear/paperwork/folder + display_name = "Folder" + path = /obj/item/folder + +/datum/gear/paperwork/folder/red + display_name = "Red folder" + path = /obj/item/folder/red + +/datum/gear/paperwork/folder/blue + display_name = "Blue folder" + path = /obj/item/folder/blue + +/datum/gear/paperwork/folder/white + display_name = "White folder" + path = /obj/item/folder/white + +/datum/gear/paperwork/folder/yellow + display_name = "Yellow folder" + path = /obj/item/folder/yellow diff --git a/code/modules/client/preference/loadout/loadout_hat.dm b/code/modules/client/preference/loadout/loadout_hat.dm index fcb6159270a..268f827a89b 100644 --- a/code/modules/client/preference/loadout/loadout_hat.dm +++ b/code/modules/client/preference/loadout/loadout_hat.dm @@ -31,6 +31,10 @@ path = /obj/item/clothing/head/hardhat/dblue allowed_roles = list("Chief Engineer", "Station Engineer", "Life Support Specialist") +/datum/gear/hat/warning_cone + display_name = "Warning cone" + path = /obj/item/clothing/head/cone + /datum/gear/hat/that display_name = "Top hat" path = /obj/item/clothing/head/that diff --git a/code/modules/client/preference/loadout/loadout_racial.dm b/code/modules/client/preference/loadout/loadout_racial.dm index 914ba989905..c29fb02f7d3 100644 --- a/code/modules/client/preference/loadout/loadout_racial.dm +++ b/code/modules/client/preference/loadout/loadout_racial.dm @@ -14,6 +14,8 @@ /datum/gear/racial sort_category = "Racial" main_typepath = /datum/gear/racial + tweakname = FALSE // Just to keep things identifiable, really. + tweakdesc = FALSE /datum/gear/racial/taj display_name = "Tajaran veil" @@ -61,7 +63,7 @@ display_name = "Tajaran Skills Veil" description = "A common traditional nano-fiber veil worn by many Tajaran. It is rare and offensive to see it on other races. Comes equipped with a skills HUD." path = /obj/item/clothing/glasses/hud/tajblind/skill - allowed_roles = list("Head of Personnel", "Psychiatrist") + allowed_roles = list("Head of Personnel", "Psychiatrist", "Nanotrasen Representative") /datum/gear/racial/taj/hydroponics display_name = "Tajaran Hydroponic Veil" diff --git a/code/modules/client/preference/loadout/loadout_uniform.dm b/code/modules/client/preference/loadout/loadout_uniform.dm index c7575f6b4c2..1aa9515891d 100644 --- a/code/modules/client/preference/loadout/loadout_uniform.dm +++ b/code/modules/client/preference/loadout/loadout_uniform.dm @@ -231,6 +231,10 @@ display_name = "Skirt, black" path = /obj/item/clothing/under/dress/blackskirt +/datum/gear/uniform/skirt/black_tango + display_name = "black tango dress" + path = /obj/item/clothing/under/dress/blacktango + /datum/gear/uniform/skirt/blue_tango display_name = "blue tango dress" path = /obj/item/clothing/under/dress/blacktango/blue @@ -625,6 +629,10 @@ display_name = "Shorts, grey" path = /obj/item/clothing/under/pants/shorts/grey +/datum/gear/uniform/shorts/jean + display_name = "Shorts, jean" + path = /obj/item/clothing/under/pants/shorts/jeanshorts + /datum/gear/uniform/pants main_typepath = /datum/gear/uniform/pants