mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-21 20:20:33 +01:00
TGUI list conversions + bug fixes (#63354)
About The Pull Request
Converts more inputs to TGUI. Possibly all user-facing input lists in the game.
Did any surrounding text/number inputs as well
Added null choice support so users can press cancel.
Added some misc TGUI input fixes
Fixed custom vendors while I was there
I refactored a lot of code while just poking around.
Primarily, usage of .len in files where I was already working on lists.
Some code was just awful - look at guardian.dm and its non use of early returns
If there are any disputes, I can revert it just fine, those changes are not integral to the PR.
Why It's Good For The Game
Fixes #63629
Fixes #63307
Fixes custom vendors /again/
Text input is more performant.
Part of a long series of TGUI conversion to make the game more visually appealing
Changelog
cl
refactor: The majority of user facing input lists have been converted to TGUI.
refactor: Tgui text inputs now scale with entered input.
fix: Many inputs now properly accept cancelling out of the menu.
fix: Fixes an edge case where users could not press enter on number inputs.
fix: Custom vendor bluescreen.
fix: You can now press ENTER on text inputs without an entry to cancel.
/cl
This commit is contained in:
@@ -251,7 +251,7 @@ GLOBAL_VAR_INIT(normal_ooc_colour, "#002eb8")
|
||||
players[displayed_key] = displayed_key
|
||||
|
||||
// Check if the list is empty
|
||||
if(!players.len)
|
||||
if(!length(players))
|
||||
// Express that there are no players we can ignore in chat
|
||||
to_chat(src, "<span class='infoplain'>There are no other players you can ignore!</span>")
|
||||
|
||||
@@ -262,10 +262,10 @@ GLOBAL_VAR_INIT(normal_ooc_colour, "#002eb8")
|
||||
players = sort_list(players)
|
||||
|
||||
// Request the player to ignore
|
||||
var/selection = input("Please, select a player!", "Ignore", null, null) as null|anything in players
|
||||
var/selection = tgui_input_list(src, "Select a player", "Ignore", players)
|
||||
|
||||
// Stop running if we didn't receieve a valid selection
|
||||
if(!selection || !(selection in players))
|
||||
if(isnull(selection) || !(selection in players))
|
||||
return
|
||||
|
||||
// Store the selected player
|
||||
@@ -295,7 +295,7 @@ GLOBAL_VAR_INIT(normal_ooc_colour, "#002eb8")
|
||||
set desc = "Stop ignoring a player's messages on the OOC channel"
|
||||
|
||||
// Check if we've ignored any players
|
||||
if(!prefs.ignoring.len)
|
||||
if(!length(prefs.ignoring))
|
||||
// Express that we haven't ignored any players in chat
|
||||
to_chat(src, "<span class='infoplain'>You haven't ignored any players!</span>")
|
||||
|
||||
@@ -303,10 +303,10 @@ GLOBAL_VAR_INIT(normal_ooc_colour, "#002eb8")
|
||||
return
|
||||
|
||||
// Request the player to unignore
|
||||
var/selection = input("Please, select a player!", "Unignore", null, null) as null|anything in prefs.ignoring
|
||||
var/selection = tgui_input_list(src, "Select a player", "Unignore", prefs.ignoring)
|
||||
|
||||
// Stop running if we didn't receive a selection
|
||||
if(!selection)
|
||||
if(isnull(selection))
|
||||
return
|
||||
|
||||
// Check if the selected player is not on our ignore list
|
||||
|
||||
Reference in New Issue
Block a user