mirror of
https://github.com/SPLURT-Station/S.P.L.U.R.T-Station-13.git
synced 2025-12-10 09:54:52 +00:00
34 lines
858 B
Plaintext
34 lines
858 B
Plaintext
SUBSYSTEM_DEF(ping)
|
|
name = "Ping"
|
|
priority = FIRE_PRIORITY_PING
|
|
wait = 3 SECONDS
|
|
flags = SS_NO_INIT
|
|
runlevels = RUNLEVEL_LOBBY | RUNLEVEL_SETUP | RUNLEVEL_GAME | RUNLEVEL_POSTGAME
|
|
|
|
var/list/currentrun = list()
|
|
|
|
/datum/controller/subsystem/ping/stat_entry()
|
|
..("P:[GLOB.clients.len]")
|
|
|
|
|
|
/datum/controller/subsystem/ping/fire(resumed = 0)
|
|
if (!resumed)
|
|
src.currentrun = GLOB.clients.Copy()
|
|
|
|
//cache for sanic speed (lists are references anyways)
|
|
var/list/currentrun = src.currentrun
|
|
|
|
while (currentrun.len)
|
|
var/client/C = currentrun[currentrun.len]
|
|
currentrun.len--
|
|
|
|
if (!C || !C.chatOutput || !C.chatOutput.loaded)
|
|
if (MC_TICK_CHECK)
|
|
return
|
|
continue
|
|
|
|
// softPang isn't handled anywhere but it'll always reset the opts.lastPang.
|
|
C.chatOutput.ehjax_send(data = C.is_afk(29) ? "softPang" : "pang")
|
|
if (MC_TICK_CHECK)
|
|
return
|