[MIRROR] Decouples OOC/LOOC & RLOOC, adds ability to filter remote LOOC from specific VChat tabs (#6737)

Co-authored-by: Heroman3003 <31296024+Heroman3003@users.noreply.github.com>
Co-authored-by: Raeschen <rycoop29@gmail.com>
This commit is contained in:
CHOMPStation2
2023-08-06 17:24:19 +02:00
committed by GitHub
co-authored by Heroman3003 Raeschen
parent e3ea7ad10e
commit ea05422d4d
7 changed files with 71 additions and 28 deletions
+8 -7
View File
@@ -53,14 +53,15 @@
var/ooc_style = "everyone"
if(holder && !holder.fakekey)
ooc_style = "elevated"
//YawnWider Block Edit Start
if(holder.rights & R_MOD && !(holder.rights & R_BAN)) //Moderator
if(holder.rights & R_EVENT) //Retired Admins
ooc_style = "event_manager"
if(holder.rights & R_ADMIN && !(holder.rights & R_BAN)) //Game Masters
ooc_style = "moderator"
if(holder.rights & R_DEBUG && !(holder.rights & R_BAN)) //Developers
ooc_style = "developer"
if(holder.rights & R_ADMIN && holder.rights & R_BAN) //Admins
ooc_style = "admin"
//YawnWider Block Edit End
for(var/client/target in GLOB.clients)
if(target.is_preference_enabled(/datum/client_preference/show_ooc))
@@ -147,12 +148,12 @@
display_name = holder.fakekey
if(mob.stat != DEAD)
display_name = mob.name
//VOREStation Add - Resleeving shenanigan prevention
if(ishuman(mob))
var/mob/living/carbon/human/H = mob
if(H.original_player && H.original_player != H.ckey) //In a body not their own
display_name = "[H.mind.name] (as [H.name])"
//VOREStation Add End
// Everyone in normal viewing range of the LOOC
for(var/mob/viewer in m_viewers)
@@ -175,12 +176,12 @@
if(target in GLOB.admins)
admin_stuff += "/([key])"
to_chat(target, "<span class='ooc looc'>" + create_text_tag("looc", "LOOC:", target) + " <EM>[display_name][admin_stuff]:</EM> <span class='message'>[msg]</span></span>")
to_chat(target, "<span class='looc'>" + create_text_tag("looc", "LOOC:", target) + " <EM>[display_name][admin_stuff]:</EM> <span class='message'>[msg]</span></span>")
for(var/client/target in r_receivers)
var/admin_stuff = "/([key])([admin_jump_link(mob, target.holder)])"
to_chat(target, "<span class='ooc rlooc'>" + create_text_tag("looc", "LOOC:", target) + " <span class='prefix'>(R)</span><EM>[display_name][admin_stuff]:</EM> <span class='message'>[msg]</span></span>") //CHOMPEdit
to_chat(target, "<span class='rlooc'>" + create_text_tag("looc", "LOOC:", target) + " <span class='prefix'>(R)</span><EM>[display_name][admin_stuff]:</EM> <span class='message'>[msg]</span></span>")
/mob/proc/get_looc_source()
return src