diff --git a/code/modules/nano/modules/atmos_control.dm b/code/modules/nano/modules/atmos_control.dm index b84cacad0a..6e1fdff37c 100644 --- a/code/modules/nano/modules/atmos_control.dm +++ b/code/modules/nano/modules/atmos_control.dm @@ -35,12 +35,23 @@ // TODO: Move these to a cache, similar to cameras for(var/obj/machinery/alarm/alarm in (monitored_alarms.len ? monitored_alarms : machines)) - alarms[++alarms.len] = list("name" = sanitize(alarm.name), "ref"= "\ref[alarm]", "danger" = max(alarm.danger_level, alarm.alarm_area.atmosalm)) + alarms[++alarms.len] = list( + "name" = sanitize(alarm.name), + "ref"= "\ref[alarm]", + "danger" = max(alarm.danger_level, alarm.alarm_area.atmosalm), + "x" = alarm.x, + "y" = alarm.y, + "z" = alarm.z) data["alarms"] = alarms + data["station_levels"] = using_map.station_levels ui = nanomanager.try_update_ui(user, src, ui_key, ui, data, force_open) if(!ui) ui = new(user, src, ui_key, "atmos_control.tmpl", src.name, 625, 625, state = state) + // adding a template with the key "mapContent" enables the map ui functionality + ui.add_template("mapContent", "atmos_control_map_content.tmpl") + // adding a template with the key "mapHeader" replaces the map header content + ui.add_template("mapHeader", "atmos_control_map_header.tmpl") ui.set_initial_data(data) ui.open() ui.set_auto_update(1) diff --git a/nano/templates/atmos_control.tmpl b/nano/templates/atmos_control.tmpl index 5e9a1acfe4..2bade2a264 100644 --- a/nano/templates/atmos_control.tmpl +++ b/nano/templates/atmos_control.tmpl @@ -1,3 +1,6 @@ +
+ {{:helper.link('Show Air Alrms On Map', 'pin-s', {'showMap' : 1})}} +
{{for data.alarms}} {{:helper.link(value.name, null, {'alarm' : value.ref}, null, value.danger == 2 ? 'redButton' : (value.danger == 1 ? 'yellowButton' : null))}} diff --git a/nano/templates/atmos_control_map_content.tmpl b/nano/templates/atmos_control_map_content.tmpl new file mode 100644 index 0000000000..931ddb974c --- /dev/null +++ b/nano/templates/atmos_control_map_content.tmpl @@ -0,0 +1,13 @@ + +{{for data.alarms}} + {{if value.z == config.mapZLevel}} +
+ +
+ {{/if}} +{{/for}} diff --git a/nano/templates/atmos_control_map_header.tmpl b/nano/templates/atmos_control_map_header.tmpl new file mode 100644 index 0000000000..02e6f3fa93 --- /dev/null +++ b/nano/templates/atmos_control_map_header.tmpl @@ -0,0 +1,18 @@ + +{{:helper.link('Show List', 'script', {'showMap' : 0})}} +
+ Z Level:  + {{for data.station_levels }} + {{:helper.link(value, null, {'mapZLevel' : value}) }} + {{/for}} +
+
+ Zoom Level:  + + + + +