Guest User

ooc.dm for anonymous Ckey

a guest
Jan 22nd, 2017
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.52 KB | None | 0 0
  1. /client/verb/ooc(msg as text)
  2. 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
  3. set category = "OOC"
  4.  
  5. if(say_disabled) //This is here to try to identify lag problems
  6. to_chat(usr, "<span class='warning'>Speech is currently admin-disabled.</span>")
  7. return
  8.  
  9. if(!mob)
  10. return
  11. if(IsGuestKey(key))
  12. to_chat(src, "Guests may not use OOC.")
  13. return
  14.  
  15. msg = copytext(sanitize(msg), 1, MAX_MESSAGE_LEN)
  16. if(!msg)
  17. return
  18.  
  19. if(!(prefs.toggles & CHAT_OOC))
  20. to_chat(src, "<span class='warning'>You have OOC muted.</span>")
  21. return
  22.  
  23. if(!holder)
  24. if(!ooc_allowed)
  25. to_chat(src, "<span class='warning'>OOC is globally muted</span>")
  26. return
  27. if(!dooc_allowed && (mob.stat == DEAD))
  28. to_chat(usr, "<span class='warning'>OOC for dead mobs has been turned off.</span>")
  29. return
  30. if(prefs.muted & MUTE_OOC)
  31. to_chat(src, "<span class='warning'>You cannot use OOC (muted).</span>")
  32. return
  33. if(oocban_isbanned(ckey))
  34. to_chat(src, "<span class='warning'>You cannot use OOC (banned).</span>")
  35. return
  36. if(handle_spam_prevention(msg,MUTE_OOC))
  37. return
  38. /*if(findtext(msg, "byond://"))
  39. to_chat(src, "<B>Advertising other servers is not allowed.</B>")
  40. log_admin("[key_name(src)] has attempted to advertise in OOC: [msg]")
  41. message_admins("[key_name_admin(src)] has attempted to advertise in OOC: [msg]")
  42. return
  43. */
  44. if((copytext(msg, 1, 2) in list(".",";",":","#")) || (findtext(lowertext(copytext(msg, 1, 5)), "say")))
  45. if(alert("Your message \"[msg]\" looks like it was meant for in game communication, say it in OOC?", "Meant for OOC?", "No", "Yes") != "Yes")
  46. return
  47. log_ooc("[mob.name]/[key] (@[mob.x],[mob.y],[mob.z]): [msg]")
  48.  
  49. var/display_colour = config.default_ooc_color
  50. if(holder && !holder.fakekey)
  51. display_colour = "#0099cc" //light blue
  52. if(holder.rights & R_MOD && !(holder.rights & R_ADMIN))
  53. display_colour = "#184880" //dark blue
  54. if(holder.rights & R_DEBUG && !(holder.rights & R_ADMIN))
  55. display_colour = "#1b521f" //dark green
  56. else if(holder.rights & R_ADMIN)
  57. if(config.allow_admin_ooccolor)
  58. display_colour = src.prefs.ooccolor
  59. else
  60. display_colour = "#b82e00" //orange
  61.  
  62. for(var/client/C in clients)
  63. if(C.prefs.toggles & CHAT_OOC)
  64. var/display_name = anonymous_key
  65. if(holder)
  66. if(holder.fakekey)
  67. if(C.holder)
  68. display_name = "[holder.fakekey]/([src.key])"
  69. else
  70. display_name = holder.fakekey
  71. to_chat(C, "<font color='[display_colour]'><span class='ooc'><span class='prefix'>OOC:</span> <EM>[display_name]:</EM> <span class='message'>[msg]</span></span></font>")
  72. /*
  73. if(holder)
  74. if(!holder.fakekey || C.holder)
  75. if(holder.rights & R_ADMIN)
  76. to_chat(C, "<font color=[config.allow_admin_ooccolor ? src.prefs.ooccolor :"#b82e00" ]><b><span class='prefix'>OOC:</span> <EM>[key][holder.fakekey ? "/([holder.fakekey])" : ""]:</EM> <span class='message'>[msg]</span></b></font>")
  77. else if(holder.rights & R_MOD)
  78. to_chat(C, "<font color=#184880><b><span class='prefix'>OOC:</span> <EM>[src.key][holder.fakekey ? "/([holder.fakekey])" : ""]:</EM> <span class='message'>[msg]</span></b></font>")
  79. else
  80. to_chat(C, "<font color='[normal_ooc_colour]'><span class='ooc'><span class='prefix'>OOC:</span> <EM>[src.key]:</EM> <span class='message'>[msg]</span></span></font>")
  81.  
  82. else
  83. to_chat(C, "<font color='[normal_ooc_colour]'><span class='ooc'><span class='prefix'>OOC:</span> <EM>[holder.fakekey ? holder.fakekey : src.key]:</EM> <span class='message'>[msg]</span></span></font>")
  84. else
  85. to_chat(C, "<font color='[normal_ooc_colour]'><span class='ooc'><span class='prefix'>OOC:</span> <EM>[src.key]:</EM> <span class='message'>[msg]</span></span></font>")
  86. */
  87.  
  88. /client/proc/set_ooc(newColor as color)
  89. set name = "Set Player OOC Colour"
  90. set desc = "Set to yellow for eye burning goodness."
  91. set category = "Fun"
  92.  
  93. config.default_ooc_color = newColor
  94.  
  95. // Stealing it back :3c -Nexypoo
  96. /client/verb/looc(msg as text)
  97. set name = "LOOC" //Gave this shit a shorter name so you only have to time out "ooc" rather than "ooc message" to use it --NeoFite
  98. set desc = "Local OOC, seen only by those in view."
  99. set category = "OOC"
  100.  
  101. if(say_disabled) //This is here to try to identify lag problems
  102. to_chat(usr, "<span class='warning'>Speech is currently admin-disabled.</span>")
  103. return
  104.  
  105. if(!mob)
  106. return
  107. if(IsGuestKey(key))
  108. to_chat(src, "Guests may not use OOC.")
  109. return
  110.  
  111. msg = copytext(sanitize(msg), 1, MAX_MESSAGE_LEN)
  112. if(!msg)
  113. return
  114.  
  115. if(!(prefs.toggles & CHAT_LOOC))
  116. to_chat(src, "<span class='warning'>You have LOOC muted.</span>")
  117. return
  118.  
  119. if(!holder)
  120. if(!ooc_allowed)
  121. to_chat(src, "<span class='warning'>LOOC is globally muted</span>")
  122. return
  123. if(!dooc_allowed && (mob.stat == DEAD))
  124. to_chat(usr, "<span class='warning'>LOOC for dead mobs has been turned off.</span>")
  125. return
  126. if(prefs.muted & MUTE_OOC)
  127. to_chat(src, "<span class='warning'>You cannot use LOOC (muted).</span>")
  128. return
  129. if(oocban_isbanned(ckey))
  130. to_chat(src, "<span class='warning'>You cannot use LOOC (banned).</span>")
  131. return
  132. if(handle_spam_prevention(msg,MUTE_OOC))
  133. return
  134. /*if(findtext(msg, "byond://"))
  135. to_chat(src, "<B>Advertising other servers is not allowed.</B>")
  136. log_admin("[key_name(src)] has attempted to advertise in LOOC: [msg]")
  137. message_admins("[key_name_admin(src)] has attempted to advertise in LOOC: [msg]")
  138. return
  139. */
  140. if((copytext(msg, 1, 2) in list(".",";",":","#")) || (findtext(lowertext(copytext(msg, 1, 5)), "say")))
  141. if(alert("Your message \"[msg]\" looks like it was meant for in game communication, say it in LOOC?", "Meant for LOOC?", "No", "Yes") != "Yes")
  142. return
  143. log_ooc("(LOCAL) [mob.name]/[key] (@[mob.x],[mob.y],[mob.z]): [msg]")
  144. var/list/heard
  145. var/mob/living/silicon/ai/AI
  146. if(!isAI(src.mob))
  147. heard = get_hearers_in_view(7, src.mob)
  148. else
  149. AI = src.mob
  150. heard = get_hearers_in_view(7, (istype(AI.eyeobj) ? AI.eyeobj : AI)) //if it doesn't have an eye somehow give it just the AI mob itself
  151. for(var/mob/M in heard)
  152. if(AI == M)
  153. continue
  154. if(!M.client)
  155. continue
  156. var/client/C = M.client
  157. if (C in admins)
  158. continue //they are handled after that
  159. if(isAIEye(M))
  160. var/mob/camera/aiEye/E = M
  161. if(E.ai)
  162. C = E.ai.client
  163. if(C.prefs.toggles & CHAT_LOOC)
  164. var/display_name = src.key
  165. if(holder)
  166. if(holder.fakekey)
  167. if(C.holder)
  168. display_name = "[holder.fakekey]/([src.key])"
  169. else
  170. display_name = holder.fakekey
  171. to_chat(C, "<font color='#6699CC'><span class='ooc'><span class='prefix'>LOOC:</span> <EM>[display_name]:</EM> <span class='message'>[msg]</span></span></font>")
  172.  
  173. for(var/client/C in admins)
  174. if(C.prefs.toggles & CHAT_LOOC)
  175. var/prefix = "(R)LOOC"
  176. if (C.mob in heard)
  177. prefix = "LOOC"
  178. to_chat(C, "<font color='#6699CC'><span class='ooc'><span class='prefix'>[prefix]:</span> <EM>[src.key]:</EM> <span class='message'>[msg]</span></span></font>")
  179. if(istype(AI))
  180. var/client/C = AI.client
  181. if (C in admins)
  182. return //already been handled
  183.  
  184. if(C.prefs.toggles & CHAT_LOOC)
  185. var/display_name = src.key
  186. if(holder)
  187. if(holder.fakekey)
  188. if(C.holder)
  189. display_name = "[holder.fakekey]/([src.key])"
  190. else
  191. display_name = holder.fakekey
  192. to_chat(C, "<font color='#6699CC'><span class='ooc'><span class='prefix'>LOOC:</span> <EM>[display_name]:</EM> <span class='message'>[msg]</span></span></font>")
Add Comment
Please, Sign In to add comment