/client/verb/ooc(msg as text)
set name = "OOC" //Gave this shit a shorter name so you only have to time out "ooc" rather than "ooc message" to use it --NeoFite
set category = "OOC"
if(GLOB.say_disabled) //This is here to try to identify lag problems
to_chat(usr, "Speech is currently admin-disabled.")
return
if(!mob)
return
if(IsGuestKey(key))
to_chat(src, "Guests may not use OOC.")
return
msg = copytext(sanitize(msg), 1, MAX_MESSAGE_LEN)
var/raw_msg = msg
if(!msg)
return
msg = emoji_parse(msg)
if((copytext(msg, 1, 2) in list(".",";",":","#")) || (findtext(lowertext(copytext(msg, 1, 5)), "say")))
if(alert("Your message \"[raw_msg]\" looks like it was meant for in game communication, say it in OOC?", "Meant for OOC?", "No", "Yes") != "Yes")
return
if(!(prefs.chat_toggles & CHAT_OOC))
to_chat(src, "You have OOC muted.")
return
if(!holder)
if(!GLOB.ooc_allowed)
to_chat(src, "OOC is globally muted.")
return
if(!GLOB.dooc_allowed && (mob.stat == DEAD))
to_chat(usr, "OOC for dead mobs has been turned off.")
return
if(prefs.muted & MUTE_OOC)
to_chat(src, "You cannot use OOC (muted).")
return
if(src.mob)
if(jobban_isbanned(src.mob, "OOC"))
to_chat(src, "You have been banned from OOC.")
return
if(handle_spam_prevention(msg,MUTE_OOC))
return
if(findtext(msg, "byond://"))
to_chat(src, "Advertising other servers is not allowed.")
log_admin("[key_name(src)] has attempted to advertise in OOC: [msg]")
message_admins("[key_name_admin(src)] has attempted to advertise in OOC: [msg]")
return
log_ooc("[mob.name]/[key] : [raw_msg]")
mob.log_message("[key]: [raw_msg]", INDIVIDUAL_OOC_LOG)
var/keyname = key
if(prefs.unlock_content)
if(prefs.toggles & MEMBER_PUBLIC)
keyname = "[keyname]"
for(var/client/C in GLOB.clients)
if(C.prefs.chat_toggles & CHAT_OOC)
if(holder)
if(!holder.fakekey || C.holder)
if(check_rights_for(src, R_ADMIN))
to_chat(C, "[config.allow_admin_ooccolor && prefs.ooccolor ? "" :"" ]OOC: [keyname][holder.fakekey ? "/([holder.fakekey])" : ""]: ")
else
to_chat(C, "OOC: [keyname][holder.fakekey ? "/([holder.fakekey])" : ""]: ")
else
to_chat(C, "OOC: [holder.fakekey ? holder.fakekey : key]: ")
else if(!(key in C.prefs.ignoring))
to_chat(C, "OOC: [keyname]: ")
/proc/toggle_ooc(toggle = null)
if(toggle != null) //if we're specifically en/disabling ooc
if(toggle != GLOB.ooc_allowed)
GLOB.ooc_allowed = toggle
else
return
else //otherwise just toggle it
GLOB.ooc_allowed = !GLOB.ooc_allowed
to_chat(world, "The OOC channel has been globally [GLOB.ooc_allowed ? "enabled" : "disabled"].")
GLOBAL_VAR_INIT(normal_ooc_colour, OOC_COLOR)
/client/proc/set_ooc(newColor as color)
set name = "Set Player OOC Color"
set desc = "Modifies player OOC Color"
set category = "Fun"
GLOB.normal_ooc_colour = sanitize_ooccolor(newColor)
/client/proc/reset_ooc()
set name = "Reset Player OOC Color"
set desc = "Returns player OOC Color to default"
set category = "Fun"
GLOB.normal_ooc_colour = OOC_COLOR
/client/verb/colorooc()
set name = "Set Your OOC Color"
set category = "Preferences"
if(!holder || check_rights_for(src, R_ADMIN))
if(!is_content_unlocked())
return
var/new_ooccolor = input(src, "Please select your OOC color.", "OOC color", prefs.ooccolor) as color|null
if(new_ooccolor)
prefs.ooccolor = sanitize_ooccolor(new_ooccolor)
prefs.save_preferences()
feedback_add_details("admin_verb","Set OOC Color") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
return
/client/verb/resetcolorooc()
set name = "Reset Your OOC Color"
set desc = "Returns your OOC Color to default"
set category = "Preferences"
if(!holder || check_rights_for(src, R_ADMIN))
if(!is_content_unlocked())
return
prefs.ooccolor = initial(prefs.ooccolor)
prefs.save_preferences()
//Checks admin notice
/client/verb/admin_notice()
set name = "Adminnotice"
set category = "Admin"
set desc ="Check the admin notice if it has been set"
if(GLOB.admin_notice)
to_chat(src, "Admin Notice:\n \t [GLOB.admin_notice]")
else
to_chat(src, "There are no admin notices at the moment.")
/client/verb/motd()
set name = "MOTD"
set category = "OOC"
set desc ="Check the Message of the Day"
if(GLOB.join_motd)
to_chat(src, "