Rework AFK system after discussing with head

This commit is contained in:
joep van der velden
2019-12-24 11:39:53 +01:00
parent 377ae7671b
commit 14242045ec
8 changed files with 62 additions and 69 deletions
+4 -21
View File
@@ -93,9 +93,7 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts
var/clientfps = 0
var/atklog = ATKLOG_ALL
var/fuid // forum userid
var/AFK_WATCH_warn_minutes = 0 // Number of minutes after which the player gets warned
var/AFK_WATCH_cryo_minutes = 0 // Number of minutes after (after the warning) which the player gets cryod
var/AFK_WATCH_antag = FALSE // If you will cryo when you have a special role
var/afk_fast_cryo = FALSE // If they want to be put into cryo the fast way by the AFK subsystem
//ghostly preferences
var/ghost_anonsay = 0
@@ -444,7 +442,7 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts
dat += "<h2>General Settings</h2>"
if(user.client.holder)
dat += "<b>Adminhelp sound:</b> <a href='?_src_=prefs;preference=hear_adminhelps'><b>[(sound & SOUND_ADMINHELP)?"On":"Off"]</b></a><br>"
dat += "<b>AFK Cryoing:</b> <a href='?_src_=prefs;preference=afk_watch'>[(AFK_WATCH_warn_minutes) ? "On ([AFK_WATCH_warn_minutes], [AFK_WATCH_cryo_minutes], [AFK_WATCH_antag ? "Y" : "N"])" : "Off"]</a><br>"
dat += "<b>AFK Fast Cryoing:</b> <a href='?_src_=prefs;preference=afk_fast_cryo'>[(afk_fast_cryo) ? "On" : "Off"]</a><br>"
dat += "<b>Ambient Occlusion:</b> <a href='?_src_=prefs;preference=ambientocclusion'><b>[toggles & AMBIENT_OCCLUSION ? "Enabled" : "Disabled"]</b></a><br>"
dat += "<b>Attack Animations:</b> <a href='?_src_=prefs;preference=ghost_att_anim'>[(show_ghostitem_attack) ? "Yes" : "No"]</a><br>"
@@ -2002,23 +2000,8 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts
if("winflash")
windowflashing = !windowflashing
if("afk_watch")
var/afk_new = input(user, "Select a new amount of minutes after which you get warned for being AFK, between 0 and 10 (0 will deactivate)", UI_style_alpha) as num
if(afk_new == 0)
// deactivate the system
AFK_WATCH_warn_minutes = 0
AFK_WATCH_cryo_minutes = 0
AFK_WATCH_antag = FALSE
else
if(!afk_new | !(afk_new <= 10 && afk_new >= 1)) return
AFK_WATCH_warn_minutes = afk_new
afk_new = input(user, "Select a new amount of minutes after which you get cryod for being AFK, between 1 and 5", UI_style_alpha) as num
if(!afk_new | !(afk_new <= 5 && afk_new >= 1))
AFK_WATCH_cryo_minutes = AFK_WATCH_cryo_minutes ? AFK_WATCH_cryo_minutes : 2 // Return to prior value or default to 2
AFK_WATCH_antag = AFK_WATCH_antag ? AFK_WATCH_antag : FALSE
else
AFK_WATCH_cryo_minutes = afk_new
AFK_WATCH_antag = alert(user, "Do you want to activate the AFK system when you have a special status? (Think of antag, mindslaved, ERT etc)", "Antag activation", "Yes", "No") == "Yes"
if("afk_fast_cryo")
afk_fast_cryo = alert(user, "Would you like to be qualified for the fast cryoing? Being AFK for 5 minutes will result in cryoing then (instead of [config.auto_cryo_afk])", "Fast cryoing", "Yes", "No") == "Yes"
if("UIcolor")
var/UI_style_color_new = input(user, "Choose your UI color, dark colors are not recommended!", UI_style_color) as color|null
@@ -20,9 +20,7 @@
clientfps,
atklog,
fuid,
AFK_WATCH_warn_minutes,
AFK_WATCH_cryo_minutes,
AFK_WATCH_antag,
afk_watch,
parallax
FROM [format_table_name("player")]
WHERE ckey='[C.ckey]'"}
@@ -56,10 +54,8 @@
clientfps = text2num(query.item[17])
atklog = text2num(query.item[18])
fuid = text2num(query.item[19])
AFK_WATCH_warn_minutes = text2num(query.item[20])
AFK_WATCH_cryo_minutes = text2num(query.item[21])
AFK_WATCH_antag = text2num(query.item[22])
parallax = text2num(query.item[23])
afk_fast_cryo = text2num(query.item[20])
parallax = text2num(query.item[21])
//Sanitize
ooccolor = sanitize_hexcolor(ooccolor, initial(ooccolor))
@@ -80,9 +76,7 @@
clientfps = sanitize_integer(clientfps, 0, 1000, initial(clientfps))
atklog = sanitize_integer(atklog, 0, 100, initial(atklog))
fuid = sanitize_integer(fuid, 0, 10000000, initial(fuid))
AFK_WATCH_warn_minutes = sanitize_integer(AFK_WATCH_warn_minutes, 0, 10, initial(AFK_WATCH_warn_minutes))
AFK_WATCH_cryo_minutes = sanitize_integer(AFK_WATCH_cryo_minutes, 0, 5, initial(AFK_WATCH_cryo_minutes))
AFK_WATCH_antag = sanitize_integer(AFK_WATCH_antag, 0, 1, initial(AFK_WATCH_antag))
afk_fast_cryo = sanitize_integer(afk_fast_cryo, 0, 1, initial(afk_fast_cryo))
parallax = sanitize_integer(parallax, 0, 16, initial(parallax))
return 1
@@ -114,9 +108,7 @@
ghost_anonsay='[ghost_anonsay]',
clientfps='[clientfps]',
atklog='[atklog]',
AFK_WATCH_warn_minutes='[AFK_WATCH_warn_minutes]',
AFK_WATCH_cryo_minutes='[AFK_WATCH_cryo_minutes]',
AFK_WATCH_antag='[AFK_WATCH_antag]',
afk_watch='[afk_fast_cryo]',
parallax='[parallax]'
WHERE ckey='[C.ckey]'"}
)