Ported some modular computer stuff from baystation

This commit is contained in:
ItsSelis
2022-06-30 20:46:25 +02:00
parent 7da0085b4c
commit 7d2bfaa7f8
41 changed files with 458 additions and 103 deletions
@@ -40,6 +40,7 @@
size = 12
available_on_ntnet = 1
requires_ntnet = 1
category = PROG_MONITOR
// ERT Variant of the program
/datum/computer_file/program/camera_monitor/ert
@@ -12,6 +12,8 @@
unsendable = 1
undeletable = 1
size = 4
available_on_ntnet = 0
requires_ntnet = 0
available_on_ntnet = FALSE
requires_ntnet = FALSE
tguimodule_path = /datum/tgui_module/computer_configurator
usage_flags = PROGRAM_ALL
category = PROG_UTIL
@@ -6,10 +6,12 @@
program_key_state = "generic_key"
program_menu_icon = "mail-closed"
size = 7
requires_ntnet = 1
available_on_ntnet = 1
requires_ntnet = TRUE
available_on_ntnet = TRUE
var/stored_login = ""
var/stored_password = ""
usage_flags = PROGRAM_ALL
category = PROG_OFFICE
tguimodule_path = /datum/tgui_module/email_client
@@ -13,6 +13,8 @@
var/open_file
var/error
usage_flags = PROGRAM_ALL
category = PROG_UTIL
/datum/computer_file/program/filemanager/tgui_act(action, list/params, datum/tgui/ui)
if(..())
@@ -26,6 +26,8 @@
///Determines which boss image to use on the UI.
var/boss_id = 1
usage_flags = PROGRAM_ALL
// This is the primary game loop, which handles the logic of being defeated or winning.
/datum/computer_file/program/game/proc/game_check(mob/user)
sleep(5)
@@ -8,7 +8,7 @@
size = 4
requires_ntnet = TRUE
available_on_ntnet = TRUE
usage_flags = PROGRAM_ALL
tgui_id = "NtosNewsBrowser"
var/datum/computer_file/data/news_article/loaded_article
@@ -118,4 +118,3 @@
if("PRG_toggle_archived")
. = TRUE
show_archived = !show_archived
@@ -16,12 +16,19 @@
var/datum/computer_file/program/downloaded_file = null
var/hacked_download = 0
var/download_completion = 0 //GQ of downloaded data.
///GQ of downloaded data.
var/download_completion = 0
var/download_netspeed = 0
var/downloaderror = ""
var/obj/item/modular_computer/my_computer = null
var/list/downloads_queue[0]
var/file_info
var/server
usage_flags = PROGRAM_ALL
category = PROG_UTIL
var/obj/item/modular_computer/my_computer = null
/datum/computer_file/program/ntnetdownload/kill_program()
..()
abort_file_download()
@@ -12,12 +12,16 @@
ui_header = "ntnrc_idle.gif"
available_on_ntnet = 1
tgui_id = "NtosNetChat"
var/last_message // Used to generate the toolbar icon
/// Used to generate the toolbar icon
var/last_message
var/username
var/active_channel
var/list/channel_history = list()
var/operator_mode = FALSE // Channel operator mode
var/netadmin_mode = FALSE // Administrator mode (invisible to other users + bypasses passwords)
/// Channel operator mode
var/operator_mode = FALSE
/// Administrator mode (invisible to other users + bypasses passwords)
var/netadmin_mode = FALSE
usage_flags = PROGRAM_ALL
/datum/computer_file/program/chatclient/New()
username = "DefaultUser[rand(100, 999)]"
@@ -169,7 +173,7 @@
var/list/data = list()
data["can_admin"] = can_run(user, FALSE, access_network)
return data
/datum/computer_file/program/chatclient/tgui_data(mob/user)
if(!ntnet_global || !ntnet_global.chat_channels)
return list()
@@ -223,4 +227,4 @@
data["authed"] = FALSE
data["messages"] = list()
return data
return data
@@ -8,11 +8,12 @@ var/global/nttransfer_uid = 0
program_key_state = "generic_key"
program_menu_icon = "transferthick-e-w"
size = 7
requires_ntnet = 1
requires_ntnet = TRUE
requires_ntnet_feature = NTNET_PEERTOPEER
network_destination = "other device via P2P tunnel"
available_on_ntnet = 1
available_on_ntnet = TRUE
tgui_id = "NtosNetTransfer"
category = PROG_UTIL
var/error = "" // Error screen
var/server_password = "" // Optional password to download the file.
@@ -23,7 +24,7 @@ var/global/nttransfer_uid = 0
var/download_completion = 0 // Download progress in GQ
var/actual_netspeed = 0 // Displayed in the UI, this is the actual transfer speed.
var/unique_token // UID of this program
var/upload_menu = 0 // Whether we show the program list and upload menu
var/upload_menu = FALSE // Whether we show the program list and upload menu
/datum/computer_file/program/nttransfer/New()
unique_token = nttransfer_uid
@@ -86,14 +87,14 @@ var/global/nttransfer_uid = 0
data["download_progress"] = download_completion
data["download_netspeed"] = actual_netspeed
data["download_name"] = "[downloaded_file.filename].[downloaded_file.filetype]"
data["uploading"] = !!provided_file
if(provided_file)
data["upload_uid"] = unique_token
data["upload_clients"] = connected_clients.len
data["upload_haspassword"] = server_password ? 1 : 0
data["upload_filename"] = "[provided_file.filename].[provided_file.filetype]"
data["upload_filelist"] = list()
if(upload_menu)
var/list/all_files = list()
@@ -104,7 +105,7 @@ var/global/nttransfer_uid = 0
"size" = F.size
)))
data["upload_filelist"] = all_files
data["servers"] = list()
if(!(downloaded_file || provided_file || upload_menu))
var/list/all_servers = list()
@@ -9,12 +9,15 @@
available_on_ntnet = TRUE
tgui_id = "NtosWordProcessor"
var/browsing
var/browsing = FALSE
var/open_file
var/loaded_data
var/error
var/is_edited
usage_flags = PROGRAM_ALL
category = PROG_OFFICE
/datum/computer_file/program/wordprocessor/proc/get_file(var/filename)
var/obj/item/weapon/computer_hardware/hard_drive/HDD = computer.hard_drive
if(!HDD)