mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2025-12-22 16:12:19 +00:00
62 lines
2.3 KiB
Plaintext
62 lines
2.3 KiB
Plaintext
/obj/machinery/modular_computer/console/
|
|
name = "console"
|
|
desc = "A stationary computer."
|
|
|
|
icon = 'icons/obj/modular_console.dmi'
|
|
icon_state = "console"
|
|
icon_state_unpowered = "console"
|
|
screen_icon_state_menu = "menu"
|
|
hardware_flag = PROGRAM_CONSOLE
|
|
var/console_department = "" // Used in New() to set network tag according to our area.
|
|
anchored = 1
|
|
density = 1
|
|
base_idle_power_usage = 120
|
|
base_active_power_usage = 600
|
|
max_hardware_size = 3
|
|
steel_sheet_cost = 20
|
|
light_strength = 4
|
|
_max_damage = 300
|
|
_break_damage = 150
|
|
|
|
/obj/machinery/modular_computer/console/buildable/New()
|
|
..()
|
|
// User-built consoles start as empty frames.
|
|
qdel(tesla_link)
|
|
qdel(cpu.network_card)
|
|
qdel(cpu.hard_drive)
|
|
|
|
/obj/machinery/modular_computer/console/New()
|
|
..()
|
|
cpu.battery_module = null
|
|
cpu.network_card = new/obj/item/weapon/computer_hardware/network_card/wired(src)
|
|
tesla_link = new/obj/item/weapon/computer_hardware/tesla_link(src)
|
|
cpu.hard_drive = new/obj/item/weapon/computer_hardware/hard_drive/super(src) // Consoles generally have better HDDs due to lower space limitations
|
|
var/area/A = get_area(src)
|
|
// Attempts to set this console's tag according to our area. Since some areas have stuff like "XX - YY" in their names we try to remove that too.
|
|
if(A && console_department)
|
|
cpu.network_card.identification_string = replacetext(replacetext(replacetext("[A.name] [console_department] Console", " ", "_"), "-", ""), "__", "_") // Replace spaces with "_"
|
|
else if(A)
|
|
cpu.network_card.identification_string = replacetext(replacetext(replacetext("[A.name] Console", " ", "_"), "-", ""), "__", "_")
|
|
else if(console_department)
|
|
cpu.network_card.identification_string = replacetext(replacetext(replacetext("[console_department] Console", " ", "_"), "-", ""), "__", "_")
|
|
else
|
|
cpu.network_card.identification_string = "Unknown Console"
|
|
if(cpu)
|
|
cpu.screen_on = 1
|
|
update_icon()
|
|
|
|
/obj/machinery/modular_computer/console/CanPass(atom/movable/mover, turf/target, height=0, air_group=0)
|
|
if (!mover)
|
|
return 1
|
|
if(istype(mover,/obj/item/projectile) && density)
|
|
if (prob(80))
|
|
//Holoscreens are non solid, and the frames of the computers are thin. So projectiles will usually
|
|
//pass through
|
|
return 1
|
|
else
|
|
return 0
|
|
else if(mover.checkpass(PASSTABLE))
|
|
//Animals can run under them, lots of empty space
|
|
return 1
|
|
return ..()
|