mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2025-12-23 16:42:13 +00:00
* tgui the beginning * binaries and the like * Bring in the last of it * Example radio UI * delete example * NTOS Main Menu, start on manifest, tgui states * tasks.json * gunnery ui pt 1 * okay * fix everything * scss update * oops * manifest gigablast * downloader part 1 * download prt 2 * NTOSDownloader final * mfw committing to_worlds * gunnery console pt2 * i cooked * targeting (finished) * one vueui down * voting ui almost done * MY MIND FEELS LIKE AN ARCH ENEMYYYY * voting ui down * photocopier * ntos config + download fixes * photocopier 2 * refactor define * NTOS client manager + fixes * fax machine final (it also uses toner now) * marching forwards... left behind... * ntnrc part 1 * canister * add quotes * portable pumps pt1 + more backgrounds * oops * finish the portable pump * freezers so I'll keep on pushing forward... you haven't seen the last of me... oooooooh... * doors ui pt1 * finish doors UI (forgive me wildkins it's a bit of shitcode) * vitals monitor, make things use labeled lists, new backgrounds * mais j'envoyé aucun mayday... * maglock pt1 * pour ça je me suis perdu... * infrared * fix that * prox sensor pt1 * prox sensor * signaler (this was actually pretty hard) * atmos control pt1 * atmos control pt1.1 * atmos pt 2 * fuel injector * multitool UI * jammer * list viewer * APC * portgen * targeting console updates + SMES ui * new themes, shield generator * supermatter * Add ore detector and (shitty) NTNet Relay * orderterminal pt1 * orderterminal pt2 * smartfridge * Add (air-)tank GUI update ore detector size * Adds Transfer Valves * Add AtmoScrubber * analyzer pt1 * weapons analyzer pt2 * bodyscanner pt1 * bodyscanner pt2 * fix this shitcode * seed storage * appearance changer * appearance changer final * sleeper pt1 * sleeper * gps * vehicles * chem dispenser * lily request * holopad * tgui modules pt1 * ppanel * damage menu * fixes * im here too now * follow menu, search bars * quikpay * quikpay fixes * circuit printer * ppanel * ppanel updates * pai * turret controls (i want to kill myself) * tweak * remove the boardgame * guntracker * implant tracker * penal mechs come close to me, come close to me * chem codex * pai radio * doorjack * pai directives * signaler removal, sensors * ghost spawner * spawnpoint * fixes * teleporter * one more to the chopping block * account database * remove divider * scanner, atmos * latejoin ui pt1 * latejoin * records pt1 * RECORDS UI DONE * delete interpreter & records * CHAT FUCKING CLIENT * data updates * fix some things * final UI, log * basic nanoui fix * antag panel * remove vueui * atm update * vending update * warrants, cameras * ntmonitor * time comes for all * preserve this legacy * bring that back (oops) * rcon, ui auto update for computer UIs, remove rcon computers * alarm monitoring (a bit broke and also todo: add custom alarm monitoring programs to a few consoles) * A LIKE SUPREME * a * power monitor * lights on * fuck this code, fuck nanoui modules, and fuck nanoui * LEAVE IT OH SO FAR BEHIND * fix alarm monitoring for synths * I SAW IN YOU WHAT LIFE WAS MISSING * comms console * idcard and record updates * turn the light on * arcade * pt2 * news browser * static * crusher * f * COULD I JUST SLEIGH THE GOLD FROM THE BALLS? I'M SO FRUSTRATED OH COULD YOU TELL? IF I HEAR ONE MORE VUEUI OR ONE NANOUI I'M GONNA LOSE IT SO LET ME GOOOOOOOOOOOOOOOOO * codeowners & suit sensors * html ui style removal * make lint happy * resist and disorder * i slowly get up and turn off the noise, already fed up... * pleaseeeeeeeeeeeeeee * THE CREDIT LARP IS NECESSARY * i hold the keys * RISE UP * fix that? * harry's suggestions xoxo * runtime fix pt2 * You are the only thing that I still care about * adds build workflow * Update update_tgui.yml * adds some needed steps * ATM * misc fixes and tweaks * fixes 2 * make newscasters usable and fix use power on freezers * turret control is clearer --------- Co-authored-by: John Wildkins <john.wildkins@gmail.com> Co-authored-by: Matt Atlas <liermattia@gmail.com> Co-authored-by: harryob <55142896+harryob@users.noreply.github.com> Co-authored-by: Werner <Arrow768@users.noreply.github.com> Co-authored-by: Geeves <ggrobler447@gmail.com> Co-authored-by: harryob <me@harryob.live>
171 lines
7.1 KiB
Plaintext
171 lines
7.1 KiB
Plaintext
/datum/category_item/player_setup_item/player_global/ui
|
|
name = "UI"
|
|
sort_order = 1
|
|
|
|
/datum/category_item/player_setup_item/player_global/ui/load_preferences(var/savefile/S)
|
|
S["UI_style"] >> pref.UI_style
|
|
S["UI_style_color"] >> pref.UI_style_color
|
|
S["UI_style_alpha"] >> pref.UI_style_alpha
|
|
S["tgui_fancy"] >> pref.tgui_fancy
|
|
S["tgui_lock"] << pref.tgui_lock
|
|
S["ooccolor"] >> pref.ooccolor
|
|
S["clientfps"] >> pref.clientfps
|
|
|
|
/datum/category_item/player_setup_item/player_global/ui/save_preferences(var/savefile/S)
|
|
S["UI_style"] << pref.UI_style
|
|
S["UI_style_color"] << pref.UI_style_color
|
|
S["UI_style_alpha"] << pref.UI_style_alpha
|
|
S["tgui_fancy"] << pref.tgui_fancy
|
|
S["tgui_lock"] << pref.tgui_lock
|
|
S["ooccolor"] << pref.ooccolor
|
|
S["clientfps"] << pref.clientfps
|
|
|
|
/datum/category_item/player_setup_item/player_global/ui/gather_load_query()
|
|
return list(
|
|
"ss13_player_preferences" = list(
|
|
"vars" = list(
|
|
"UI_style",
|
|
"UI_style_color",
|
|
"UI_style_alpha",
|
|
"tgui_fancy",
|
|
"tgui_lock",
|
|
"ooccolor",
|
|
"clientfps",
|
|
"tooltip_style"
|
|
),
|
|
"args" = list("ckey")
|
|
)
|
|
)
|
|
|
|
/datum/category_item/player_setup_item/player_global/ui/gather_load_parameters()
|
|
return list("ckey" = PREF_CLIENT_CKEY)
|
|
|
|
/datum/category_item/player_setup_item/player_global/ui/gather_save_query()
|
|
return list(
|
|
"ss13_player_preferences" = list(
|
|
"UI_style",
|
|
"UI_style_color",
|
|
"UI_style_alpha",
|
|
"tgui_fancy",
|
|
"tgui_lock",
|
|
"ooccolor",
|
|
"clientfps",
|
|
"tooltip_style",
|
|
"ckey" = 1
|
|
)
|
|
)
|
|
|
|
/datum/category_item/player_setup_item/player_global/ui/gather_save_parameters()
|
|
return list(
|
|
"ckey" = PREF_CLIENT_CKEY,
|
|
"UI_style_alpha" = pref.UI_style_alpha,
|
|
"UI_style_color" = pref.UI_style_color,
|
|
"UI_style" = pref.UI_style,
|
|
"tgui_fancy" = pref.tgui_fancy,
|
|
"tgui_lock" = pref.tgui_lock,
|
|
"ooccolor" = pref.ooccolor,
|
|
"clientfps" = pref.clientfps,
|
|
"tooltip_style" = pref.tooltip_style
|
|
)
|
|
|
|
/datum/category_item/player_setup_item/player_global/ui/sanitize_preferences()
|
|
pref.UI_style = sanitize_inlist(pref.UI_style, all_ui_styles, initial(pref.UI_style))
|
|
pref.UI_style_color = sanitize_hexcolor(pref.UI_style_color, initial(pref.UI_style_color))
|
|
pref.UI_style_alpha = sanitize_integer(text2num(pref.UI_style_alpha), 0, 255, initial(pref.UI_style_alpha))
|
|
pref.clientfps = sanitize_integer(text2num(pref.clientfps), 0, 1000, initial(pref.clientfps))
|
|
pref.tgui_fancy = sanitize_bool(pref.tgui_fancy, TRUE)
|
|
pref.tgui_lock = sanitize_bool(pref.tgui_lock, FALSE)
|
|
pref.ooccolor = sanitize_hexcolor(pref.ooccolor, initial(pref.ooccolor))
|
|
|
|
/datum/category_item/player_setup_item/player_global/ui/content(mob/user)
|
|
var/list/dat = list()
|
|
dat += "<b>UI Settings</b><br>"
|
|
dat += "<b>UI Style:</b> <a href='?src=\ref[src];select_style=1'><b>[pref.UI_style]</b></a><br>"
|
|
dat += "<b>Custom UI</b> (recommended for White UI):<br>"
|
|
dat += "-Color: <a href='?src=\ref[src];select_color=1'><b>[pref.UI_style_color]</b></a> [HTML_RECT(pref.UI_style_color)] - <a href='?src=\ref[src];reset=ui'>reset</a><br>"
|
|
dat += "-Alpha(transparency): <a href='?src=\ref[src];select_alpha=1'><b>[pref.UI_style_alpha]</b></a> - <a href='?src=\ref[src];reset=alpha'>reset</a><br>"
|
|
dat += "<b>Tooltip Style:</b> <a href='?src=\ref[src];select_tooltip_style=1'><b>[pref.tooltip_style]</b></a><br>"
|
|
dat += "<b>TGUI Fancy:</b> <a href='?src=\ref[src];select_tguif=1'><b>[pref.tgui_fancy ? "ON" : "OFF"]</b></a><br>"
|
|
dat += "<b>TGUI Lock:</b> <a href='?src=\ref[src];select_tguil=1'><b>[pref.tgui_lock ? "ON" : "OFF"]</b></a><br>"
|
|
dat += "<b>FPS:</b> <a href='?src=\ref[src];select_fps=1'><b>[pref.clientfps]</b></a> - <a href='?src=\ref[src];reset=fps'>reset</a><br>"
|
|
if(can_select_ooc_color(user))
|
|
dat += "<b>OOC Color:</b> "
|
|
if(pref.ooccolor == initial(pref.ooccolor))
|
|
dat += "<a href='?src=\ref[src];select_ooc_color=1'><b>Using Default</b></a><br>"
|
|
else
|
|
dat += "<a href='?src=\ref[src];select_ooc_color=1'><b>[pref.ooccolor]</b></a> [HTML_RECT(pref.ooccolor)] - <a href='?src=\ref[src];reset=ooc'>reset</a><br>"
|
|
|
|
. = dat.Join()
|
|
|
|
/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
|
|
if(!UI_style_new || !CanUseTopic(user)) return TOPIC_NOACTION
|
|
pref.UI_style = UI_style_new
|
|
return TOPIC_REFRESH
|
|
|
|
else if(href_list["select_color"])
|
|
var/UI_style_color_new = input(user, "Choose UI color, dark colors are not recommended!", "Global Preference", pref.UI_style_color) as color|null
|
|
if(isnull(UI_style_color_new) || !CanUseTopic(user)) return TOPIC_NOACTION
|
|
pref.UI_style_color = UI_style_color_new
|
|
return TOPIC_REFRESH
|
|
|
|
else if(href_list["select_alpha"])
|
|
var/UI_style_alpha_new = input(user, "Select UI alpha (transparency) level, between 50 and 255.", "Global Preference", pref.UI_style_alpha) as num|null
|
|
if(isnull(UI_style_alpha_new) || (UI_style_alpha_new < 50 || UI_style_alpha_new > 255) || !CanUseTopic(user)) return TOPIC_NOACTION
|
|
pref.UI_style_alpha = UI_style_alpha_new
|
|
return TOPIC_REFRESH
|
|
|
|
else if(href_list["select_tguif"])
|
|
pref.tgui_fancy = !pref.tgui_fancy
|
|
return TOPIC_REFRESH
|
|
|
|
else if(href_list["select_tguil"])
|
|
pref.tgui_lock = !pref.tgui_lock
|
|
return TOPIC_REFRESH
|
|
|
|
else if(href_list["select_ooc_color"])
|
|
var/new_ooccolor = input(user, "Choose OOC color:", "Global Preference") as color|null
|
|
if(new_ooccolor && can_select_ooc_color(user) && CanUseTopic(user))
|
|
pref.ooccolor = new_ooccolor
|
|
return TOPIC_REFRESH
|
|
|
|
else if(href_list["select_fps"])
|
|
var/version_message
|
|
if (user.client && user.client.byond_version < 511)
|
|
version_message = "\nYou need to be using byond version 511 or later to take advantage of this feature, your version of [user.client.byond_version] is too low"
|
|
if (world.byond_version < 511)
|
|
version_message += "\nThis server does not currently support client side fps. You can set now for when it does."
|
|
var/new_fps = input(user, "Choose your desired fps.[version_message]\n(0 = synced with server tick rate (currently:[world.fps]))", "Global Preference") as num|null
|
|
if (isnum(new_fps) && CanUseTopic(user))
|
|
pref.clientfps = Clamp(new_fps, 0, 1000)
|
|
|
|
var/mob/target_mob = preference_mob()
|
|
if(target_mob && target_mob.client)
|
|
target_mob.client.apply_fps(pref.clientfps)
|
|
return TOPIC_REFRESH
|
|
|
|
else if(href_list["select_tooltip_style"])
|
|
var/tooltip_style_new = input(user, "Choose a new tooltip style.", "Global Preference", pref.tooltip_style) as null|anything in all_tooltip_styles
|
|
if(!tooltip_style_new || !CanUseTopic(user))
|
|
return TOPIC_NOACTION
|
|
pref.tooltip_style = tooltip_style_new
|
|
return TOPIC_REFRESH
|
|
|
|
else if(href_list["reset"])
|
|
switch(href_list["reset"])
|
|
if("ui")
|
|
pref.UI_style_color = initial(pref.UI_style_color)
|
|
if("alpha")
|
|
pref.UI_style_alpha = initial(pref.UI_style_alpha)
|
|
if("ooc")
|
|
pref.ooccolor = initial(pref.ooccolor)
|
|
if("fps")
|
|
pref.clientfps = 0
|
|
return TOPIC_REFRESH
|
|
|
|
return ..()
|
|
|
|
/datum/category_item/player_setup_item/player_global/ui/proc/can_select_ooc_color(var/mob/user)
|
|
return config.allow_admin_ooccolor && check_rights(R_ADMIN, 0, user)
|