final
This commit is contained in:
@@ -89,11 +89,11 @@
|
||||
diag_hud_set_borgcell()
|
||||
logevent("System brought online.")
|
||||
|
||||
listener = new(list(ALARM_ATMOS, ALARM_FIRE, ALARM_POWER, ALARM_CAMERA, ALARM_BURGLAR, ALARM_MOTION), list(z))
|
||||
RegisterSignal(listener, COMSIG_ALARM_TRIGGERED, .proc/alarm_triggered)
|
||||
RegisterSignal(listener, COMSIG_ALARM_CLEARED, .proc/alarm_cleared)
|
||||
listener.RegisterSignal(src, COMSIG_LIVING_PREDEATH, /datum/alarm_listener/proc/prevent_alarm_changes)
|
||||
listener.RegisterSignal(src, COMSIG_LIVING_REVIVE, /datum/alarm_listener/proc/allow_alarm_changes)
|
||||
alert_control = new(src, list(ALARM_ATMOS, ALARM_FIRE, ALARM_POWER, ALARM_CAMERA, ALARM_BURGLAR, ALARM_MOTION), list(z))
|
||||
RegisterSignal(alert_control.listener, COMSIG_ALARM_TRIGGERED, PROC_REF(alarm_triggered))
|
||||
RegisterSignal(alert_control.listener, COMSIG_ALARM_CLEARED, PROC_REF(alarm_cleared))
|
||||
alert_control.listener.RegisterSignal(src, COMSIG_LIVING_PREDEATH, /datum/alarm_listener/proc/prevent_alarm_changes)
|
||||
alert_control.listener.RegisterSignal(src, COMSIG_LIVING_REVIVE, /datum/alarm_listener/proc/allow_alarm_changes)
|
||||
|
||||
add_verb(src, /mob/living/proc/lay_down) //CITADEL EDIT gimmie rest verb kthx
|
||||
add_verb(src, /mob/living/silicon/robot/proc/rest_style)
|
||||
@@ -138,15 +138,15 @@
|
||||
QDEL_NULL(inv2)
|
||||
QDEL_NULL(inv3)
|
||||
QDEL_NULL(spark_system)
|
||||
QDEL_NULL(listener)
|
||||
QDEL_NULL(alert_control)
|
||||
cell = null
|
||||
return ..()
|
||||
|
||||
/mob/living/silicon/robot/Topic(href, href_list)
|
||||
. = ..()
|
||||
//Show alerts window if user clicked on "Show alerts" in chat
|
||||
if (href_list["showalerts"])
|
||||
robot_alerts()
|
||||
if(href_list["showalerts"])
|
||||
alert_control.ui_interact(src)
|
||||
|
||||
/mob/living/silicon/robot/proc/pick_module()
|
||||
if(module.type != /obj/item/robot_module)
|
||||
@@ -206,28 +206,7 @@
|
||||
if(usr.stat == DEAD)
|
||||
to_chat(src, "<span class='userdanger'>Alert: You are dead.</span>")
|
||||
return //won't work if dead
|
||||
robot_alerts()
|
||||
|
||||
/mob/living/silicon/robot/proc/robot_alerts()
|
||||
var/dat = ""
|
||||
var/list/alarms = listener.alarms
|
||||
for (var/alarm_type in alarms)
|
||||
dat += "<B>[alarm_type]</B><BR>\n"
|
||||
var/list/alerts = alarms[alarm_type]
|
||||
if (length(alerts))
|
||||
for (var/alarm in alerts)
|
||||
var/list/alm = alerts[alarm]
|
||||
var/area/A = alm[1]
|
||||
dat += "<NOBR>"
|
||||
dat += "-- [A.name]"
|
||||
dat += "</NOBR><BR>\n"
|
||||
else
|
||||
dat += "-- All Systems Nominal<BR>\n"
|
||||
dat += "<BR>\n"
|
||||
|
||||
var/datum/browser/alerts = new(usr, "robotalerts", "Current Station Alerts", 400, 410)
|
||||
alerts.set_content(dat)
|
||||
alerts.open()
|
||||
alert_control.ui_interact(src)
|
||||
|
||||
/mob/living/silicon/robot/proc/ionpulse()
|
||||
if(!ionpulse_on)
|
||||
|
||||
@@ -24,8 +24,8 @@
|
||||
|
||||
/// the last health before updating - to check net change in health
|
||||
var/previous_health
|
||||
///Alarm listener datum, handes caring about alarm events and such
|
||||
var/datum/alarm_listener/listener
|
||||
/// Station alert datum for showing alerts UI
|
||||
var/datum/station_alert/alert_control
|
||||
|
||||
//Hud stuff
|
||||
|
||||
|
||||
Reference in New Issue
Block a user