Files
Bubberstation/code/modules/modular_computers/computers/item/disks/unique_disks.dm
SmArtKar 73f304ae21 Plexagon Crew Manifest is accessible and free to everyone. (#86070)
## About The Pull Request

Plexagon Crew Manifest has been made into a publicly accessible and
roundstart installed PDA app instead of being restricted to heads,
security and a few odd medical jobs. For this, it lost its major
Detomatix resistance which has been added to security records (minor
resistance) and status display control (major resistance)

To ensure that noone has to wipe their PDAs roundstart, its size on PDA
drives has been halved.

## Why It's Good For The Game

Crew manifest can be easily accessed from the messenger app, but without
nice formatting that plexagon has. The app itself does not have any
capabilities beyond reading crew manifest and printing it out on paper
from consoles, neither of which are something that cannot be already
done with ease. I believe this is a remnant from old PDA days and
doesn't really deserve to stay.

## Changelog
🆑
balance: Plexagon Crew Manifest is now a default PDA app for everyone,
and is free.
balance: Plexagon Crew Manifest no longer provides Detomatix resistance,
but security records and status display control now do.
/🆑
2024-08-29 09:31:15 -04:00

38 lines
1.6 KiB
Plaintext

/obj/item/computer_disk/syndicate
name = "golden data disk"
desc = "A data disk with some high-tech programs, probably expensive as hell."
icon_state = "datadisk8"
custom_materials = list(/datum/material/gold = SMALL_MATERIAL_AMOUNT)
/obj/item/computer_disk/syndicate/camera_app
starting_programs = list(/datum/computer_file/program/secureye/syndicate)
/obj/item/computer_disk/syndicate/contractor
starting_programs = list(/datum/computer_file/program/contract_uplink)
/obj/item/computer_disk/black_market
desc = "Removable disk used to store data. This one has a smudged piece of paper glued to it, reading \"PC softwarez\"."
/obj/item/computer_disk/black_market/Initialize(mapload)
icon_state = "datadisk[rand(0, 10)]"
//Populated with programs not found in the verified downloader app or that require access to download (but not to run).
var/list/potential_programs = list(
/datum/computer_file/program/arcade/eazy,
/datum/computer_file/program/radar/lifeline,
/datum/computer_file/program/radar/custodial_locator,
/datum/computer_file/program/supermatter_monitor,
/datum/computer_file/program/newscaster,
/datum/computer_file/program/secureye,
/datum/computer_file/program/status,
)
potential_programs += subtypesof(/datum/computer_file/program/maintenance) - /datum/computer_file/program/maintenance/theme
var/total_programs_size = 0
for(var/i in 1 to rand(2, 4))
var/datum/computer_file/program/to_add = pick_n_take(potential_programs)
total_programs_size += initial(to_add.size)
starting_programs += to_add
///Make sure the disk has enough space for all the programs
max_capacity = max(total_programs_size, max_capacity)
return ..()