Automatic deadminning (#42780)

* does the thing

* cleanup

* unbroke deadminning

param broke the verb somehow? honk.

* correct prefs

* more robust handling

* corrected return, cleanup
This commit is contained in:
ShizCalev
2019-03-23 10:46:35 +01:00
committed by AnturK
parent 22e990e7d0
commit 192a5333c3
25 changed files with 149 additions and 7 deletions
+41 -1
View File
@@ -495,7 +495,7 @@ GLOBAL_LIST_EMPTY(preferences_datums)
dat += "<b>Income Updates:</b> <a href='?_src_=prefs;preference=income_pings'>[(chat_toggles & CHAT_BANKCARD) ? "Allowed" : "Muted"]</a><br>"
dat += "<br>"
dat += "<b>FPS:</b> <a href='?_src_=prefs;preference=clientfps;task=input'>[clientfps]</a><br>"
dat += "<b>Parallax (Fancy Space):</b> <a href='?_src_=prefs;preference=parallaxdown' oncontextmenu='window.location.href=\"?_src_=prefs;preference=parallaxup\";return false;'>"
@@ -598,6 +598,35 @@ GLOBAL_LIST_EMPTY(preferences_datums)
if(CONFIG_GET(flag/allow_admin_asaycolor))
dat += "<br>"
dat += "<b>ASAY Color:</b> <span style='border: 1px solid #161616; background-color: [asaycolor ? asaycolor : "#FF4500"];'>&nbsp;&nbsp;&nbsp;</span> <a href='?_src_=prefs;preference=asaycolor;task=input'>Change</a><br>"
//deadmin
dat += "<h2>Deadmin While Playing</h2>"
if(CONFIG_GET(flag/auto_deadmin_players))
dat += "<b>Always Deadmin:</b> FORCED</a><br>"
else
dat += "<b>Always Deadmin:</b> <a href = '?_src_=prefs;preference=toggle_deadmin_always'>[(toggles & DEADMIN_ALWAYS)?"Enabled":"Disabled"]</a><br>"
if(!(toggles & DEADMIN_ALWAYS))
dat += "<br>"
if(!CONFIG_GET(flag/auto_deadmin_antagonists))
dat += "<b>As Antag:</b> <a href = '?_src_=prefs;preference=toggle_deadmin_antag'>[(toggles & DEADMIN_ANTAGONIST)?"Deadmin":"Keep Admin"]</a><br>"
else
dat += "<b>As Antag:</b> FORCED<br>"
if(!CONFIG_GET(flag/auto_deadmin_heads))
dat += "<b>As Command:</b> <a href = '?_src_=prefs;preference=toggle_deadmin_head'>[(toggles & DEADMIN_POSITION_HEAD)?"Deadmin":"Keep Admin"]</a><br>"
else
dat += "<b>As Command:</b> FORCED<br>"
if(!CONFIG_GET(flag/auto_deadmin_security))
dat += "<b>As Security:</b> <a href = '?_src_=prefs;preference=toggle_deadmin_security'>[(toggles & DEADMIN_POSITION_SECURITY)?"Deadmin":"Keep Admin"]</a><br>"
else
dat += "<b>As Security:</b> FORCED<br>"
if(!CONFIG_GET(flag/auto_deadmin_silicons))
dat += "<b>As Silicon:</b> <a href = '?_src_=prefs;preference=toggle_deadmin_silicon'>[(toggles & DEADMIN_POSITION_SILICON)?"Deadmin":"Keep Admin"]</a><br>"
else
dat += "<b>As Silicon:</b> FORCED<br>"
dat += "</td>"
dat += "</tr></table>"
@@ -1426,6 +1455,17 @@ GLOBAL_LIST_EMPTY(preferences_datums)
user.client.toggle_hear_radio()
if("toggle_prayers")
user.client.toggleprayers()
if("toggle_deadmin_always")
toggles ^= DEADMIN_ALWAYS
if("toggle_deadmin_antag")
toggles ^= DEADMIN_ANTAGONIST
if("toggle_deadmin_head")
toggles ^= DEADMIN_POSITION_HEAD
if("toggle_deadmin_security")
toggles ^= DEADMIN_POSITION_SECURITY
if("toggle_deadmin_silicon")
toggles ^= DEADMIN_POSITION_SILICON
if("be_special")
var/be_special_type = href_list["be_special_type"]