RCON Improvement

This commit is contained in:
Casey
2022-06-13 21:08:41 -04:00
committed by CHOMPStation2
parent 30d721f502
commit 42b6f8847c
8 changed files with 83 additions and 33 deletions

View File

@@ -1,3 +1,5 @@
#define SMES_PER_PAGE 4
/datum/tgui_module/rcon
name = "Power RCON"
tgui_id = "RCON"
@@ -5,17 +7,41 @@
var/list/known_SMESs = null
var/list/known_breakers = null
var/filtered_smeslist = list()
var/current_page = 1
var/number_pages = 0
/datum/tgui_module/rcon/proc/filter_smeslist(var/page)
number_pages = known_SMESs.len / SMES_PER_PAGE
if(number_pages != round(number_pages))
number_pages = round(number_pages) + 1
var/page_index = page - 1
var/lower_bound = page_index * SMES_PER_PAGE + 1
var/upper_bound = (page_index + 1) * SMES_PER_PAGE
upper_bound = min(upper_bound, known_SMESs.len)
filtered_smeslist = list()
for(var/index = lower_bound, index <= upper_bound, index++)
filtered_smeslist += known_SMESs[index]
/datum/tgui_module/rcon/tgui_data(mob/user)
FindDevices() // Update our devices list
var/list/data = ..()
filter_smeslist(current_page)
// SMES DATA (simplified view)
var/list/smeslist[0]
for(var/obj/machinery/power/smes/buildable/SMES in known_SMESs)
for(var/obj/machinery/power/smes/buildable/SMES in filtered_smeslist)
var/list/smes_data = SMES.tgui_data()
smes_data["RCON_tag"] = SMES.RCon_tag
smeslist.Add(list(smes_data))
data["pages"] = number_pages
data["current_page"] = current_page
data["smes_info"] = sortByKey(smeslist, "RCON_tag")
// BREAKER DATA (simplified view)
@@ -34,6 +60,10 @@
return TRUE
switch(action)
if("set_smes_page")
var/page = params["index"]
current_page = page
. = TRUE
if("smes_in_toggle")
var/obj/machinery/power/smes/buildable/SMES = GetSMESByTag(params["smes"])
if(SMES)