diff --git a/code/modules/client/message.dm b/code/modules/client/message.dm
index d8532cbf06f..ae47da5fe4c 100644
--- a/code/modules/client/message.dm
+++ b/code/modules/client/message.dm
@@ -4,6 +4,7 @@ GLOBAL_LIST_EMPTY(clientmessages)
ckey = ckey(ckey)
if (!ckey || !message)
return
- if (!(ckey in GLOB.clientmessages))
- GLOB.clientmessages[ckey] = list()
- GLOB.clientmessages[ckey] += message
+ var/list/L = GLOB.clientmessages[ckey]
+ if(!L)
+ GLOB.clientmessages[ckey] = L = list()
+ L += message
diff --git a/code/modules/keybindings/bindings_client.dm b/code/modules/keybindings/bindings_client.dm
index 36eb9aef932..6f15ac2c643 100644
--- a/code/modules/keybindings/bindings_client.dm
+++ b/code/modules/keybindings/bindings_client.dm
@@ -5,7 +5,7 @@
set hidden = TRUE
client_keysend_amount += 1
-
+
var/cache = client_keysend_amount
if(keysend_tripped && next_keysend_trip_reset <= world.time)
@@ -20,12 +20,12 @@
//don't want to kick people if a lag spike results in a huge flood of commands being sent
if(cache >= MAX_KEYPRESS_AUTOKICK)
if(!keysend_tripped)
- keysend_tripped = TRUE
+ keysend_tripped = TRUE
next_keysend_trip_reset = world.time + (2 SECONDS)
else
log_admin("Client [ckey] was just autokicked for flooding keysends; likely abuse but potentially lagspike.")
message_admins("Client [ckey] was just autokicked for flooding keysends; likely abuse but potentially lagspike.")
- QDEL_IN(src, 1)
+ qdel(src)
return
///Check if the key is short enough to even be a real key
@@ -33,9 +33,9 @@
to_chat(src, "Invalid KeyDown detected! You have been disconnected from the server automatically.")
log_admin("Client [ckey] just attempted to send an invalid keypress. Keymessage was over [MAX_KEYPRESS_COMMANDLENGTH] characters, autokicking due to likely abuse.")
message_admins("Client [ckey] just attempted to send an invalid keypress. Keymessage was over [MAX_KEYPRESS_COMMANDLENGTH] characters, autokicking due to likely abuse.")
- QDEL_IN(src, 1)
+ qdel(src)
return
-
+
//Focus Chat failsafe. Overrides movement checks to prevent WASD.
if(!prefs.hotkeys && length(_key) == 1 && _key != "Alt" && _key != "Ctrl" && _key != "Shift")
winset(src, null, "input.focus=true ; input.text=[url_encode(_key)]")
diff --git a/code/modules/research/rdconsole.dm b/code/modules/research/rdconsole.dm
index 0cdceb8ce96..ece08f30779 100644
--- a/code/modules/research/rdconsole.dm
+++ b/code/modules/research/rdconsole.dm
@@ -847,11 +847,12 @@ Nothing else in the console has ID requirements.
ui += ui_settings()
if(RDSCREEN_DEVICE_LINKING)
ui += ui_device_linking()
+
for(var/i in 1 to length(ui))
if(!findtextEx(ui[i], RDSCREEN_NOBREAK))
ui[i] += "
"
- ui[i] = replacetextEx(ui[i], RDSCREEN_NOBREAK, "")
- return ui.Join("")
+ . = ui.Join("")
+ return replacetextEx(., RDSCREEN_NOBREAK, "")
/obj/machinery/computer/rdconsole/Topic(raw, ls)
if(..())