mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2025-12-27 02:22:26 +00:00
Fixes incorrect icon for security camera program Adds Security access to the camera program (req one) Replaces obsolete camera consoles with security preset modular consoles Adds civilian preset consoles in several civilian areas: Vacant office, bar backroom, library, chaplains office. Library has two public ones, and one for the librarian. Modifies canpass on modular consoles to better represent them: Due to their spindly frames and non-solid holoscreens, bullets will usually just pass straight through them, only rarely clipping the frame. They're not good cover. So they have 80% chance to let bullets pass through unimpeded Small animals can walk under them. passtable flag. because lots of empty space
57 lines
2.3 KiB
Plaintext
57 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(istype(mover,/obj/item/projectile))
|
|
if (prob(80))
|
|
//Holoscreens are non solid, and the frames of the computers are thin. So projectiles will usually
|
|
//pass through
|
|
return 1
|
|
else if(istype(mover) && mover.checkpass(PASSTABLE))
|
|
//Animals can run under them, lots of empty space
|
|
return 1
|
|
return 0 |