diff --git a/code/modules/admin/verbs/adminpm.dm b/code/modules/admin/verbs/adminpm.dm index 3080f4d1bb6..2a56a4f3def 100644 --- a/code/modules/admin/verbs/adminpm.dm +++ b/code/modules/admin/verbs/adminpm.dm @@ -74,7 +74,7 @@ var/recieve_color = "purple" var/send_pm_type = "" var/recieve_pm_type = "Player" - //usr.client.holder.rights + if(holder) //mod PMs are maroon @@ -91,17 +91,17 @@ src << "Error: Admin-PM: Non-admin to non-admin PM communication is forbidden." return - var/recieve_message = "[recieve_pm_type] PM from-[key_name(src, C, 1)]: [msg]" + var/recieve_message = "" if(holder && !C.holder) - recieve_message = "-- Administrator private message --\n" + recieve_message + recieve_message = "-- Administrator private message --\n" //AdminPM popup for ApocStation and anybody else who wants to use it. Set it with POPUP_ADMIN_PM in config.txt ~Carn if(config.popup_admin_pm) spawn(0) //so we don't hold the caller proc up var/sender = src var/sendername = key - var/reply = input(C, msg,"Admin 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 @@ -109,8 +109,9 @@ adminhelp(reply) //sender has left, adminhelp instead return + recieve_message = "[recieve_pm_type] PM from-[key_name(src, C, C.holder ? 1 : 0)]: [msg]" C << recieve_message - src << "[send_pm_type] PM to-[key_name(C, src, 1)]: [msg]" + src << "[send_pm_type] PM to-[key_name(C, src, holder ? 1 : 0)]: [msg]" /*if(holder && !C.holder) C.last_pm_recieved = world.time @@ -177,6 +178,7 @@ //we don't use message_admins here because the sender/receiver might get it too for(var/client/X in admins) //check client/X is an admin and isn't the sender or recipient - //only admins can see PMs + if(X == C || X == src) + continue if(X.key!=key && X.key!=C.key && (X.holder.rights & R_ADMIN) || (X.holder.rights & R_MOD) ) X << "PM: [key_name(src, X, 0)]->[key_name(C, X, 0)]: \blue [msg]" //inform X