Computer manager and more (#1406)

The downloader and the file manager no longer come default on any device.
A client enrollment app comes now with every console
The user has to select weather the device is a private or company device and select a software preset if its a work console
Work devices are locked down to a specific set of programs
Private devices get the downloader and the file manager to install programs as usual.
Threw out the backup of the old-old camera monitor.
Made software presets a generic thing that are not dependant on the form factor of a device.
Ported holowarrants from bay
Ported wall mounted consoles from bay
Ported various computer fixes from bay
Vending machines spawn now with the holowarrant "client"
Mapping changes:

CE and HoS dont get a modular computer with command preset (they did not have that before bay merge, so why should they now)
Added a modular computer with command preset to the head of staff briefing room
Replaced the camera monitoring console in the Engine Control room with a modular computer
Replaced the cam monitor in the CE´s office with a wall mounted console
Switched places of the bar sink and console
Replaced the consoles with obj/item consoles
Mapped in the ERT and Merc Console (Merc Shuttle, ERT Area)
Fixed the "border" at the heisters base
Also waiting for CCIA on a design for the warrants.
But that can be changed with a follow up pull
This commit is contained in:
Werner
2017-01-20 21:45:53 +02:00
committed by skull132
parent 58dc6dde9e
commit 9d134d8e15
56 changed files with 2095 additions and 1727 deletions
@@ -16,27 +16,27 @@
/obj/item/weapon/computer_hardware/attackby(var/obj/item/W as obj, var/mob/living/user as mob)
// Multitool. Runs diagnostics
if(istype(W, /obj/item/device/multitool))
user << "***** DIAGNOSTICS REPORT *****"
to_chat(user, "***** DIAGNOSTICS REPORT *****")
diagnostics(user)
user << "******************************"
to_chat(user, "******************************")
return 1
// Nanopaste. Repair all damage if present for a single unit.
var/obj/item/stack/S = W
if(istype(S, /obj/item/stack/nanopaste))
if(!damage)
user << "\The [src] doesn't seem to require repairs."
to_chat(user, "\The [src] doesn't seem to require repairs.")
return 1
if(S.use(1))
user << "You apply a bit of \the [W] to \the [src]. It immediately repairs all damage."
to_chat(user, "You apply a bit of \the [W] to \the [src]. It immediately repairs all damage.")
damage = 0
return 1
// Cable coil. Works as repair method, but will probably require multiple applications and more cable.
if(istype(S, /obj/item/stack/cable_coil))
if(!damage)
user << "\The [src] doesn't seem to require repairs."
to_chat(user, "\The [src] doesn't seem to require repairs.")
return 1
if(S.use(1))
user << "You patch up \the [src] with a bit of \the [W]."
to_chat(user, "You patch up \the [src] with a bit of \the [W].")
take_damage(-10)
return 1
return ..()
@@ -44,15 +44,10 @@
// Called on multitool click, prints diagnostic information to the user.
/obj/item/weapon/computer_hardware/proc/diagnostics(var/mob/user)
user << "Hardware Integrity Test... (Corruption: [damage]/[max_damage]) [damage > damage_failure ? "FAIL" : damage > damage_malfunction ? "WARN" : "PASS"]"
to_chat(user, "Hardware Integrity Test... (Corruption: [damage]/[max_damage]) [damage > damage_failure ? "FAIL" : damage > damage_malfunction ? "WARN" : "PASS"]")
/obj/item/weapon/computer_hardware/New(var/obj/L)
w_class = hardware_size
if(istype(L, /obj/machinery/modular_computer))
var/obj/machinery/modular_computer/C = L
if(C.cpu)
holder2 = C.cpu
return
if(istype(L, /obj/item/modular_computer))
holder2 = L
return
@@ -63,6 +58,9 @@
// Handles damage checks
/obj/item/weapon/computer_hardware/proc/check_functionality()
// Turned off
if(!enabled)
return 0
// Too damaged to work at all.
if(damage > damage_failure)
return 0
@@ -76,11 +74,11 @@
/obj/item/weapon/computer_hardware/examine(var/mob/user)
. = ..()
if(damage > damage_failure)
user << "<span class='danger'>It seems to be severely damaged!</span>"
to_chat(user, "<span class='danger'>It seems to be severely damaged!</span>")
else if(damage > damage_malfunction)
user << "<span class='notice'>It seems to be damaged!</span>"
to_chat(user, "<span class='notice'>It seems to be damaged!</span>")
else if(damage)
user << "It seems to be slightly damaged."
to_chat(user, "It seems to be slightly damaged.")
// Damages the component. Contains necessary checks. Negative damage "heals" the component.
/obj/item/weapon/computer_hardware/proc/take_damage(var/amount)