Updates Part Four

This commit is contained in:
Unknown
2019-04-07 20:53:30 -04:00
parent b0c818b737
commit 677f91fdce
29 changed files with 614 additions and 186 deletions
@@ -71,17 +71,17 @@
user << "There is no card in \the [src]"
return
card_slot.stored_card.forceMove(get_turf(src))
card_slot.stored_card = null
update_uis()
user << "You remove the card from \the [src]"
if(active_program)
active_program.event_idremoved(0)
for(var/datum/computer_file/program/P in idle_threads)
P.event_idremoved(1)
card_slot.stored_card.forceMove(get_turf(src))
card_slot.stored_card = null
update_uis()
user << "You remove the card from \the [src]"
/obj/item/modular_computer/attack_ghost(var/mob/observer/dead/user)
if(enabled)
ui_interact(user)
@@ -102,14 +102,14 @@
/obj/item/modular_computer/New()
START_PROCESSING(SSobj, src)
update_icon()
return ..()
..()
/obj/item/modular_computer/Destroy()
kill_program(1)
STOP_PROCESSING(SSobj, src)
for(var/obj/item/weapon/computer_hardware/CH in src.get_all_components())
qdel(CH)
..()
return ..()
/obj/item/modular_computer/update_icon()
icon_state = icon_state_unpowered
@@ -318,12 +318,12 @@
var/obj/item/weapon/computer_hardware/H = find_hardware_by_name(href_list["PC_enable_component"])
if(H && istype(H) && !H.enabled)
H.enabled = 1
return 1
. = 1
if( href_list["PC_disable_component"] )
var/obj/item/weapon/computer_hardware/H = find_hardware_by_name(href_list["PC_disable_component"])
if(H && istype(H) && H.enabled)
H.enabled = 0
return 1
. = 1
if( href_list["PC_shutdown"] )
shutdown_computer()
return 1
@@ -374,6 +374,8 @@
active_program = P
update_icon()
return 1
if(.)
update_uis()
// Used in following function to reduce copypaste
/obj/item/modular_computer/proc/power_failure()
@@ -392,6 +394,7 @@
return 0
var/power_usage = screen_on ? base_active_power_usage : base_idle_power_usage
for(var/obj/item/weapon/computer_hardware/H in get_all_components())
if(H.enabled)
power_usage += H.power_usage
@@ -58,10 +58,12 @@
console_department = "Command"
desc = "A stationary computer. This one comes preloaded with command programs."
_has_id_slot = 1
_has_printer = 1
/obj/machinery/modular_computer/console/preset/command/install_programs()
cpu.hard_drive.store_file(new/datum/computer_file/program/chatclient())
cpu.hard_drive.store_file(new/datum/computer_file/program/card_mod())
cpu.hard_drive.store_file(new/datum/computer_file/program/comm())
// ===== SECURITY CONSOLE =====
@@ -17,6 +17,7 @@
icon_state = null
var/icon_state_unpowered = null // Icon state when the computer is turned off
var/screen_icon_state_menu = "menu" // Icon state overlay when the computer is turned on, but no program is loaded that would override the screen.
var/screen_icon_screensaver = "standby" // Icon state overlay when the computer is powered, but not 'switched on'.
var/max_hardware_size = 0 // Maximal hardware size. Currently, tablets have 1, laptops 2 and consoles 3. Limits what hardware types can be installed.
var/steel_sheet_cost = 10 // Amount of steel sheets refunded when disassembling an empty frame of this computer.
@@ -39,6 +40,8 @@
overlays.Cut()
if(!cpu || !cpu.enabled)
if (!(stat & NOPOWER) || battery_powered)
overlays.Add(screen_icon_screensaver)
return
if(cpu.active_program)
overlays.Add(cpu.active_program.program_icon_state ? cpu.active_program.program_icon_state : screen_icon_state_menu)