Merge pull request #12035 from PsiOmegaDelta/160124-SubsystemDestruction

Now qdel's silicon subsystems properly.
This commit is contained in:
Ccomp5950
2016-01-25 20:14:10 -05:00
+45 -1
View File
@@ -7,6 +7,9 @@
var/datum/nano_module/power_monitor/power_monitor
var/datum/nano_module/rcon/rcon
/mob/living/silicon/ai
var/datum/nano_module/computer_ntnetmonitor/ntnet_monitor
/mob/living/silicon
var/list/silicon_subsystems = list(
/mob/living/silicon/proc/subsystem_alarm_monitor,
@@ -20,13 +23,41 @@
/mob/living/silicon/proc/subsystem_crew_monitor,
/mob/living/silicon/proc/subsystem_law_manager,
/mob/living/silicon/proc/subsystem_power_monitor,
/mob/living/silicon/proc/subsystem_rcon
/mob/living/silicon/proc/subsystem_rcon,
/mob/living/silicon/ai/proc/subsystem_ntnet_monitor
)
/mob/living/silicon/robot/syndicate
register_alarms = 0
silicon_subsystems = list(/mob/living/silicon/proc/subsystem_law_manager)
/mob/living/silicon/Destroy()
qdel(alarm_monitor)
alarm_monitor = null
qdel(atmos_control)
atmos_control = null
qdel(crew_monitor)
crew_monitor = null
qdel(law_manager)
law_manager = null
qdel(power_monitor)
power_monitor = null
qdel(rcon)
rcon = null
return ..()
/mob/living/silicon/ai/Destroy()
qdel(ntnet_monitor)
ntnet_monitor = null
return ..()
/mob/living/silicon/proc/init_subsystems()
alarm_monitor = new(src)
atmos_control = new(src)
@@ -42,6 +73,10 @@
AH.register_alarm(src, /mob/living/silicon/proc/receive_alarm)
queued_alarms[AH] = list() // Makes sure alarms remain listed in consistent order
/mob/living/silicon/ai/init_subsystems()
..()
ntnet_monitor = new(src)
/********************
* Alarm Monitor *
********************/
@@ -78,6 +113,15 @@
law_manager.ui_interact(usr, state = conscious_state)
/********************
* NTNet Monitor *
********************/
/mob/living/silicon/ai/proc/subsystem_ntnet_monitor()
set name = "NTNet Monitoring"
set category = "Subystems"
ntnet_monitor.ui_interact(usr, state = conscious_state)
/********************
* Power Monitor *
********************/