/client/verb/looc(msg as text) set name = "LOOC" set desc = "Local OOC, seen only by those in view." set category = "OOC" if(GLOB.say_disabled) //This is here to try to identify lag problems usr << " Speech is currently admin-disabled." return if(!mob) return if(IsGuestKey(key)) src << "Guests may not use OOC." return msg = copytext(sanitize(msg), 1, MAX_MESSAGE_LEN) if(!msg) return if(!(prefs.toggles & CHAT_OOC)) src << " You have OOC muted." return if(!holder) if(!GLOB.ooc_allowed) src << " OOC is globally muted" return if(!GLOB.dooc_allowed && (mob.stat == DEAD)) usr << " OOC for dead mobs has been turned off." return if(prefs.muted & MUTE_OOC) src << " You cannot use OOC (muted)." return if(handle_spam_prevention(msg,MUTE_OOC)) return if(findtext(msg, "byond://")) src << "Advertising other servers is not allowed." log_admin("[key_name(src)] has attempted to advertise in LOOC: [msg]") return log_ooc("(LOCAL) [mob.name]/[key] : [msg]") mob.log_message("(LOCAL): [msg]", INDIVIDUAL_OOC_LOG) var/list/heard = get_hearers_in_view(7, get_top_level_mob(src.mob)) for(var/mob/M in heard) if(!M.client) continue var/client/C = M.client if (C in GLOB.admins) continue //they are handled after that if (isobserver(M)) continue //Also handled later. if(C.prefs.toggles & CHAT_OOC) // var/display_name = src.key // if(holder) // if(holder.fakekey) // if(C.holder) // display_name = "[holder.fakekey]/([src.key])" // else // display_name = holder.fakekey to_chat(C,"LOOC: [src.mob.name]: [msg]") for(var/client/C in GLOB.admins) if(C.prefs.toggles & CHAT_OOC) var/prefix = "(R)LOOC" if (C.mob in heard) prefix = "LOOC" to_chat(C,"[prefix]: [src.key]/[src.mob.name]: [msg]") /*for(var/mob/dead/observer/G in world) if(!G.client) continue var/client/C = G.client if (C in GLOB.admins) continue //handled earlier. if(C.prefs.toggles & CHAT_OOC) var/prefix = "(G)LOOC" if (C.mob in heard) prefix = "LOOC" to_chat(C,"[prefix]: [src.key]/[src.mob.name]: [msg]")*/