diff --git a/code/modules/admin/verbs/adminpm.dm b/code/modules/admin/verbs/adminpm.dm
index 5e26498a2b7..1c358c8cf4e 100644
--- a/code/modules/admin/verbs/adminpm.dm
+++ b/code/modules/admin/verbs/adminpm.dm
@@ -64,20 +64,11 @@
msg = sanitize(copytext(msg,1,MAX_MESSAGE_LEN))
if(!msg) return
- var/recieve_color = "purple"
- var/send_pm_type = " "
var/recieve_pm_type = "Player"
-
-
if(holder)
//mod PMs are maroon
//PMs sent from admins and mods display their rank
if(holder)
- if( holder.rights & R_ADMIN )
- recieve_color = "red"
- else
- recieve_color = "maroon"
- send_pm_type = holder.rank + " "
if(!C.holder && holder && holder.fakekey)
recieve_pm_type = "Admin"
else
@@ -87,10 +78,10 @@
src << "Error: Admin-PM: Non-admin to non-admin PM communication is forbidden."
return
- var/recieve_message = ""
+ var/recieve_message
if(holder && !C.holder)
- recieve_message = "-- Click the [recieve_pm_type]'s name to reply --\n"
+ recieve_message = "-- Click the [recieve_pm_type]'s name to reply --\n"
if(C.adminhelped)
C << recieve_message
C.adminhelped = 0
@@ -100,17 +91,15 @@
spawn(0) //so we don't hold the caller proc up
var/sender = src
var/sendername = key
- var/reply = input(C, msg,"[recieve_pm_type] PM from-[sendername]", "") as text|null //show message and await a reply
+ var/reply = input(C, msg,"[recieve_pm_type] PM from [sendername]", "") as text|null //show message and await a reply
if(C && reply)
if(sender)
C.cmd_admin_pm(sender,reply) //sender is still about, let's reply to them
else
adminhelp(reply) //sender has left, adminhelp instead
return
-
- recieve_message = "[recieve_pm_type] PM from-[get_options_bar(src, C.holder ? 1 : 0, C.holder ? 1 : 0, 1)]: [msg]"
- C << recieve_message
- src << "[send_pm_type]PM to-[get_options_bar(C, holder ? 1 : 0, holder ? 1 : 0, 1)]: [msg]"
+ src << "" + create_text_tag("pm_out_alt", "PM", src) + " to [get_options_bar(C, holder ? 1 : 0, holder ? 1 : 0, 1)]: [msg]"
+ C << "" + create_text_tag("pm_in", "", C) + " \[[recieve_pm_type] PM\] [get_options_bar(src, C.holder ? 1 : 0, C.holder ? 1 : 0, 1)]: [msg]"
//play the recieving admin the adminhelp sound (if they have them enabled)
//non-admins shouldn't be able to disable this
@@ -124,8 +113,8 @@
//check client/X is an admin and isn't the sender or recipient
if(X == C || X == src)
continue
- if(X.key!=key && X.key!=C.key && (X.holder.rights & R_ADMIN) || (X.holder.rights & (R_MOD|R_MENTOR)) )
- X << "PM: [key_name(src, X, 0)]->[key_name(C, X, 0)]: \blue [msg]" //inform X
+ if(X.key != key && X.key != C.key && (X.holder.rights & R_ADMIN|R_MOD|R_MENTOR))
+ X << "" + create_text_tag("pm_other", "PM:", X) + " [key_name(src, X, 0)] to [key_name(C, X, 0)]: [msg]"
/client/proc/cmd_admin_irc_pm()
if(prefs.muted & MUTE_ADMINHELP)
@@ -146,12 +135,11 @@
send2adminirc("PlayerPM from [key_name(src)]: [html_decode(msg)]")
- src << "IRC PM to-IRC-Admins: [msg]"
+ src << "" + create_text_tag("pm_out_alt", "", src) + " to : [msg]"
log_admin("PM: [key_name(src)]->IRC: [msg]")
for(var/client/X in admins)
if(X == src)
continue
- if((X.holder.rights & R_ADMIN) || (X.holder.rights & R_MOD))
- X << "PM: [key_name(src, X, 0)]->IRC-Admins: \blue [msg]"
-
+ if(X.holder.rights & R_ADMIN|R_MOD)
+ X << "" + create_text_tag("pm_other", "PM:", X) + " [key_name(src, X, 0)] to Admin IRC: [msg]"
diff --git a/code/stylesheet.dm b/code/stylesheet.dm
index 8c196c88e92..cc14488a5fc 100644
--- a/code/stylesheet.dm
+++ b/code/stylesheet.dm
@@ -25,6 +25,12 @@ em {font-style: normal; font-weight: bold;}
.ooc .developer {color: #719300;}
.ooc .admin {color: #e40045;}
+/* Admin: Private Messages */
+.pm .howto {color: #ff0000; font-weight: bold; font-size: 200%;}
+.pm .in {color: #ff0000;}
+.pm .out {color: #B54A4A;}
+.pm .other {color: #498db6;}
+
/* Admin: Channels */
.mod_channel {color: #735638; font-weight: bold;}
.mod_channel .admin {color: #e40045; font-weight: bold;}