From 313e6bc7a89d4725417aab18d6cd2b20dfc785ef Mon Sep 17 00:00:00 2001
From: Killian <49700375+KillianKirilenko@users.noreply.github.com>
Date: Sat, 18 May 2024 10:14:27 +0100
Subject: [PATCH] AFK Status/Toggle (#15982)
* disable ingame changelog notification
* afk marker
---
code/modules/mob/living/living.dm | 13 +++++++++++++
code/modules/mob/mob_defines.dm | 1 +
icons/mob/status_indicators.dmi | Bin 1516 -> 1777 bytes
3 files changed, 14 insertions(+)
diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm
index 23177ee41d4..0a41894b374 100644
--- a/code/modules/mob/living/living.dm
+++ b/code/modules/mob/living/living.dm
@@ -121,6 +121,19 @@
else
to_chat(src, span_blue("You are not injured enough to succumb to death!"))
+/mob/living/verb/toggle_afk()
+ set name = "Toggle AFK"
+ set category = "IC"
+ set desc = "Mark yourself as Away From Keyboard, or clear that status!"
+ if(away_from_keyboard)
+ remove_status_indicator("afk")
+ to_chat(src, "You are no longer marked as AFK.")
+ away_from_keyboard = FALSE
+ else
+ add_status_indicator("afk")
+ to_chat(src, "You are now marked as AFK.")
+ away_from_keyboard = TRUE
+
/mob/living/proc/updatehealth()
if(status_flags & GODMODE)
health = 100
diff --git a/code/modules/mob/mob_defines.dm b/code/modules/mob/mob_defines.dm
index e2deb6d7a78..c56a369ded6 100644
--- a/code/modules/mob/mob_defines.dm
+++ b/code/modules/mob/mob_defines.dm
@@ -156,6 +156,7 @@
var/faction = "neutral" //Used for checking whether hostile simple animals will attack you, possibly more stuff later
var/can_be_antagged = FALSE // To prevent pAIs/mice/etc from getting antag in autotraitor and future auto- modes. Uses inheritance instead of a bunch of typechecks.
+ var/away_from_keyboard = FALSE //are we at, or away, from our keyboard?
//Generic list for proc holders. Only way I can see to enable certain verbs/procs. Should be modified if needed.
var/proc_holder_list[] = list()//Right now unused.
diff --git a/icons/mob/status_indicators.dmi b/icons/mob/status_indicators.dmi
index 64103b82ff4e8222df1b587eb675b0b63fb5a485..6dd81546893f74a23dcb521d6a49caec4fe7fc96 100644
GIT binary patch
delta 1735
zcmV;&1~~cb3-JvliBL{Q4GJ0x0000DNk~Le0001h0001R2m=5B0O4|o-~a#sdyyp~
zIn>nDtTHkd78WNYClL@478Mrq+pX@qSLv=eoGT#m%!AmSCW;*r^6=`<&AeX}40RU`
z>F3+>)0UBdA%DQYz_x1hGynhq0d!JMQvg8b*k%9#0M&X_Sad{Xb7OL8aCB*JZU6vy
zoSl=w4uUWYhR@qmEN~?TqtTNW12G)r70h%+7Um#yNO*fegb*bW$a-kI?{AZ?v)R!<
z1tIg!0ewP_GS%$BwkwyCQVJ8-!FoqY4DueEHbBD-)PJsJ0F6b7kU2ItltejyK|5Q9aB27c!Il>2)?@Mb+Ett>x0xS$@Bi@vKm6aFq?#yg000F;
zNkl;+-4cS9
zQVtUpp(qNK$>B;ih`uWBK;Rzu1K~yS`1p991JDNp1sEu(0j*!yA2f+C6vf~waeXRq
z5B!00qiq~ewWp`pz{H@tP#R2o^%dwV&{v?ZT7PM8Kx-SZCu+c4?aIo^A~-<(ya&*2
zNxuR{-p>CCmJRf)+Brz*$4|^Y0Ky*%{zUyAutJ5M|0KGjy9ZvGa14J5}YL4U~mR)Fv&Y^+;J9fg9X_q#;W$j1$3+)_Z%~fBX5adN?b~j>nIGfBhcoNXqM6-svBY-T^uSKT=-ja;NVNpd<7n<#jGU
z96$bO1O;%!R!GY0Tz`Hz{?Z@@h$FT_QeNkBEzn8?1H=(qAt|qOxiRqZCt6}~#8!yq
z^Qqi@><{=7P)BTq6w7De`e>>IhdT)%bG_;R=mte9Q8$
z1<$hFygg4Zm9BW@l8QV#d(t)aBAuuoE3)n^I}%qep&xxHAzaNdI}%sUGXQDL(;Tyd
zUpdnNq%})(%#K8woM!;inx#2pN8-wv1|Y4u9&Y*GG&$KotjN3b>=>ISV;xY%%XS}w
d>nq+6@E=89P_IbfS8o6S002ovPDHLkV1gS@RFnV!
delta 1472
zcmV;x1wZ=n4eSdgiBL{Q4GJ0x0000DNk~Le0001R0001R2m=5B0P#Kqc>n+ac#$O{
zIjk}=)YQ}#78WNYClL@478Mrq+pX@qSLv=e^2~$SohI_rmYgdfiX9U2@aoUayk8Uy
zbr%ik=i8BhA%Dg>sCNJW00DGTPE!Ct=GbNc0075&R9JLGWpiV4X>fFDZ*Bkpc$}S*
z(F%ev6o#+2rxGZWuFO_ZRZId*f-+4uj0ec!&Qe8o#=a|vj!clZ%S(6$f5$MrOuZa|K<+;6cq1<@#^DzzvZi+
zLh#kkk^34A&b-Kz2PsnV9-6bFYD|800d7-L_t(&f$dd^cAGE|l*t9y
zCe%klntwKNoTmBzKkQ0e+F2czUGsW)-pgxecXnn0ftBhpQx>u;Q;8fZQLsFfU4h{>
z@EgXn?DqCHEfMk{FoVF12U1>U{=md8WEr~)GLIWx1Ha*1XX!-les^aF&NTW0&r^`6
zAWuP_YNLig%F^a{JWyBrG0aQ5q1_Q0u29FB>wmk0+Y-vN@3^_4jNfGNL{#@22jk3K
z-^^09Wy5C{OzWyg7jWI9<2OArN1ht)1n-JPfgmvVedqDKWElMJtQyXO=N-k`r5lVr!DDC
zgnvN$c{xvu>(%Ex{4Hf)bMd~ozU+{f{A*!f;UU1hbR_>eUBHoR6!f3+RD(#r^Uvo7
zg(^#DKk7difS`na=ikx!yeyr4?>ywq%Yqlc&*lq)x9^>|{Ix+@&Ou-J`ip$A$OHZG
zd}lzM35d@<{Y7s0qBw58H7LuR8IT_ffPa1->4)ZxKyzC_oEfk_U4izS`}&c2Z9wzP
z!04?2)~ABLU&qg@+{`n-1qQGZu+
zk05m+p$C60SQaE70)Vg`}SOQ(;-ahJ1nagw${e_dY@LLZ}CSs?f*1vK~4v
zkh%~CfIopqRgD}4i3`a9@RvYA+Cm2eq$0A=1q^kxCKa*1UtT+EE@?~`vsYg27iwIdMBsCdcCG4
z#*NO)sj%H@J_-)!^%3)?KzzI1Ov9;AZ`Z^}!FjoJyz6n>
z@4XeT!s7k}G2L^^4k|+7*~pzBr}yul1bbho2nBeA6CBeY1RlsMLRA4C;RMI@z8$b{
zDXRztc!U!i)5JeN_%mb`p#YC?g3F&DL0OTUc|;PV|4##@{1xQfBbFfj)4@H?k&u%A
aci|Tn14KGml=6xI0000