Files
nevimer 00ccf0c6b5 Merge remote-tracking branch 'tgstation/master' into upstream-feb12-2026
# Conflicts:
#	.github/CODEOWNERS
#	.github/workflows/compile_changelogs.yml
#	.github/workflows/stale.yml
#	SQL/database_changelog.md
#	_maps/map_files/CatwalkStation/CatwalkStation_2023.dmm
#	code/__DEFINES/atom_hud.dm
#	code/__DEFINES/inventory.dm
#	code/__DEFINES/mobs.dm
#	code/__DEFINES/species_clothing_paths.dm
#	code/__DEFINES/subsystems.dm
#	code/__DEFINES/surgery.dm
#	code/__HELPERS/global_lists.dm
#	code/_globalvars/lists/maintenance_loot.dm
#	code/_globalvars/traits/_traits.dm
#	code/controllers/subsystem/minor_mapping.dm
#	code/controllers/subsystem/processing/quirks.dm
#	code/controllers/subsystem/shuttle.dm
#	code/datums/components/palette.dm
#	code/datums/components/surgery_initiator.dm
#	code/datums/diseases/advance/advance.dm
#	code/datums/hud.dm
#	code/datums/mood.dm
#	code/datums/mutations/chameleon.dm
#	code/datums/quirks/negative_quirks/nyctophobia.dm
#	code/datums/status_effects/debuffs/debuffs.dm
#	code/datums/status_effects/debuffs/drunk.dm
#	code/datums/status_effects/debuffs/slime/slime_leech.dm
#	code/datums/weather/weather.dm
#	code/game/data_huds.dm
#	code/game/objects/items.dm
#	code/game/objects/items/devices/scanners/health_analyzer.dm
#	code/game/objects/items/frog_statue.dm
#	code/game/objects/items/rcd/RLD.dm
#	code/game/objects/items/robot/items/hypo.dm
#	code/game/objects/items/stacks/medical.dm
#	code/game/objects/items/stacks/wrap.dm
#	code/game/objects/items/storage/garment.dm
#	code/game/objects/items/tools/medical/defib.dm
#	code/game/objects/items/weaponry.dm
#	code/game/objects/items/weaponry/melee/misc.dm
#	code/game/objects/structures/crates_lockers/closets/secure/security.dm
#	code/game/objects/structures/curtains.dm
#	code/game/objects/structures/dresser.dm
#	code/game/objects/structures/girders.dm
#	code/game/objects/structures/maintenance.dm
#	code/game/objects/structures/mirror.dm
#	code/modules/admin/greyscale_modify_menu.dm
#	code/modules/admin/verbs/light_debug.dm
#	code/modules/antagonists/ashwalker/ashwalker.dm
#	code/modules/antagonists/heretic/knowledge/starting_lore.dm
#	code/modules/antagonists/ninja/ninjaDrainAct.dm
#	code/modules/art/paintings.dm
#	code/modules/client/preferences.dm
#	code/modules/client/verbs/ooc.dm
#	code/modules/clothing/head/wig.dm
#	code/modules/events/disease_outbreak.dm
#	code/modules/holodeck/holo_effect.dm
#	code/modules/jobs/job_types/head_of_security.dm
#	code/modules/jobs/job_types/security_officer.dm
#	code/modules/library/skill_learning/generic_skillchips/point.dm
#	code/modules/mining/lavaland/ash_flora.dm
#	code/modules/mining/lavaland/mining_loot/megafauna/ash_drake.dm
#	code/modules/mob/dead/new_player/new_player.dm
#	code/modules/mob/living/basic/guardian/guardian.dm
#	code/modules/mob/living/basic/space_fauna/space_dragon/space_dragon.dm
#	code/modules/mob/living/carbon/carbon.dm
#	code/modules/mob/living/carbon/human/human.dm
#	code/modules/mob/living/carbon/human/human_defines.dm
#	code/modules/mob/living/carbon/life.dm
#	code/modules/mob/living/living.dm
#	code/modules/mob/living/living_defines.dm
#	code/modules/mob/mob.dm
#	code/modules/mob_spawn/ghost_roles/mining_roles.dm
#	code/modules/mod/mod_control.dm
#	code/modules/mod/modules/modules_general.dm
#	code/modules/modular_computers/computers/item/computer_ui.dm
#	code/modules/paperwork/paper.dm
#	code/modules/paperwork/paperbin.dm
#	code/modules/power/lighting/light.dm
#	code/modules/projectiles/guns/energy/kinetic_accelerator.dm
#	code/modules/projectiles/projectile.dm
#	code/modules/reagents/chemistry/reagents/drinks/alcohol_reagents.dm
#	code/modules/reagents/chemistry/reagents/food_reagents.dm
#	code/modules/reagents/chemistry/reagents/other_reagents.dm
#	code/modules/reagents/chemistry/reagents/pyrotechnic_reagents.dm
#	code/modules/research/xenobiology/crossbreeding/_clothing.dm
#	code/modules/research/xenobiology/crossbreeding/prismatic.dm
#	code/modules/surgery/advanced/brainwashing.dm
#	code/modules/surgery/advanced/lobotomy.dm
#	code/modules/surgery/amputation.dm
#	code/modules/surgery/blood_filter.dm
#	code/modules/surgery/bodyparts/_bodyparts.dm
#	code/modules/surgery/brain_surgery.dm
#	code/modules/surgery/cavity_implant.dm
#	code/modules/surgery/coronary_bypass.dm
#	code/modules/surgery/gastrectomy.dm
#	code/modules/surgery/healing.dm
#	code/modules/surgery/limb_augmentation.dm
#	code/modules/surgery/organ_manipulation.dm
#	code/modules/surgery/revival.dm
#	code/modules/surgery/sleeper_protocol.dm
#	code/modules/surgery/surgery_helpers.dm
#	code/modules/surgery/surgery_step.dm
#	code/modules/unit_tests/_unit_tests.dm
#	code/modules/unit_tests/designs.dm
#	code/modules/unit_tests/icon_state_worn.dm
#	code/modules/unit_tests/screenshots/screenshot_antag_icons_cultist.png
#	code/modules/unit_tests/screenshots/screenshot_antag_icons_headrevolutionary.png
#	code/modules/unit_tests/screenshots/screenshot_antag_icons_provocateur.png
#	code/modules/unit_tests/screenshots/screenshot_husk_body.png
#	code/modules/unit_tests/screenshots/screenshot_husk_body_missing_limbs.png
#	icons/map_icons/clothing/head/_head.dmi
#	icons/map_icons/clothing/shoes.dmi
#	icons/map_icons/items/_item.dmi
#	icons/mob/huds/hud.dmi
#	icons/mob/inhands/64x64_lefthand.dmi
#	icons/mob/inhands/64x64_righthand.dmi
#	icons/obj/machines/computer.dmi
#	tgui/packages/tgui/interfaces/OperatingComputer.jsx
#	tgui/packages/tgui/interfaces/PreferencesMenu/CharacterPreferences/MainPage.tsx
#	tgui/packages/tgui/interfaces/PreferencesMenu/types.ts
#	tgui/packages/tgui/interfaces/SurgeryInitiator.tsx
#	tools/icon_cutter/check.py
2026-02-12 23:50:09 -05:00

510 lines
16 KiB
Plaintext

/**
* Command
*/
/obj/item/modular_computer/pda/heads
icon_state = "/obj/item/modular_computer/pda/heads"
greyscale_config = /datum/greyscale_config/tablet/head
greyscale_colors = "#67A364#a92323"
max_capacity = parent_type::max_capacity * 2
var/static/list/datum/computer_file/head_programs = list(
/datum/computer_file/program/status,
/datum/computer_file/program/science,
/datum/computer_file/program/robocontrol,
/datum/computer_file/program/budgetorders,
)
/obj/item/modular_computer/pda/heads/Initialize(mapload)
. = ..()
for(var/programs in head_programs)
var/datum/computer_file/program/program_type = new programs
store_file(program_type)
/obj/item/modular_computer/pda/heads/captain
name = "captain PDA"
icon_state = "/obj/item/modular_computer/pda/heads/captain"
greyscale_config = /datum/greyscale_config/tablet/captain
greyscale_colors = "#2C7CB2#FF0000#FFFFFF#FFD55B"
inserted_item = /obj/item/pen/fountain/captain
/obj/item/modular_computer/pda/heads/captain/Initialize(mapload)
. = ..()
RegisterSignal(src, COMSIG_TABLET_CHECK_DETONATE, PROC_REF(tab_no_detonate))
for(var/datum/computer_file/program/messenger/messenger_app in stored_files)
messenger_app.spam_mode = TRUE
/obj/item/modular_computer/pda/heads/captain/proc/tab_no_detonate()
SIGNAL_HANDLER
return COMPONENT_TABLET_NO_DETONATE
/obj/item/modular_computer/pda/heads/hop
name = "head of personnel PDA"
icon_state = "/obj/item/modular_computer/pda/heads/hop"
greyscale_config = /datum/greyscale_config/tablet/stripe_thick/head
greyscale_colors = "#374f7e#a52f29#a52f29"
starting_programs = list(
/datum/computer_file/program/records/security,
/datum/computer_file/program/job_management,
)
/obj/item/modular_computer/pda/heads/hos
name = "head of security PDA"
icon_state = "/obj/item/modular_computer/pda/heads/hos"
greyscale_config = /datum/greyscale_config/tablet/head
greyscale_colors = "#EA3232#0000CC"
inserted_item = /obj/item/pen/red/security
starting_programs = list(
/datum/computer_file/program/records/security,
)
/obj/item/modular_computer/pda/heads/ce
name = "chief engineer PDA"
icon_state = "/obj/item/modular_computer/pda/heads/ce"
greyscale_config = /datum/greyscale_config/tablet/stripe_thick/head
greyscale_colors = "#D99A2E#69DBF3#FAFAFA"
starting_programs = list(
/datum/computer_file/program/atmosscan,
/datum/computer_file/program/alarm_monitor,
/datum/computer_file/program/supermatter_monitor,
)
/obj/item/modular_computer/pda/heads/cmo
name = "chief medical officer PDA"
icon_state = "/obj/item/modular_computer/pda/heads/cmo"
greyscale_config = /datum/greyscale_config/tablet/stripe_thick/head
greyscale_colors = "#FAFAFA#000099#3F96CC"
starting_programs = list(
/datum/computer_file/program/maintenance/phys_scanner,
/datum/computer_file/program/records/medical,
)
/obj/item/modular_computer/pda/heads/rd
name = "research director PDA"
icon_state = "/obj/item/modular_computer/pda/heads/rd"
greyscale_config = /datum/greyscale_config/tablet/stripe_thick/head
greyscale_colors = "#FAFAFA#000099#B347BC"
inserted_item = /obj/item/pen/fountain
starting_programs = list(
/datum/computer_file/program/borg_monitor,
/datum/computer_file/program/scipaper_program,
/datum/computer_file/program/signal_commander,
)
/obj/item/modular_computer/pda/heads/quartermaster
name = "quartermaster PDA"
icon_state = "/obj/item/modular_computer/pda/heads/quartermaster"
greyscale_config = /datum/greyscale_config/tablet/stripe_thick/head
greyscale_colors = "#c4b787#18191e#8b4c31"
inserted_item = /obj/item/pen/survival
stored_paper = 20
starting_programs = list(
/datum/computer_file/program/shipping,
/datum/computer_file/program/restock_tracker,
)
/**
* Security
*/
/obj/item/modular_computer/pda/security
name = "security PDA"
greyscale_colors = "#EA3232#0000cc"
inserted_item = /obj/item/pen/red/security
starting_programs = list(
/datum/computer_file/program/records/security,
/datum/computer_file/program/robocontrol,
)
/obj/item/modular_computer/pda/detective
name = "detective PDA"
greyscale_colors = "#805A2F#990202"
inserted_item = /obj/item/pen/red/security
starting_programs = list(
/datum/computer_file/program/records/security,
/datum/computer_file/program/robocontrol,
)
/obj/item/modular_computer/pda/warden
name = "warden PDA"
icon_state = "/obj/item/modular_computer/pda/warden"
greyscale_config = /datum/greyscale_config/tablet/stripe_double
greyscale_colors = "#EA3232#0000CC#363636"
inserted_item = /obj/item/pen/red/security
starting_programs = list(
/datum/computer_file/program/records/security,
/datum/computer_file/program/robocontrol,
/datum/computer_file/program/budgetorders,
)
/**
* Engineering
*/
/obj/item/modular_computer/pda/engineering
name = "engineering PDA"
icon_state = "/obj/item/modular_computer/pda/engineering"
greyscale_config = /datum/greyscale_config/tablet/stripe_thick
greyscale_colors = "#D99A2E#69DBF3#E3DF3D"
starting_programs = list(
/datum/computer_file/program/alarm_monitor,
/datum/computer_file/program/atmosscan,
/datum/computer_file/program/supermatter_monitor,
)
/obj/item/modular_computer/pda/atmos
name = "atmospherics PDA"
icon_state = "/obj/item/modular_computer/pda/atmos"
greyscale_config = /datum/greyscale_config/tablet/stripe_thick
greyscale_colors = "#EEDC43#00E5DA#727272"
starting_programs = list(
/datum/computer_file/program/alarm_monitor,
/datum/computer_file/program/atmosscan,
/datum/computer_file/program/supermatter_monitor,
)
/**
* Science
*/
/obj/item/modular_computer/pda/science
name = "scientist PDA"
icon_state = "/obj/item/modular_computer/pda/science"
greyscale_config = /datum/greyscale_config/tablet/stripe_thick
greyscale_colors = "#FAFAFA#000099#B347BC"
starting_programs = list(
/datum/computer_file/program/atmosscan,
/datum/computer_file/program/science,
/datum/computer_file/program/scipaper_program,
/datum/computer_file/program/signal_commander,
)
/obj/item/modular_computer/pda/roboticist
name = "roboticist PDA"
icon_state = "/obj/item/modular_computer/pda/roboticist"
greyscale_config = /datum/greyscale_config/tablet/stripe_double
greyscale_colors = "#484848#0099CC#D94927"
starting_programs = list(
/datum/computer_file/program/science,
/datum/computer_file/program/robocontrol,
/datum/computer_file/program/borg_monitor,
)
/obj/item/modular_computer/pda/geneticist
name = "geneticist PDA"
icon_state = "/obj/item/modular_computer/pda/geneticist"
greyscale_config = /datum/greyscale_config/tablet/stripe_double
greyscale_colors = "#FAFAFA#000099#0097CA"
starting_programs = list(
/datum/computer_file/program/records/medical,
)
/**
* Medical
*/
/obj/item/modular_computer/pda/medical
name = "medical PDA"
icon_state = "/obj/item/modular_computer/pda/medical"
greyscale_config = /datum/greyscale_config/tablet/stripe_thick
greyscale_colors = "#FAFAFA#000099#3F96CC"
starting_programs = list(
/datum/computer_file/program/records/medical,
/datum/computer_file/program/robocontrol,
)
/obj/item/modular_computer/pda/medical/paramedic
name = "paramedic PDA"
icon_state = "/obj/item/modular_computer/pda/medical/paramedic"
greyscale_config = /datum/greyscale_config/tablet/stripe_double
greyscale_colors = "#28334D#000099#3F96CC"
starting_programs = list(
/datum/computer_file/program/records/medical,
/datum/computer_file/program/radar/lifeline,
)
/obj/item/modular_computer/pda/chemist
name = "chemist PDA"
icon_state = "/obj/item/modular_computer/pda/chemist"
greyscale_config = /datum/greyscale_config/tablet/stripe_thick
greyscale_colors = "#FAFAFA#355FAC#EA6400"
/obj/item/modular_computer/pda/coroner
name = "coroner PDA"
icon_state = "/obj/item/modular_computer/pda/coroner"
greyscale_config = /datum/greyscale_config/tablet/stripe_thick
greyscale_colors = "#FAFAFA#000099#1f2026"
starting_programs = list(
/datum/computer_file/program/records/medical,
)
/**
* Supply
*/
/obj/item/modular_computer/pda/cargo
name = "cargo technician PDA"
icon_state = "/obj/item/modular_computer/pda/cargo"
greyscale_colors = "#8b4c31#2c2e32"
stored_paper = 20
starting_programs = list(
/datum/computer_file/program/shipping,
/datum/computer_file/program/budgetorders,
/datum/computer_file/program/robocontrol,
/datum/computer_file/program/restock_tracker,
)
/obj/item/modular_computer/pda/shaftminer
name = "shaft miner PDA"
icon_state = "/obj/item/modular_computer/pda/shaftminer"
greyscale_config = /datum/greyscale_config/tablet/stripe_thick
greyscale_colors = "#927444#8b4c31#4c202d"
starting_programs = list(
/datum/computer_file/program/skill_tracker,
/datum/computer_file/program/raptordex,
)
/obj/item/modular_computer/pda/bitrunner
name = "bit runner PDA"
icon_state = "/obj/item/modular_computer/pda/bitrunner"
greyscale_colors = "#D6B328#6BC906"
starting_programs = list(
/datum/computer_file/program/arcade,
/datum/computer_file/program/skill_tracker,
)
/**
* Service
*/
/obj/item/modular_computer/pda/janitor
name = "janitor PDA"
icon_state = "/obj/item/modular_computer/pda/janitor"
greyscale_colors = "#933ea8#235AB2"
starting_programs = list(
/datum/computer_file/program/skill_tracker,
/datum/computer_file/program/radar/custodial_locator,
)
/obj/item/modular_computer/pda/chaplain
name = "chaplain PDA"
icon_state = "/obj/item/modular_computer/pda/chaplain"
greyscale_config = /datum/greyscale_config/tablet/chaplain
greyscale_colors = "#333333#D11818"
/obj/item/modular_computer/pda/lawyer
name = "lawyer PDA"
greyscale_colors = "#4C76C8#FFE243"
inserted_item = /obj/item/pen/fountain
starting_programs = list(
/datum/computer_file/program/records/security,
)
/obj/item/modular_computer/pda/lawyer/Initialize(mapload)
. = ..()
for(var/datum/computer_file/program/messenger/messenger_app in stored_files)
messenger_app.spam_mode = TRUE
/obj/item/modular_computer/pda/botanist
name = "botanist PDA"
icon_state = "/obj/item/modular_computer/pda/botanist"
greyscale_config = /datum/greyscale_config/tablet/stripe_thick
greyscale_colors = "#50E193#E26F41#71A7CA"
/obj/item/modular_computer/pda/cook
name = "cook PDA"
icon_state = "/obj/item/modular_computer/pda/botanist"
greyscale_colors = "#FAFAFA#A92323"
/obj/item/modular_computer/pda/bar
name = "bartender PDA"
icon_state = "/obj/item/modular_computer/pda/bar"
greyscale_colors = "#333333#C7C7C7"
inserted_item = /obj/item/pen/fountain
/obj/item/modular_computer/pda/clown
name = "clown PDA"
icon = 'icons/obj/devices/modular_pda.dmi'
icon_state = "pda-clown"
post_init_icon_state = null
inserted_disk = /obj/item/disk/computer/virus/clown
greyscale_config = null
greyscale_colors = null
inserted_item = /obj/item/toy/crayon/rainbow
/obj/item/modular_computer/pda/clown/Initialize(mapload)
. = ..()
AddComponent(\
/datum/component/slippery,\
knockdown = 12 SECONDS,\
lube_flags = NO_SLIP_WHEN_WALKING,\
on_slip_callback = CALLBACK(src, PROC_REF(AfterSlip)),\
can_slip_callback = CALLBACK(src, PROC_REF(try_slip)),\
slot_whitelist = ITEM_SLOT_ID | ITEM_SLOT_BELT,\
)
AddComponent(/datum/component/wearertargeting/sitcomlaughter, CALLBACK(src, PROC_REF(after_sitcom_laugh)))
/// Returns whether the PDA can slip or not, if we have a wearer then check if they are in a position to slip someone.
/obj/item/modular_computer/pda/clown/proc/try_slip(mob/living/slipper, mob/living/slippee)
if(isnull(slipper))
return TRUE
if(!istype(slipper.get_item_by_slot(ITEM_SLOT_FEET), /obj/item/clothing/shoes/clown_shoes))
to_chat(slipper,span_warning("[src] failed to slip anyone. Perhaps I shouldn't have abandoned my legacy..."))
return FALSE
return TRUE
/obj/item/modular_computer/pda/clown/update_overlays()
. = ..()
. += mutable_appearance(icon, "pda_stripe_clown") // clowns have eyes that go over their screen, so it needs to be compiled last
/obj/item/modular_computer/pda/clown/proc/AfterSlip(mob/living/carbon/human/M)
if (istype(M) && (M.real_name != saved_identification))
var/obj/item/disk/computer/virus/clown/cart = inserted_disk
if(istype(cart) && cart.charges < 5)
cart.charges++
playsound(src,'sound/machines/ping.ogg',30,TRUE)
/obj/item/modular_computer/pda/clown/proc/after_sitcom_laugh(mob/victim)
victim.visible_message("[src] lets out a burst of laughter!")
/obj/item/modular_computer/pda/mime
name = "mime PDA"
inserted_disk = /obj/item/disk/computer/virus/mime
icon_state = "/obj/item/modular_computer/pda/mime"
greyscale_config = /datum/greyscale_config/tablet/mime
greyscale_colors = "#FAFAFA#EA3232"
inserted_item = /obj/item/toy/crayon/mime
starting_programs = list(
/datum/computer_file/program/emojipedia,
)
/obj/item/modular_computer/pda/mime/Initialize(mapload)
. = ..()
for(var/datum/computer_file/program/messenger/msg in stored_files)
msg.mime_mode = TRUE
msg.alert_silenced = TRUE
/obj/item/modular_computer/pda/curator
name = "curator PDA"
desc = "A small experimental microcomputer."
icon = 'icons/obj/devices/modular_pda.dmi'
icon_state = "pda-library"
post_init_icon_state = null
greyscale_config = null
greyscale_colors = null
inserted_item = /obj/item/pen/fountain
long_ranged = TRUE
starting_programs = list(
/datum/computer_file/program/emojipedia,
/datum/computer_file/program/newscaster,
/datum/computer_file/program/portrait_printer,
)
/* // SKYRAT EDIT REMOVAL BEGIN - Mutes the Curator's ringer on spawn
/obj/item/modular_computer/pda/curator/Initialize(mapload)
. = ..()
for(var/datum/computer_file/program/messenger/msg in stored_files)
msg.alert_silenced = TRUE
*/ // SKYRAT EDIT REMOVAL END
/obj/item/modular_computer/pda/psychologist
name = "psychologist PDA"
icon_state = "/obj/item/modular_computer/pda/psychologist"
greyscale_config = /datum/greyscale_config/tablet/stripe_thick
greyscale_colors = "#333333#000099#3F96CC"
starting_programs = list(
/datum/computer_file/program/records/medical,
/datum/computer_file/program/robocontrol,
)
/**
* No Department/Station Trait
*/
/obj/item/modular_computer/pda/assistant
name = "assistant PDA"
flags_1 = parent_type::flags_1 | NO_NEW_GAGS_PREVIEW_1
starting_programs = list(
/datum/computer_file/program/bounty_board,
)
/obj/item/modular_computer/pda/bridge_assistant
name = "bridge assistant PDA"
greyscale_colors = "#374f7e#a92323"
starting_programs = list(
/datum/computer_file/program/status,
)
/obj/item/modular_computer/pda/veteran_advisor
name = "security advisor PDA"
greyscale_colors = "#EA3232#FFD700"
inserted_item = /obj/item/pen/fountain
starting_programs = list(
/datum/computer_file/program/records/security,
/datum/computer_file/program/coupon, //veteran discount
/datum/computer_file/program/skill_tracker,
)
/obj/item/modular_computer/pda/human_ai
name = "modular interface"
icon = 'icons/obj/devices/modular_pda.dmi'
icon_state = "pda-silicon-human"
post_init_icon_state = null
base_icon_state = "pda-silicon-human"
greyscale_config = null
greyscale_colors = null
has_light = FALSE //parity with borg PDAs
comp_light_luminosity = 0
inserted_item = null
has_pda_programs = FALSE
starting_programs = list(
/datum/computer_file/program/messenger,
/datum/computer_file/program/secureye/human_ai,
/datum/computer_file/program/alarm_monitor,
/datum/computer_file/program/status,
/datum/computer_file/program/robocontrol,
/datum/computer_file/program/borg_monitor,
)
/obj/item/modular_computer/pda/pun_pun
name = "monkey PDA"
greyscale_colors = "#ffcc66#914800"
starting_programs = list(
/datum/computer_file/program/bounty_board,
/datum/computer_file/program/emojipedia,
)
/**
* Non-roles
*/
/obj/item/modular_computer/pda/syndicate
name = "military PDA"
greyscale_colors = "#891417#80FF80"
saved_identification = "John Doe"
saved_job = "Citizen"
device_theme = PDA_THEME_SYNDICATE
/obj/item/modular_computer/pda/syndicate/Initialize(mapload)
. = ..()
var/datum/computer_file/program/messenger/msg = locate() in stored_files
if(msg)
msg.invisible = TRUE
/obj/item/modular_computer/pda/clear
name = "clear PDA"
icon = 'icons/obj/devices/modular_pda.dmi'
icon_state = "pda-clear"
post_init_icon_state = null
greyscale_config = null
greyscale_colors = null
long_ranged = TRUE
/obj/item/modular_computer/pda/clear/Initialize(mapload)
. = ..()
var/datum/computer_file/program/themeify/theme_app = locate() in stored_files
if(theme_app)
for(var/theme_key in GLOB.pda_name_to_theme - GLOB.default_pda_themes)
LAZYADD(theme_app.imported_themes, theme_key)
/obj/item/modular_computer/pda/clear/get_messenger_ending()
return "Sent from my crystal PDA"