From 2eea01f6710005d52932ee5be3120667415bcd6d Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Thu, 18 May 2017 05:22:34 -0500 Subject: [PATCH] [MIRROR] Refactor of modular PC UIs (#874) * Refactor of modular PC UIs * .rej fix --- .../computers/item/computer_ui.dm | 2 +- .../modular_computers/file_system/program.dm | 18 ++- .../file_system/programs/airestorer.dm | 14 +-- .../file_system/programs/alarm.dm | 21 +--- .../file_system/programs/antagonist/dos.dm | 17 +-- .../programs/antagonist/revelation.dm | 15 +-- .../file_system/programs/card.dm | 20 +--- .../file_system/programs/configurator.dm | 16 +-- .../file_system/programs/file_browser.dm | 16 +-- .../file_system/programs/ntdownloader.dm | 15 +-- .../file_system/programs/ntmonitor.dm | 15 +-- .../file_system/programs/ntnrc_client.dm | 19 +-- .../file_system/programs/nttransfer.dm | 17 +-- .../file_system/programs/powermonitor.dm | 22 +--- tgui/assets/tgui.js | 34 +++--- tgui/src/interfaces/computer_main.ract | 47 -------- tgui/src/interfaces/ntnet_dos.ract | 58 ---------- ...ai_restorer.ract => ntos_ai_restorer.ract} | 38 +----- ...ification_computer.ract => ntos_card.ract} | 45 ++------ ...iguration.ract => ntos_configuration.ract} | 73 +++--------- ...le_manager.ract => ntos_file_manager.ract} | 37 +----- tgui/src/interfaces/ntos_main.ract | 14 +++ .../{ntnet_chat.ract => ntos_net_chat.ract} | 36 +----- tgui/src/interfaces/ntos_net_dos.ract | 26 +++++ ...wnloader.ract => ntos_net_downloader.ract} | 108 ++++++------------ ...net_monitor.ract => ntos_net_monitor.ract} | 37 +----- ...t_transfer.ract => ntos_net_transfer.ract} | 37 +----- ...itor_prog.ract => ntos_power_monitor.ract} | 36 +----- tgui/src/interfaces/ntos_revelation.ract | 27 +++++ tgui/src/interfaces/ntos_station_alert.ract | 14 +++ tgui/src/interfaces/ntosheader.ract | 30 +++++ tgui/src/interfaces/revelation.ract | 60 ---------- tgui/src/interfaces/station_alert_prog.ract | 47 -------- 33 files changed, 262 insertions(+), 769 deletions(-) delete mode 100644 tgui/src/interfaces/computer_main.ract delete mode 100644 tgui/src/interfaces/ntnet_dos.ract rename tgui/src/interfaces/{ai_restorer.ract => ntos_ai_restorer.ract} (62%) rename tgui/src/interfaces/{identification_computer.ract => ntos_card.ract} (87%) rename tgui/src/interfaces/{laptop_configuration.ract => ntos_configuration.ract} (50%) rename tgui/src/interfaces/{file_manager.ract => ntos_file_manager.ract} (71%) create mode 100644 tgui/src/interfaces/ntos_main.ract rename tgui/src/interfaces/{ntnet_chat.ract => ntos_net_chat.ract} (67%) create mode 100644 tgui/src/interfaces/ntos_net_dos.ract rename tgui/src/interfaces/{ntnet_downloader.ract => ntos_net_downloader.ract} (50%) rename tgui/src/interfaces/{ntnet_monitor.ract => ntos_net_monitor.ract} (72%) rename tgui/src/interfaces/{ntnet_transfer.ract => ntos_net_transfer.ract} (72%) rename tgui/src/interfaces/{power_monitor_prog.ract => ntos_power_monitor.ract} (73%) create mode 100644 tgui/src/interfaces/ntos_revelation.ract create mode 100644 tgui/src/interfaces/ntos_station_alert.ract create mode 100644 tgui/src/interfaces/ntosheader.ract delete mode 100644 tgui/src/interfaces/revelation.ract delete mode 100644 tgui/src/interfaces/station_alert_prog.ract diff --git a/code/modules/modular_computers/computers/item/computer_ui.dm b/code/modules/modular_computers/computers/item/computer_ui.dm index c574b759cb..5aadc31bb4 100644 --- a/code/modules/modular_computers/computers/item/computer_ui.dm +++ b/code/modules/modular_computers/computers/item/computer_ui.dm @@ -34,7 +34,7 @@ var/datum/asset/assets = get_asset_datum(/datum/asset/simple/headers) assets.send(user) - ui = new(user, src, ui_key, "computer_main", "NTOS Main menu", 400, 500, master_ui, state) + ui = new(user, src, ui_key, "ntos_main", "NTOS Main menu", 400, 500, master_ui, state) ui.open() ui.set_autoupdate(state = 1) diff --git a/code/modules/modular_computers/file_system/program.dm b/code/modules/modular_computers/file_system/program.dm index 3935112e7b..4e5e0c24bb 100644 --- a/code/modules/modular_computers/file_system/program.dm +++ b/code/modules/modular_computers/file_system/program.dm @@ -16,6 +16,10 @@ var/network_destination = null // Optional string that describes what NTNet server/system this program connects to. Used in default logging. var/available_on_ntnet = 1 // Whether the program can be downloaded from NTNet. Set to 0 to disable. var/available_on_syndinet = 0 // Whether the program can be downloaded from SyndiNet (accessible via emagging the computer). Set to 1 to enable. + var/tgui_id // ID of TG UI interface + var/ui_style // ID of custom TG UI style (optional) + var/ui_x = 575 // Default size of TG UI window, in pixels + var/ui_y = 700 var/ui_header = null // Example: "something.gif" - a header image that will be rendered in computer's UI when this program is running at background. Images are taken from /icons/program_icons. Be careful not to use too large images! /datum/computer_file/program/New(obj/item/device/modular_computer/comp = null) @@ -142,13 +146,19 @@ generate_network_log("Connection to [network_destination] closed.") return 1 -// This is called every tick when the program is enabled. Ensure you do parent call if you override it. If parent returns 1 continue with UI initialisation. /datum/computer_file/program/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - if(program_state != PROGRAM_STATE_ACTIVE) // Our program was closed. Close the ui if it exists. - return computer.ui_interact(user) - return 1 + ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) + if(!ui && tgui_id) + var/datum/asset/assets = get_asset_datum(/datum/asset/simple/headers) + assets.send(user) + ui = new(user, src, ui_key, tgui_id, filedesc, ui_x, ui_y, state = state) + + if(ui_style) + ui.set_style(ui_style) + ui.set_autoupdate(state = 1) + ui.open() // CONVENTIONS, READ THIS WHEN CREATING NEW PROGRAM AND OVERRIDING THIS PROC: // Topic calls are automagically forwarded from NanoModule this program contains. diff --git a/code/modules/modular_computers/file_system/programs/airestorer.dm b/code/modules/modular_computers/file_system/programs/airestorer.dm index 96a4b4ec2b..04063aeeca 100644 --- a/code/modules/modular_computers/file_system/programs/airestorer.dm +++ b/code/modules/modular_computers/file_system/programs/airestorer.dm @@ -1,8 +1,6 @@ - - /datum/computer_file/program/aidiag filename = "aidiag" - filedesc = "AI Maintenance Utility" + filedesc = "AI Integrity Restorer" program_icon_state = "generic" extended_desc = "This program is capable of reconstructing damaged AI systems. Requires direct AI connection via intellicard slot." size = 12 @@ -10,6 +8,10 @@ usage_flags = PROGRAM_CONSOLE transfer_access = GLOB.access_heads available_on_ntnet = 1 + tgui_id = "ntos_ai_restorer" + ui_x = 600 + ui_y = 400 + var/restoring = FALSE /datum/computer_file/program/aidiag/proc/get_ai(cardcheck) @@ -114,12 +116,6 @@ return data -/datum/computer_file/program/aidiag/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if(!ui) - ui = new(user, src, ui_key, "ai_restorer", "Integrity Restorer", 600, 400, master_ui, state) - ui.open() - /datum/computer_file/program/aidiag/kill_program(forced) restoring = FALSE return ..(forced) \ No newline at end of file diff --git a/code/modules/modular_computers/file_system/programs/alarm.dm b/code/modules/modular_computers/file_system/programs/alarm.dm index 9bfb9a5e7b..fc050545a5 100644 --- a/code/modules/modular_computers/file_system/programs/alarm.dm +++ b/code/modules/modular_computers/file_system/programs/alarm.dm @@ -1,15 +1,16 @@ - - - /datum/computer_file/program/alarm_monitor filename = "alarmmonitor" - filedesc = "Alarm Monitoring" + filedesc = "Alarm Monitor" ui_header = "alarm_green.gif" program_icon_state = "alert-green" extended_desc = "This program provides visual interface for station's alarm system." requires_ntnet = 1 network_destination = "alarm monitoring network" size = 5 + tgui_id = "ntos_station_alert" + ui_x = 315 + ui_y = 500 + var/has_alert = 0 var/alarms = list("Fire" = list(), "Atmosphere" = list(), "Power" = list()) var/alarm_z = list(ZLEVEL_STATION,ZLEVEL_LAVALAND) @@ -28,15 +29,6 @@ update_computer_icon() return 1 - - -/datum/computer_file/program/alarm_monitor/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if(!ui) - ui = new(user, src, ui_key, "station_alert_prog", "Alarm Monitoring", 300, 500, master_ui, state) - ui.open() - /datum/computer_file/program/alarm_monitor/ui_data(mob/user) var/list/data = get_header_data() @@ -49,7 +41,6 @@ return data /datum/computer_file/program/alarm_monitor/proc/triggerAlarm(class, area/A, O, obj/source) - if(!(source.z in alarm_z)) return @@ -77,8 +68,6 @@ /datum/computer_file/program/alarm_monitor/proc/cancelAlarm(class, area/A, obj/origin) - - var/list/L = alarms[class] var/cleared = 0 for (var/I in L) diff --git a/code/modules/modular_computers/file_system/programs/antagonist/dos.dm b/code/modules/modular_computers/file_system/programs/antagonist/dos.dm index ee1498fd79..9752aafa84 100644 --- a/code/modules/modular_computers/file_system/programs/antagonist/dos.dm +++ b/code/modules/modular_computers/file_system/programs/antagonist/dos.dm @@ -7,6 +7,11 @@ requires_ntnet = 1 available_on_ntnet = 0 available_on_syndinet = 1 + tgui_id = "ntos_net_dos" + ui_style = "syndicate" + ui_x = 400 + ui_y = 250 + var/obj/machinery/ntnet_relay/target = null var/dos_speed = 0 var/error = "" @@ -36,18 +41,6 @@ ..() - -/datum/computer_file/program/ntnet_dos/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if (!ui) - ui = new(user, src, ui_key, "ntnet_dos", "DoS Traffic Generator", 400, 250, state = state) - ui.set_style("syndicate") - ui.set_autoupdate(state = 1) - ui.open() - - - /datum/computer_file/program/ntnet_dos/ui_act(action, params) if(..()) return 1 diff --git a/code/modules/modular_computers/file_system/programs/antagonist/revelation.dm b/code/modules/modular_computers/file_system/programs/antagonist/revelation.dm index ea6a36b549..8082dc02f4 100644 --- a/code/modules/modular_computers/file_system/programs/antagonist/revelation.dm +++ b/code/modules/modular_computers/file_system/programs/antagonist/revelation.dm @@ -7,6 +7,11 @@ requires_ntnet = 0 available_on_ntnet = 0 available_on_syndinet = 1 + tgui_id = "ntos_revelation" + ui_style = "syndicate" + ui_x = 400 + ui_y = 250 + var/armed = 0 /datum/computer_file/program/revelation/run_program(var/mob/living/user) @@ -58,16 +63,6 @@ temp.armed = armed return temp -/datum/computer_file/program/revelation/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if (!ui) - ui = new(user, src, ui_key, "revelation", "Revelation Virus", 400, 250, state = state) - ui.set_style("syndicate") - ui.set_autoupdate(state = 1) - ui.open() - - /datum/computer_file/program/revelation/ui_data(mob/user) var/list/data = get_header_data() diff --git a/code/modules/modular_computers/file_system/programs/card.dm b/code/modules/modular_computers/file_system/programs/card.dm index eec36d6c4c..a0879f13ce 100644 --- a/code/modules/modular_computers/file_system/programs/card.dm +++ b/code/modules/modular_computers/file_system/programs/card.dm @@ -1,11 +1,15 @@ /datum/computer_file/program/card_mod filename = "cardmod" - filedesc = "ID card modification program" + filedesc = "ID Card Modification" program_icon_state = "id" extended_desc = "Program for programming employee ID cards to access parts of the station." transfer_access = GLOB.access_heads requires_ntnet = 0 size = 8 + tgui_id = "ntos_card" + ui_x = 600 + ui_y = 700 + var/mod_mode = 1 var/is_centcom = 0 var/show_assignments = 0 @@ -72,20 +76,6 @@ return 0 return 0 - -/datum/computer_file/program/card_mod/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if (!ui) - - var/datum/asset/assets = get_asset_datum(/datum/asset/simple/headers) - assets.send(user) - - ui = new(user, src, ui_key, "identification_computer", "ID card modification program", 600, 700, state = state) - ui.open() - ui.set_autoupdate(state = 1) - - /datum/computer_file/program/card_mod/proc/format_jobs(list/jobs) var/obj/item/weapon/computer_hardware/card_slot/card_slot = computer.all_components[MC_CARD] var/obj/item/weapon/card/id/id_card = card_slot.stored_card diff --git a/code/modules/modular_computers/file_system/programs/configurator.dm b/code/modules/modular_computers/file_system/programs/configurator.dm index dc8b5ac97d..802f1386c3 100644 --- a/code/modules/modular_computers/file_system/programs/configurator.dm +++ b/code/modules/modular_computers/file_system/programs/configurator.dm @@ -4,7 +4,7 @@ /datum/computer_file/program/computerconfig filename = "compconfig" - filedesc = "Computer Configuration Tool" + filedesc = "Hardware Configuration Tool" extended_desc = "This program allows configuration of computer's hardware" program_icon_state = "generic" unsendable = 1 @@ -12,21 +12,11 @@ size = 4 available_on_ntnet = 0 requires_ntnet = 0 + tgui_id = "ntos_configuration" + var/obj/item/device/modular_computer/movable = null -/datum/computer_file/program/computerconfig/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if (!ui) - - var/datum/asset/assets = get_asset_datum(/datum/asset/simple/headers) - assets.send(user) - - ui = new(user, src, ui_key, "laptop_configuration", "NTOS Configuration Utility", 575, 700, state = state) - ui.open() - ui.set_autoupdate(state = 1) - /datum/computer_file/program/computerconfig/ui_data(mob/user) movable = computer var/obj/item/weapon/computer_hardware/hard_drive/hard_drive = movable.all_components[MC_HDD] diff --git a/code/modules/modular_computers/file_system/programs/file_browser.dm b/code/modules/modular_computers/file_system/programs/file_browser.dm index 0271b4ad8e..9693c95305 100644 --- a/code/modules/modular_computers/file_system/programs/file_browser.dm +++ b/code/modules/modular_computers/file_system/programs/file_browser.dm @@ -1,12 +1,14 @@ /datum/computer_file/program/filemanager filename = "filemanager" - filedesc = "NTOS File Manager" + filedesc = "File Manager" extended_desc = "This program allows management of files." program_icon_state = "generic" size = 8 requires_ntnet = 0 available_on_ntnet = 0 undeletable = 1 + tgui_id = "ntos_file_manager" + var/open_file var/error @@ -176,18 +178,6 @@ t = parse_tags(t) return t -/datum/computer_file/program/filemanager/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if (!ui) - - var/datum/asset/assets = get_asset_datum(/datum/asset/simple/headers) - assets.send(user) - - ui = new(user, src, ui_key, "file_manager", "NTOS File Manager", 575, 700, state = state) - ui.open() - ui.set_autoupdate(state = 1) - /datum/computer_file/program/filemanager/ui_data(mob/user) var/list/data = get_header_data() diff --git a/code/modules/modular_computers/file_system/programs/ntdownloader.dm b/code/modules/modular_computers/file_system/programs/ntdownloader.dm index d9255b17ee..6bd5fcae8e 100644 --- a/code/modules/modular_computers/file_system/programs/ntdownloader.dm +++ b/code/modules/modular_computers/file_system/programs/ntdownloader.dm @@ -1,6 +1,6 @@ /datum/computer_file/program/ntnetdownload filename = "ntndownloader" - filedesc = "NTNet Software Download Tool" + filedesc = "Software Download Tool" program_icon_state = "generic" extended_desc = "This program allows downloads of software from official NT repositories" unsendable = 1 @@ -10,6 +10,8 @@ requires_ntnet_feature = NTNET_SOFTWAREDOWNLOAD available_on_ntnet = 0 ui_header = "downloader_finished.gif" + tgui_id = "ntos_net_downloader" + var/datum/computer_file/program/downloaded_file = null var/hacked_download = 0 var/download_completion = 0 //GQ of downloaded data. @@ -103,17 +105,6 @@ return 1 return 0 -/datum/computer_file/program/ntnetdownload/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if (!ui) - - var/datum/asset/assets = get_asset_datum(/datum/asset/simple/headers) - assets.send(user) - - ui = new(user, src, ui_key, "ntnet_downloader", "NTNet Download Program", 575, 700, state = state) - ui.open() - ui.set_autoupdate(state = 1) - /datum/computer_file/program/ntnetdownload/ui_data(mob/user) my_computer = computer diff --git a/code/modules/modular_computers/file_system/programs/ntmonitor.dm b/code/modules/modular_computers/file_system/programs/ntmonitor.dm index 6661bceac4..fe556faeab 100644 --- a/code/modules/modular_computers/file_system/programs/ntmonitor.dm +++ b/code/modules/modular_computers/file_system/programs/ntmonitor.dm @@ -7,20 +7,7 @@ requires_ntnet = 1 required_access = GLOB.access_network //Network control is a more secure program. available_on_ntnet = 1 - -/datum/computer_file/program/ntnetmonitor/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if (!ui) - - var/datum/asset/assets = get_asset_datum(/datum/asset/simple/headers) - assets.send(user) - - - ui = new(user, src, ui_key, "ntnet_monitor", "NTNet Diagnostics and Monitoring Tool", 575, 700, state = state) - ui.open() - ui.set_autoupdate(state = 1) - + tgui_id = "ntos_net_monitor" /datum/computer_file/program/ntnetmonitor/ui_act(action, params) if(..()) diff --git a/code/modules/modular_computers/file_system/programs/ntnrc_client.dm b/code/modules/modular_computers/file_system/programs/ntnrc_client.dm index b4c7884fe7..e742de3a2a 100644 --- a/code/modules/modular_computers/file_system/programs/ntnrc_client.dm +++ b/code/modules/modular_computers/file_system/programs/ntnrc_client.dm @@ -1,6 +1,6 @@ /datum/computer_file/program/chatclient filename = "ntnrc_client" - filedesc = "NTNet Relay Chat Client" + filedesc = "Chat Client" program_icon_state = "command" extended_desc = "This program allows communication over NTNRC network" size = 8 @@ -9,6 +9,8 @@ network_destination = "NTNRC server" ui_header = "ntnrc_idle.gif" available_on_ntnet = 1 + tgui_id = "ntos_net_chat" + var/last_message = null // Used to generate the toolbar icon var/username var/datum/ntnet_conversation/channel = null @@ -180,21 +182,6 @@ channel = null ..() -/datum/computer_file/program/chatclient/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if (!ui) - - - var/datum/asset/assets = get_asset_datum(/datum/asset/simple/headers) - assets.send(user) - - - ui = new(user, src, ui_key, "ntnet_chat", "NTNet Relay Chat Client", 575, 700, state = state) - ui.open() - ui.set_autoupdate(state = 1) - - /datum/computer_file/program/chatclient/ui_data(mob/user) if(!GLOB.ntnet_global || !GLOB.ntnet_global.chat_channels) return diff --git a/code/modules/modular_computers/file_system/programs/nttransfer.dm b/code/modules/modular_computers/file_system/programs/nttransfer.dm index 0d46755f6b..b2464619d3 100644 --- a/code/modules/modular_computers/file_system/programs/nttransfer.dm +++ b/code/modules/modular_computers/file_system/programs/nttransfer.dm @@ -1,6 +1,6 @@ /datum/computer_file/program/nttransfer filename = "nttransfer" - filedesc = "NTNet P2P Transfer Client" + filedesc = "P2P Transfer Client" extended_desc = "This program allows for simple file transfer via direct peer to peer connection." program_icon_state = "comm_logs" size = 7 @@ -8,6 +8,7 @@ requires_ntnet_feature = NTNET_PEERTOPEER network_destination = "other device via P2P tunnel" available_on_ntnet = 1 + tgui_id = "ntos_net_transfer" var/error = "" // Error screen var/server_password = "" // Optional password to download the file. @@ -82,20 +83,6 @@ remote = null download_completion = 0 - -/datum/computer_file/program/nttransfer/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if (!ui) - - var/datum/asset/assets = get_asset_datum(/datum/asset/simple/headers) - assets.send(user) - - - ui = new(user, src, ui_key, "ntnet_transfer", "NTNet P2P Transfer Client", 575, 700, state = state) - ui.open() - ui.set_autoupdate(state = 1) - /datum/computer_file/program/nttransfer/ui_act(action, params) if(..()) return 1 diff --git a/code/modules/modular_computers/file_system/programs/powermonitor.dm b/code/modules/modular_computers/file_system/programs/powermonitor.dm index b910325642..f95c290734 100644 --- a/code/modules/modular_computers/file_system/programs/powermonitor.dm +++ b/code/modules/modular_computers/file_system/programs/powermonitor.dm @@ -1,8 +1,6 @@ - - /datum/computer_file/program/power_monitor filename = "powermonitor" - filedesc = "Power Monitoring" + filedesc = "Power Monitor" program_icon_state = "power_monitor" extended_desc = "This program connects to sensors around the station to provide information about electrical systems" ui_header = "power_norm.gif" @@ -11,6 +9,10 @@ requires_ntnet = 0 network_destination = "power monitoring system" size = 9 + tgui_id = "ntos_power_monitor" + ui_x = 1200 + ui_y = 1000 + var/has_alert = 0 var/obj/structure/cable/attached var/list/history = list() @@ -19,8 +21,6 @@ var/next_record = 0 - - /datum/computer_file/program/power_monitor/run_program(mob/living/user) . = ..(user) search() @@ -52,18 +52,6 @@ if(demand.len > record_size) demand.Cut(1, 2) -/datum/computer_file/program/power_monitor/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if(!ui) - - var/datum/asset/assets = get_asset_datum(/datum/asset/simple/headers) - assets.send(user) - - - ui = new(user, src, ui_key, "power_monitor_prog", "Power Monitoring", 1200, 1000, master_ui, state) - ui.open() - /datum/computer_file/program/power_monitor/ui_data() var/list/data = get_header_data() data["stored"] = record_size diff --git a/tgui/assets/tgui.js b/tgui/assets/tgui.js index 9149710c78..fb5265043b 100644 --- a/tgui/assets/tgui.js +++ b/tgui/assets/tgui.js @@ -1,18 +1,16 @@ - -require=function t(e,n,a){function r(o,s){if(!n[o]){if(!e[o]){var p="function"==typeof require&&require;if(!s&&p)return p(o,!0);if(i)return i(o,!0);var u=Error("Cannot find module '"+o+"'");throw u.code="MODULE_NOT_FOUND",u}var c=n[o]={exports:{}};e[o][0].call(c.exports,function(t){var n=e[o][1][t];return r(n?n:t)},c,c.exports,t,e,n,a)}return n[o].exports}for(var i="function"==typeof require&&require,o=0;o=0;--a){var r=this.tryEntries[a],i=r.completion;if("root"===r.tryLoc)return e("end");if(r.tryLoc<=this.prev){var o=b.call(r,"catchLoc"),s=b.call(r,"finallyLoc");if(o&&s){if(this.prev=0;--n){var a=this.tryEntries[n];if(a.tryLoc<=this.prev&&b.call(a,"finallyLoc")&&this.prev=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),d(n),E}},"catch":function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var a=n.completion;if("throw"===a.type){var r=a.arg;d(n)}return r}}throw Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:m(t),resultName:e,nextLoc:n},E}}}("object"==typeof n?n:"object"==typeof window?window:"object"==typeof self?self:this)}).call(this,t(190),void 0!==n?n:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{190:190}],3:[function(t,e,n){e.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},{}],4:[function(t,e,n){var a=t(84)("unscopables"),r=Array.prototype;void 0==r[a]&&t(32)(r,a,{}),e.exports=function(t){r[a][t]=!0}},{32:32,84:84}],5:[function(t,e,n){var a=t(39);e.exports=function(t){if(!a(t))throw TypeError(t+" is not an object!");return t}},{39:39}],6:[function(t,e,n){"use strict";var a=t(81),r=t(77),i=t(80);e.exports=[].copyWithin||function(t,e){var n=a(this),o=i(n.length),s=r(t,o),p=r(e,o),u=arguments,c=u.length>2?u[2]:void 0,l=Math.min((void 0===c?o:r(c,o))-p,o-s),f=1;for(s>p&&p+l>s&&(f=-1,p+=l-1,s+=l-1);l-- >0;)p in n?n[s]=n[p]:delete n[s],s+=f,p+=f;return n}},{77:77,80:80,81:81}],7:[function(t,e,n){"use strict";var a=t(81),r=t(77),i=t(80);e.exports=[].fill||function(t){for(var e=a(this),n=i(e.length),o=arguments,s=o.length,p=r(s>1?o[1]:void 0,n),u=s>2?o[2]:void 0,c=void 0===u?n:r(u,n);c>p;)e[p++]=t;return e}},{77:77,80:80,81:81}],8:[function(t,e,n){var a=t(79),r=t(80),i=t(77);e.exports=function(t){return function(e,n,o){var s,p=a(e),u=r(p.length),c=i(o,u);if(t&&n!=n){for(;u>c;)if(s=p[c++],s!=s)return!0}else for(;u>c;c++)if((t||c in p)&&p[c]===n)return t||c;return!t&&-1}}},{77:77,79:79,80:80}],9:[function(t,e,n){var a=t(18),r=t(35),i=t(81),o=t(80),s=t(10);e.exports=function(t){var e=1==t,n=2==t,p=3==t,u=4==t,c=6==t,l=5==t||c;return function(f,d,h){for(var m,v,g=i(f),b=r(g),y=a(d,h,3),_=o(b.length),x=0,w=e?s(f,_):n?s(f,0):void 0;_>x;x++)if((l||x in b)&&(m=b[x],v=y(m,x,g),t))if(e)w[x]=v;else if(v)switch(t){case 3:return!0;case 5:return m;case 6:return x;case 2:w.push(m)}else if(u)return!1;return c?-1:p||u?u:w}}},{10:10,18:18,35:35,80:80,81:81}],10:[function(t,e,n){var a=t(39),r=t(37),i=t(84)("species");e.exports=function(t,e){var n;return r(t)&&(n=t.constructor,"function"!=typeof n||n!==Array&&!r(n.prototype)||(n=void 0),a(n)&&(n=n[i],null===n&&(n=void 0))),new(void 0===n?Array:n)(e)}},{37:37,39:39,84:84}],11:[function(t,e,n){var a=t(12),r=t(84)("toStringTag"),i="Arguments"==a(function(){return arguments}());e.exports=function(t){var e,n,o;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=(e=Object(t))[r])?n:i?a(e):"Object"==(o=a(e))&&"function"==typeof e.callee?"Arguments":o}},{12:12,84:84}],12:[function(t,e,n){var a={}.toString;e.exports=function(t){return a.call(t).slice(8,-1)}},{}],13:[function(t,e,n){"use strict";var a=t(47),r=t(32),i=t(61),o=t(18),s=t(70),p=t(19),u=t(28),c=t(43),l=t(45),f=t(83)("id"),d=t(31),h=t(39),m=t(66),v=t(20),g=Object.isExtensible||h,b=v?"_s":"size",y=0,_=function(t,e){if(!h(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!d(t,f)){if(!g(t))return"F";if(!e)return"E";r(t,f,++y)}return"O"+t[f]},x=function(t,e){var n,a=_(e);if("F"!==a)return t._i[a];for(n=t._f;n;n=n.n)if(n.k==e)return n};e.exports={getConstructor:function(t,e,n,r){var c=t(function(t,i){s(t,c,e),t._i=a.create(null),t._f=void 0,t._l=void 0,t[b]=0,void 0!=i&&u(i,n,t[r],t)});return i(c.prototype,{clear:function(){for(var t=this,e=t._i,n=t._f;n;n=n.n)n.r=!0,n.p&&(n.p=n.p.n=void 0),delete e[n.i];t._f=t._l=void 0,t[b]=0},"delete":function(t){var e=this,n=x(e,t);if(n){var a=n.n,r=n.p;delete e._i[n.i],n.r=!0,r&&(r.n=a),a&&(a.p=r),e._f==n&&(e._f=a),e._l==n&&(e._l=r),e[b]--}return!!n},forEach:function(t){for(var e,n=o(t,arguments.length>1?arguments[1]:void 0,3);e=e?e.n:this._f;)for(n(e.v,e.k,this);e&&e.r;)e=e.p},has:function(t){return!!x(this,t)}}),v&&a.setDesc(c.prototype,"size",{get:function(){return p(this[b])}}),c},def:function(t,e,n){var a,r,i=x(t,e);return i?i.v=n:(t._l=i={i:r=_(e,!0),k:e,v:n,p:a=t._l,n:void 0,r:!1},t._f||(t._f=i),a&&(a.n=i),t[b]++,"F"!==r&&(t._i[r]=i)),t},getEntry:x,setStrong:function(t,e,n){c(t,e,function(t,e){this._t=t,this._k=e,this._l=void 0},function(){for(var t=this,e=t._k,n=t._l;n&&n.r;)n=n.p;return t._t&&(t._l=n=n?n.n:t._t._f)?"keys"==e?l(0,n.k):"values"==e?l(0,n.v):l(0,[n.k,n.v]):(t._t=void 0,l(1))},n?"entries":"values",!n,!0),m(e)}}},{18:18,19:19,20:20,28:28,31:31,32:32,39:39,43:43,45:45,47:47,61:61,66:66,70:70,83:83}],14:[function(t,e,n){var a=t(28),r=t(11);e.exports=function(t){return function(){if(r(this)!=t)throw TypeError(t+"#toJSON isn't generic");var e=[];return a(this,!1,e.push,e),e}}},{11:11,28:28}],15:[function(t,e,n){"use strict";var a=t(32),r=t(61),i=t(5),o=t(39),s=t(70),p=t(28),u=t(9),c=t(31),l=t(83)("weak"),f=Object.isExtensible||o,d=u(5),h=u(6),m=0,v=function(t){return t._l||(t._l=new g)},g=function(){this.a=[]},b=function(t,e){return d(t.a,function(t){return t[0]===e})};g.prototype={get:function(t){var e=b(this,t);return e?e[1]:void 0},has:function(t){return!!b(this,t)},set:function(t,e){var n=b(this,t);n?n[1]=e:this.a.push([t,e])},"delete":function(t){var e=h(this.a,function(e){return e[0]===t});return~e&&this.a.splice(e,1),!!~e}},e.exports={getConstructor:function(t,e,n,a){var i=t(function(t,r){s(t,i,e),t._i=m++,t._l=void 0,void 0!=r&&p(r,n,t[a],t)});return r(i.prototype,{"delete":function(t){return o(t)?f(t)?c(t,l)&&c(t[l],this._i)&&delete t[l][this._i]:v(this)["delete"](t):!1},has:function(t){return o(t)?f(t)?c(t,l)&&c(t[l],this._i):v(this).has(t):!1}}),i},def:function(t,e,n){return f(i(e))?(c(e,l)||a(e,l,{}),e[l][t._i]=n):v(t).set(e,n),t},frozenStore:v,WEAK:l}},{28:28,31:31,32:32,39:39,5:5,61:61,70:70,83:83,9:9}],16:[function(t,e,n){"use strict";var a=t(30),r=t(23),i=t(62),o=t(61),s=t(28),p=t(70),u=t(39),c=t(25),l=t(44),f=t(67);e.exports=function(t,e,n,d,h,m){var v=a[t],g=v,b=h?"set":"add",y=g&&g.prototype,_={},x=function(t){var e=y[t];i(y,t,"delete"==t?function(t){return m&&!u(t)?!1:e.call(this,0===t?0:t)}:"has"==t?function(t){return m&&!u(t)?!1:e.call(this,0===t?0:t)}:"get"==t?function(t){return m&&!u(t)?void 0:e.call(this,0===t?0:t)}:"add"==t?function(t){return e.call(this,0===t?0:t),this}:function(t,n){return e.call(this,0===t?0:t,n),this})};if("function"==typeof g&&(m||y.forEach&&!c(function(){(new g).entries().next()}))){var w,k=new g,P=k[b](m?{}:-0,1)!=k,C=c(function(){k.has(1)}),E=l(function(t){new g(t)});E||(g=e(function(e,n){p(e,g,t);var a=new v;return void 0!=n&&s(n,h,a[b],a),a}),g.prototype=y,y.constructor=g),m||k.forEach(function(t,e){w=1/e===-(1/0)}),(C||w)&&(x("delete"),x("has"),h&&x("get")),(w||P)&&x(b),m&&y.clear&&delete y.clear}else g=d.getConstructor(e,t,h,b),o(g.prototype,n);return f(g,t),_[t]=g,r(r.G+r.W+r.F*(g!=v),_),m||d.setStrong(g,t,h),g}},{23:23,25:25,28:28,30:30,39:39,44:44,61:61,62:62,67:67,70:70}],17:[function(t,e,n){var a=e.exports={version:"1.2.6"};"number"==typeof __e&&(__e=a)},{}],18:[function(t,e,n){var a=t(3);e.exports=function(t,e,n){if(a(t),void 0===e)return t;switch(n){case 1:return function(n){return t.call(e,n)};case 2:return function(n,a){return t.call(e,n,a)};case 3:return function(n,a,r){return t.call(e,n,a,r)}}return function(){return t.apply(e,arguments)}}},{3:3}],19:[function(t,e,n){e.exports=function(t){if(void 0==t)throw TypeError("Can't call method on "+t);return t}},{}],20:[function(t,e,n){e.exports=!t(25)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},{25:25}],21:[function(t,e,n){var a=t(39),r=t(30).document,i=a(r)&&a(r.createElement);e.exports=function(t){return i?r.createElement(t):{}}},{30:30,39:39}],22:[function(t,e,n){var a=t(47);e.exports=function(t){var e=a.getKeys(t),n=a.getSymbols;if(n)for(var r,i=n(t),o=a.isEnum,s=0;i.length>s;)o.call(t,r=i[s++])&&e.push(r);return e}},{47:47}],23:[function(t,e,n){var a=t(30),r=t(17),i=t(32),o=t(62),s=t(18),p="prototype",u=function(t,e,n){var c,l,f,d,h=t&u.F,m=t&u.G,v=t&u.S,g=t&u.P,b=t&u.B,y=m?a:v?a[e]||(a[e]={}):(a[e]||{})[p],_=m?r:r[e]||(r[e]={}),x=_[p]||(_[p]={});m&&(n=e);for(c in n)l=!h&&y&&c in y,f=(l?y:n)[c],d=b&&l?s(f,a):g&&"function"==typeof f?s(Function.call,f):f,y&&!l&&o(y,c,f),_[c]!=f&&i(_,c,d),g&&x[c]!=f&&(x[c]=f)};a.core=r,u.F=1,u.G=2,u.S=4,u.P=8,u.B=16,u.W=32,e.exports=u},{17:17,18:18,30:30,32:32,62:62}],24:[function(t,e,n){var a=t(84)("match");e.exports=function(t){var e=/./;try{"/./"[t](e)}catch(n){try{return e[a]=!1,!"/./"[t](e)}catch(r){}}return!0}},{84:84}],25:[function(t,e,n){e.exports=function(t){try{return!!t()}catch(e){return!0}}},{}],26:[function(t,e,n){"use strict";var a=t(32),r=t(62),i=t(25),o=t(19),s=t(84);e.exports=function(t,e,n){var p=s(t),u=""[t];i(function(){var e={};return e[p]=function(){return 7},7!=""[t](e)})&&(r(String.prototype,t,n(o,p,u)),a(RegExp.prototype,p,2==e?function(t,e){return u.call(t,this,e)}:function(t){return u.call(t,this)}))}},{19:19,25:25,32:32,62:62,84:84}],27:[function(t,e,n){"use strict";var a=t(5);e.exports=function(){var t=a(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e}},{5:5}],28:[function(t,e,n){var a=t(18),r=t(41),i=t(36),o=t(5),s=t(80),p=t(85);e.exports=function(t,e,n,u){var c,l,f,d=p(t),h=a(n,u,e?2:1),m=0;if("function"!=typeof d)throw TypeError(t+" is not iterable!");if(i(d))for(c=s(t.length);c>m;m++)e?h(o(l=t[m])[0],l[1]):h(t[m]);else for(f=d.call(t);!(l=f.next()).done;)r(f,h,l.value,e)}},{18:18,36:36,41:41,5:5,80:80,85:85}],29:[function(t,e,n){var a=t(79),r=t(47).getNames,i={}.toString,o="object"==typeof window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],s=function(t){try{return r(t)}catch(e){return o.slice()}};e.exports.get=function(t){return o&&"[object Window]"==i.call(t)?s(t):r(a(t))}},{47:47,79:79}],30:[function(t,e,n){var a=e.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=a)},{}],31:[function(t,e,n){var a={}.hasOwnProperty;e.exports=function(t,e){return a.call(t,e)}},{}],32:[function(t,e,n){var a=t(47),r=t(60);e.exports=t(20)?function(t,e,n){return a.setDesc(t,e,r(1,n))}:function(t,e,n){return t[e]=n,t}},{20:20,47:47,60:60}],33:[function(t,e,n){e.exports=t(30).document&&document.documentElement},{30:30}],34:[function(t,e,n){e.exports=function(t,e,n){var a=void 0===n;switch(e.length){case 0:return a?t():t.call(n);case 1:return a?t(e[0]):t.call(n,e[0]);case 2:return a?t(e[0],e[1]):t.call(n,e[0],e[1]);case 3:return a?t(e[0],e[1],e[2]):t.call(n,e[0],e[1],e[2]);case 4:return a?t(e[0],e[1],e[2],e[3]):t.call(n,e[0],e[1],e[2],e[3])}return t.apply(n,e)}},{}],35:[function(t,e,n){var a=t(12);e.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==a(t)?t.split(""):Object(t)}},{12:12}],36:[function(t,e,n){var a=t(46),r=t(84)("iterator"),i=Array.prototype;e.exports=function(t){return void 0!==t&&(a.Array===t||i[r]===t)}},{46:46,84:84}],37:[function(t,e,n){var a=t(12);e.exports=Array.isArray||function(t){return"Array"==a(t)}},{12:12}],38:[function(t,e,n){var a=t(39),r=Math.floor;e.exports=function(t){return!a(t)&&isFinite(t)&&r(t)===t}},{39:39}],39:[function(t,e,n){e.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},{}],40:[function(t,e,n){var a=t(39),r=t(12),i=t(84)("match");e.exports=function(t){var e;return a(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==r(t))}},{12:12,39:39,84:84}],41:[function(t,e,n){var a=t(5);e.exports=function(t,e,n,r){try{return r?e(a(n)[0],n[1]):e(n)}catch(i){var o=t["return"];throw void 0!==o&&a(o.call(t)),i}}},{5:5}],42:[function(t,e,n){"use strict";var a=t(47),r=t(60),i=t(67),o={};t(32)(o,t(84)("iterator"),function(){return this}),e.exports=function(t,e,n){t.prototype=a.create(o,{next:r(1,n)}),i(t,e+" Iterator")}},{32:32,47:47,60:60,67:67,84:84}],43:[function(t,e,n){"use strict";var a=t(49),r=t(23),i=t(62),o=t(32),s=t(31),p=t(46),u=t(42),c=t(67),l=t(47).getProto,f=t(84)("iterator"),d=!([].keys&&"next"in[].keys()),h="@@iterator",m="keys",v="values",g=function(){return this};e.exports=function(t,e,n,b,y,_,x){u(n,e,b);var w,k,P=function(t){if(!d&&t in A)return A[t];switch(t){case m:return function(){return new n(this,t)};case v:return function(){return new n(this,t)}}return function(){return new n(this,t)}},C=e+" Iterator",E=y==v,S=!1,A=t.prototype,O=A[f]||A[h]||y&&A[y],T=O||P(y);if(O){var M=l(T.call(new t));c(M,C,!0),!a&&s(A,h)&&o(M,f,g),E&&O.name!==v&&(S=!0,T=function(){return O.call(this)})}if(a&&!x||!d&&!S&&A[f]||o(A,f,T),p[e]=T,p[C]=g,y)if(w={values:E?T:P(v),keys:_?T:P(m),entries:E?P("entries"):T},x)for(k in w)k in A||i(A,k,w[k]);else r(r.P+r.F*(d||S),e,w);return w}},{23:23,31:31,32:32,42:42,46:46,47:47,49:49,62:62,67:67,84:84}],44:[function(t,e,n){var a=t(84)("iterator"),r=!1;try{var i=[7][a]();i["return"]=function(){r=!0},Array.from(i,function(){throw 2})}catch(o){}e.exports=function(t,e){if(!e&&!r)return!1;var n=!1;try{var i=[7],o=i[a]();o.next=function(){n=!0},i[a]=function(){return o},t(i)}catch(s){}return n}},{84:84}],45:[function(t,e,n){e.exports=function(t,e){return{value:e,done:!!t}}},{}],46:[function(t,e,n){e.exports={}},{}],47:[function(t,e,n){var a=Object;e.exports={create:a.create,getProto:a.getPrototypeOf,isEnum:{}.propertyIsEnumerable,getDesc:a.getOwnPropertyDescriptor,setDesc:a.defineProperty,setDescs:a.defineProperties,getKeys:a.keys,getNames:a.getOwnPropertyNames,getSymbols:a.getOwnPropertySymbols,each:[].forEach}},{}],48:[function(t,e,n){var a=t(47),r=t(79);e.exports=function(t,e){for(var n,i=r(t),o=a.getKeys(i),s=o.length,p=0;s>p;)if(i[n=o[p++]]===e)return n}},{47:47,79:79}],49:[function(t,e,n){e.exports=!1},{}],50:[function(t,e,n){e.exports=Math.expm1||function(t){return 0==(t=+t)?t:t>-1e-6&&1e-6>t?t+t*t/2:Math.exp(t)-1}},{}],51:[function(t,e,n){e.exports=Math.log1p||function(t){return(t=+t)>-1e-8&&1e-8>t?t-t*t/2:Math.log(1+t)}},{}],52:[function(t,e,n){e.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:0>t?-1:1}},{}],53:[function(t,e,n){var a,r,i,o=t(30),s=t(76).set,p=o.MutationObserver||o.WebKitMutationObserver,u=o.process,c=o.Promise,l="process"==t(12)(u),f=function(){var t,e,n;for(l&&(t=u.domain)&&(u.domain=null,t.exit());a;)e=a.domain,n=a.fn,e&&e.enter(),n(),e&&e.exit(),a=a.next;r=void 0,t&&t.enter()};if(l)i=function(){u.nextTick(f)};else if(p){var d=1,h=document.createTextNode("");new p(f).observe(h,{characterData:!0}),i=function(){h.data=d=-d}}else i=c&&c.resolve?function(){c.resolve().then(f)}:function(){s.call(o,f)};e.exports=function(t){var e={fn:t,next:void 0,domain:l&&u.domain};r&&(r.next=e),a||(a=e,i()),r=e}},{12:12,30:30,76:76}],54:[function(t,e,n){var a=t(47),r=t(81),i=t(35);e.exports=t(25)(function(){var t=Object.assign,e={},n={},a=Symbol(),r="abcdefghijklmnopqrst";return e[a]=7,r.split("").forEach(function(t){n[t]=t}),7!=t({},e)[a]||Object.keys(t({},n)).join("")!=r})?function(t,e){for(var n=r(t),o=arguments,s=o.length,p=1,u=a.getKeys,c=a.getSymbols,l=a.isEnum;s>p;)for(var f,d=i(o[p++]),h=c?u(d).concat(c(d)):u(d),m=h.length,v=0;m>v;)l.call(d,f=h[v++])&&(n[f]=d[f]);return n}:Object.assign},{25:25,35:35,47:47,81:81}],55:[function(t,e,n){var a=t(23),r=t(17),i=t(25);e.exports=function(t,e){var n=(r.Object||{})[t]||Object[t],o={};o[t]=e(n),a(a.S+a.F*i(function(){n(1)}),"Object",o)}},{17:17,23:23,25:25}],56:[function(t,e,n){var a=t(47),r=t(79),i=a.isEnum;e.exports=function(t){return function(e){for(var n,o=r(e),s=a.getKeys(o),p=s.length,u=0,c=[];p>u;)i.call(o,n=s[u++])&&c.push(t?[n,o[n]]:o[n]);return c}}},{47:47,79:79}],57:[function(t,e,n){var a=t(47),r=t(5),i=t(30).Reflect;e.exports=i&&i.ownKeys||function(t){var e=a.getNames(r(t)),n=a.getSymbols;return n?e.concat(n(t)):e}},{30:30,47:47,5:5}],58:[function(t,e,n){"use strict";var a=t(59),r=t(34),i=t(3);e.exports=function(){for(var t=i(this),e=arguments.length,n=Array(e),o=0,s=a._,p=!1;e>o;)(n[o]=arguments[o++])===s&&(p=!0);return function(){var a,i=this,o=arguments,u=o.length,c=0,l=0;if(!p&&!u)return r(t,n,i);if(a=n.slice(),p)for(;e>c;c++)a[c]===s&&(a[c]=o[l++]);for(;u>l;)a.push(o[l++]);return r(t,a,i)}}},{3:3,34:34,59:59}],59:[function(t,e,n){e.exports=t(30)},{30:30}],60:[function(t,e,n){e.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},{}],61:[function(t,e,n){var a=t(62);e.exports=function(t,e){for(var n in e)a(t,n,e[n]);return t}},{62:62}],62:[function(t,e,n){var a=t(30),r=t(32),i=t(83)("src"),o="toString",s=Function[o],p=(""+s).split(o);t(17).inspectSource=function(t){return s.call(t)},(e.exports=function(t,e,n,o){"function"==typeof n&&(n.hasOwnProperty(i)||r(n,i,t[e]?""+t[e]:p.join(e+"")),n.hasOwnProperty("name")||r(n,"name",e)),t===a?t[e]=n:(o||delete t[e],r(t,e,n))})(Function.prototype,o,function(){return"function"==typeof this&&this[i]||s.call(this)})},{17:17,30:30,32:32,83:83}],63:[function(t,e,n){e.exports=function(t,e){var n=e===Object(e)?function(t){return e[t]}:e;return function(e){return(e+"").replace(t,n)}}},{}],64:[function(t,e,n){e.exports=Object.is||function(t,e){return t===e?0!==t||1/t===1/e:t!=t&&e!=e}},{}],65:[function(t,e,n){var a=t(47).getDesc,r=t(39),i=t(5),o=function(t,e){if(i(t),!r(e)&&null!==e)throw TypeError(e+": can't set as prototype!")};e.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(e,n,r){try{r=t(18)(Function.call,a(Object.prototype,"__proto__").set,2),r(e,[]),n=!(e instanceof Array)}catch(i){n=!0}return function(t,e){return o(t,e),n?t.__proto__=e:r(t,e),t}}({},!1):void 0),check:o}},{18:18,39:39,47:47,5:5}],66:[function(t,e,n){"use strict";var a=t(30),r=t(47),i=t(20),o=t(84)("species");e.exports=function(t){var e=a[t];i&&e&&!e[o]&&r.setDesc(e,o,{configurable:!0,get:function(){return this}})}},{20:20,30:30,47:47,84:84}],67:[function(t,e,n){var a=t(47).setDesc,r=t(31),i=t(84)("toStringTag");e.exports=function(t,e,n){t&&!r(t=n?t:t.prototype,i)&&a(t,i,{configurable:!0,value:e})}},{31:31,47:47,84:84}],68:[function(t,e,n){var a=t(30),r="__core-js_shared__",i=a[r]||(a[r]={});e.exports=function(t){return i[t]||(i[t]={})}},{30:30}],69:[function(t,e,n){var a=t(5),r=t(3),i=t(84)("species");e.exports=function(t,e){var n,o=a(t).constructor;return void 0===o||void 0==(n=a(o)[i])?e:r(n)}},{3:3,5:5,84:84}],70:[function(t,e,n){e.exports=function(t,e,n){if(!(t instanceof e))throw TypeError(n+": use the 'new' operator!");return t}},{}],71:[function(t,e,n){var a=t(78),r=t(19);e.exports=function(t){return function(e,n){var i,o,s=r(e)+"",p=a(n),u=s.length;return 0>p||p>=u?t?"":void 0:(i=s.charCodeAt(p),55296>i||i>56319||p+1===u||(o=s.charCodeAt(p+1))<56320||o>57343?t?s.charAt(p):i:t?s.slice(p,p+2):(i-55296<<10)+(o-56320)+65536)}}},{19:19,78:78}],72:[function(t,e,n){var a=t(40),r=t(19);e.exports=function(t,e,n){if(a(e))throw TypeError("String#"+n+" doesn't accept regex!");return r(t)+""}},{19:19,40:40}],73:[function(t,e,n){var a=t(80),r=t(74),i=t(19);e.exports=function(t,e,n,o){var s=i(t)+"",p=s.length,u=void 0===n?" ":n+"",c=a(e);if(p>=c)return s;""==u&&(u=" ");var l=c-p,f=r.call(u,Math.ceil(l/u.length));return f.length>l&&(f=f.slice(0,l)),o?f+s:s+f}},{19:19,74:74,80:80}],74:[function(t,e,n){"use strict";var a=t(78),r=t(19);e.exports=function(t){var e=r(this)+"",n="",i=a(t);if(0>i||i==1/0)throw RangeError("Count can't be negative");for(;i>0;(i>>>=1)&&(e+=e))1&i&&(n+=e);return n}},{19:19,78:78}],75:[function(t,e,n){var a=t(23),r=t(19),i=t(25),o=" \n\x0B\f\r  ᠎              \u2028\u2029\ufeff",s="["+o+"]",p="​…",u=RegExp("^"+s+s+"*"),c=RegExp(s+s+"*$"),l=function(t,e){var n={};n[t]=e(f),a(a.P+a.F*i(function(){return!!o[t]()||p[t]()!=p}),"String",n)},f=l.trim=function(t,e){return t=r(t)+"",1&e&&(t=t.replace(u,"")),2&e&&(t=t.replace(c,"")),t};e.exports=l},{19:19,23:23,25:25}],76:[function(t,e,n){var a,r,i,o=t(18),s=t(34),p=t(33),u=t(21),c=t(30),l=c.process,f=c.setImmediate,d=c.clearImmediate,h=c.MessageChannel,m=0,v={},g="onreadystatechange",b=function(){var t=+this;if(v.hasOwnProperty(t)){var e=v[t];delete v[t],e()}},y=function(t){b.call(t.data)};f&&d||(f=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return v[++m]=function(){s("function"==typeof t?t:Function(t),e)},a(m),m},d=function(t){delete v[t]},"process"==t(12)(l)?a=function(t){l.nextTick(o(b,t,1))}:h?(r=new h,i=r.port2,r.port1.onmessage=y,a=o(i.postMessage,i,1)):c.addEventListener&&"function"==typeof postMessage&&!c.importScripts?(a=function(t){c.postMessage(t+"","*")},c.addEventListener("message",y,!1)):a=g in u("script")?function(t){p.appendChild(u("script"))[g]=function(){p.removeChild(this),b.call(t)}}:function(t){setTimeout(o(b,t,1),0)}),e.exports={set:f,clear:d}},{12:12,18:18,21:21,30:30,33:33,34:34}],77:[function(t,e,n){var a=t(78),r=Math.max,i=Math.min;e.exports=function(t,e){return t=a(t),0>t?r(t+e,0):i(t,e)}},{78:78}],78:[function(t,e,n){var a=Math.ceil,r=Math.floor;e.exports=function(t){return isNaN(t=+t)?0:(t>0?r:a)(t)}},{}],79:[function(t,e,n){var a=t(35),r=t(19);e.exports=function(t){return a(r(t))}},{19:19,35:35}],80:[function(t,e,n){var a=t(78),r=Math.min;e.exports=function(t){return t>0?r(a(t),9007199254740991):0}},{78:78}],81:[function(t,e,n){var a=t(19);e.exports=function(t){return Object(a(t))}},{19:19}],82:[function(t,e,n){var a=t(39);e.exports=function(t,e){if(!a(t))return t;var n,r;if(e&&"function"==typeof(n=t.toString)&&!a(r=n.call(t)))return r;if("function"==typeof(n=t.valueOf)&&!a(r=n.call(t)))return r;if(!e&&"function"==typeof(n=t.toString)&&!a(r=n.call(t)))return r;throw TypeError("Can't convert object to primitive value")}},{39:39}],83:[function(t,e,n){var a=0,r=Math.random();e.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++a+r).toString(36))}},{}],84:[function(t,e,n){var a=t(68)("wks"),r=t(83),i=t(30).Symbol;e.exports=function(t){return a[t]||(a[t]=i&&i[t]||(i||r)("Symbol."+t))}},{30:30,68:68,83:83}],85:[function(t,e,n){var a=t(11),r=t(84)("iterator"),i=t(46);e.exports=t(17).getIteratorMethod=function(t){return void 0!=t?t[r]||t["@@iterator"]||i[a(t)]:void 0}},{11:11,17:17,46:46,84:84}],86:[function(t,e,n){"use strict";var a,r=t(47),i=t(23),o=t(20),s=t(60),p=t(33),u=t(21),c=t(31),l=t(12),f=t(34),d=t(25),h=t(5),m=t(3),v=t(39),g=t(81),b=t(79),y=t(78),_=t(77),x=t(80),w=t(35),k=t(83)("__proto__"),P=t(9),C=t(8)(!1),E=Object.prototype,S=Array.prototype,A=S.slice,O=S.join,T=r.setDesc,M=r.getDesc,R=r.setDescs,j={};o||(a=!d(function(){return 7!=T(u("div"),"a",{get:function(){return 7}}).a}),r.setDesc=function(t,e,n){if(a)try{return T(t,e,n)}catch(r){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(h(t)[e]=n.value),t},r.getDesc=function(t,e){if(a)try{return M(t,e)}catch(n){}return c(t,e)?s(!E.propertyIsEnumerable.call(t,e),t[e]):void 0},r.setDescs=R=function(t,e){h(t);for(var n,a=r.getKeys(e),i=a.length,o=0;i>o;)r.setDesc(t,n=a[o++],e[n]);return t}),i(i.S+i.F*!o,"Object",{getOwnPropertyDescriptor:r.getDesc,defineProperty:r.setDesc,defineProperties:R});var L="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(","),N=L.concat("length","prototype"),D=L.length,F=function(){var t,e=u("iframe"),n=D,a=">";for(e.style.display="none",p.appendChild(e),e.src="javascript:",t=e.contentWindow.document,t.open(),t.write(" -
-
- - {{#if data.PC_batteryicon && data.PC_showbatteryicon}} -
- {{/if}} - {{#if data.PC_batterypercent && data.PC_showbatteryicon}} - {{data.PC_batterypercent}} - {{/if}} - {{#if data.PC_ntneticon}} - - {{/if}} - {{#if data.PC_apclinkicon}} - - {{/if}} - {{#if data.PC_stationtime}} - {{data.PC_stationtime}} - {{/if}} - {{#each data.PC_programheaders}} - - {{/each}} -
-
-
-
- -
Shutdown - {{#if data.PC_showexitprogram}} - EXIT PROGRAM - Minimize Program - {{/if}} -
-
-
- + + {{#if data.restoring}} diff --git a/tgui/src/interfaces/identification_computer.ract b/tgui/src/interfaces/ntos_card.ract similarity index 87% rename from tgui/src/interfaces/identification_computer.ract rename to tgui/src/interfaces/ntos_card.ract index d2a08639ac..582737a8a6 100644 --- a/tgui/src/interfaces/identification_computer.ract +++ b/tgui/src/interfaces/ntos_card.ract @@ -1,37 +1,5 @@ -
-
- - {{#if data.PC_batteryicon && data.PC_showbatteryicon}} -
- {{/if}} - {{#if data.PC_batterypercent && data.PC_showbatteryicon}} - {{data.PC_batterypercent}} - {{/if}} - {{#if data.PC_ntneticon}} - - {{/if}} - {{#if data.PC_apclinkicon}} - - {{/if}} - {{#if data.PC_stationtime}} - {{data.PC_stationtime}} - {{/if}} - {{#each data.PC_programheaders}} - - {{/each}} -
-
-
-
- -
Shutdown - {{#if data.PC_showexitprogram}} - EXIT PROGRAM - Minimize Program - {{/if}} -
-
-
+ + {{#if data.have_id_slot}} Access Modification @@ -151,12 +119,14 @@
- + + @@ -210,10 +180,9 @@ {{#if data.centcom_access}} - + diff --git a/tgui/src/interfaces/laptop_configuration.ract b/tgui/src/interfaces/ntos_configuration.ract similarity index 50% rename from tgui/src/interfaces/laptop_configuration.ract rename to tgui/src/interfaces/ntos_configuration.ract index 71a8c2d5b9..30c6a4166c 100644 --- a/tgui/src/interfaces/laptop_configuration.ract +++ b/tgui/src/interfaces/ntos_configuration.ract @@ -1,4 +1,3 @@ - -
-
-
CommandCommand + Captain +
Special - Captain Custom
CentComCentcom {{#each data.centcom_jobs}} - {{display_name}} {{/each}}
- {{#if data.PC_batteryicon && data.PC_showbatteryicon}} -
- {{/if}} - {{#if data.PC_batterypercent && data.PC_showbatteryicon}} - {{data.PC_batterypercent}} - {{/if}} - {{#if data.PC_ntneticon}} - - {{/if}} - {{#if data.PC_apclinkicon}} - - {{/if}} - {{#if data.PC_stationtime}} - {{data.PC_stationtime}} - {{/if}} - {{#each data.PC_programheaders}} - - {{/each}} -
-
-
-
- -
Shutdown - {{#if data.PC_showexitprogram}} - EXIT PROGRAM - Minimize Program - {{/if}} -
-
-
+ + + Welcome to computer configuration utility. Please consult your system administrator if you have any questions about your device.
+ + {{data.power_usage}}W + + {{#if data.battery}} Active @@ -64,41 +36,32 @@ Not Available {{/if}} - - - {{data.power_usage}}W - - {{Math.round(adata.disk_used)}}GQ/{{adata.disk_size}}GQ + {{Math.round(adata.disk_used)}}GQ / {{adata.disk_size}}GQ - {{#each data.hardware}} +
{{desc}}
- {{desc}}
- + + {{enabled ? "Enabled" : "Disabled"}} + + - {{enabled ? "Enabled" : "Disabled"}} - - - - {{powerusage}}W - - {{#if !critical}} - - - {{enabled ? "On" : "Off"}} - + {{#if powerusage}} + + {{powerusage}}W {{/if}} -

+
+
{{/each}}
\ No newline at end of file diff --git a/tgui/src/interfaces/file_manager.ract b/tgui/src/interfaces/ntos_file_manager.ract similarity index 71% rename from tgui/src/interfaces/file_manager.ract rename to tgui/src/interfaces/ntos_file_manager.ract index 8f75b5a623..efc3b15cb3 100644 --- a/tgui/src/interfaces/file_manager.ract +++ b/tgui/src/interfaces/ntos_file_manager.ract @@ -1,41 +1,8 @@ + + -
-
- - {{#if data.PC_batteryicon && data.PC_showbatteryicon}} -
- {{/if}} - {{#if data.PC_batterypercent && data.PC_showbatteryicon}} - {{data.PC_batterypercent}} - {{/if}} - {{#if data.PC_ntneticon}} - - {{/if}} - {{#if data.PC_apclinkicon}} - - {{/if}} - {{#if data.PC_stationtime}} - {{data.PC_stationtime}} - {{/if}} - {{#each data.PC_programheaders}} - - {{/each}} -
-
-
-
- -
Shutdown - {{#if data.PC_showexitprogram}} - EXIT PROGRAM - Minimize Program - {{/if}} -
-
-
- {{#if data.error}}

An error has occurred and this program can not continue.

Additional information: {{data.error}}
diff --git a/tgui/src/interfaces/ntos_main.ract b/tgui/src/interfaces/ntos_main.ract new file mode 100644 index 0000000000..fcaf513526 --- /dev/null +++ b/tgui/src/interfaces/ntos_main.ract @@ -0,0 +1,14 @@ + + + + + No program loaded. Please select program from list below. + + {{#each data.programs}} +
+ {{desc}} + + + {{/each}} +
+
\ No newline at end of file diff --git a/tgui/src/interfaces/ntnet_chat.ract b/tgui/src/interfaces/ntos_net_chat.ract similarity index 67% rename from tgui/src/interfaces/ntnet_chat.ract rename to tgui/src/interfaces/ntos_net_chat.ract index 03be35d39d..7ea9055a4c 100644 --- a/tgui/src/interfaces/ntnet_chat.ract +++ b/tgui/src/interfaces/ntos_net_chat.ract @@ -1,38 +1,6 @@ + + -
-
- - {{#if data.PC_batteryicon && data.PC_showbatteryicon}} -
- {{/if}} - {{#if data.PC_batterypercent && data.PC_showbatteryicon}} - {{data.PC_batterypercent}} - {{/if}} - {{#if data.PC_ntneticon}} - - {{/if}} - {{#if data.PC_apclinkicon}} - - {{/if}} - {{#if data.PC_stationtime}} - {{data.PC_stationtime}} - {{/if}} - {{#each data.PC_programheaders}} - - {{/each}} -
-
-
-
- -
Shutdown - {{#if data.PC_showexitprogram}} - EXIT PROGRAM - Minimize Program - {{/if}} -
-
-
{{#if data.adminmode}}

ADMINISTRATIVE MODE

diff --git a/tgui/src/interfaces/ntos_net_dos.ract b/tgui/src/interfaces/ntos_net_dos.ract new file mode 100644 index 0000000000..c9505b4e01 --- /dev/null +++ b/tgui/src/interfaces/ntos_net_dos.ract @@ -0,0 +1,26 @@ + + + + + {{#if data.error}} + ##SYSTEM ERROR: {{data.error}}RESET + {{elseif data.target}} + ##DoS traffic generator active. Tx: {{data.speed}}GQ/s
+ {{#each data.dos_strings}} + {{nums}}
+ {{/each}} + ABORT + {{else}} + ##DoS traffic generator ready. Select target device.
+ {{#if data.focus}} + Targeted device ID: {{data.focus}} + {{else}} + Targeted device ID: None + {{/if}} + EXECUTE
+ Detected devices on network:
+ {{#each data.relays}} + {{id}} + {{/each}} + {{/if}} +
diff --git a/tgui/src/interfaces/ntnet_downloader.ract b/tgui/src/interfaces/ntos_net_downloader.ract similarity index 50% rename from tgui/src/interfaces/ntnet_downloader.ract rename to tgui/src/interfaces/ntos_net_downloader.ract index 4adab772be..884222fe4f 100644 --- a/tgui/src/interfaces/ntnet_downloader.ract +++ b/tgui/src/interfaces/ntos_net_downloader.ract @@ -1,38 +1,5 @@ - -
-
- - {{#if data.PC_batteryicon && data.PC_showbatteryicon}} -
- {{/if}} - {{#if data.PC_batterypercent && data.PC_showbatteryicon}} - {{data.PC_batterypercent}} - {{/if}} - {{#if data.PC_ntneticon}} - - {{/if}} - {{#if data.PC_apclinkicon}} - - {{/if}} - {{#if data.PC_stationtime}} - {{data.PC_stationtime}} - {{/if}} - {{#each data.PC_programheaders}} - - {{/each}} -
-
-
-
- -
Shutdown - {{#if data.PC_showexitprogram}} - EXIT PROGRAM - Minimize Program - {{/if}} -
-
-
+ + Welcome to software download utility. Please select which software you wish to download.
@@ -58,61 +25,62 @@ {{data.downloaddesc}} - {{data.downloadcompletion}}GQ / {{data.downloadsize}}GQ + {{data.downloadsize}}GQ {{data.downloadspeed}} GQ/s - {{Math.round(adata.downloadcompletion)}}/{{adata.downloadsize}} + {{Math.round(adata.downloadcompletion)}}GQ / {{adata.downloadsize}}GQ
{{/if}} {{/if}} {{#if !data.downloadname}} {{#if !data.error}} - - - {{Math.round(adata.disk_used)}}GQ/{{adata.disk_size}}GQ + + + {{Math.round(adata.disk_used)}}GQ / {{adata.disk_size}}GQ - {{#each data.downloadable_programs}} - - {{filename}} ({{size}} GQ) - - - {{filedesc}} - - - {{fileinfo}} - - - {{compatibility}} - - - - DOWNLOAD - - - {{/each}} - {{#if data.hackedavailable}} - - Please note that NanoTrasen does not recommend download of software from non-official servers. - {{#each data.hacked_programs}} + + + {{#each data.downloadable_programs}} + +
{{fileinfo}}
+ {{filename}} ({{size}} GQ) - - {{filedesc}} - - - {{fileinfo}} + + {{compatibility}} - + + DOWNLOAD + +
+
+ {{/each}} +
+ + {{#if data.hackedavailable}} + + Please note that NanoTrasen does not recommend download of software from non-official servers. + {{#each data.hacked_programs}} + +
{{fileinfo}}
+ + + {{filename}} ({{size}} GQ) + + + {{compatibility}} + DOWNLOAD -
+ +
{{/each}}
{{/if}} diff --git a/tgui/src/interfaces/ntnet_monitor.ract b/tgui/src/interfaces/ntos_net_monitor.ract similarity index 72% rename from tgui/src/interfaces/ntnet_monitor.ract rename to tgui/src/interfaces/ntos_net_monitor.ract index 67943650af..0aeaba6c34 100644 --- a/tgui/src/interfaces/ntnet_monitor.ract +++ b/tgui/src/interfaces/ntos_net_monitor.ract @@ -1,40 +1,7 @@ - + + -
-
- - {{#if data.PC_batteryicon && data.PC_showbatteryicon}} -
- {{/if}} - {{#if data.PC_batterypercent && data.PC_showbatteryicon}} - {{data.PC_batterypercent}} - {{/if}} - {{#if data.PC_ntneticon}} - - {{/if}} - {{#if data.PC_apclinkicon}} - - {{/if}} - {{#if data.PC_stationtime}} - {{data.PC_stationtime}} - {{/if}} - {{#each data.PC_programheaders}} - - {{/each}} -
-
-
-
- -
Shutdown - {{#if data.PC_showexitprogram}} - EXIT PROGRAM - Minimize Program - {{/if}} -
-
-
diff --git a/tgui/src/interfaces/ntnet_transfer.ract b/tgui/src/interfaces/ntos_net_transfer.ract similarity index 72% rename from tgui/src/interfaces/ntnet_transfer.ract rename to tgui/src/interfaces/ntos_net_transfer.ract index ff39f009f9..8686952222 100644 --- a/tgui/src/interfaces/ntnet_transfer.ract +++ b/tgui/src/interfaces/ntos_net_transfer.ract @@ -1,41 +1,8 @@ + + -
-
- - {{#if data.PC_batteryicon && data.PC_showbatteryicon}} -
- {{/if}} - {{#if data.PC_batterypercent && data.PC_showbatteryicon}} - {{data.PC_batterypercent}} - {{/if}} - {{#if data.PC_ntneticon}} - - {{/if}} - {{#if data.PC_apclinkicon}} - - {{/if}} - {{#if data.PC_stationtime}} - {{data.PC_stationtime}} - {{/if}} - {{#each data.PC_programheaders}} - - {{/each}} -
-
-
-
- -
Shutdown - {{#if data.PC_showexitprogram}} - EXIT PROGRAM - Minimize Program - {{/if}} -
-
-
- {{#if data.error}}

An error has occurred during operation...

diff --git a/tgui/src/interfaces/power_monitor_prog.ract b/tgui/src/interfaces/ntos_power_monitor.ract similarity index 73% rename from tgui/src/interfaces/power_monitor_prog.ract rename to tgui/src/interfaces/ntos_power_monitor.ract index ba40f27ec0..a026b6a0ab 100644 --- a/tgui/src/interfaces/power_monitor_prog.ract +++ b/tgui/src/interfaces/ntos_power_monitor.ract @@ -39,40 +39,8 @@ } -
-
- - {{#if data.PC_batteryicon && data.PC_showbatteryicon}} -
- {{/if}} - {{#if data.PC_batterypercent && data.PC_showbatteryicon}} - {{data.PC_batterypercent}} - {{/if}} - {{#if data.PC_ntneticon}} - - {{/if}} - {{#if data.PC_apclinkicon}} - - {{/if}} - {{#if data.PC_stationtime}} - {{data.PC_stationtime}} - {{/if}} - {{#each data.PC_programheaders}} - - {{/each}} -
-
-
-
- -
Shutdown - {{#if data.PC_showexitprogram}} - EXIT PROGRAM - Minimize Program - {{/if}} -
-
-
+ + {{#if config.fancy}} diff --git a/tgui/src/interfaces/ntos_revelation.ract b/tgui/src/interfaces/ntos_revelation.ract new file mode 100644 index 0000000000..bae7800348 --- /dev/null +++ b/tgui/src/interfaces/ntos_revelation.ract @@ -0,0 +1,27 @@ + + + + +
+
+ Payload status: +
+
+ {{#if data.armed}} + ARMED + {{else}} + DISARMED + {{/if}} +
+
+ Controls: +
+
+ +
OBFUSCATE PROGRAM NAME +
{{data.armed ? "DISARM" : "ARM"}} + ACTIVATE +
+
+
+
\ No newline at end of file diff --git a/tgui/src/interfaces/ntos_station_alert.ract b/tgui/src/interfaces/ntos_station_alert.ract new file mode 100644 index 0000000000..3b74ee0509 --- /dev/null +++ b/tgui/src/interfaces/ntos_station_alert.ract @@ -0,0 +1,14 @@ + + + +{{#each data.alarms:class}} + +
    + {{#each .}} +
  • {{.}}
  • + {{else}} +
  • System Nominal
  • + {{/each}} +
+
+{{/each}} \ No newline at end of file diff --git a/tgui/src/interfaces/ntosheader.ract b/tgui/src/interfaces/ntosheader.ract new file mode 100644 index 0000000000..4468f1722a --- /dev/null +++ b/tgui/src/interfaces/ntosheader.ract @@ -0,0 +1,30 @@ +
+ + {{#if data.PC_batteryicon && data.PC_showbatteryicon}} +
+ {{/if}} + {{#if data.PC_batterypercent && data.PC_showbatteryicon}} + {{data.PC_batterypercent}} + {{/if}} + {{#if data.PC_ntneticon}} + + {{/if}} + {{#if data.PC_apclinkicon}} + + {{/if}} + {{#if data.PC_stationtime}} + {{data.PC_stationtime}} + {{/if}} + {{#each data.PC_programheaders}} + + {{/each}} +
+
+
+ Shutdown + {{#if data.PC_showexitprogram}} + EXIT PROGRAM + Minimize Program + {{/if}} +
+
\ No newline at end of file diff --git a/tgui/src/interfaces/revelation.ract b/tgui/src/interfaces/revelation.ract deleted file mode 100644 index d4bbd89b40..0000000000 --- a/tgui/src/interfaces/revelation.ract +++ /dev/null @@ -1,60 +0,0 @@ - -
-
- - {{#if data.PC_batteryicon && data.PC_showbatteryicon}} -
- {{/if}} - {{#if data.PC_batterypercent && data.PC_showbatteryicon}} - {{data.PC_batterypercent}} - {{/if}} - {{#if data.PC_ntneticon}} - - {{/if}} - {{#if data.PC_apclinkicon}} - - {{/if}} - {{#if data.PC_stationtime}} - {{data.PC_stationtime}} - {{/if}} - {{#each data.PC_programheaders}} - - {{/each}} -
-
-
-
- -
Shutdown - {{#if data.PC_showexitprogram}} - EXIT PROGRAM - Minimize Program - {{/if}} -
-
-
- - -
-
- Payload status: -
-
- {{#if data.armed}} - ARMED - {{else}} - DISARMED - {{/if}} -
-
- Controls: -
-
- -
OBFUSCATE PROGRAM NAME -
{{data.armed ? "DISARM" : "ARM"}} - ACTIVATE -
-
-
-
\ No newline at end of file diff --git a/tgui/src/interfaces/station_alert_prog.ract b/tgui/src/interfaces/station_alert_prog.ract deleted file mode 100644 index 5ba78cdb91..0000000000 --- a/tgui/src/interfaces/station_alert_prog.ract +++ /dev/null @@ -1,47 +0,0 @@ - -
-
- - {{#if data.PC_batteryicon && data.PC_showbatteryicon}} -
- {{/if}} - {{#if data.PC_batterypercent && data.PC_showbatteryicon}} - {{data.PC_batterypercent}} - {{/if}} - {{#if data.PC_ntneticon}} - - {{/if}} - {{#if data.PC_apclinkicon}} - - {{/if}} - {{#if data.PC_stationtime}} - {{data.PC_stationtime}} - {{/if}} - {{#each data.PC_programheaders}} - - {{/each}} -
-
-
-
- -
Shutdown - {{#if data.PC_showexitprogram}} - EXIT PROGRAM - Minimize Program - {{/if}} -
-
-
- -{{#each data.alarms:class}} - -
    - {{#each .}} -
  • {{.}}
  • - {{else}} -
  • System Nominal
  • - {{/each}} -
-
-{{/each}} \ No newline at end of file