Fixes most tgui bugs (#16539)

* Fixes most tgui bugs

* the soul longs for oblivion

* skin fix

* hardsuit fix

* b

* the final fixes (for now)

* bb

* fix keys

* cl

* fuck off

* i'm alone i'm alone i'm alone

* the heart's whisper

* fffss

* je cherche la vérité tout en l'évitant

---------

Co-authored-by: Matt Atlas <liermattia@gmail.com>
This commit is contained in:
Matt Atlas
2023-06-26 15:36:11 +02:00
committed by GitHub
parent c6d87cc68e
commit 025b6e66d5
50 changed files with 672 additions and 463 deletions
@@ -200,6 +200,7 @@
// On-click handling. Turns on the computer if it's off and opens the GUI.
/obj/item/modular_computer/attack_self(mob/user)
if(enabled && screen_on)
user.set_machine(src)
ui_interact(user)
else if(!enabled && screen_on)
turn_on(user)
@@ -183,3 +183,9 @@
. = TRUE
update_icon()
/obj/item/modular_computer/ui_status(mob/user, datum/ui_state/state)
. = ..()
if(. < UI_INTERACTIVE)
if(user.machine)
user.unset_machine()
@@ -16,7 +16,7 @@
tgui_theme = "hephaestus"
ui_auto_update = FALSE
/datum/computer_file/program/rcon_console/ui_static_data(mob/user)
/datum/computer_file/program/rcon_console/ui_data(mob/user)
var/list/data = initial_data()
var/list/smeslist = list()
@@ -246,6 +246,12 @@
if("security")
if(!(edit_type & RECORD_SECURITY))
return FALSE
if("fingerprint")
if(!(edit_type & RECORD_SECURITY))
return FALSE
if("criminal")
if(!(edit_type & RECORD_SECURITY))
return FALSE
if("physical_status")
if(!((edit_type & RECORD_MEDICAL) || (edit_type & RECORD_GENERAL)))
return FALSE
@@ -255,6 +261,24 @@
if("medical")
if(!(edit_type & RECORD_MEDICAL))
return FALSE
if("diseases")
if(!(edit_type & RECORD_MEDICAL))
return FALSE
if("allergies")
if(!(edit_type & RECORD_MEDICAL))
return FALSE
if("blood_dna")
if(!(edit_type & RECORD_MEDICAL) || (edit_type & RECORD_SECURITY))
return FALSE
if("species")
if(!(edit_type & RECORD_MEDICAL) || (edit_type & RECORD_SECURITY))
return FALSE
if("citizenship")
if(!(edit_type & RECORD_SECURITY) || (edit_type & RECORD_GENERAL))
return FALSE
if("religion")
if(!(edit_type & RECORD_SECURITY) || (edit_type & RECORD_GENERAL))
return FALSE
else
if(!(edit_type & RECORD_GENERAL))
return FALSE
@@ -46,7 +46,7 @@
switch(action)
if("sw_menu")
active_warrant = null
. = TRUE
SStgui.update_uis(computer)
if("editwarrant")
for(var/datum/record/warrant/W in SSrecords.warrants)
@@ -56,8 +56,8 @@
. = TRUE
if("back")
. = TRUE
active_warrant = null
SStgui.update_uis(computer)
// The following actions will only be possible if the user has an ID with security access equipped. This is in line with modular computer framework's authentication methods,
// which also use RFID scanning to allow or disallow access to some functions. Anyone can view warrants, editing requires ID.
@@ -96,14 +96,14 @@
active_warrant = W
if("savewarrant")
. = TRUE
SSrecords.update_record(active_warrant)
active_warrant = null
SStgui.update_uis(computer)
if("deletewarrant")
. = TRUE
SSrecords.remove_record(active_warrant)
active_warrant = null
SStgui.update_uis(computer)
if("editwarrantname")
. = TRUE