Adds maintenance tablet apps (Health analyzer is one now too) (#71738)

About The Pull Request

Sprites were generously made by https://github.com/Tramzz

This was a branch I've been putting off for months because my hatred for tablet apps brought me to removing computer parts, tablets, and ntnet, however I've now returned (after a lot more procrastination).

Adds Maintenance tablet applications to the game, so far there's only three of them, for proof of concept;

    The health analyzer app (the chem analyzer part is removed entirely) move away from being given to medical/geneticists/detectives/RD.

There is on exception, which is the CMO, who gets to have the application on their tablet roundstart. Maybe it could be given to their role disk as well?

    A camera application:

image
image

    MODsuit control application:

image
image

image

Maintenance applications stand out from normal tablet apps because they can't be downloaded off the App store, and instead can only be found in maintenance, with a one-use download, cloning the application from a disk to a computer, or vice versa, will delete the old one, meaning you can only have one application at once.
Why It's Good For The Game

This is more as a proof of concept for maintenance applications, but I also think that the analyzer application wasn't really that good as an app, you should either use a health analyzer or the wand in front of medbay, you shouldn't just have one in your tablet at all times because it makes it lame if your analyzer is stolen.
Changelog

cl JohnFulpWillard, sprites by Tramzz
add: Added Maintenance tablet applications, applications that can't be cloned or downloaded from the store, instead you can find one app in maintenance.
balance: The Analyzer tablet application is also a maintenance tablet application now.
/cl
This commit is contained in:
John Willard
2023-01-18 21:43:32 +00:00
committed by GitHub
parent a0ae553701
commit af98c74f4a
23 changed files with 312 additions and 163 deletions

View File

@@ -20,6 +20,10 @@
var/datum/computer_file/program/program_type = new programs
add_file(program_type)
/obj/item/computer_disk/Destroy(force)
. = ..()
QDEL_LIST(stored_files)
/**
* add_file
*
@@ -29,6 +33,7 @@
if((file.size + used_capacity) > max_capacity)
return FALSE
stored_files.Add(file)
file.disk_host = src
used_capacity += file.size
return TRUE

View File

@@ -0,0 +1,13 @@
/obj/item/computer_disk/maintenance
name = "maintenance data disk"
desc = "A data disk forgotten in the depths of maintenance, might have some useful program on it."
/// Medical health analyzer app
/obj/item/computer_disk/maintenance/scanner
starting_programs = list(/datum/computer_file/program/maintenance/phys_scanner)
/obj/item/computer_disk/maintenance/camera
starting_programs = list(/datum/computer_file/program/maintenance/camera)
/obj/item/computer_disk/maintenance/modsuit_control
starting_programs = list(/datum/computer_file/program/maintenance/modsuit_control)

View File

@@ -24,14 +24,12 @@
starting_programs = list(
/datum/computer_file/program/records/security,
/datum/computer_file/program/records/medical,
/datum/computer_file/program/phys_scanner/all,
)
/obj/item/computer_disk/command/cmo
name = "chief medical officer data disk"
desc = "Removable disk used to download essential CMO tablet apps."
starting_programs = list(
/datum/computer_file/program/phys_scanner/all,
/datum/computer_file/program/records/medical,
)
@@ -39,7 +37,6 @@
name = "research director data disk"
desc = "Removable disk used to download essential RD tablet apps."
starting_programs = list(
/datum/computer_file/program/phys_scanner/chemistry,
/datum/computer_file/program/signal_commander,
)
@@ -88,7 +85,6 @@
desc = "Removable disk used to download medical-related tablet apps."
icon_state = "datadisk7"
starting_programs = list(
/datum/computer_file/program/phys_scanner/medical,
/datum/computer_file/program/records/medical,
)
@@ -96,9 +92,6 @@
name = "chemistry data disk"
desc = "Removable disk used to download chemistry-related tablet apps."
icon_state = "datadisk5"
starting_programs = list(
/datum/computer_file/program/phys_scanner/chemistry,
)
/**
* Supply

View File

@@ -81,7 +81,7 @@
/datum/computer_file/program/science,
/datum/computer_file/program/robocontrol,
/datum/computer_file/program/budgetorders,
/datum/computer_file/program/phys_scanner/all,
/datum/computer_file/program/maintenance/phys_scanner,
/datum/computer_file/program/records/medical,
)
@@ -96,7 +96,6 @@
/datum/computer_file/program/science,
/datum/computer_file/program/robocontrol,
/datum/computer_file/program/budgetorders,
/datum/computer_file/program/phys_scanner/chemistry,
/datum/computer_file/program/signal_commander,
)
@@ -136,7 +135,6 @@
/datum/computer_file/program/records/security,
/datum/computer_file/program/crew_manifest,
/datum/computer_file/program/robocontrol,
/datum/computer_file/program/phys_scanner/medical,
)
/obj/item/modular_computer/pda/warden
@@ -196,7 +194,6 @@
greyscale_config = /datum/greyscale_config/tablet/stripe_split
greyscale_colors = "#FAFAFA#000099#0097CA"
starting_programs = list(
/datum/computer_file/program/phys_scanner/medical,
/datum/computer_file/program/records/medical,
)
@@ -209,7 +206,6 @@
greyscale_config = /datum/greyscale_config/tablet/stripe_thick
greyscale_colors = "#FAFAFA#000099#3F96CC"
starting_programs = list(
/datum/computer_file/program/phys_scanner/medical,
/datum/computer_file/program/records/medical,
/datum/computer_file/program/robocontrol,
)
@@ -217,7 +213,6 @@
/obj/item/modular_computer/pda/medical/paramedic
name = "paramedic PDA"
starting_programs = list(
/datum/computer_file/program/phys_scanner/medical,
/datum/computer_file/program/records/medical,
/datum/computer_file/program/radar/lifeline,
)
@@ -227,7 +222,6 @@
greyscale_config = /datum/greyscale_config/tablet/stripe_split
greyscale_colors = "#FAFAFA#355FAC#57C451"
starting_programs = list(
/datum/computer_file/program/phys_scanner/medical,
/datum/computer_file/program/records/medical,
/datum/computer_file/program/robocontrol,
)
@@ -236,9 +230,6 @@
name = "chemist PDA"
greyscale_config = /datum/greyscale_config/tablet/stripe_thick
greyscale_colors = "#FAFAFA#355FAC#EA6400"
starting_programs = list(
/datum/computer_file/program/phys_scanner/chemistry,
)
/**
* Supply