The One Where I Port Modals

This commit is contained in:
Chompstation Bot
2021-06-30 19:29:34 +00:00
parent 2457a62edd
commit b6e1989a01
468 changed files with 10519 additions and 1808 deletions

View File

@@ -50,7 +50,7 @@ var/global/list/uplink_locations = list("PDA", "Headset", "None")
return TOPIC_REFRESH
if(href_list["antagfaction"])
var/choice = input(user, "Please choose an antagonistic faction to work for.", "Character Preference", pref.antag_faction) as null|anything in antag_faction_choices + list("None","Other")
var/choice = tgui_input_list(user, "Please choose an antagonistic faction to work for.", "Character Preference", antag_faction_choices + list("None","Other"), pref.antag_faction)
if(!choice || !CanUseTopic(user))
return TOPIC_NOACTION
if(choice == "Other")
@@ -62,7 +62,7 @@ var/global/list/uplink_locations = list("PDA", "Headset", "None")
return TOPIC_REFRESH
if(href_list["antagvis"])
var/choice = input(user, "Please choose an antagonistic visibility level.", "Character Preference", pref.antag_vis) as null|anything in antag_visiblity_choices
var/choice = tgui_input_list(user, "Please choose an antagonistic visibility level.", "Character Preference", antag_visiblity_choices, pref.antag_vis)
if(!choice || !CanUseTopic(user))
return TOPIC_NOACTION
else

View File

@@ -111,13 +111,13 @@
return TOPIC_NOACTION
else if(href_list["bio_gender"])
var/new_gender = input(user, "Choose your character's biological sex:", "Character Preference", pref.biological_gender) as null|anything in get_genders()
var/new_gender = tgui_input_list(user, "Choose your character's biological sex:", "Character Preference", get_genders(), pref.biological_gender)
if(new_gender && CanUseTopic(user))
pref.set_biological_gender(new_gender)
return TOPIC_REFRESH_UPDATE_PREVIEW
else if(href_list["id_gender"])
var/new_gender = input(user, "Choose your character's pronouns:", "Character Preference", pref.identifying_gender) as null|anything in all_genders_define_list
var/new_gender = tgui_input_list(user, "Choose your character's pronouns:", "Character Preference", all_genders_define_list, pref.identifying_gender)
if(new_gender && CanUseTopic(user))
pref.identifying_gender = new_gender
return TOPIC_REFRESH
@@ -134,7 +134,7 @@
var/list/spawnkeys = list()
for(var/spawntype in spawntypes)
spawnkeys += spawntype
var/choice = input(user, "Where would you like to spawn when late-joining?") as null|anything in spawnkeys
var/choice = tgui_input_list(user, "Where would you like to spawn when late-joining?", "Late-Join Choice", spawnkeys)
if(!choice || !spawntypes[choice] || !CanUseTopic(user)) return TOPIC_NOACTION
pref.spawnpoint = choice
return TOPIC_REFRESH

View File

@@ -69,8 +69,16 @@
return TOPIC_REFRESH
else if(href_list["add_language"])
var/datum/species/S = GLOB.all_species[pref.species]
<<<<<<< HEAD
if(pref.alternate_languages.len >= pref.numlanguage()) //CHOMPEdit
alert(user, "You have already selected the maximum number of alternate languages for this species!")
||||||| parent of f9e9aafd1d... Merge pull request #10756 from VOREStation/Arokha/fixes2
if(pref.alternate_languages.len >= S.num_alternate_languages)
alert(user, "You have already selected the maximum number of alternate languages for this species!")
=======
if(pref.alternate_languages.len >= S.num_alternate_languages)
tgui_alert_async(user, "You have already selected the maximum number of alternate languages for this species!")
>>>>>>> f9e9aafd1d... Merge pull request #10756 from VOREStation/Arokha/fixes2
else
var/list/available_languages = S.secondary_langs.Copy()
for(var/L in GLOB.all_languages)
@@ -84,10 +92,18 @@
available_languages -= pref.alternate_languages
if(!available_languages.len)
alert(user, "There are no additional languages available to select.")
tgui_alert_async(user, "There are no additional languages available to select.")
else
<<<<<<< HEAD
var/new_lang = input(user, "Select an additional language", "Character Generation", null) as null|anything in available_languages
if(new_lang && pref.alternate_languages.len < pref.numlanguage()) //CHOMPEdit
||||||| parent of f9e9aafd1d... Merge pull request #10756 from VOREStation/Arokha/fixes2
var/new_lang = input(user, "Select an additional language", "Character Generation", null) as null|anything in available_languages
if(new_lang && pref.alternate_languages.len < S.num_alternate_languages)
=======
var/new_lang = tgui_input_list(user, "Select an additional language", "Character Generation", available_languages)
if(new_lang && pref.alternate_languages.len < S.num_alternate_languages)
>>>>>>> f9e9aafd1d... Merge pull request #10756 from VOREStation/Arokha/fixes2
pref.alternate_languages |= new_lang
return TOPIC_REFRESH
@@ -95,16 +111,16 @@
var/char
var/keys[0]
do
char = input("Enter a single special character.\nYou may re-select the same characters.\nThe following characters are already in use by radio: ; : .\nThe following characters are already in use by special say commands: ! * ^", "Enter Character - [3 - keys.len] remaining") as null|text
char = input(usr, "Enter a single special character.\nYou may re-select the same characters.\nThe following characters are already in use by radio: ; : .\nThe following characters are already in use by special say commands: ! * ^", "Enter Character - [3 - keys.len] remaining") as null|text
if(char)
if(length(char) > 1)
alert(user, "Only single characters allowed.", "Error", "Ok")
tgui_alert_async(user, "Only single characters allowed.", "Error")
else if(char in list(";", ":", "."))
alert(user, "Radio character. Rejected.", "Error", "Ok")
tgui_alert_async(user, "Radio character. Rejected.", "Error")
else if(char in list("!","*","^","-"))
alert(user, "Say character. Rejected.", "Error", "Ok")
tgui_alert_async(user, "Say character. Rejected.", "Error")
else if(contains_az09(char))
alert(user, "Non-special character. Rejected.", "Error", "Ok")
tgui_alert_async(user, "Non-special character. Rejected.", "Error")
else
keys.Add(char)
while(char && keys.len < 3)

View File

@@ -653,20 +653,20 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O
var/desc_id = href_list["change_descriptor"]
if(pref.body_descriptors[desc_id])
var/datum/mob_descriptor/descriptor = mob_species.descriptors[desc_id]
var/choice = input("Please select a descriptor.", "Descriptor") as null|anything in descriptor.chargen_value_descriptors
var/choice = tgui_input_list(usr, "Please select a descriptor.", "Descriptor", descriptor.chargen_value_descriptors)
if(choice && mob_species.descriptors[desc_id]) // Check in case they sneakily changed species.
pref.body_descriptors[desc_id] = descriptor.chargen_value_descriptors[choice]
return TOPIC_REFRESH
else if(href_list["blood_type"])
var/new_b_type = input(user, "Choose your character's blood-type:", "Character Preference") as null|anything in valid_bloodtypes
var/new_b_type = tgui_input_list(user, "Choose your character's blood-type:", "Character Preference", valid_bloodtypes)
if(new_b_type && CanUseTopic(user))
pref.b_type = new_b_type
return TOPIC_REFRESH
else if(href_list["show_species"])
// Actual whitelist checks are handled elsewhere, this is just for accessing the preview window.
var/choice = input("Which species would you like to look at?") as null|anything in GLOB.playable_species
var/choice = tgui_input_list(usr, "Which species would you like to look at?", "Species Choice", GLOB.playable_species)
if(!choice) return
pref.species_preview = choice
SetSpecies(preference_mob())
@@ -765,7 +765,7 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O
else if(href_list["hair_style"])
var/list/valid_hairstyles = pref.get_valid_hairstyles()
var/new_h_style = input(user, "Choose your character's hair style:", "Character Preference", pref.h_style) as null|anything in valid_hairstyles
var/new_h_style = tgui_input_list(user, "Choose your character's hair style:", "Character Preference", valid_hairstyles, pref.h_style)
if(new_h_style && CanUseTopic(user))
pref.h_style = new_h_style
return TOPIC_REFRESH_UPDATE_PREVIEW
@@ -781,7 +781,7 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O
else if(href_list["grad_style"])
var/list/valid_gradients = GLOB.hair_gradients
var/new_grad_style = input(user, "Choose a color pattern for your hair:", "Character Preference", pref.grad_style) as null|anything in valid_gradients
var/new_grad_style = tgui_input_list(user, "Choose a color pattern for your hair:", "Character Preference", valid_gradients, pref.grad_style)
if(new_grad_style && CanUseTopic(user))
pref.grad_style = new_grad_style
return TOPIC_REFRESH_UPDATE_PREVIEW
@@ -849,7 +849,7 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O
else if(href_list["facial_style"])
var/list/valid_facialhairstyles = pref.get_valid_facialhairstyles()
var/new_f_style = input(user, "Choose your character's facial-hair style:", "Character Preference", pref.f_style) as null|anything in valid_facialhairstyles
var/new_f_style = tgui_input_list(user, "Choose your character's facial-hair style:", "Character Preference", valid_facialhairstyles, pref.f_style)
if(new_f_style && has_flag(mob_species, HAS_HAIR_COLOR) && CanUseTopic(user))
pref.f_style = new_f_style
return TOPIC_REFRESH_UPDATE_PREVIEW
@@ -886,7 +886,7 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O
else if(!(pref.species in S.species_allowed))
usable_markings -= M
*/ //VOREStation Removal End
var/new_marking = input(user, "Choose a body marking:", "Character Preference") as null|anything in usable_markings
var/new_marking = tgui_input_list(user, "Choose a body marking:", "Character Preference", usable_markings)
if(new_marking && CanUseTopic(user))
pref.body_markings[new_marking] = "#000000" //New markings start black
return TOPIC_REFRESH_UPDATE_PREVIEW
@@ -916,7 +916,7 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O
if(start != 1)
move_locs -= pref.body_markings[start-1]
var/inject_after = input(user, "Move [M] ahead of...", "Character Preference") as null|anything in move_locs //Move ahead of any marking that isn't the current or previous one.
var/inject_after = tgui_input_list(user, "Move [M] ahead of...", "Character Preference", move_locs) //Move ahead of any marking that isn't the current or previous one.
var/newpos = pref.body_markings.Find(inject_after)
if(newpos)
moveElement(pref.body_markings, start, newpos+1)
@@ -949,7 +949,7 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O
else if(pref.organ_data[BP_TORSO] == "cyborg")
limb_selection_list |= "Head"
var/organ_tag = input(user, "Which limb do you want to change?") as null|anything in limb_selection_list
var/organ_tag = tgui_input_list(user, "Which limb do you want to change?", "Limb Choice", limb_selection_list)
if(!organ_tag || !CanUseTopic(user)) return TOPIC_NOACTION
@@ -993,7 +993,7 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O
third_limb = BP_GROIN
choice_options = list("Normal","Prosthesis")
var/new_state = input(user, "What state do you wish the limb to be in?") as null|anything in choice_options
var/new_state = tgui_input_list(user, "What state do you wish the limb to be in?", "State Choice", choice_options)
if(!new_state || !CanUseTopic(user)) return TOPIC_NOACTION
switch(new_state)
@@ -1036,7 +1036,7 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O
usable_manufacturers[company] = M
if(!usable_manufacturers.len)
return
var/choice = input(user, "Which manufacturer do you wish to use for this limb?") as null|anything in usable_manufacturers
var/choice = tgui_input_list(user, "Which manufacturer do you wish to use for this limb?", "Manufacturer Choice", usable_manufacturers)
if(!choice)
return
@@ -1064,7 +1064,7 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O
else if(href_list["organs"])
var/organ_name = input(user, "Which internal function do you want to change?") as null|anything in list("Heart", "Eyes","Larynx", "Lungs", "Liver", "Kidneys", "Spleen", "Intestines", "Stomach", "Brain")
var/organ_name = tgui_input_list(user, "Which internal function do you want to change?", "Internal Organ", list("Heart", "Eyes", "Larynx", "Lungs", "Liver", "Kidneys", "Spleen", "Intestines", "Stomach", "Brain"))
if(!organ_name) return
var/organ = null
@@ -1110,7 +1110,7 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O
organ_choices += "Assisted"
organ_choices += "Mechanical"
var/new_state = input(user, "What state do you wish the organ to be in?") as null|anything in organ_choices
var/new_state = tgui_input_list(user, "What state do you wish the organ to be in?", "State Choice", organ_choices)
if(!new_state) return
switch(new_state)
@@ -1191,7 +1191,7 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O
//YW Add End
else if(href_list["ear_style"])
var/new_ear_style = input(user, "Select an ear style for this character:", "Character Preference", pref.ear_style) as null|anything in pref.get_available_styles(global.ear_styles_list)
var/new_ear_style = tgui_input_list(user, "Select an ear style for this character:", "Character Preference", pref.get_available_styles(global.ear_styles_list), pref.ear_style)
if(new_ear_style)
pref.ear_style = new_ear_style
@@ -1225,7 +1225,7 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O
return TOPIC_REFRESH_UPDATE_PREVIEW
else if(href_list["tail_style"])
var/new_tail_style = input(user, "Select a tail style for this character:", "Character Preference", pref.tail_style) as null|anything in pref.get_available_styles(global.tail_styles_list)
var/new_tail_style = tgui_input_list(user, "Select a tail style for this character:", "Character Preference", pref.get_available_styles(global.tail_styles_list), pref.tail_style)
if(new_tail_style)
pref.tail_style = new_tail_style
return TOPIC_REFRESH_UPDATE_PREVIEW
@@ -1258,7 +1258,7 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O
return TOPIC_REFRESH_UPDATE_PREVIEW
else if(href_list["wing_style"])
var/new_wing_style = input(user, "Select a wing style for this character:", "Character Preference", pref.wing_style) as null|anything in pref.get_available_styles(global.wing_styles_list)
var/new_wing_style = tgui_input_list(user, "Select a wing style for this character:", "Character Preference", pref.get_available_styles(global.wing_styles_list), pref.wing_style)
if(new_wing_style)
pref.wing_style = new_wing_style

View File

@@ -115,13 +115,13 @@
/datum/category_item/player_setup_item/general/equipment/OnTopic(var/href,var/list/href_list, var/mob/user)
if(href_list["change_backpack"])
var/new_backbag = input(user, "Choose your character's style of bag:", "Character Preference", backbaglist[pref.backbag]) as null|anything in backbaglist
var/new_backbag = tgui_input_list(user, "Choose your character's style of bag:", "Character Preference", backbaglist, backbaglist[pref.backbag])
if(!isnull(new_backbag) && CanUseTopic(user))
pref.backbag = backbaglist.Find(new_backbag)
return TOPIC_REFRESH_UPDATE_PREVIEW
else if(href_list["change_pda"])
var/new_pdachoice = input(user, "Choose your character's style of PDA:", "Character Preference", pdachoicelist[pref.pdachoice]) as null|anything in pdachoicelist
var/new_pdachoice = tgui_input_list(user, "Choose your character's style of PDA:", "Character Preference", pdachoicelist, pdachoicelist[pref.pdachoice])
if(!isnull(new_pdachoice) && CanUseTopic(user))
pref.pdachoice = pdachoicelist.Find(new_pdachoice)
return TOPIC_REFRESH
@@ -130,7 +130,7 @@
var/datum/category_group/underwear/UWC = global_underwear.categories_by_name[href_list["change_underwear"]]
if(!UWC)
return
var/datum/category_item/underwear/selected_underwear = input(user, "Choose underwear:", "Character Preference", pref.all_underwear[UWC.name]) as null|anything in UWC.items
var/datum/category_item/underwear/selected_underwear = tgui_input_list(user, "Choose underwear:", "Character Preference", UWC.items, pref.all_underwear[UWC.name])
if(selected_underwear && CanUseTopic(user))
pref.all_underwear[UWC.name] = selected_underwear.name
return TOPIC_REFRESH_UPDATE_PREVIEW

View File

@@ -61,13 +61,13 @@
/datum/category_item/player_setup_item/general/background/OnTopic(var/href,var/list/href_list, var/mob/user)
if(href_list["econ_status"])
var/new_class = input(user, "Choose your economic status. This will affect the amount of money you will start with.", "Character Preference", pref.economic_status) as null|anything in ECONOMIC_CLASS
var/new_class = tgui_input_list(user, "Choose your economic status. This will affect the amount of money you will start with.", "Character Preference", ECONOMIC_CLASS, pref.economic_status)
if(new_class && CanUseTopic(user))
pref.economic_status = new_class
return TOPIC_REFRESH
else if(href_list["home_system"])
var/choice = input(user, "Please choose a home system.", "Character Preference", pref.home_system) as null|anything in home_system_choices + list("Unset","Other")
var/choice = tgui_input_list(user, "Please choose a home system.", "Character Preference", home_system_choices + list("Unset","Other"), pref.home_system)
if(!choice || !CanUseTopic(user))
return TOPIC_NOACTION
if(choice == "Other")
@@ -79,7 +79,7 @@
return TOPIC_REFRESH
else if(href_list["citizenship"])
var/choice = input(user, "Please choose your current citizenship.", "Character Preference", pref.citizenship) as null|anything in citizenship_choices + list("None","Other")
var/choice = tgui_input_list(user, "Please choose your current citizenship.", "Character Preference", citizenship_choices + list("None","Other"), pref.citizenship)
if(!choice || !CanUseTopic(user))
return TOPIC_NOACTION
if(choice == "Other")
@@ -91,7 +91,7 @@
return TOPIC_REFRESH
else if(href_list["faction"])
var/choice = input(user, "Please choose a faction to work for.", "Character Preference", pref.faction) as null|anything in faction_choices + list("None","Other")
var/choice = tgui_input_list(user, "Please choose a faction to work for.", "Character Preference", faction_choices + list("None","Other"), pref.faction)
if(!choice || !CanUseTopic(user))
return TOPIC_NOACTION
if(choice == "Other")
@@ -103,7 +103,7 @@
return TOPIC_REFRESH
else if(href_list["religion"])
var/choice = input(user, "Please choose a religion.", "Character Preference", pref.religion) as null|anything in religion_choices + list("None","Other")
var/choice = tgui_input_list(user, "Please choose a religion.", "Character Preference", religion_choices + list("None","Other"), pref.religion)
if(!choice || !CanUseTopic(user))
return TOPIC_NOACTION
if(choice == "Other")

View File

@@ -58,7 +58,7 @@
/datum/category_item/player_setup_item/player_global/ui/OnTopic(var/href,var/list/href_list, var/mob/user)
if(href_list["select_style"])
var/UI_style_new = input(user, "Choose UI style.", "Character Preference", pref.UI_style) as null|anything in all_ui_styles
var/UI_style_new = tgui_input_list(user, "Choose UI style.", "Character Preference", all_ui_styles, pref.UI_style)
if(!UI_style_new || !CanUseTopic(user)) return TOPIC_NOACTION
pref.UI_style = UI_style_new
return TOPIC_REFRESH
@@ -82,7 +82,7 @@
return TOPIC_REFRESH
else if(href_list["select_tooltip_style"])
var/tooltip_style_new = input(user, "Choose tooltip style.", "Global Preference", pref.tooltipstyle) as null|anything in all_tooltip_styles
var/tooltip_style_new = tgui_input_list(user, "Choose tooltip style.", "Global Preference", all_tooltip_styles, pref.tooltipstyle)
if(!tooltip_style_new || !CanUseTopic(user)) return TOPIC_NOACTION
pref.tooltipstyle = tooltip_style_new
return TOPIC_REFRESH

View File

@@ -34,7 +34,7 @@
/datum/gear_tweak/color/get_metadata(var/user, var/metadata, var/title = "Character Preference")
if(valid_colors)
return input(user, "Choose a color.", title, metadata) as null|anything in valid_colors
return tgui_input_list(user, "Choose a color.", title, valid_colors, metadata)
return input(user, "Choose a color.", title, metadata) as color|null
/datum/gear_tweak/color/tweak_item(var/obj/item/I, var/metadata)
@@ -60,7 +60,7 @@
return valid_paths[1]
/datum/gear_tweak/path/get_metadata(var/user, var/metadata)
return input(user, "Choose a type.", "Character Preference", metadata) as null|anything in valid_paths
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)
if(!(metadata in valid_paths))
@@ -91,7 +91,7 @@
for(var/i = metadata.len to valid_contents.len)
metadata += "Random"
for(var/i = 1 to valid_contents.len)
var/entry = input(user, "Choose an entry.", "Character Preference", metadata[i]) as null|anything in (valid_contents[i] + list("Random", "None"))
var/entry = tgui_input_list(user, "Choose an entry.", "Character Preference", valid_contents[i] + list("Random", "None"), metadata[i])
if(entry)
. += entry
else
@@ -130,7 +130,7 @@
return "Random"
/datum/gear_tweak/reagents/get_metadata(var/user, var/list/metadata)
. = input(user, "Choose an entry.", "Character Preference", metadata) as null|anything in (valid_reagents + list("Random", "None"))
. = tgui_input_list(user, "Choose an entry.", "Character Preference", valid_reagents + list("Random", "None"), metadata)
if(!.)
return metadata
@@ -171,7 +171,7 @@ var/datum/gear_tweak/custom_name/gear_tweak_free_name = new()
to_chat(user, SPAN_WARNING("You are banned from using custom loadout names/descriptions."))
return
if(valid_custom_names)
return input(user, "Choose an item name.", "Character Preference", metadata) as null|anything in valid_custom_names
return tgui_input_list(user, "Choose an item name.", "Character Preference", valid_custom_names, metadata)
return sanitize(input(user, "Choose the item's name. Leave it blank to use the default name.", "Item Name", metadata) as text|null, MAX_LNAME_LEN, extra = 0)
/datum/gear_tweak/custom_name/tweak_item(var/obj/item/I, var/metadata)
@@ -202,7 +202,7 @@ var/datum/gear_tweak/custom_desc/gear_tweak_free_desc = new()
to_chat(user, SPAN_WARNING("You are banned from using custom loadout names/descriptions."))
return
if(valid_custom_desc)
return input(user, "Choose an item description.", "Character Preference", metadata) as null|anything in valid_custom_desc
return tgui_input_list(user, "Choose an item description.", "Character Preference",valid_custom_desc, metadata)
return sanitize(input(user, "Choose the item's description. Leave it blank to use the default description.", "Item Description", metadata) as message|null, extra = 0)
/datum/gear_tweak/custom_desc/tweak_item(var/obj/item/I, var/metadata)
@@ -258,7 +258,7 @@ var/datum/gear_tweak/custom_desc/gear_tweak_free_desc = new()
else
names["None"] = counter++
var/entry = input(user, "Choose a processor.", "Character Preference") in names
var/entry = tgui_input_list(user, "Choose a processor:", "Tablet Gear", names)
. += names[entry]
names = list()
@@ -270,7 +270,7 @@ var/datum/gear_tweak/custom_desc/gear_tweak_free_desc = new()
else
names["None"] = counter++
entry = input(user, "Choose a battery.", "Character Preference") in names
entry = tgui_input_list(user, "Choose a battery:", "Tablet Gear", names)
. += names[entry]
names = list()
@@ -282,7 +282,7 @@ var/datum/gear_tweak/custom_desc/gear_tweak_free_desc = new()
else
names["None"] = counter++
entry = input(user, "Choose a hard drive.", "Character Preference") in names
entry = tgui_input_list(user, "Choose a hard drive:", "Tablet Gear", names)
. += names[entry]
names = list()
@@ -294,7 +294,7 @@ var/datum/gear_tweak/custom_desc/gear_tweak_free_desc = new()
else
names["None"] = counter++
entry = input(user, "Choose a network card.", "Character Preference") in names
entry = tgui_input_list(user, "Choose a network card:", "Tablet Gear", names)
. += names[entry]
names = list()
@@ -306,7 +306,7 @@ var/datum/gear_tweak/custom_desc/gear_tweak_free_desc = new()
else
names["None"] = counter++
entry = input(user, "Choose a nanoprinter.", "Character Preference") in names
entry = tgui_input_list(user, "Choose a nanoprinter:", "Tablet Gear", names)
. += names[entry]
names = list()
@@ -318,7 +318,7 @@ var/datum/gear_tweak/custom_desc/gear_tweak_free_desc = new()
else
names["None"] = counter++
entry = input(user, "Choose a card slot.", "Character Preference") in names
entry = tgui_input_list(user, "Choose a card slot:", "Tablet Gear", names)
. += names[entry]
names = list()
@@ -330,7 +330,7 @@ var/datum/gear_tweak/custom_desc/gear_tweak_free_desc = new()
else
names["None"] = counter++
entry = input(user, "Choose a tesla link.", "Character Preference") in names
entry = tgui_input_list(user, "Choose a tesla link:", "Tablet Gear", names)
. += names[entry]
/datum/gear_tweak/tablet/get_default()
@@ -407,7 +407,7 @@ var/datum/gear_tweak/custom_desc/gear_tweak_free_desc = new()
else
names["None"] = counter++
var/entry = input(user, "Choose a processor.", "Character Preference") in names
var/entry = tgui_input_list(user, "Choose a processor:", "Laptop Gear", names)
. += names[entry]
names = list()
@@ -419,7 +419,7 @@ var/datum/gear_tweak/custom_desc/gear_tweak_free_desc = new()
else
names["None"] = counter++
entry = input(user, "Choose a battery.", "Character Preference") in names
entry = tgui_input_list(user, "Choose a battery:", "Laptop Gear", names)
. += names[entry]
names = list()
@@ -431,7 +431,7 @@ var/datum/gear_tweak/custom_desc/gear_tweak_free_desc = new()
else
names["None"] = counter++
entry = input(user, "Choose a hard drive.", "Character Preference") in names
entry = tgui_input_list(user, "Choose a hard drive:", "Laptop Gear", names)
. += names[entry]
names = list()
@@ -443,7 +443,7 @@ var/datum/gear_tweak/custom_desc/gear_tweak_free_desc = new()
else
names["None"] = counter++
entry = input(user, "Choose a network card.", "Character Preference") in names
entry = tgui_input_list(user, "Choose a network card:", "Laptop Gear", names)
. += names[entry]
names = list()
@@ -455,7 +455,7 @@ var/datum/gear_tweak/custom_desc/gear_tweak_free_desc = new()
else
names["None"] = counter++
entry = input(user, "Choose a nanoprinter.", "Character Preference") in names
entry = tgui_input_list(user, "Choose a nanoprinter:", "Laptop Gear", names)
. += names[entry]
names = list()
@@ -467,7 +467,7 @@ var/datum/gear_tweak/custom_desc/gear_tweak_free_desc = new()
else
names["None"] = counter++
entry = input(user, "Choose a card slot.", "Character Preference") in names
entry = tgui_input_list(user, "Choose a card slot:", "Laptop Gear", names)
. += names[entry]
names = list()
@@ -479,7 +479,7 @@ var/datum/gear_tweak/custom_desc/gear_tweak_free_desc = new()
else
names["None"] = counter++
entry = input(user, "Choose a tesla link.", "Character Preference") in names
entry = tgui_input_list(user, "Choose a tesla link:", "Laptop Gear", names)
. += names[entry]
/datum/gear_tweak/laptop/get_default()
@@ -549,6 +549,6 @@ var/datum/gear_tweak/custom_desc/gear_tweak_free_desc = new()
return "Location: [metadata]"
/datum/gear_tweak/implant_location/get_metadata(var/user, var/metadata)
return (input(user, "Select a bodypart for the implant to be implanted inside.", "Implant Location", metadata || "upper body") as null|anything in bodypart_names_to_tokens) || bodypart_tokens_to_names[BP_TORSO]
return (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]))
#undef LOADOUT_BAN_STRING

View File

@@ -237,7 +237,7 @@
var/datum/job/job = locate(href_list["select_alt_title"])
if (job)
var/choices = list(job.title) + job.alt_titles
var/choice = input("Choose a title for [job.title].", "Choose Title", pref.GetPlayerAltTitle(job)) as anything in choices|null
var/choice = tgui_input_list(usr, "Choose a title for [job.title].", "Choose Title", choices, pref.GetPlayerAltTitle(job))
if(choice && CanUseTopic(user))
SetPlayerAltTitle(job, choice)
return (pref.equip_preview_mob ? TOPIC_REFRESH_UPDATE_PREVIEW : TOPIC_REFRESH)

View File

@@ -68,7 +68,7 @@
return TOPIC_REFRESH
else if(href_list["preconfigured"])
var/selected = input(user, "Select a skillset", "Skillset") as null|anything in SKILL_PRE
var/selected = tgui_input_list(user, "Select a skillset", "Skillset", SKILL_PRE)
if(!selected || !CanUseTopic(user)) return
pref.ZeroSkills(1)

View File

@@ -40,7 +40,7 @@
var/channel = href_list["change_volume"]
if(!(channel in pref.volume_channels))
pref.volume_channels["[channel]"] = 1
var/value = input("Choose your volume for [channel] (0-200%)", "[channel] volume", (pref.volume_channels[channel] * 100))
var/value = input(usr, "Choose your volume for [channel] (0-200%)", "[channel] volume", (pref.volume_channels[channel] * 100))
if(isnum(value))
value = CLAMP(value, 0, 200)
pref.volume_channels["[channel]"] = (value / 100)

View File

@@ -33,7 +33,7 @@
/datum/category_item/player_setup_item/volume_sliders/media/OnTopic(var/href, var/list/href_list, var/mob/user)
if(href_list["change_media_volume"])
if(CanUseTopic(user))
var/value = input("Choose your Jukebox volume (0-100%)", "Jukebox volume", round(pref.media_volume * 100))
var/value = input(usr, "Choose your Jukebox volume (0-100%)", "Jukebox volume", round(pref.media_volume * 100))
if(isnum(value))
value = CLAMP(value, 0, 100)
pref.media_volume = value/100.0

View File

@@ -78,7 +78,7 @@
swear to god I will find you and I will punch you for not reading these directions!\n\
([WEIGHT_MIN]-[WEIGHT_MAX])", "Character Preference") as num|null
if(new_weight)
var/unit_of_measurement = alert(user, "Is that number in pounds (lb) or kilograms (kg)?", "Confirmation", "Pounds", "Kilograms")
var/unit_of_measurement = tgui_alert(user, "Is that number in pounds (lb) or kilograms (kg)?", "Confirmation", list("Pounds", "Kilograms"))
if(unit_of_measurement == "Pounds")
new_weight = round(text2num(new_weight),4)
if(unit_of_measurement == "Kilograms")

View File

@@ -29,7 +29,7 @@
else if(href_list["vore_egg_type"])
var/list/vore_egg_types = global_vore_egg_types
var/selection = input(user, "Choose your character's egg type:", "Character Preference", pref.vore_egg_type) as null|anything in vore_egg_types
var/selection = tgui_input_list(user, "Choose your character's egg type:", "Character Preference", vore_egg_types, pref.vore_egg_type)
if(selection)
pref.vore_egg_type = selection
return TOPIC_REFRESH

View File

@@ -40,7 +40,7 @@
for(var/C in vantag_choices_list)
names_list[vantag_choices_list[C]] = C
var/selection = input(user, "How do you want to be involved with VS Event Characters, ERP-wise? They will see this choice on you in a HUD. Event characters are admin-selected and spawned players, possibly with assigned objectives, who are obligated to respect ERP prefs and RP their actions like any other player, though it may be a slightly shorter RP if they are pressed for time or being caught.", "Event Preference") as null|anything in names_list
var/selection = tgui_input_list(user, "How do you want to be involved with VS Event Characters, ERP-wise? They will see this choice on you in a HUD. Event characters are admin-selected and spawned players, possibly with assigned objectives, who are obligated to respect ERP prefs and RP their actions like any other player, though it may be a slightly shorter RP if they are pressed for time or being caught.", "Event Preference", names_list)
if(selection && selection != "Normal")
pref.vantag_preference = names_list[selection]

View File

@@ -189,12 +189,6 @@
return TOPIC_NOACTION
else if(href_list["custom_species"])
/*if(pref.species != "Custom Species")
alert("You cannot set a custom species name unless you set your character to use the 'Custom Species' \
species on the 'General' tab. If you have this set to something, it's because you had it set before the \
Trait system was implemented. If you wish to change it, set your species to 'Custom Species' and configure \
the species completely.")
return TOPIC_REFRESH*/ //There was no reason to have this.
var/raw_choice = sanitize(input(user, "Input your custom species name:",
"Character Preference", pref.custom_species) as null|text, MAX_NAME_LEN)
if (CanUseTopic(user))
@@ -205,19 +199,19 @@
var/list/choices = GLOB.custom_species_bases
if(pref.species != SPECIES_CUSTOM)
choices = (choices | pref.species)
var/text_choice = input("Pick an icon set for your species:","Icon Base") in choices
var/text_choice = tgui_input_list(usr, "Pick an icon set for your species:","Icon Base", choices)
if(text_choice in choices)
pref.custom_base = text_choice
return TOPIC_REFRESH_UPDATE_PREVIEW
else if(href_list["blood_color"])
var/color_choice = input("Pick a blood color (does not apply to synths)","Blood Color",pref.blood_color) as color
var/color_choice = input(usr, "Pick a blood color (does not apply to synths)","Blood Color",pref.blood_color) as color
if(color_choice)
pref.blood_color = sanitize_hexcolor(color_choice, default="#A10808")
return TOPIC_REFRESH
else if(href_list["blood_reset"])
var/choice = alert("Reset blood color to human default (#A10808)?","Reset Blood Color","Reset","Cancel")
var/choice = tgui_alert(usr, "Reset blood color to human default (#A10808)?","Reset Blood Color",list("Reset","Cancel"))
if(choice == "Reset")
pref.blood_color = "#A10808"
return TOPIC_REFRESH
@@ -225,7 +219,7 @@
else if(href_list["clicked_pos_trait"])
var/traitpath = text2path(href_list["clicked_pos_trait"]) //CHOMPEdit
var/datum/trait/trait = text2path(href_list["clicked_pos_trait"])
var/choice = alert("Remove [initial(trait.name)] and regain [initial(trait.cost)] points?","Remove Trait","Remove","Cancel")
var/choice = tgui_alert(usr, "Remove [initial(trait.name)] and regain [initial(trait.cost)] points?","Remove Trait",list("Remove","Cancel"))
if(choice == "Remove")
if(traitpath == /datum/trait/positive/linguist) //CHOMPEdit
pref.num_languages = 0 //CHOMPEdit
@@ -234,14 +228,14 @@
else if(href_list["clicked_neu_trait"])
var/datum/trait/trait = text2path(href_list["clicked_neu_trait"])
var/choice = alert("Remove [initial(trait.name)]?","Remove Trait","Remove","Cancel")
var/choice = tgui_alert(usr, "Remove [initial(trait.name)]?","Remove Trait",list("Remove","Cancel"))
if(choice == "Remove")
pref.neu_traits -= trait
return TOPIC_REFRESH
else if(href_list["clicked_neg_trait"])
var/datum/trait/trait = text2path(href_list["clicked_neg_trait"])
var/choice = alert("Remove [initial(trait.name)] and lose [initial(trait.cost)] points?","Remove Trait","Remove","Cancel")
var/choice = tgui_alert(usr, "Remove [initial(trait.name)] and lose [initial(trait.cost)] points?","Remove Trait",list("Remove","Cancel"))
if(choice == "Remove")
pref.neg_traits -= trait
return TOPIC_REFRESH
@@ -307,18 +301,27 @@
var/traits_left = pref.max_traits - (pref.pos_traits.len + pref.neg_traits.len)
var/message = "Select a trait to learn more."
if(mode != NEUTRAL_MODE)
message = "\[Remaining: [points_left] points, [traits_left] traits\]\n" + message
var/title = "Traits"
switch(mode)
if(POSITIVE_MODE)
title = "Positive Traits"
if(NEUTRAL_MODE)
title = "Neutral Traits"
if(NEGATIVE_MODE)
title = "Negative Traits"
var/trait_choice
var/done = FALSE
while(!done)
var/message = "\[Remaining: [points_left] points, [traits_left] traits\] Select a trait to read the description and see the cost."
trait_choice = input(message,"Trait List") as null|anything in nicelist
trait_choice = tgui_input_list(usr, message, title, nicelist)
if(!trait_choice)
done = TRUE
if(trait_choice in nicelist)
var/datum/trait/path = nicelist[trait_choice]
var/choice = alert("\[Cost:[initial(path.cost)]\] [initial(path.desc)]",initial(path.name),"Take Trait","Cancel","Go Back")
if(choice == "Cancel")
trait_choice = null
var/choice = tgui_alert(usr, "\[Cost:[initial(path.cost)]\] [initial(path.desc)]",initial(path.name), list("Take Trait","Go Back"))
if(choice != "Go Back")
done = TRUE
@@ -331,21 +334,29 @@
var/conflict = FALSE
if(pref.dirty_synth && !(instance.can_take & SYNTHETICS))
<<<<<<< HEAD
alert("The trait you've selected can only be taken by organic characters!","Error")
//pref.dirty_synth = 0 //Just to be sure //CHOMPEdit this shit broke, stop.
||||||| parent of f9e9aafd1d... Merge pull request #10756 from VOREStation/Arokha/fixes2
alert("The trait you've selected can only be taken by organic characters!","Error")
pref.dirty_synth = 0 //Just to be sure
=======
tgui_alert_async(usr, "The trait you've selected can only be taken by organic characters!", "Error")
pref.dirty_synth = 0 //Just to be sure
>>>>>>> f9e9aafd1d... Merge pull request #10756 from VOREStation/Arokha/fixes2
return TOPIC_REFRESH
if(pref.gross_meatbag && !(instance.can_take & ORGANICS))
alert("The trait you've selected can only be taken by synthetic characters!","Error")
tgui_alert_async(usr, "The trait you've selected can only be taken by synthetic characters!", "Error")
pref.gross_meatbag = 0 //Just to be sure
return TOPIC_REFRESH
if(pref.species in instance.banned_species)
alert("The trait you've selected cannot be taken by the species you've chosen!","Error")
tgui_alert_async(usr, "The trait you've selected cannot be taken by the species you've chosen!", "Error")
return TOPIC_REFRESH
if( LAZYLEN(instance.allowed_species) && !(pref.species in instance.allowed_species)) //Adding white list handling -shark
alert("The trait you've selected cannot be taken by the species you've chosen!","Error")
if( LAZYLEN(instance.allowed_species) && !(pref.species in instance.allowed_species))
tgui_alert_async(usr, "The trait you've selected cannot be taken by the species you've chosen!", "Error")
return TOPIC_REFRESH
if(trait_choice in pref.pos_traits + pref.neu_traits + pref.neg_traits)
@@ -364,8 +375,7 @@
break varconflict
if(conflict)
alert("You cannot take this trait and [conflict] at the same time. \
Please remove that trait, or pick another trait to add.","Error")
tgui_alert_async(usr, "You cannot take this trait and [conflict] at the same time. Please remove that trait, or pick another trait to add.", "Error")
return TOPIC_REFRESH
if(path==/datum/trait/positive/linguist) //CHOMPEdit
pref.num_languages = 12 //CHOMPEdit

View File

@@ -40,13 +40,13 @@
pref.show_in_directory = pref.show_in_directory ? 0 : 1;
return TOPIC_REFRESH
else if(href_list["directory_tag"])
var/new_tag = input(user, "Pick a new Vore tag for the character directory", "Character Vore Tag", pref.directory_tag) as null|anything in GLOB.char_directory_tags
var/new_tag = tgui_input_list(user, "Pick a new Vore tag for the character directory", "Character Vore Tag", GLOB.char_directory_tags, pref.directory_tag)
if(!new_tag)
return
pref.directory_tag = new_tag
return TOPIC_REFRESH
else if(href_list["directory_erptag"])
var/new_erptag = input(user, "Pick a new ERP tag for the character directory", "Character ERP Tag", pref.directory_erptag) as null|anything in GLOB.char_directory_erptags
var/new_erptag = tgui_input_list(user, "Pick a new ERP tag for the character directory", "Character ERP Tag", GLOB.char_directory_erptags, pref.directory_erptag)
if(!new_erptag)
return
pref.directory_erptag = new_erptag
@@ -56,7 +56,7 @@
pref.directory_ad = msg
return TOPIC_REFRESH
else if(href_list["toggle_sensor_setting"])
var/new_sensorpref = input(user, "Choose your character's sensor preferences:", "Character Preferences", sensorpreflist[pref.sensorpref]) as null|anything in sensorpreflist
var/new_sensorpref = tgui_input_list(user, "Choose your character's sensor preferences:", "Character Preferences", sensorpreflist, sensorpreflist[pref.sensorpref])
if (!isnull(new_sensorpref) && CanUseTopic(user))
pref.sensorpref = sensorpreflist.Find(new_sensorpref)
return TOPIC_REFRESH