mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-07-17 11:05:16 +01:00
[MDB IGNORE] Removes tablet cartridges + reworks a ton more (#66505)
- All tablets who previously had apps in a cartridge now has them built-into their tablet instead. This means it costs space for it. - Rebalances the sizes of several apps to help them fit on Command tablets (Cargo ordering costed 20!!) - Removes tablet cartridges, they've been reworked into a regular old portable disk (the same you use for toxins/borgs) - Removes Signaller (the module required to run the signaller app) from tablets (likely will remove more in the future) - Refactors the health/chem scanning app to not be as bad - Dehardcodes detomatix resistance - Ability to send PDA's to all is now tied to your access rather than a cartridge - Moves 'eject disk' button to the very top of the UI
This commit is contained in:
@@ -1,30 +1,32 @@
|
||||
|
||||
/obj/proc/is_modular_computer()
|
||||
return
|
||||
return FALSE
|
||||
|
||||
//item
|
||||
/obj/item/modular_computer/is_modular_computer()
|
||||
return TRUE
|
||||
|
||||
//machine
|
||||
/obj/machinery/modular_computer/is_modular_computer()
|
||||
return TRUE
|
||||
|
||||
/obj/proc/get_modular_computer_part(part_type)
|
||||
return null
|
||||
|
||||
/obj/item/modular_computer/is_modular_computer()
|
||||
return TRUE
|
||||
|
||||
//item
|
||||
/obj/item/modular_computer/get_modular_computer_part(part_type)
|
||||
if(!part_type)
|
||||
stack_trace("get_modular_computer_part() called without a valid part_type")
|
||||
return null
|
||||
return all_components[part_type]
|
||||
|
||||
|
||||
/obj/machinery/modular_computer/is_modular_computer()
|
||||
return TRUE
|
||||
|
||||
//machine
|
||||
/obj/machinery/modular_computer/get_modular_computer_part(part_type)
|
||||
if(!part_type)
|
||||
stack_trace("get_modular_computer_part() called without a valid part_type")
|
||||
return null
|
||||
return cpu?.all_components[part_type]
|
||||
|
||||
|
||||
/obj/proc/get_modular_computer_parts_examine(mob/user)
|
||||
. = list()
|
||||
if(!is_modular_computer())
|
||||
|
||||
@@ -303,7 +303,7 @@ GLOBAL_LIST_EMPTY(TabletMessengers) // a list of all active messengers, similar
|
||||
. = ..()
|
||||
|
||||
context[SCREENTIP_CONTEXT_ALT_LMB] = "Remove ID"
|
||||
context[SCREENTIP_CONTEXT_CTRL_SHIFT_LMB] = "Remove Job Disk"
|
||||
context[SCREENTIP_CONTEXT_CTRL_SHIFT_LMB] = "Remove Disk"
|
||||
|
||||
return CONTEXTUAL_SCREENTIP_SET
|
||||
|
||||
@@ -340,11 +340,12 @@ GLOBAL_LIST_EMPTY(TabletMessengers) // a list of all active messengers, similar
|
||||
if(.)
|
||||
return
|
||||
|
||||
var/obj/item/computer_hardware/hard_drive/role/ssd = all_components[MC_HDD_JOB]
|
||||
var/obj/item/computer_hardware/hard_drive/ssd = all_components[MC_SDD]
|
||||
if(!ssd)
|
||||
return
|
||||
if(uninstall_component(ssd, usr))
|
||||
user.put_in_hands(ssd)
|
||||
playsound(src, 'sound/machines/card_slide.ogg', 50)
|
||||
|
||||
/obj/item/modular_computer/proc/turn_on(mob/user)
|
||||
var/issynth = issilicon(user) // Robots and AIs get different activation messages.
|
||||
|
||||
@@ -66,7 +66,6 @@
|
||||
data["disk"] = null
|
||||
|
||||
var/obj/item/computer_hardware/card_slot/cardholder = all_components[MC_CARD]
|
||||
var/obj/item/computer_hardware/hard_drive/role/ssd = all_components[MC_HDD_JOB]
|
||||
data["cardholder"] = FALSE
|
||||
|
||||
if(cardholder)
|
||||
@@ -87,20 +86,9 @@
|
||||
IDJob = cardholder.current_job,
|
||||
)
|
||||
|
||||
if(ssd)
|
||||
data["disk"] = ssd
|
||||
data["disk_name"] = ssd.name
|
||||
|
||||
for(var/datum/computer_file/program/prog in ssd.stored_files)
|
||||
var/running = FALSE
|
||||
if(prog in idle_threads)
|
||||
running = TRUE
|
||||
|
||||
data["disk_programs"] += list(list("name" = prog.filename, "desc" = prog.filedesc, "running" = running, "icon" = prog.program_icon, "alert" = prog.alert_pending))
|
||||
|
||||
data["removable_media"] = list()
|
||||
if(all_components[MC_SDD])
|
||||
data["removable_media"] += "removable storage disk"
|
||||
data["removable_media"] += "Eject Disk"
|
||||
var/obj/item/computer_hardware/ai_slot/intelliholder = all_components[MC_AI]
|
||||
if(intelliholder?.stored_card)
|
||||
data["removable_media"] += "intelliCard"
|
||||
@@ -168,13 +156,10 @@
|
||||
var/prog = params["name"]
|
||||
var/is_disk = params["is_disk"]
|
||||
var/datum/computer_file/program/P = null
|
||||
var/obj/item/computer_hardware/hard_drive/role/ssd = all_components[MC_HDD_JOB]
|
||||
var/mob/user = usr
|
||||
|
||||
if(hard_drive && !is_disk)
|
||||
P = hard_drive.find_file_by_name(prog)
|
||||
if(ssd && is_disk)
|
||||
P = ssd.find_file_by_name(prog)
|
||||
|
||||
if(!P || !istype(P)) // Program not found or it's not executable program.
|
||||
to_chat(user, span_danger("\The [src]'s screen shows \"I/O ERROR - Unable to run program\" warning."))
|
||||
@@ -228,20 +213,13 @@
|
||||
var/param = params["name"]
|
||||
var/mob/user = usr
|
||||
switch(param)
|
||||
if("removable storage disk")
|
||||
if("Eject Disk")
|
||||
var/obj/item/computer_hardware/hard_drive/portable/portable_drive = all_components[MC_SDD]
|
||||
if(!portable_drive)
|
||||
return
|
||||
if(uninstall_component(portable_drive, usr))
|
||||
user.put_in_hands(portable_drive)
|
||||
playsound(src, 'sound/machines/card_slide.ogg', 50)
|
||||
if("job disk")
|
||||
var/obj/item/computer_hardware/hard_drive/role/ssd = all_components[MC_HDD_JOB]
|
||||
if(!ssd)
|
||||
return
|
||||
if(uninstall_component(ssd, usr))
|
||||
user.put_in_hands(ssd)
|
||||
playsound(src, 'sound/machines/card_slide.ogg', 50)
|
||||
if("intelliCard")
|
||||
var/obj/item/computer_hardware/ai_slot/intelliholder = all_components[MC_AI]
|
||||
if(!intelliholder)
|
||||
|
||||
@@ -1,85 +1,24 @@
|
||||
/obj/item/modular_computer/tablet/pda/medical
|
||||
name = "medical PDA"
|
||||
default_disk = /obj/item/computer_hardware/hard_drive/role/medical
|
||||
greyscale_config = /datum/greyscale_config/tablet/stripe_thick
|
||||
greyscale_colors = "#FAFAFA#000099#3F96CC"
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/viro
|
||||
name = "virology PDA"
|
||||
default_disk = /obj/item/computer_hardware/hard_drive/role/medical
|
||||
greyscale_config = /datum/greyscale_config/tablet/stripe_split
|
||||
greyscale_colors = "#FAFAFA#355FAC#57C451"
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/engineering
|
||||
name = "engineering PDA"
|
||||
default_disk = /obj/item/computer_hardware/hard_drive/role/engineering
|
||||
greyscale_config = /datum/greyscale_config/tablet/stripe_thick
|
||||
greyscale_colors = "#D99A2E#69DBF3#E3DF3D"
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/security
|
||||
name = "security PDA"
|
||||
default_disk = /obj/item/computer_hardware/hard_drive/role/security
|
||||
greyscale_colors = "#EA3232#0000cc"
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/detective
|
||||
name = "detective PDA"
|
||||
default_disk = /obj/item/computer_hardware/hard_drive/role/detective
|
||||
greyscale_colors = "#805A2F#990202"
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/warden
|
||||
name = "warden PDA"
|
||||
default_disk = /obj/item/computer_hardware/hard_drive/role/security
|
||||
greyscale_config = /datum/greyscale_config/tablet/stripe_split
|
||||
greyscale_colors = "#EA3232#0000CC#363636"
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/janitor
|
||||
name = "janitor PDA"
|
||||
default_disk = /obj/item/computer_hardware/hard_drive/role/janitor
|
||||
greyscale_colors = "#933ea8#235AB2"
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/science
|
||||
name = "scientist PDA"
|
||||
default_disk = /obj/item/computer_hardware/hard_drive/role/signal/ordnance
|
||||
greyscale_config = /datum/greyscale_config/tablet/stripe_thick
|
||||
greyscale_colors = "#FAFAFA#000099#B347BC"
|
||||
/**
|
||||
* Command
|
||||
*/
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/heads
|
||||
default_disk = /obj/item/computer_hardware/hard_drive/role/head
|
||||
greyscale_config = /datum/greyscale_config/tablet/head
|
||||
greyscale_colors = "#67A364#a92323"
|
||||
default_applications = list(
|
||||
/datum/computer_file/program/crew_manifest,
|
||||
/datum/computer_file/program/status,
|
||||
/datum/computer_file/program/science,
|
||||
/datum/computer_file/program/robocontrol,
|
||||
/datum/computer_file/program/budgetorders,
|
||||
)
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/heads/hop
|
||||
name = "head of personnel PDA"
|
||||
default_disk = /obj/item/computer_hardware/hard_drive/role/hop
|
||||
/obj/item/modular_computer/tablet/pda/heads/Initialize(mapload)
|
||||
. = ..()
|
||||
install_component(new /obj/item/computer_hardware/card_slot/secondary)
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/heads/hos
|
||||
name = "head of security PDA"
|
||||
default_disk = /obj/item/computer_hardware/hard_drive/role/hos
|
||||
greyscale_config = /datum/greyscale_config/tablet/head
|
||||
greyscale_colors = "#EA3232#0000CC"
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/heads/ce
|
||||
name = "chief engineer PDA"
|
||||
default_disk = /obj/item/computer_hardware/hard_drive/role/ce
|
||||
greyscale_config = /datum/greyscale_config/tablet/stripe_thick/head
|
||||
greyscale_colors = "#D99A2E#69DBF3#FAFAFA"
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/heads/cmo
|
||||
name = "chief medical officer PDA"
|
||||
default_disk = /obj/item/computer_hardware/hard_drive/role/cmo
|
||||
greyscale_config = /datum/greyscale_config/tablet/stripe_thick/head
|
||||
greyscale_colors = "#FAFAFA#000099#3F96CC"
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/heads/rd
|
||||
name = "research director PDA"
|
||||
default_disk = /obj/item/computer_hardware/hard_drive/role/rd
|
||||
greyscale_config = /datum/greyscale_config/tablet/stripe_thick/head
|
||||
greyscale_colors = "#FAFAFA#000099#B347BC"
|
||||
insert_type = /obj/item/pen/fountain
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/captain
|
||||
/obj/item/modular_computer/tablet/pda/heads/captain
|
||||
name = "captain PDA"
|
||||
default_disk = /obj/item/computer_hardware/hard_drive/role/captain
|
||||
greyscale_config = /datum/greyscale_config/tablet/captain
|
||||
greyscale_colors = "#2C7CB2#FF0000#FFFFFF#FFD55B"
|
||||
insert_type = /obj/item/pen/fountain
|
||||
@@ -88,10 +27,205 @@
|
||||
. = ..()
|
||||
RegisterSignal(src, COMSIG_TABLET_CHECK_DETONATE, .proc/tab_no_detonate)
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/heads/hop
|
||||
name = "head of personnel PDA"
|
||||
default_applications = list(
|
||||
/datum/computer_file/program/crew_manifest,
|
||||
/datum/computer_file/program/status,
|
||||
/datum/computer_file/program/science,
|
||||
/datum/computer_file/program/robocontrol,
|
||||
/datum/computer_file/program/budgetorders,
|
||||
/datum/computer_file/program/records/security,
|
||||
/datum/computer_file/program/job_management,
|
||||
)
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/heads/hos
|
||||
name = "head of security PDA"
|
||||
greyscale_config = /datum/greyscale_config/tablet/head
|
||||
greyscale_colors = "#EA3232#0000CC"
|
||||
default_applications = list(
|
||||
/datum/computer_file/program/crew_manifest,
|
||||
/datum/computer_file/program/status,
|
||||
/datum/computer_file/program/science,
|
||||
/datum/computer_file/program/robocontrol,
|
||||
/datum/computer_file/program/budgetorders,
|
||||
/datum/computer_file/program/records/security,
|
||||
)
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/heads/ce
|
||||
name = "chief engineer PDA"
|
||||
greyscale_config = /datum/greyscale_config/tablet/stripe_thick/head
|
||||
greyscale_colors = "#D99A2E#69DBF3#FAFAFA"
|
||||
default_applications = list(
|
||||
/datum/computer_file/program/crew_manifest,
|
||||
/datum/computer_file/program/status,
|
||||
/datum/computer_file/program/science,
|
||||
/datum/computer_file/program/robocontrol,
|
||||
/datum/computer_file/program/budgetorders,
|
||||
/datum/computer_file/program/atmosscan,
|
||||
/datum/computer_file/program/alarm_monitor,
|
||||
/datum/computer_file/program/power_monitor,
|
||||
/datum/computer_file/program/supermatter_monitor,
|
||||
)
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/heads/cmo
|
||||
name = "chief medical officer PDA"
|
||||
greyscale_config = /datum/greyscale_config/tablet/stripe_thick/head
|
||||
greyscale_colors = "#FAFAFA#000099#3F96CC"
|
||||
default_applications = list(
|
||||
/datum/computer_file/program/crew_manifest,
|
||||
/datum/computer_file/program/status,
|
||||
/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/records/medical,
|
||||
)
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/heads/rd
|
||||
name = "research director PDA"
|
||||
greyscale_config = /datum/greyscale_config/tablet/stripe_thick/head
|
||||
greyscale_colors = "#FAFAFA#000099#B347BC"
|
||||
insert_type = /obj/item/pen/fountain
|
||||
default_applications = list(
|
||||
/datum/computer_file/program/crew_manifest,
|
||||
/datum/computer_file/program/status,
|
||||
/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,
|
||||
)
|
||||
|
||||
/**
|
||||
* Security
|
||||
*/
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/security
|
||||
name = "security PDA"
|
||||
greyscale_colors = "#EA3232#0000cc"
|
||||
default_applications = list(
|
||||
/datum/computer_file/program/records/security,
|
||||
/datum/computer_file/program/crew_manifest,
|
||||
/datum/computer_file/program/robocontrol,
|
||||
)
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/detective
|
||||
name = "detective PDA"
|
||||
greyscale_colors = "#805A2F#990202"
|
||||
default_applications = list(
|
||||
/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/tablet/pda/warden
|
||||
name = "warden PDA"
|
||||
greyscale_config = /datum/greyscale_config/tablet/stripe_split
|
||||
greyscale_colors = "#EA3232#0000CC#363636"
|
||||
default_applications = list(
|
||||
/datum/computer_file/program/records/security,
|
||||
/datum/computer_file/program/crew_manifest,
|
||||
/datum/computer_file/program/robocontrol,
|
||||
)
|
||||
|
||||
/**
|
||||
* Engineering
|
||||
*/
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/engineering
|
||||
name = "engineering PDA"
|
||||
greyscale_config = /datum/greyscale_config/tablet/stripe_thick
|
||||
greyscale_colors = "#D99A2E#69DBF3#E3DF3D"
|
||||
default_applications = list(
|
||||
/datum/computer_file/program/power_monitor,
|
||||
/datum/computer_file/program/supermatter_monitor,
|
||||
)
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/atmos
|
||||
name = "atmospherics PDA"
|
||||
greyscale_config = /datum/greyscale_config/tablet/stripe_thick
|
||||
greyscale_colors = "#EEDC43#00E5DA#727272"
|
||||
default_applications = list(
|
||||
/datum/computer_file/program/atmosscan,
|
||||
/datum/computer_file/program/alarm_monitor,
|
||||
)
|
||||
|
||||
/**
|
||||
* Science
|
||||
*/
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/science
|
||||
name = "scientist PDA"
|
||||
greyscale_config = /datum/greyscale_config/tablet/stripe_thick
|
||||
greyscale_colors = "#FAFAFA#000099#B347BC"
|
||||
default_applications = list(
|
||||
/datum/computer_file/program/atmosscan,
|
||||
/datum/computer_file/program/signal_commander,
|
||||
)
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/roboticist
|
||||
name = "roboticist PDA"
|
||||
greyscale_config = /datum/greyscale_config/tablet/stripe_split
|
||||
greyscale_colors = "#484848#0099CC#D94927"
|
||||
default_applications = list(
|
||||
/datum/computer_file/program/robocontrol,
|
||||
)
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/geneticist
|
||||
name = "geneticist PDA"
|
||||
greyscale_config = /datum/greyscale_config/tablet/stripe_split
|
||||
greyscale_colors = "#FAFAFA#000099#0097CA"
|
||||
default_applications = list(
|
||||
/datum/computer_file/program/phys_scanner/medical,
|
||||
/datum/computer_file/program/records/medical,
|
||||
)
|
||||
|
||||
/**
|
||||
* Medical
|
||||
*/
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/medical
|
||||
name = "medical PDA"
|
||||
greyscale_config = /datum/greyscale_config/tablet/stripe_thick
|
||||
greyscale_colors = "#FAFAFA#000099#3F96CC"
|
||||
default_applications = list(
|
||||
/datum/computer_file/program/phys_scanner/medical,
|
||||
/datum/computer_file/program/records/medical,
|
||||
/datum/computer_file/program/robocontrol,
|
||||
)
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/viro
|
||||
name = "virology PDA"
|
||||
greyscale_config = /datum/greyscale_config/tablet/stripe_split
|
||||
greyscale_colors = "#FAFAFA#355FAC#57C451"
|
||||
default_applications = list(
|
||||
/datum/computer_file/program/phys_scanner/medical,
|
||||
/datum/computer_file/program/records/medical,
|
||||
/datum/computer_file/program/robocontrol,
|
||||
)
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/chemist
|
||||
name = "chemist PDA"
|
||||
greyscale_config = /datum/greyscale_config/tablet/stripe_thick
|
||||
greyscale_colors = "#FAFAFA#355FAC#EA6400"
|
||||
default_applications = list(
|
||||
/datum/computer_file/program/phys_scanner/chemistry,
|
||||
)
|
||||
|
||||
/**
|
||||
* Supply
|
||||
*/
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/cargo
|
||||
name = "cargo technician PDA"
|
||||
default_disk = /obj/item/computer_hardware/hard_drive/role/quartermaster
|
||||
greyscale_colors = "#D6B328#6506CA"
|
||||
default_applications = list(
|
||||
/datum/computer_file/program/shipping,
|
||||
/datum/computer_file/program/budgetorders,
|
||||
/datum/computer_file/program/robocontrol,
|
||||
)
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/quartermaster/Initialize(mapload)
|
||||
. = ..()
|
||||
@@ -99,9 +233,13 @@
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/quartermaster
|
||||
name = "quartermaster PDA"
|
||||
default_disk = /obj/item/computer_hardware/hard_drive/role/quartermaster
|
||||
greyscale_config = /datum/greyscale_config/tablet/stripe_thick
|
||||
greyscale_colors = "#D6B328#6506CA#927444"
|
||||
default_applications = list(
|
||||
/datum/computer_file/program/shipping,
|
||||
/datum/computer_file/program/budgetorders,
|
||||
/datum/computer_file/program/robocontrol,
|
||||
)
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/quartermaster/Initialize(mapload)
|
||||
. = ..()
|
||||
@@ -112,6 +250,17 @@
|
||||
greyscale_config = /datum/greyscale_config/tablet/stripe_thick
|
||||
greyscale_colors = "#927444#D6B328#6C3BA1"
|
||||
|
||||
/**
|
||||
* Service
|
||||
*/
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/janitor
|
||||
name = "janitor PDA"
|
||||
greyscale_colors = "#933ea8#235AB2"
|
||||
default_applications = list(
|
||||
/datum/computer_file/program/radar/custodial_locator,
|
||||
)
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/chaplain
|
||||
name = "chaplain PDA"
|
||||
greyscale_config = /datum/greyscale_config/tablet/chaplain
|
||||
@@ -119,21 +268,17 @@
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/lawyer
|
||||
name = "lawyer PDA"
|
||||
default_disk = /obj/item/computer_hardware/hard_drive/role/lawyer
|
||||
greyscale_colors = "#4C76C8#FFE243"
|
||||
insert_type = /obj/item/pen/fountain
|
||||
default_applications = list(
|
||||
/datum/computer_file/program/records/security,
|
||||
)
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/botanist
|
||||
name = "botanist PDA"
|
||||
greyscale_config = /datum/greyscale_config/tablet/stripe_thick
|
||||
greyscale_colors = "#50E193#E26F41#71A7CA"
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/roboticist
|
||||
name = "roboticist PDA"
|
||||
greyscale_config = /datum/greyscale_config/tablet/stripe_split
|
||||
greyscale_colors = "#484848#0099CC#D94927"
|
||||
default_disk = /obj/item/computer_hardware/hard_drive/role/roboticist
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/cook
|
||||
name = "cook PDA"
|
||||
greyscale_colors = "#FAFAFA#A92323"
|
||||
@@ -142,27 +287,9 @@
|
||||
name = "bartender PDA"
|
||||
greyscale_colors = "#333333#C7C7C7"
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/atmos
|
||||
name = "atmospherics PDA"
|
||||
default_disk = /obj/item/computer_hardware/hard_drive/role/atmos
|
||||
greyscale_config = /datum/greyscale_config/tablet/stripe_thick
|
||||
greyscale_colors = "#EEDC43#00E5DA#727272"
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/chemist
|
||||
name = "chemist PDA"
|
||||
default_disk = /obj/item/computer_hardware/hard_drive/role/chemistry
|
||||
greyscale_config = /datum/greyscale_config/tablet/stripe_thick
|
||||
greyscale_colors = "#FAFAFA#355FAC#EA6400"
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/geneticist
|
||||
name = "geneticist PDA"
|
||||
default_disk = /obj/item/computer_hardware/hard_drive/role/medical
|
||||
greyscale_config = /datum/greyscale_config/tablet/stripe_split
|
||||
greyscale_colors = "#FAFAFA#000099#0097CA"
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/clown
|
||||
name = "clown PDA"
|
||||
default_disk = /obj/item/computer_hardware/hard_drive/role/virus/clown
|
||||
loaded_cartridge = /obj/item/computer_hardware/hard_drive/portable/virus/clown
|
||||
icon_state = "pda-clown"
|
||||
greyscale_config = null
|
||||
greyscale_colors = null
|
||||
@@ -179,7 +306,7 @@
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/clown/proc/AfterSlip(mob/living/carbon/human/M)
|
||||
if (istype(M) && (M.real_name != saved_identification))
|
||||
var/obj/item/computer_hardware/hard_drive/role/virus/clown/cart = all_components[MC_HDD_JOB]
|
||||
var/obj/item/computer_hardware/hard_drive/portable/virus/clown/cart = all_components[MC_SDD]
|
||||
if(istype(cart) && cart.charges < 5)
|
||||
cart.charges++
|
||||
playsound(src,'sound/machines/ping.ogg',30,TRUE)
|
||||
@@ -189,7 +316,7 @@
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/mime
|
||||
name = "mime PDA"
|
||||
default_disk = /obj/item/computer_hardware/hard_drive/role/virus/mime
|
||||
loaded_cartridge = /obj/item/computer_hardware/hard_drive/portable/virus/mime
|
||||
greyscale_config = /datum/greyscale_config/tablet/mime
|
||||
greyscale_colors = "#FAFAFA#EA3232"
|
||||
insert_type = /obj/item/toy/crayon/mime
|
||||
@@ -205,11 +332,13 @@
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/curator
|
||||
name = "curator PDA"
|
||||
default_disk = /obj/item/computer_hardware/hard_drive/role/curator
|
||||
greyscale_config = null
|
||||
greyscale_colors = null
|
||||
icon_state = "pda-library"
|
||||
insert_type = /obj/item/pen/fountain
|
||||
default_applications = list(
|
||||
/datum/computer_file/program/newscaster,
|
||||
)
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/curator/Initialize(mapload)
|
||||
. = ..()
|
||||
@@ -219,6 +348,10 @@
|
||||
for(var/datum/computer_file/program/messenger/msg in hdd.stored_files)
|
||||
msg.allow_emojis = TRUE
|
||||
|
||||
/**
|
||||
* Non-roles
|
||||
*/
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/syndicate
|
||||
name = "military PDA"
|
||||
greyscale_colors = "#891417#80FF80"
|
||||
|
||||
@@ -80,6 +80,17 @@
|
||||
|
||||
remove_pen(user)
|
||||
|
||||
///Finds how hard it is to send a virus to this tablet, checking all programs downloaded.
|
||||
/obj/item/modular_computer/tablet/proc/get_detomatix_difficulty()
|
||||
var/detomatix_difficulty
|
||||
|
||||
var/obj/item/computer_hardware/hard_drive/hdd = all_components[MC_HDD]
|
||||
if(hdd)
|
||||
for(var/datum/computer_file/program/downloaded_apps as anything in hdd.stored_files)
|
||||
detomatix_difficulty += downloaded_apps.detomatix_resistance
|
||||
|
||||
return detomatix_difficulty
|
||||
|
||||
/obj/item/modular_computer/tablet/proc/tab_no_detonate()
|
||||
SIGNAL_HANDLER
|
||||
return COMPONENT_TABLET_NO_DETONATE
|
||||
@@ -118,7 +129,7 @@
|
||||
|
||||
if(T)
|
||||
T.hotspot_expose(700,125)
|
||||
if(istype(all_components[MC_HDD_JOB], /obj/item/computer_hardware/hard_drive/role/virus/deto))
|
||||
if(istype(all_components[MC_SDD], /obj/item/computer_hardware/hard_drive/portable/virus/deto))
|
||||
explosion(src, devastation_range = -1, heavy_impact_range = 1, light_impact_range = 3, flash_range = 4)
|
||||
else
|
||||
explosion(src, devastation_range = -1, heavy_impact_range = -1, light_impact_range = 2, flash_range = 3)
|
||||
@@ -277,7 +288,10 @@
|
||||
bypass_state = TRUE
|
||||
allow_chunky = TRUE
|
||||
|
||||
var/default_disk = 0
|
||||
///All applications this tablet has pre-installed
|
||||
var/list/default_applications = list()
|
||||
///The pre-installed cartridge that comes with the tablet
|
||||
var/loaded_cartridge
|
||||
|
||||
/obj/item/modular_computer/tablet/pda/update_overlays()
|
||||
. = ..()
|
||||
@@ -305,8 +319,13 @@
|
||||
install_component(new /obj/item/computer_hardware/identifier)
|
||||
install_component(new /obj/item/computer_hardware/sensorpackage)
|
||||
|
||||
if(default_disk)
|
||||
var/obj/item/computer_hardware/hard_drive/portable/disk = new default_disk(src)
|
||||
if(!isnull(default_applications))
|
||||
var/obj/item/computer_hardware/hard_drive/small/hard_drive = find_hardware_by_name("solid state drive")
|
||||
for(var/datum/computer_file/program/default_programs as anything in default_applications)
|
||||
hard_drive.store_file(new default_programs)
|
||||
|
||||
if(loaded_cartridge)
|
||||
var/obj/item/computer_hardware/hard_drive/portable/disk = new loaded_cartridge(src)
|
||||
install_component(disk)
|
||||
|
||||
if(insert_type)
|
||||
|
||||
@@ -28,8 +28,7 @@
|
||||
install_component(hard_drive)
|
||||
install_component(new /obj/item/computer_hardware/card_slot)
|
||||
install_component(new /obj/item/computer_hardware/network_card)
|
||||
install_component(new /obj/item/computer_hardware/radio_card)
|
||||
hard_drive.store_file(new /datum/computer_file/program/signaler)
|
||||
hard_drive.store_file(new /datum/computer_file/program/signal_commander)
|
||||
|
||||
/obj/item/modular_computer/tablet/preset/cargo/Initialize(mapload)
|
||||
. = ..()
|
||||
|
||||
Reference in New Issue
Block a user