|
|
|
@@ -1,18 +1,18 @@
|
|
|
|
|
#define LOADOUT_BAN_STRING "Custom loadout"
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/proc/get_contents(var/metadata)
|
|
|
|
|
/datum/gear_tweak/proc/get_contents(metadata)
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/proc/get_metadata(var/user, var/metadata)
|
|
|
|
|
/datum/gear_tweak/proc/get_metadata(user, metadata)
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/proc/get_default()
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/proc/tweak_gear_data(var/metadata, var/datum/gear_data)
|
|
|
|
|
/datum/gear_tweak/proc/tweak_gear_data(metadata, datum/gear_data)
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/proc/tweak_item(var/obj/item/I, var/metadata)
|
|
|
|
|
/datum/gear_tweak/proc/tweak_item(obj/item/I, metadata)
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
@@ -22,22 +22,22 @@
|
|
|
|
|
/datum/gear_tweak/color
|
|
|
|
|
var/list/valid_colors
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/color/New(var/list/valid_colors)
|
|
|
|
|
/datum/gear_tweak/color/New(list/valid_colors)
|
|
|
|
|
src.valid_colors = valid_colors
|
|
|
|
|
..()
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/color/get_contents(var/metadata)
|
|
|
|
|
/datum/gear_tweak/color/get_contents(metadata)
|
|
|
|
|
return "Color: <font color='[metadata]'>⬤</font>"
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/color/get_default()
|
|
|
|
|
return valid_colors ? valid_colors[1] : COLOR_GRAY
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/color/get_metadata(var/user, var/metadata, var/title = "Character Preference")
|
|
|
|
|
/datum/gear_tweak/color/get_metadata(user, metadata, title = "Character Preference")
|
|
|
|
|
if(valid_colors)
|
|
|
|
|
return tgui_input_list(user, "Choose a color.", title, valid_colors, metadata)
|
|
|
|
|
return tgui_color_picker(user, "Choose a color.", title, metadata)
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/color/tweak_item(var/obj/item/I, var/metadata)
|
|
|
|
|
/datum/gear_tweak/color/tweak_item(obj/item/I, metadata)
|
|
|
|
|
if(valid_colors && !(metadata in valid_colors))
|
|
|
|
|
return
|
|
|
|
|
if(!metadata || (metadata == "#ffffff"))
|
|
|
|
@@ -51,7 +51,7 @@ GLOBAL_DATUM_INIT(gear_tweak_free_matrix_recolor, /datum/gear_tweak/matrix_recol
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/matrix_recolor
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/matrix_recolor/get_contents(var/metadata)
|
|
|
|
|
/datum/gear_tweak/matrix_recolor/get_contents(metadata)
|
|
|
|
|
if(islist(metadata) && length(metadata))
|
|
|
|
|
return "Matrix Recolor: [english_list(metadata)]"
|
|
|
|
|
return "Matrix Recolor"
|
|
|
|
@@ -93,20 +93,20 @@ GLOBAL_DATUM_INIT(gear_tweak_free_matrix_recolor, /datum/gear_tweak/matrix_recol
|
|
|
|
|
/datum/gear_tweak/path
|
|
|
|
|
var/list/valid_paths
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/path/New(var/list/valid_paths)
|
|
|
|
|
/datum/gear_tweak/path/New(list/valid_paths)
|
|
|
|
|
src.valid_paths = valid_paths
|
|
|
|
|
..()
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/path/get_contents(var/metadata)
|
|
|
|
|
/datum/gear_tweak/path/get_contents(metadata)
|
|
|
|
|
return "Type: [metadata]"
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/path/get_default()
|
|
|
|
|
return valid_paths[1]
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/path/get_metadata(var/user, var/metadata)
|
|
|
|
|
/datum/gear_tweak/path/get_metadata(user, metadata)
|
|
|
|
|
return tgui_input_list(user, "Choose a type.", "Character Preference", valid_paths, metadata)
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/path/tweak_gear_data(var/metadata, var/datum/gear_data/gear_data)
|
|
|
|
|
/datum/gear_tweak/path/tweak_gear_data(metadata, datum/gear_data/gear_data)
|
|
|
|
|
if(!(metadata in valid_paths))
|
|
|
|
|
return
|
|
|
|
|
gear_data.path = valid_paths[metadata]
|
|
|
|
@@ -122,7 +122,7 @@ GLOBAL_DATUM_INIT(gear_tweak_free_matrix_recolor, /datum/gear_tweak/matrix_recol
|
|
|
|
|
valid_contents = args.Copy()
|
|
|
|
|
..()
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/contents/get_contents(var/metadata)
|
|
|
|
|
/datum/gear_tweak/contents/get_contents(metadata)
|
|
|
|
|
return "Contents: [english_list(metadata, and_text = ", ")]"
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/contents/get_default()
|
|
|
|
@@ -130,7 +130,7 @@ GLOBAL_DATUM_INIT(gear_tweak_free_matrix_recolor, /datum/gear_tweak/matrix_recol
|
|
|
|
|
for(var/i = 1 to valid_contents.len)
|
|
|
|
|
. += "Random"
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/contents/get_metadata(var/user, var/list/metadata)
|
|
|
|
|
/datum/gear_tweak/contents/get_metadata(user, list/metadata)
|
|
|
|
|
. = list()
|
|
|
|
|
for(var/i = metadata.len to valid_contents.len)
|
|
|
|
|
metadata += "Random"
|
|
|
|
@@ -141,7 +141,7 @@ GLOBAL_DATUM_INIT(gear_tweak_free_matrix_recolor, /datum/gear_tweak/matrix_recol
|
|
|
|
|
else
|
|
|
|
|
return metadata
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/contents/tweak_item(var/obj/item/I, var/list/metadata)
|
|
|
|
|
/datum/gear_tweak/contents/tweak_item(obj/item/I, list/metadata)
|
|
|
|
|
if(metadata.len != valid_contents.len)
|
|
|
|
|
return
|
|
|
|
|
for(var/i = 1 to valid_contents.len)
|
|
|
|
@@ -168,22 +168,22 @@ GLOBAL_DATUM_INIT(gear_tweak_free_matrix_recolor, /datum/gear_tweak/matrix_recol
|
|
|
|
|
/datum/gear_tweak/reagents
|
|
|
|
|
var/list/valid_reagents
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/reagents/New(var/list/reagents)
|
|
|
|
|
/datum/gear_tweak/reagents/New(list/reagents)
|
|
|
|
|
valid_reagents = reagents.Copy()
|
|
|
|
|
..()
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/reagents/get_contents(var/metadata)
|
|
|
|
|
/datum/gear_tweak/reagents/get_contents(metadata)
|
|
|
|
|
return "Reagents: [metadata]"
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/reagents/get_default()
|
|
|
|
|
return "Random"
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/reagents/get_metadata(var/user, var/list/metadata)
|
|
|
|
|
/datum/gear_tweak/reagents/get_metadata(user, list/metadata)
|
|
|
|
|
. = tgui_input_list(user, "Choose an entry.", "Character Preference", valid_reagents + list("Random", "None"), metadata)
|
|
|
|
|
if(!.)
|
|
|
|
|
return metadata
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/reagents/tweak_item(var/obj/item/I, var/list/metadata)
|
|
|
|
|
/datum/gear_tweak/reagents/tweak_item(obj/item/I, list/metadata)
|
|
|
|
|
if(metadata == "None")
|
|
|
|
|
return
|
|
|
|
|
if(metadata == "Random")
|
|
|
|
@@ -205,17 +205,17 @@ GLOBAL_DATUM_INIT(gear_tweak_free_name, /datum/gear_tweak/custom_name, new)
|
|
|
|
|
/datum/gear_tweak/custom_name
|
|
|
|
|
var/list/valid_custom_names
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/custom_name/New(var/list/valid_custom_names)
|
|
|
|
|
/datum/gear_tweak/custom_name/New(list/valid_custom_names)
|
|
|
|
|
src.valid_custom_names = valid_custom_names
|
|
|
|
|
..()
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/custom_name/get_contents(var/metadata)
|
|
|
|
|
/datum/gear_tweak/custom_name/get_contents(metadata)
|
|
|
|
|
return "Name: [metadata]"
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/custom_name/get_default()
|
|
|
|
|
return ""
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/custom_name/get_metadata(var/user, var/metadata)
|
|
|
|
|
/datum/gear_tweak/custom_name/get_metadata(user, metadata)
|
|
|
|
|
if(jobban_isbanned(user, LOADOUT_BAN_STRING))
|
|
|
|
|
to_chat(user, span_warning("You are banned from using custom loadout names/descriptions."))
|
|
|
|
|
return
|
|
|
|
@@ -229,7 +229,7 @@ GLOBAL_DATUM_INIT(gear_tweak_free_name, /datum/gear_tweak/custom_name, new)
|
|
|
|
|
return metadata
|
|
|
|
|
return san_input ? san_input : get_default()
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/custom_name/tweak_item(var/obj/item/I, var/metadata)
|
|
|
|
|
/datum/gear_tweak/custom_name/tweak_item(obj/item/I, metadata)
|
|
|
|
|
if(!metadata)
|
|
|
|
|
return I.name
|
|
|
|
|
I.name = metadata
|
|
|
|
@@ -242,17 +242,17 @@ GLOBAL_DATUM_INIT(gear_tweak_free_desc, /datum/gear_tweak/custom_desc, new)
|
|
|
|
|
/datum/gear_tweak/custom_desc
|
|
|
|
|
var/list/valid_custom_desc
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/custom_desc/New(var/list/valid_custom_desc)
|
|
|
|
|
/datum/gear_tweak/custom_desc/New(list/valid_custom_desc)
|
|
|
|
|
src.valid_custom_desc = valid_custom_desc
|
|
|
|
|
..()
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/custom_desc/get_contents(var/metadata)
|
|
|
|
|
/datum/gear_tweak/custom_desc/get_contents(metadata)
|
|
|
|
|
return "Description: [metadata]"
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/custom_desc/get_default()
|
|
|
|
|
return ""
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/custom_desc/get_metadata(var/user, var/metadata)
|
|
|
|
|
/datum/gear_tweak/custom_desc/get_metadata(user, metadata)
|
|
|
|
|
if(jobban_isbanned(user, LOADOUT_BAN_STRING))
|
|
|
|
|
to_chat(user, span_warning("You are banned from using custom loadout names/descriptions."))
|
|
|
|
|
return
|
|
|
|
@@ -266,7 +266,7 @@ GLOBAL_DATUM_INIT(gear_tweak_free_desc, /datum/gear_tweak/custom_desc, new)
|
|
|
|
|
return metadata
|
|
|
|
|
return san_input ? san_input : get_default()
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/custom_desc/tweak_item(var/obj/item/I, var/metadata)
|
|
|
|
|
/datum/gear_tweak/custom_desc/tweak_item(obj/item/I, metadata)
|
|
|
|
|
if(!metadata)
|
|
|
|
|
return I.desc
|
|
|
|
|
I.desc = metadata
|
|
|
|
@@ -279,13 +279,13 @@ GLOBAL_DATUM_INIT(gear_tweak_free_digestable, /datum/gear_tweak/toggle_digestabl
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/toggle_digestable
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/toggle_digestable/get_contents(var/metadata)
|
|
|
|
|
/datum/gear_tweak/toggle_digestable/get_contents(metadata)
|
|
|
|
|
return "Digestable: [metadata ? "Yes" : "No"]"
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/toggle_digestable/get_default()
|
|
|
|
|
return TRUE
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/toggle_digestable/get_metadata(var/user, var/metadata)
|
|
|
|
|
/datum/gear_tweak/toggle_digestable/get_metadata(user, metadata)
|
|
|
|
|
var/san_input = tgui_alert(user, "Turn digestable on or off", "Toggle Digestable", list("Enable", "Disable", "Cancel"))
|
|
|
|
|
switch(san_input)
|
|
|
|
|
if("Enable")
|
|
|
|
@@ -294,7 +294,7 @@ GLOBAL_DATUM_INIT(gear_tweak_free_digestable, /datum/gear_tweak/toggle_digestabl
|
|
|
|
|
return FALSE
|
|
|
|
|
return metadata
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/toggle_digestable/tweak_item(var/obj/item/I, var/metadata)
|
|
|
|
|
/datum/gear_tweak/toggle_digestable/tweak_item(obj/item/I, metadata)
|
|
|
|
|
if(isnull(metadata))
|
|
|
|
|
return I.digestable
|
|
|
|
|
I.digestable = metadata
|
|
|
|
@@ -310,7 +310,7 @@ GLOBAL_DATUM_INIT(gear_tweak_free_digestable, /datum/gear_tweak/toggle_digestabl
|
|
|
|
|
var/list/ValidCardSlots = list(null, /obj/item/computer_hardware/card_slot)
|
|
|
|
|
var/list/ValidTeslaLinks = list(null, /obj/item/computer_hardware/tesla_link)
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/tablet/get_contents(var/list/metadata)
|
|
|
|
|
/datum/gear_tweak/tablet/get_contents(list/metadata)
|
|
|
|
|
var/list/names = list()
|
|
|
|
|
var/obj/O = ValidProcessors[metadata[1]]
|
|
|
|
|
if(O)
|
|
|
|
@@ -335,7 +335,7 @@ GLOBAL_DATUM_INIT(gear_tweak_free_digestable, /datum/gear_tweak/toggle_digestabl
|
|
|
|
|
names += initial(O.name)
|
|
|
|
|
return "[english_list(names, and_text = ", ")]"
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/tablet/get_metadata(var/user, var/metadata)
|
|
|
|
|
/datum/gear_tweak/tablet/get_metadata(user, metadata)
|
|
|
|
|
. = list()
|
|
|
|
|
|
|
|
|
|
var/list/names = list()
|
|
|
|
@@ -425,7 +425,7 @@ GLOBAL_DATUM_INIT(gear_tweak_free_digestable, /datum/gear_tweak/toggle_digestabl
|
|
|
|
|
/datum/gear_tweak/tablet/get_default()
|
|
|
|
|
return list(1, 1, 1, 1, 1, 1, 1)
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/tablet/tweak_item(var/obj/item/modular_computer/tablet/I, var/list/metadata)
|
|
|
|
|
/datum/gear_tweak/tablet/tweak_item(obj/item/modular_computer/tablet/I, list/metadata)
|
|
|
|
|
if(ValidProcessors[metadata[1]])
|
|
|
|
|
var/t = ValidProcessors[metadata[1]]
|
|
|
|
|
I.processor_unit = new t(I)
|
|
|
|
@@ -459,7 +459,7 @@ GLOBAL_DATUM_INIT(gear_tweak_free_digestable, /datum/gear_tweak/toggle_digestabl
|
|
|
|
|
var/list/ValidCardSlots = list(null, /obj/item/computer_hardware/card_slot)
|
|
|
|
|
var/list/ValidTeslaLinks = list(null, /obj/item/computer_hardware/tesla_link)
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/laptop/get_contents(var/list/metadata)
|
|
|
|
|
/datum/gear_tweak/laptop/get_contents(list/metadata)
|
|
|
|
|
var/list/names = list()
|
|
|
|
|
var/obj/O = ValidProcessors[metadata[1]]
|
|
|
|
|
if(O)
|
|
|
|
@@ -484,7 +484,7 @@ GLOBAL_DATUM_INIT(gear_tweak_free_digestable, /datum/gear_tweak/toggle_digestabl
|
|
|
|
|
names += initial(O.name)
|
|
|
|
|
return "[english_list(names, and_text = ", ")]"
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/laptop/get_metadata(var/user, var/metadata)
|
|
|
|
|
/datum/gear_tweak/laptop/get_metadata(user, metadata)
|
|
|
|
|
. = list()
|
|
|
|
|
|
|
|
|
|
var/list/names = list()
|
|
|
|
@@ -574,7 +574,7 @@ GLOBAL_DATUM_INIT(gear_tweak_free_digestable, /datum/gear_tweak/toggle_digestabl
|
|
|
|
|
/datum/gear_tweak/laptop/get_default()
|
|
|
|
|
return list(1, 1, 1, 1, 1, 1, 1)
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/laptop/tweak_item(var/obj/item/modular_computer/laptop/preset/I, var/list/metadata)
|
|
|
|
|
/datum/gear_tweak/laptop/tweak_item(obj/item/modular_computer/laptop/preset/I, list/metadata)
|
|
|
|
|
if(ValidProcessors[metadata[1]])
|
|
|
|
|
var/t = ValidProcessors[metadata[1]]
|
|
|
|
|
I.processor_unit = new t(I)
|
|
|
|
@@ -630,32 +630,32 @@ GLOBAL_DATUM_INIT(gear_tweak_free_digestable, /datum/gear_tweak/toggle_digestabl
|
|
|
|
|
/datum/gear_tweak/implant_location/get_default()
|
|
|
|
|
return bodypart_names_to_tokens[1]
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/implant_location/tweak_item(var/obj/item/implant/I, var/metadata)
|
|
|
|
|
/datum/gear_tweak/implant_location/tweak_item(obj/item/implant/I, metadata)
|
|
|
|
|
if(istype(I))
|
|
|
|
|
I.initialize_loc = bodypart_names_to_tokens[metadata] || BP_TORSO
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/implant_location/get_contents(var/metadata)
|
|
|
|
|
/datum/gear_tweak/implant_location/get_contents(metadata)
|
|
|
|
|
return "Location: [metadata]"
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/implant_location/get_metadata(var/user, var/metadata)
|
|
|
|
|
/datum/gear_tweak/implant_location/get_metadata(user, metadata)
|
|
|
|
|
var/list_input = tgui_input_list(user, "Select a bodypart for the implant to be implanted inside.", "Implant Location", bodypart_names_to_tokens || bodypart_tokens_to_names[BP_TORSO])
|
|
|
|
|
if(isnull(list_input))
|
|
|
|
|
return metadata
|
|
|
|
|
return list_input
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/collar_tag/get_contents(var/metadata)
|
|
|
|
|
/datum/gear_tweak/collar_tag/get_contents(metadata)
|
|
|
|
|
return "Tag: [metadata]"
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/collar_tag/get_default()
|
|
|
|
|
return ""
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/collar_tag/get_metadata(var/user, var/metadata)
|
|
|
|
|
/datum/gear_tweak/collar_tag/get_metadata(user, metadata)
|
|
|
|
|
var/text_input = tgui_input_text(user, "Choose the tag text.", "Character Preference", metadata, MAX_NAME_LEN)
|
|
|
|
|
if(isnull(text_input))
|
|
|
|
|
return metadata
|
|
|
|
|
return text_input
|
|
|
|
|
|
|
|
|
|
/datum/gear_tweak/collar_tag/tweak_item(var/obj/item/clothing/accessory/collar/C, var/metadata)
|
|
|
|
|
/datum/gear_tweak/collar_tag/tweak_item(obj/item/clothing/accessory/collar/C, metadata)
|
|
|
|
|
if(metadata == "")
|
|
|
|
|
return ..()
|
|
|
|
|
else
|
|
|
|
|