TG: - All PM links are now tied to clients and not mobs. What this means is that all

PM links (the links admins get in admin messages which lead to a PM) should now
point directly to the client, if one still exists or report them as
disconnected. This means that there should no longer be problems with clients
which swap mobs.
- Made the player-side admin pm message more visible and obnoxious. Some players
might find it annoying but at least it will not leave much room to complain
about "missing PM-s"
Screenshot:
http://www.kamletos.si/admin%20message%20format.PNG
- Fixed that awkward X in asay messages, which moved whatever mob you were in to
the location of the person who said the message. Replaced it with JMP, which
does the same as the JMP in adminhelps - makes a ghost and moves that ghost to
the location:
Screenshot:
http://www.kamletos.si/admin%20say.PNG
- Ghosts which find themselves locked in any form of container (closets most
commonly) will now (FINALLY) exit the container (and it is any container!) after
they click one of the arrow keys.
Revision: r3121
Author: 	 baloh.matevz

Also some missed things from the config.txt
This commit is contained in:
Ren Erthilo
2012-04-23 00:57:48 +01:00
parent b6e7adbcbd
commit d482d02a79
7 changed files with 147 additions and 53 deletions

View File

@@ -1,27 +1,34 @@
/mob/verb/adminhelp(msg as text)
/client/verb/adminhelp(msg as text)
set category = "Admin"
set name = "Adminhelp"
msg = copytext(sanitize(msg), 1, MAX_MESSAGE_LEN)
if (!msg)
/*
if (muted_complete)
src << "<font color='red'>Error: Admin-PM: You are completely muted.</font>"
return
*/
if(!msg) return
msg = sanitize(copytext(msg,1,MAX_MESSAGE_LEN))
if (!msg) return
// if (usr.client && usr.client.muted_complete)
// return
if(mob)
var/ref_mob = "\ref[src.mob]"
for (var/client/X)
if (X.holder)
if(X.sound_adminhelp)
X << 'adminhelp.ogg'
X << "\blue <b><font color=red>HELP: </font>[key_name(src, X)] (<A HREF='?src=\ref[X.holder];adminplayeropts=[ref_mob]'>PP</A>) (<A HREF='?src=\ref[X.holder];adminplayervars=[ref_mob]'>VV</A>) (<A HREF='?src=\ref[X.holder];adminplayersubtlemessage=[ref_mob]'>SM</A>) (<A HREF='?src=\ref[X.holder];adminplayerobservejump=[ref_mob]'>JMP</A>) (<A HREF='?src=\ref[X.holder];secretsadmin=check_antagonist'>CA</A>):</b> [msg]"
else
var/ref_client = "\ref[src]"
for (var/client/X)
if (X.holder)
if(X.sound_adminhelp)
X << 'adminhelp.ogg'
X << "\blue <b><font color=red>HELP: </font>[key_name(src, X)] (<A HREF='?src=\ref[X.holder];adminplayervars=[ref_client]'>VV</A>) (<A HREF='?src=\ref[X.holder];secretsadmin=check_antagonist'>CA</A>):</b> [msg]"
for (var/mob/M in world)
if (M.client && M.client.holder && (M.client.holder.level != -3))
if(M.client.sound_adminhelp)
M << 'adminhelp.ogg'
M << "\blue <b><font color=red>HELP: </font>[key_name(src, M)] (<A HREF='?src=\ref[M.client.holder];adminplayeropts=\ref[src]'>PP</A>) (<A HREF='?src=\ref[M.client.holder];adminplayervars=\ref[src]'>VV</A>) (<A HREF='?src=\ref[M.client.holder];adminplayersubtlemessage=\ref[src]'>SM</A>) (<A HREF='?src=\ref[M.client.holder];adminplayerobservejump=\ref[src]'>JMP</A>) (<A HREF='?src=\ref[M.client.holder];secretsadmin=check_antagonist'>CA</A>):</b> [msg]"
usr << "Your message has been broadcast to administrators."
src << "<font color='blue'>PM to-<b>Admins</b>: [msg]</font>"
log_admin("HELP: [key_name(src)]: [msg]")
var/list/replacechars = list("'" = "","\"" = "",">" = "","<" = "","(" = "",")" = "")
msg = sanitize_simple(msg, replacechars)
send2adminirc("#bs12admin","HELP: \"[src.key]: [msg]\"")
if(tension_master)
tension_master.new_adminhelp()
send2adminirc("#bs12admin","HELP: \"[src.key]: [msg]\"")
//feedback_add_details("admin_verb","AH") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
return