Makes power monitor computers actual computers

Removes the powernet var from circuit boards. Power monitors get their
powernet from the cable underneath them anyways.
This commit is contained in:
mwerezak
2014-08-18 18:27:51 -04:00
parent 11ce777d9c
commit bdb2a45700
4 changed files with 25 additions and 56 deletions

View File

@@ -24,11 +24,17 @@
var/build_path = null
var/board_type = "computer"
var/list/req_components = null
var/powernet = null
var/list/records = null
var/frame_desc = null
var/contain_parts = 1
//TODO: move this into constructable_frame.dm, as circuitboards are used to construct all kinds of machines
/obj/item/weapon/circuitboard/proc/construct_machine(var/obj/machinery/M)
return
/*
Circuit Board Definitions
*/
/obj/item/weapon/circuitboard/message_monitor
name = "Circuit board (Message Monitor)"
@@ -135,12 +141,12 @@
name = "Circuit board (Turbine control)"
build_path = "/obj/machinery/computer/turbine_computer"
/obj/item/weapon/circuitboard/solar_control
name = "Circuit board (Solar Control)" //name fixed 250810
name = "Circuit board (Solar Control)"
build_path = "/obj/machinery/power/solar_control"
origin_tech = "programming=2;powerstorage=2"
/obj/item/weapon/circuitboard/powermonitor
name = "Circuit board (Power Monitor)" //name fixed 250810
build_path = "/obj/machinery/power/monitor"
name = "Circuit board (Power Monitor)"
build_path = "/obj/machinery/computer/power_monitor"
/obj/item/weapon/circuitboard/olddoor
name = "Circuit board (DoorMex)"
build_path = "/obj/machinery/computer/pod/old"
@@ -397,7 +403,6 @@
playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1)
user << "\blue You connect the monitor."
var/B = new src.circuit.build_path ( src.loc )
if(circuit.powernet) B:powernet = circuit.powernet
if(circuit.id) B:id = circuit.id
if(circuit.records) B:records = circuit.records
if(circuit.frequency) B:frequency = circuit.frequency

View File

@@ -1,19 +1,14 @@
// the power monitoring computer
// for the moment, just report the status of all APCs in the same powernet
/obj/machinery/power/monitor
/obj/machinery/computer/power_monitor
name = "power monitoring computer"
desc = "It monitors power levels across the station."
icon = 'icons/obj/computer.dmi'
icon_state = "power"
density = 1
anchored = 1
use_power = 2
idle_power_usage = 20
active_power_usage = 80
circuit = /obj/item/weapon/circuitboard/powermonitor
var/datum/powernet/powernet
//fix for issue 521, by QualityVan.
//someone should really look into why circuits have a powernet var, it's several kinds of retarded.
/obj/machinery/power/monitor/New()
/obj/machinery/computer/power_monitor/New()
..()
var/obj/structure/cable/attached = null
var/turf/T = loc
@@ -23,52 +18,21 @@
powernet = attached.get_powernet()
/obj/machinery/power/monitor/attack_ai(mob/user)
/obj/machinery/computer/power_monitor/attack_ai(mob/user)
add_fingerprint(user)
if(stat & (BROKEN|NOPOWER))
return
interact(user)
/obj/machinery/power/monitor/attack_hand(mob/user)
/obj/machinery/computer/power_monitor/attack_hand(mob/user)
add_fingerprint(user)
if(stat & (BROKEN|NOPOWER))
return
interact(user)
/obj/machinery/power/monitor/attackby(I as obj, user as mob)
if(istype(I, /obj/item/weapon/screwdriver))
playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1)
if(do_after(user, 20))
if (src.stat & BROKEN)
user << "\blue The broken glass falls out."
var/obj/structure/computerframe/A = new /obj/structure/computerframe( src.loc )
new /obj/item/weapon/shard( src.loc )
var/obj/item/weapon/circuitboard/powermonitor/M = new /obj/item/weapon/circuitboard/powermonitor( A )
for (var/obj/C in src)
C.loc = src.loc
A.circuit = M
A.state = 3
A.icon_state = "3"
A.anchored = 1
del(src)
else
user << "\blue You disconnect the monitor."
var/obj/structure/computerframe/A = new /obj/structure/computerframe( src.loc )
var/obj/item/weapon/circuitboard/powermonitor/M = new /obj/item/weapon/circuitboard/powermonitor( A )
for (var/obj/C in src)
C.loc = src.loc
A.circuit = M
A.state = 4
A.icon_state = "4"
A.anchored = 1
del(src)
else
src.attack_hand(user)
return
/obj/machinery/power/monitor/interact(mob/user)
/obj/machinery/computer/power_monitor/interact(mob/user)
if ( (get_dist(src, user) > 1 ) || (stat & (BROKEN|NOPOWER)) )
if (!istype(user, /mob/living/silicon))
@@ -115,7 +79,7 @@
onclose(user, "powcomp")
/obj/machinery/power/monitor/Topic(href, href_list)
/obj/machinery/computer/power_monitor/Topic(href, href_list)
..()
if( href_list["close"] )
usr << browse(null, "window=powcomp")
@@ -126,7 +90,7 @@
return
/obj/machinery/power/monitor/power_change()
/obj/machinery/computer/power_monitor/power_change()
..()
if(stat & BROKEN)
icon_state = "broken"

View File

@@ -27,7 +27,7 @@
var/datum/data/record/active1 = null //General
var/datum/data/record/active2 = null //Medical
var/datum/data/record/active3 = null //Security
var/obj/machinery/power/monitor/powmonitor = null // Power Monitor
var/obj/machinery/computer/power_monitor/powmonitor = null // Power Monitor
var/list/powermonitors = list()
var/message1 // used for status_displays
var/message2
@@ -263,7 +263,7 @@
/* Power Monitor (Mode: 43 / 433) */
if(mode==43 || mode==433)
var/pMonData[0]
for(var/obj/machinery/power/monitor/pMon in world)
for(var/obj/machinery/computer/power_monitor/pMon in world)
if(!(pMon.stat & (NOPOWER|BROKEN)) )
pMonData[++pMonData.len] = list ("Name" = pMon.name, "ref" = "\ref[pMon]")
if(isnull(powmonitor)) powmonitor = pMon