diff --git a/code/game/machinery/telecomms/computers/logbrowser.dm b/code/game/machinery/telecomms/computers/logbrowser.dm index 9867a1c133..ca04009e3b 100644 --- a/code/game/machinery/telecomms/computers/logbrowser.dm +++ b/code/game/machinery/telecomms/computers/logbrowser.dm @@ -17,11 +17,10 @@ var/notice = "" var/universal_translate = FALSE // set to TRUE(1) if it can translate nonhuman speech -/obj/machinery/computer/telecomms/server/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/computer/telecomms/server/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "TelecommsLogBrowser", "Telecomms Server Monitor", 575, 400, master_ui, state) + ui = new(user, src, "TelecommsLogBrowser", "Telecomms Server Monitor") ui.open() /obj/machinery/computer/telecomms/server/ui_data(mob/user) diff --git a/code/game/machinery/telecomms/computers/message.dm b/code/game/machinery/telecomms/computers/message.dm index 11d50a2858..539025e4d5 100644 --- a/code/game/machinery/telecomms/computers/message.dm +++ b/code/game/machinery/telecomms/computers/message.dm @@ -36,12 +36,11 @@ light_color = LIGHT_COLOR_GREEN -/obj/machinery/computer/message_monitor/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE,\ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/computer/message_monitor/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "TelecommsPDALog", name, 727, 510, master_ui, state) + ui = new(user, src, "TelecommsPDALog", name) ui.open() /obj/machinery/computer/message_monitor/ui_static_data(mob/user) diff --git a/code/game/machinery/telecomms/computers/telemonitor.dm b/code/game/machinery/telecomms/computers/telemonitor.dm index 11312fcfaf..b711b9fa40 100644 --- a/code/game/machinery/telecomms/computers/telemonitor.dm +++ b/code/game/machinery/telecomms/computers/telemonitor.dm @@ -17,12 +17,11 @@ circuit = /obj/item/circuitboard/computer/comm_monitor -/obj/machinery/computer/telecomms/monitor/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE,\ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/computer/telecomms/monitor/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "TelecommsMonitor", name, 575, 400, master_ui, state) + ui = new(user, src, "TelecommsMonitor", name) ui.open() /obj/machinery/computer/telecomms/monitor/ui_data(mob/user) diff --git a/code/game/machinery/telecomms/machine_interactions.dm b/code/game/machinery/telecomms/machine_interactions.dm index 86aa7905d5..cc8784c5b8 100644 --- a/code/game/machinery/telecomms/machine_interactions.dm +++ b/code/game/machinery/telecomms/machine_interactions.dm @@ -27,16 +27,15 @@ else return ..() -/obj/machinery/telecomms/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE,\ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) +/obj/machinery/telecomms/ui_interact(mob/user, datum/tgui/ui) if(!canInteract(user)) if(ui) ui.close() //haha no. return - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "TelecommsInteraction", "[name] Access", 520, 500, master_ui, state) + ui = new(user, src, "TelecommsInteraction", "[name] Access") ui.open() /obj/machinery/telecomms/ui_data(mob/user) diff --git a/code/game/objects/items/robot/robot_upgrades.dm b/code/game/objects/items/robot/robot_upgrades.dm index 34aa36a70a..80fd177d84 100644 --- a/code/game/objects/items/robot/robot_upgrades.dm +++ b/code/game/objects/items/robot/robot_upgrades.dm @@ -40,7 +40,7 @@ one_use = TRUE /obj/item/borg/upgrade/rename/attack_self(mob/user) - heldname = sanitize_name(stripped_input(user, "Enter new robot name", "Cyborg Reclassification", heldname, MAX_NAME_LEN), allow_numbers = TRUE) + heldname = sanitize_name(stripped_input(user, "Enter new robot name", "Cyborg Reclassification", heldname, MAX_NAME_LEN)) /obj/item/borg/upgrade/rename/action(mob/living/silicon/robot/R) . = ..() diff --git a/code/modules/antagonists/clockcult/clock_items/clockwork_slab.dm b/code/modules/antagonists/clockcult/clock_items/clockwork_slab.dm index 04a8e92bb7..1ed217e914 100644 --- a/code/modules/antagonists/clockcult/clock_items/clockwork_slab.dm +++ b/code/modules/antagonists/clockcult/clock_items/clockwork_slab.dm @@ -25,9 +25,6 @@ /datum/clockwork_scripture/ranged_ability/kindle, /datum/clockwork_scripture/ranged_ability/hateful_manacles) //quickbound scripture, accessed by index var/maximum_quickbound = 5 //how many quickbound scriptures we can have - var/ui_x = 800 - var/ui_z = 420 - var/obj/structure/destructible/clockwork/trap/linking //If we're linking traps together, which ones we're doing /obj/item/clockwork/slab/internal //an internal motor for mobs running scripture @@ -198,12 +195,6 @@ ui_interact(user) return TRUE -/obj/item/clockwork/slab/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.inventory_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) - if(!ui) - ui = new(user, src, ui_key, "ClockworkSlab", name, ui_x, ui_z, master_ui, state) - ui.open() - /obj/item/clockwork/slab/proc/recite_scripture(datum/clockwork_scripture/scripture, mob/living/user) if(!scripture || !user || !user.canUseTopic(src) || (!no_cost && !can_recite_scripture(user))) return FALSE @@ -223,27 +214,64 @@ scripture_to_recite.run_scripture() return TRUE +/* + * Gets text for a certain section. "Default" is used for when you first open Recollection. + * Current sections (make sure to update this if you add one: + * Basics + * Terminology + * Components + * Scripture + * Power + * Conversion + * * what - What section? + */ +/obj/item/clockwork/slab/proc/get_recollection(what) //Now DMDOC compliant!* + . = list() + switch(what) //need someone to rewrite info for this. + /* + if("Default") + .["title"] = "Default" + .["info"] = "copypaste." + if("Basics") + .["title"] = "Basics" + .["info"] = "# MARKDOWN WITH HTML?" + if("Terminology") + .["title"] = "Terminology" + .["info"] = "# MARKDOWN WITH HTML?" + if("Components") + .["title"] = "Default" + .["info"] = "# MARKDOWN WITH HTML?" + if("Scripture") + .["title"] = "Default" + .["info"] = "# MARKDOWN WITH HTML?" + if("Power") + .["title"] = "Power" + .["info"] = "# MARKDOWN WITH HTML?" + if("Conversion") + .["title"] = "Conversion" + .["info"] = "# MARKDOWN WITH HTML?" + */ + else + return null //error text handled tgui side. should not cause BSOD -//Gets text for a certain section. "Default" is used for when you first open Recollection. -//Current sections (make sure to update this if you add one: -//- Basics -//- Terminology -//- Components -//- Scripture -//- Power -//- Conversion +/obj/item/clockwork/slab/ui_state(mob/user) + return GLOB.hands_state + +/obj/item/clockwork/slab/ui_interact(mob/user, datum/tgui/ui) + if(!ui) + ui = new(user, src, "ClockworkSlab", name) + ui.open() /obj/item/clockwork/slab/ui_data(mob/user) //we display a lot of data via TGUI . = list() .["recollection"] = recollecting .["power"] = DisplayPower(get_clockwork_power()) .["power_unformatted"] = get_clockwork_power() - // .["rec_text"] = recollection() handled TGUI side .["HONOR_RATVAR"] = GLOB.ratvar_awakens .["scripture"] = list() for(var/s in GLOB.all_scripture) var/datum/clockwork_scripture/S = GLOB.all_scripture[s] - if(S.tier == SCRIPTURE_PERIPHERAL) //yes, tiers are the tabs. + if(S.tier == SCRIPTURE_PERIPHERAL) // This tier is skiped because this contains basetype stuff continue var/list/data = list() @@ -253,7 +281,7 @@ data["required"] = "([DisplayPower(S.power_cost)][S.special_power_text ? "+ [replacetext(S.special_power_text, "POWERCOST", "[DisplayPower(S.special_power_cost)]")]" : ""])" data["required_unformatted"] = S.power_cost data["type"] = "[S.type]" - data["quickbind"] = S.quickbind //this is if it cant quickbind + data["quickbind"] = S.quickbind //this is if it cant quickbind (bool) data["fontcolor"] = get_component_color_bright(S.primary_component) data["important"] = S.important //italic! @@ -268,7 +296,7 @@ if(GLOB.ratvar_awakens) return if(LAZYLEN(quickbound) < i || !quickbound[i]) - .["rec_binds"] += list(list()) + .["rec_binds"] += list(list()) //a blank json. else var/datum/clockwork_scripture/quickbind_slot = quickbound[i] .["rec_binds"] += list(list( @@ -280,7 +308,11 @@ /obj/item/clockwork/slab/ui_static_data(mob/user) . = list() - .["tier_infos"] = list() + .["tier_infos"] = list() //HEY!! WHEN ADDING NEW TIER, ADD IT HERE + .["tier_infos"][SCRIPTURE_PERIPHERAL] = list( + "requirement" = "Breaking the code DM side. Report to coggerbus if this appears!!" + "ready" = FALSE //just in case. Should NOT exist at all + ) .["tier_infos"][SCRIPTURE_DRIVER] = list( "requirement" = "None, this is already unlocked", "ready" = TRUE //to bold it on JS side, and to say "These scriptures are permanently unlocked." @@ -298,9 +330,11 @@ "ready" = SSticker.scripture_states[SCRIPTURE_JUDGEMENT] ) - // .["selected"] = selected_scripture generate_all_scripture() - .["recollection_categories"] = GLOB.ratvar_awakens ? list() : list( + .["recollection_categories"] = list() + if(GLOB.ratvar_awakens) + return + .["recollection_categories"] = list( list("name" = "Getting Started", "desc" = "First-time servant? Read this first."), list("name" = "Basics", "desc" = "A primer on how to play as a servant."), list("name" = "Terminology", "desc" = "Common acronyms, words, and terms."), @@ -309,8 +343,7 @@ list("name" = "Power", "desc" = "The power system that certain objects use to function."), list("name" = "Conversion", "desc" = "Converting the crew, cyborgs, and very walls to your cause.") ) - // .["rec_section"]["title"] //this is here if ever we decided to return these back. - // .["rec_section"]["info"]// wall of info for the thing + .["rec_section"] = get_recollection(recollection_category) /obj/item/clockwork/slab/ui_act(action, params) switch(action) @@ -369,4 +402,4 @@ Q.button_icon_state = quickbind_slot.name Q.UpdateButtonIcon() if(isliving(loc)) - Q.Grant(loc) \ No newline at end of file + Q.Grant(loc) diff --git a/code/modules/atmospherics/machinery/components/binary_devices/relief_valve.dm b/code/modules/atmospherics/machinery/components/binary_devices/relief_valve.dm index 7bdd22cbd1..5dd86b0009 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/relief_valve.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/relief_valve.dm @@ -60,15 +60,14 @@ else if(!opened && our_pressure >= open_pressure) open() -/obj/machinery/atmospherics/components/binary/relief_valve/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/atmospherics/components/unary/relief_valve/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "atmos_relief", name, 335, 115, master_ui, state) + ui = new(user, src, "AtmosRelief", name) ui.open() /obj/machinery/atmospherics/components/binary/relief_valve/ui_data() - var/data = list() + var/list/data = list() data["open_pressure"] = round(open_pressure) data["close_pressure"] = round(close_pressure) data["max_pressure"] = round(50*ONE_ATMOSPHERE) @@ -83,7 +82,7 @@ if(pressure == "max") pressure = 50*ONE_ATMOSPHERE . = TRUE - else if(pressure == "input") + else if(pressure == "input") // The manual expirience. pressure = input("New output pressure ([close_pressure]-[50*ONE_ATMOSPHERE] kPa):", name, open_pressure) as num|null if(!isnull(pressure) && !..()) . = TRUE diff --git a/code/modules/atmospherics/machinery/components/unary_devices/relief_valve.dm b/code/modules/atmospherics/machinery/components/unary_devices/relief_valve.dm index 0893d2b9e6..9c275e018b 100644 --- a/code/modules/atmospherics/machinery/components/unary_devices/relief_valve.dm +++ b/code/modules/atmospherics/machinery/components/unary_devices/relief_valve.dm @@ -61,15 +61,14 @@ update_parents() -/obj/machinery/atmospherics/components/unary/relief_valve/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ - datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/atmospherics/components/unary/relief_valve/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "atmos_relief", name, 335, 115, master_ui, state) + ui = new(user, src, "AtmosRelief", name) ui.open() /obj/machinery/atmospherics/components/unary/relief_valve/ui_data() - var/data = list() + var/list/data = list() data["open_pressure"] = round(open_pressure) data["close_pressure"] = round(close_pressure) data["max_pressure"] = round(50*ONE_ATMOSPHERE) diff --git a/tgui/packages/tgui/interfaces/AtmosRelief.js b/tgui/packages/tgui/interfaces/AtmosRelief.js new file mode 100644 index 0000000000..ca2e46a757 --- /dev/null +++ b/tgui/packages/tgui/interfaces/AtmosRelief.js @@ -0,0 +1,61 @@ +import { useBackend } from '../backend'; +import { Button, LabeledList, NumberInput, Section } from '../components'; +import { Window } from '../layouts'; + +export const AtmosRelief = (props, context) => { // rebranded AtmoPump + const { act, data } = useBackend(context); + return ( + + +
+ + + act('open_pressure', { + pressure: value, + })} /> +
+
+
+ ); +}; diff --git a/tgui/packages/tgui/interfaces/ClockworkSlab.js b/tgui/packages/tgui/interfaces/ClockworkSlab.js index f9e7cd6e6e..e3ca61bfce 100644 --- a/tgui/packages/tgui/interfaces/ClockworkSlab.js +++ b/tgui/packages/tgui/interfaces/ClockworkSlab.js @@ -5,9 +5,10 @@ import { Fragment } from 'inferno'; import { Window } from '../layouts'; let REC_RATVAR = ""; +// You may ask "why is this not inside ClockworkSlab" +// It's because cslab gets called every time. Lag is bad. for (let index = 0; index < Math.min(Math.random()*100); index++) { - // HEY! is it faster to do it serverside or client side? - REC_RATVAR.concat("HONOR RATVAR "); + REC_RATVAR += "HONOR RATVAR "; } export const ClockworkSlab = (props, context) => { @@ -17,7 +18,7 @@ export const ClockworkSlab = (props, context) => { recollection_categories = [], rec_section = null, rec_binds = [], - scripture = {}, // this is a {}, not a [] + scripture = {}, tier_infos = {}, power = "0 W", power_unformatted = 0, @@ -35,7 +36,10 @@ export const ClockworkSlab = (props, context) => { || {}; return ( - + {recollection ? ( // tutorial
{ })} - {data.rec_section} { and other consumers.
- {map((scriptures, name) => { - return ( - setTab(name)}> - {name} - - ); - })(scripture)} + {map((scriptures, name) => ( + setTab(name)}> + {name} + + ))(scripture)} { - {!!scriptInTab && scriptInTab.map(script => ( + {scriptInTab?.map(script => ( diff --git a/tgui/packages/tgui/interfaces/TelecommsInteraction.js b/tgui/packages/tgui/interfaces/TelecommsInteraction.js index d42f8a436e..4d43820db2 100644 --- a/tgui/packages/tgui/interfaces/TelecommsInteraction.js +++ b/tgui/packages/tgui/interfaces/TelecommsInteraction.js @@ -25,7 +25,10 @@ export const TelecommsInteraction = (props, context) => { isbus = false, } = machine; return ( - + {!!notice && ( diff --git a/tgui/packages/tgui/interfaces/TelecommsLogBrowser.js b/tgui/packages/tgui/interfaces/TelecommsLogBrowser.js index 259a2c2a00..4bb702abae 100644 --- a/tgui/packages/tgui/interfaces/TelecommsLogBrowser.js +++ b/tgui/packages/tgui/interfaces/TelecommsLogBrowser.js @@ -17,11 +17,11 @@ export const TelecommsLogBrowser = (props, context) => { setTab, ] = useSharedState(context, 'tab', 'servers'); const operational = (selected && selected.status); - // if (!operational) { // some sanity checks. - // setTab("servers"); - // } return ( - + {!!notice && ( @@ -163,24 +163,22 @@ export const TelecommsLogBrowser = (props, context) => {
{(servers && servers.length) ? ( - {servers.map(server => { - return ( - act('viewmachine', { - 'value': server.id, - })} /> - )}> - {`${server.name} (${server.id})`} - - ); - })} + {servers.map(server => ( + act('viewmachine', { + 'value': server.id, + })} /> + )}> + {`${server.name} (${server.id})`} + + ))} ) : ( '404 Servers not found. Have you tried scanning the network?' diff --git a/tgui/packages/tgui/interfaces/TelecommsMonitor.js b/tgui/packages/tgui/interfaces/TelecommsMonitor.js index 388e98fb96..a3949574d7 100644 --- a/tgui/packages/tgui/interfaces/TelecommsMonitor.js +++ b/tgui/packages/tgui/interfaces/TelecommsMonitor.js @@ -19,12 +19,13 @@ export const TelecommsMonitor = (props, context) => { setTab, ] = useSharedState(context, 'tab', 'network-entity'); const operational = (selected && selected.status); - // if (!selected) { // some sanity checks. - // setTab("network-entity"); - // } return ( - + {!!notice && ( diff --git a/tgui/packages/tgui/interfaces/TelecommsPDALog.js b/tgui/packages/tgui/interfaces/TelecommsPDALog.js index 712966e69a..df27cff8b6 100644 --- a/tgui/packages/tgui/interfaces/TelecommsPDALog.js +++ b/tgui/packages/tgui/interfaces/TelecommsPDALog.js @@ -22,12 +22,13 @@ export const TelecommsPDALog = (props, context) => { setTab, ] = useSharedState(context, 'tab', 'pdalog-servers'); const valid = (selected && selected.status && authenticated); - // if (!valid || data.hacking) { // a sanity check. - // setTab('pdalog-servers'); - // } if (hack_status) { return ( // should have used en -> jp unicode -> other encoding method->utf8 - +