[MIRROR] fix admin and mentor PMs (#9161)

Co-authored-by: Heroman3003 <31296024+Heroman3003@users.noreply.github.com>
Co-authored-by: Kashargul <KashL@t-online.de>
This commit is contained in:
CHOMPStation2
2024-10-04 15:57:43 -07:00
committed by GitHub
parent 48414295f0
commit f610c06e62
19 changed files with 98 additions and 79 deletions

View File

@@ -61,6 +61,7 @@
#define span_bolddanger(str) ("<span class='bolddanger'>" + str + "</span>")
#define span_userdanger(str) ("<span class='userdanger'>" + str + "</span>")
#define span_warning(str) ("<span class='warning'>" + str + "</span>")
#define span_warningplain(str) ("<span class='warningplain'>" + str + "</span>")
#define span_boldwarning(str) ("<span class='boldwarning'>" + str + "</span>")
#define span_filter_warning(str) ("<span class='filter_warning'>" + str + "</span>")
#define span_filter_combat(str) ("<span class='filter_combat'>" + str + "</span>")
@@ -167,6 +168,14 @@
#define span_mentor(str) ("<span class='mentor'>" + str + "</span>")
#define span_filter_pray(str) ("<span class='filter_pray'>" + str + "</span>")
/* Admin only usage */
#define span_admin_pm_notice(str) ("<span class='pm notice'>" + str + "</span>")
#define span_admin_pm_warning(str) ("<span class='pm warning'>" + str + "</span>")
#define span_mentor_pm_notice(str) ("<span class='mentor notice'>" + str + "</span>")
#define span_mentor_pm_warning(str) ("<span class='mentor warning'>" + str + "</span>")
/* Adminchat */
#define span_admin_channel(str) ("<span class='admin_channel'>" + str + "</span>")

View File

@@ -18,7 +18,7 @@
if(istype(M.wear_suit, armor_type) || istype(M.head, helmet_type) || istype(M.shoes, boot_type))
M.visible_message(span_warning("[M] casts off their [M.wear_suit.name]!"),
span_warning("We cast off our [M.wear_suit.name]"),
span_italics("You hear the organic matter ripping and tearing!"))
span_warningplain("You hear the organic matter ripping and tearing!"))
if(istype(M.wear_suit, armor_type))
qdel(M.wear_suit)
if(istype(M.head, helmet_type))

View File

@@ -71,13 +71,13 @@
if(ismob(loc))
visible_message(span_warning("A grotesque weapon forms around [loc.name]\'s arm!"),
span_warning("Our arm twists and mutates, transforming it into a deadly weapon."),
span_italics("You hear organic matter ripping and tearing!"))
span_warningplain("You hear organic matter ripping and tearing!"))
src.creator = loc
/obj/item/melee/changeling/dropped(mob/user)
visible_message(span_warning("With a sickening crunch, [creator] reforms their arm!"),
span_notice("We assimilate the weapon back into our body."),
span_italics("You hear organic matter ripping and tearing!"))
span_warningplain("You hear organic matter ripping and tearing!"))
playsound(src, 'sound/effects/blobattack.ogg', 30, 1)
spawn(1)
if(src)

View File

@@ -46,7 +46,7 @@
if(ismob(loc))
loc.visible_message(span_warning("[loc.name]\'s flesh rapidly inflates, forming a bloated mass around their body!"),
span_warning("We inflate our flesh, creating a spaceproof suit!"),
span_italics("You hear organic matter ripping and tearing!"))
span_warningplain("You hear organic matter ripping and tearing!"))
/obj/item/clothing/suit/space/changeling/dropped()
qdel(src)
@@ -110,7 +110,7 @@
if(ismob(loc))
loc.visible_message(span_warning("[loc.name]\'s flesh turns black, quickly transforming into a hard, chitinous mass!"),
span_warning("We harden our flesh, creating a suit of armor!"),
span_italics("You hear organic matter ripping and tearing!"))
span_warningplain("You hear organic matter ripping and tearing!"))
/obj/item/clothing/head/helmet/space/changeling/armored
name = "chitinous mass"

View File

@@ -52,7 +52,7 @@
if(siemens)
visible_message(span_warning("Arcs of electricity strike [G.affecting]!"),
span_warning("Our hand channels raw electricity into [G.affecting]."),
span_italics("You hear sparks!"))
span_warningplain("You hear sparks!"))
else
to_chat(src, span_warning("Our gloves block us from shocking \the [G.affecting]."))
src.mind.changeling.chem_charges -= 10
@@ -76,7 +76,7 @@
for(var/obj/item/cell/cell in L)
visible_message(span_warning("Some sparks fall out from \the [src.name]\'s [held_item]!"),
span_warning("Our hand channels raw electricity into \the [held_item]."),
span_italics("You hear sparks!"))
span_warningplain("You hear sparks!"))
var/i = 10
if(siemens)
while(i)
@@ -117,7 +117,7 @@
if(ismob(loc))
visible_message(span_warning("Electrical arcs form around [loc.name]\'s hand!"),
span_warning("We store a charge of electricity in our hand."),
span_italics("You hear crackling electricity!"))
span_warningplain("You hear crackling electricity!"))
var/T = get_turf(src)
new /obj/effect/effect/sparks(T)
@@ -154,7 +154,7 @@
if(siemens)
visible_message(span_warning("Arcs of electricity strike [C]!"),
span_warning("Our hand channels raw electricity into [C]"),
span_italics("You hear sparks!"))
span_warningplain("You hear sparks!"))
else
to_chat(src, span_warning("Our gloves block us from shocking \the [C]."))
//qdel(src) //Since we're no longer a one hit stun, we need to stick around.
@@ -172,7 +172,7 @@
if(siemens)
visible_message(span_warning("Arcs of electricity strike [S]!"),
span_warning("Our hand channels raw electricity into [S]"),
span_italics("You hear sparks!"))
span_warningplain("You hear sparks!"))
to_chat(S, span_danger("Warning: Electrical surge detected!"))
//qdel(src)
user.mind.changeling.chem_charges -= 10
@@ -186,7 +186,7 @@
for(var/obj/item/cell/cell in T.contents)
visible_message(span_warning("Some sparks fall out from \the [target]!"),
span_warning("Our hand channels raw electricity into \the [target]."),
span_italics("You hear sparks!"))
span_warningplain("You hear sparks!"))
var/i = 10
if(siemens)
while(i)

View File

@@ -49,7 +49,7 @@
new /obj/effect/gibspawner/human(T)
visible_message(span_warning("With a sickening squish, [src] reforms their whole body, casting their old parts on the floor!"),
span_notice("We reform our body. We are whole once more."),
span_italics("You hear organic matter ripping and tearing!"))
span_warningplain("You hear organic matter ripping and tearing!"))
feedback_add_details("changeling_powers","RR")
return 1

View File

@@ -216,7 +216,7 @@ Buildable meters
user.visible_message( \
"[user] fastens \the [src].", \
span_notice("You fasten \the [src]."), \
span_italics("You hear ratcheting."))
span_warningplain("You hear ratcheting."))
qdel(src)

View File

@@ -212,13 +212,13 @@ GLOBAL_DATUM_INIT(ahelp_tickets, /datum/admin_help_tickets, new)
MessageNoRecipient(parsed_message)
send2adminchat() //VOREStation Add
//show it to the person adminhelping too
to_chat(C, span_pm(span_adminnotice("PM to-<b>Admins</b>: [name]")))
to_chat(C, span_admin_pm_notice("PM to-<b>Admins</b>: [name]"))
//send it to irc if nobody is on and tell us how many were on
var/admin_number_present = send2irc_adminless_only(initiator_ckey, name)
log_admin("Ticket #[id]: [key_name(initiator)]: [name] - heard by [admin_number_present] non-AFK admins who have +BAN.")
if(admin_number_present <= 0)
to_chat(C, span_pm(span_notice("No active admins are online, your adminhelp was sent to the admin discord."))) //VOREStation Edit
to_chat(C, span_admin_pm_notice("No active admins are online, your adminhelp was sent to the admin discord.")) //VOREStation Edit
send2adminchat() //VOREStation Add
//YW EDIT START
var/list/adm = get_admin_counts()
@@ -291,7 +291,7 @@ GLOBAL_DATUM_INIT(ahelp_tickets, /datum/admin_help_tickets, new)
//won't bug irc
/datum/admin_help/proc/MessageNoRecipient(msg)
var/ref_src = "\ref[src]"
var/chat_msg = span_pm(span_adminnotice("<span class='adminhelp'>Ticket [TicketHref("#[id]", ref_src)]</span><b>: [LinkedReplyName(ref_src)] [FullMonty(ref_src)]:</b> [msg]"))
var/chat_msg = span_admin_pm_notice(span_adminhelp("Ticket [TicketHref("#[id]", ref_src)]") + span_bold(": [LinkedReplyName(ref_src)] [FullMonty(ref_src)]:") + msg)
AddInteraction("<font color='red'>[LinkedReplyName(ref_src)]: [msg]</font>")
//send this msg to all admins
@@ -666,7 +666,7 @@ GLOBAL_DATUM_INIT(ahelp_tickets, /datum/admin_help_tickets, new)
if(input == "Yes")
if(current_ticket)
current_ticket.MessageNoRecipient(msg)
to_chat(usr, span_pm(span_adminnotice("PM to-<b>Admins</b>: [msg]")))
to_chat(usr, span_admin_pm_notice("PM to-<b>Admins</b>: [msg]"))
return
else
to_chat(usr, span_warning("Ticket not found, creating new one..."))

View File

@@ -6,7 +6,7 @@
set category = null
set name = "Admin PM Mob"
if(!holder) //CHOMP Edit: Reverting this to let all staff respond to ahelps
to_chat(src, span_pm(span_warning("Error: Admin-PM-Context: Only administrators may use this command.")))
to_chat(src, span_admin_pm_warning("Error: Admin-PM-Context: Only administrators may use this command."))
return
if( !ismob(M) || !M.client )
return
@@ -18,8 +18,7 @@
set category = "Admin"
set name = "Admin PM"
if(!holder) //CHOMP Edit: Reverting this to let all staff respond to ahelps
to_chat(src, span_pm(span_warning("Error: Admin-PM-Panel: Only administrators may use this command.")))
return
to_chat(src, span_admin_pm_warning("Error: Admin-PM-Panel: Only administrators may use this command."))
var/list/client/targets[0]
for(var/client/T)
if(T.mob)
@@ -39,7 +38,7 @@
/client/proc/cmd_ahelp_reply(whom)
if(prefs.muted & MUTE_ADMINHELP)
to_chat(src, span_pm(span_warning("Error: Admin-PM: You are unable to use admin PM-s (muted).")))
to_chat(src, span_admin_pm_warning("Error: Admin-PM: You are unable to use admin PM-s (muted)."))
return
var/client/C
if(istext(whom))
@@ -50,7 +49,7 @@
C = whom
if(!C)
if(holder)
to_chat(src, span_pm(span_warning("Error: Admin-PM: Client not found.")))
to_chat(src, span_admin_pm_warning("Error: Admin-PM: Client not found."))
return
var/datum/ticket/T = C.current_ticket // CHOMPedit - Ticket System
@@ -67,12 +66,12 @@
//Fetching a message if needed. src is the sender and C is the target client
/client/proc/cmd_admin_pm(whom, msg, datum/ticket/T) // CHOMPedit - Ticket System
if(prefs.muted & MUTE_ADMINHELP)
to_chat(src, span_pm(span_warning("Error: Admin-PM: You are unable to use admin PM-s (muted).")))
to_chat(src, span_admin_pm_warning("Error: Admin-PM: You are unable to use admin PM-s (muted)."))
return
if(!holder && !current_ticket) //no ticket? https://www.youtube.com/watch?v=iHSPf6x1Fdo
to_chat(src, span_pm(span_warning("You can no longer reply to this ticket, please open another one by using the Adminhelp verb if need be.")))
to_chat(src, span_pm(span_notice("Message: [msg]")))
to_chat(src, span_admin_pm_warning("You can no longer reply to this ticket, please open another one by using the Adminhelp verb if need be."))
to_chat(src, span_admin_pm_notice("Message: [msg]"))
return
var/client/recipient
@@ -97,14 +96,14 @@
if(!msg)
return
if(holder)
to_chat(src, span_pm(span_warning("Error: Use the admin IRC channel, nerd.")))
to_chat(src, span_admin_pm_warning("Error: Use the admin IRC channel, nerd."))
return
else
if(!recipient)
if(holder)
to_chat(src, span_pm(span_warning("Error: Admin-PM: Client not found.")))
to_chat(src, span_admin_pm_warning("Error: Admin-PM: Client not found."))
to_chat(src, msg)
else
current_ticket.MessageNoRecipient(msg)
@@ -118,12 +117,12 @@
return
if(prefs.muted & MUTE_ADMINHELP)
to_chat(src, span_pm(span_warning("Error: Admin-PM: You are unable to use admin PM-s (muted).")))
to_chat(src, span_admin_pm_warning("Error: Admin-PM: You are unable to use admin PM-s (muted)."))
return
if(!recipient)
if(holder)
to_chat(src, span_pm(span_warning("Error: Admin-PM: Client not found.")))
to_chat(src, span_admin_pm_warning("Error: Admin-PM: Client not found."))
else
current_ticket.MessageNoRecipient(msg)
return
@@ -142,27 +141,27 @@
var/keywordparsedmsg = keywords_lookup(msg)
if(irc)
to_chat(src, span_pm(span_notice("PM to-<b>Admins</b>: [rawmsg]")))
admin_ticket_log(src, span_pm(span_warning("Reply PM from-<b>[key_name(src, TRUE, TRUE)]</b> to <i>IRC</i>: [keywordparsedmsg]")))
to_chat(src, span_admin_pm_notice("PM to-<b>Admins</b>: [rawmsg]"))
admin_ticket_log(src, span_admin_pm_warning("Reply PM from-<b>[key_name(src, TRUE, TRUE)]</b> to <i>IRC</i>: [keywordparsedmsg]"))
ircreplyamount--
send2irc("Reply: [ckey]",rawmsg)
else
if(recipient.holder)
if(holder) //both are admins
to_chat(recipient, span_pm(span_warning("Admin PM from-<b>[key_name(src, recipient, 1)]</b>: [keywordparsedmsg]")))
to_chat(src, span_pm(span_notice("Admin PM to-<b>[key_name(recipient, src, 1)]</b>: [keywordparsedmsg]")))
to_chat(recipient, span_admin_pm_warning("Admin PM from-<b>[key_name(src, recipient, 1)]</b>: [keywordparsedmsg]"))
to_chat(src, span_admin_pm_notice("Admin PM to-<b>[key_name(recipient, src, 1)]</b>: [keywordparsedmsg]"))
//omg this is dumb, just fill in both their tickets
var/interaction_message = span_pm(span_notice("PM from-<b>[key_name(src, recipient, 1)]</b> to-<b>[key_name(recipient, src, 1)]</b>: [keywordparsedmsg]"))
var/interaction_message = span_admin_pm_notice("PM from-<b>[key_name(src, recipient, 1)]</b> to-<b>[key_name(recipient, src, 1)]</b>: [keywordparsedmsg]")
admin_ticket_log(src, interaction_message)
if(recipient != src) //reeee
admin_ticket_log(recipient, interaction_message)
else //recipient is an admin but sender is not
var/replymsg = span_pm(span_warning("Reply PM from-<b>[key_name(src, recipient, 1)]</b>: [keywordparsedmsg]"))
var/replymsg = span_admin_pm_warning("Reply PM from-<b>[key_name(src, recipient, 1)]</b>: [keywordparsedmsg]")
admin_ticket_log(src, replymsg)
to_chat(recipient, replymsg)
to_chat(src, span_pm(span_notice("PM to-<b>Admins</b>: [msg]")))
to_chat(src, span_admin_pm_notice("PM to-<b>Admins</b>: [msg]"))
//play the recieving admin the adminhelp sound (if they have them enabled)
if(recipient.prefs?.read_preference(/datum/preference/toggle/holder/play_adminhelp_ping))
@@ -173,12 +172,12 @@
if(!recipient.current_ticket)
new /datum/ticket(msg, recipient, TRUE, 0) // CHOMPedit - Ticket System
to_chat(recipient, span_pm(span_warning(span_huge("<b>-- Administrator private message --</b>"))))
to_chat(recipient, span_pm(span_warning("Admin PM from-<b>[key_name(src, recipient, 0)]</b>: [msg]")))
to_chat(recipient, span_pm(span_warning("<i>Click on the administrator's name to reply.</i>")))
to_chat(src, span_pm(span_notice("Admin PM to-<b>[key_name(recipient, src, 1)]</b>: [msg]")))
to_chat(recipient, span_admin_pm_warning(span_huge("<b>-- Administrator private message --</b>")))
to_chat(recipient, span_admin_pm_warning("Admin PM from-<b>[key_name(src, recipient, 0)]</b>: [msg]"))
to_chat(recipient, span_admin_pm_warning("<i>Click on the administrator's name to reply.</i>"))
to_chat(src, span_admin_pm_notice("Admin PM to-<b>[key_name(recipient, src, 1)]</b>: [msg]"))
admin_ticket_log(recipient, span_pm(span_notice("PM From [key_name_admin(src)]: [keywordparsedmsg]")))
admin_ticket_log(recipient, span_admin_pm_notice("PM From [key_name_admin(src)]: [keywordparsedmsg]"))
//always play non-admin recipients the adminhelp sound
recipient << 'sound/effects/adminhelp.ogg'
@@ -197,7 +196,7 @@
return
else //neither are admins
to_chat(src, span_pm(span_warning("Error: Admin-PM: Non-admin to non-admin PM communication is forbidden.")))
to_chat(src, span_admin_pm_warning("Error: Admin-PM: Non-admin to non-admin PM communication is forbidden."))
return
if(irc)
@@ -205,7 +204,7 @@
for(var/client/X in GLOB.admins)
if(!check_rights(R_ADMIN|R_SERVER, 0, X)) //CHOMPEdit
continue
to_chat(X, span_pm(span_notice("<B>PM: [key_name(src, X, 0)]-&gt;IRC:</B> [keywordparsedmsg]")))
to_chat(X, span_admin_pm_notice("<B>PM: [key_name(src, X, 0)]-&gt;IRC:</B> [keywordparsedmsg]"))
else
log_admin("PM: [key_name(src)]->[key_name(recipient)]: [rawmsg]")
//we don't use message_admins here because the sender/receiver might get it too
@@ -213,7 +212,7 @@
if(!check_rights(R_ADMIN|R_SERVER, 0, X)) //CHOMPEdit
continue
if(X.key!=key && X.key!=recipient.key) //check client/X is an admin and isn't the sender or recipient
to_chat(X, span_pm(span_notice("<B>PM: [key_name(src, X, 0)]-&gt;[key_name(recipient, X, 0)]:</B> [keywordparsedmsg]")))
to_chat(X, span_admin_pm_notice("<B>PM: [key_name(src, X, 0)]-&gt;[key_name(recipient, X, 0)]:</B> [keywordparsedmsg]"))
/proc/IrcPm(target,msg,sender)
var/client/C = GLOB.directory[target]
@@ -262,11 +261,11 @@
message_admins("IRC message from [sender] to [key_name_admin(C)] : [msg]")
log_admin("IRC PM: [sender] -> [key_name(C)] : [msg]")
to_chat(C, span_pm(span_warning(span_huge("<b>-- Administrator private message --</b>"))))
to_chat(C, span_pm(span_warning("Admin PM from-<b><a href='?priv_msg=[stealthkey]'>[adminname]</A></b>: [msg]")))
to_chat(C, span_pm(span_warning("<i>Click on the administrator's name to reply.</i>")))
to_chat(C, span_admin_pm_warning(span_huge("<b>-- Administrator private message --</b>")))
to_chat(C, span_admin_pm_warning("Admin PM from-<b><a href='?priv_msg=[stealthkey]'>[adminname]</A></b>: [msg]"))
to_chat(C, span_admin_pm_warning("<i>Click on the administrator's name to reply.</i>"))
admin_ticket_log(C, span_pm(span_notice("PM From [irc_tagged]: [msg]")))
admin_ticket_log(C, span_admin_pm_notice("PM From [irc_tagged]: [msg]"))
window_flash(C)
//always play non-admin recipients the adminhelp sound

View File

@@ -101,7 +101,7 @@
to_chat(M, "<B>You hear a voice in your head...</B> <i>[msg]</i>")
log_admin("SubtlePM: [key_name(usr)] -> [key_name(M)] : [msg]")
msg = span_pm(span_adminnotice("<b> SubtleMessage: [key_name_admin(usr)] -> [key_name_admin(M)] :</b> [msg]"))
msg = span_admin_pm_notice("<b> SubtleMessage: [key_name_admin(usr)] -> [key_name_admin(M)] :</b> [msg]")
message_admins(msg)
admin_ticket_log(M, msg)
feedback_add_details("admin_verb","SMS") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
@@ -149,7 +149,7 @@
to_chat(M, msg)
log_admin("DirectNarrate: [key_name(usr)] to ([M.name]/[M.key]): [msg]")
msg = span_pm(span_adminnotice("<b> DirectNarrate: [key_name(usr)] to ([M.name]/[M.key]):</b> [msg]<BR>"))
msg = span_admin_pm_notice("<b> DirectNarrate: [key_name(usr)] to ([M.name]/[M.key]):</b> [msg]<BR>")
message_admins(msg)
admin_ticket_log(M, msg)
feedback_add_details("admin_verb","DIRN") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!

View File

@@ -214,7 +214,7 @@
playsound(src, 'sound/machines/click.ogg', 75, 1)
user.visible_message("\The [user] attaches \the [src] to the wall.",
span_notice("You attach \the [src] to the wall."),
span_italics("You hear clicking."))
span_warningplain("You hear clicking."))
if(istype(user, /mob/living/silicon/robot)) //Robots cannot unequip/drop items, for Safety Reasons.
forceMove(T)
user.drop_item(T)

View File

@@ -46,7 +46,7 @@ var/list/mentor_verbs_default = list(
set category = "Admin.Secrets" //CHOMPEdit
set name = "Make Mentor"
if(!holder)
to_chat(src, span_pm(span_warning("Error: Only administrators may use this command.")))
to_chat(src, span_admin_pm_warning("Error: Only administrators may use this command."))
return
var/list/client/targets[0]
for(var/client/T in GLOB.clients)
@@ -56,12 +56,12 @@ var/list/mentor_verbs_default = list(
return
var/client/C = targets[target]
if(has_mentor_powers(C) || C.deadmin_holder) // If an admin is deadminned you could mentor them and that will cause fuckery if they readmin
to_chat(src, span_pm(span_warning("Error: They already have mentor powers.")))
to_chat(src, span_admin_pm_warning("Error: They already have mentor powers."))
return
var/datum/mentor/M = new /datum/mentor(C.ckey)
M.associate(C)
to_chat(C, span_pm(span_notice("You have been granted mentorship.")))
to_chat(src, span_pm(span_notice("You have made [C] a mentor.")))
to_chat(C, span_admin_pm_notice("You have been granted mentorship."))
to_chat(src, span_admin_pm_notice("You have made [C] a mentor."))
log_admin("[key_name(src)] made [key_name(C)] a mentor.")
feedback_add_details("admin_verb","Make Mentor") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
// CHOMPedit Start - Adding to DB Logic
@@ -76,7 +76,7 @@ var/list/mentor_verbs_default = list(
set category = "Admin.Secrets" //CHOMPEdit
set name = "Unmake Mentor"
if(!holder)
to_chat(src, span_pm(span_warning("Error: Only administrators may use this command.")))
to_chat(src, span_admin_pm_warning("Error: Only administrators may use this command."))
return
var/list/client/targets[0]
for(var/client/T in GLOB.mentors)
@@ -86,8 +86,8 @@ var/list/mentor_verbs_default = list(
return
var/client/C = targets[target]
C.mentorholder.disassociate()
to_chat(C, span_pm(span_warning("Your mentorship has been revoked.")))
to_chat(src, span_pm(span_notice("You have revoked [C]'s mentorship.")))
to_chat(C, span_admin_pm_warning("Your mentorship has been revoked."))
to_chat(src, span_admin_pm_notice("You have revoked [C]'s mentorship."))
log_admin("[key_name(src)] revoked [key_name(C)]'s mentorship.")
feedback_add_details("admin_verb","Unmake Mentor") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
// CHOMPedit Start - Removing from DB Logic
@@ -147,7 +147,7 @@ var/list/mentor_verbs_default = list(
/client/proc/cmd_mhelp_reply(whom)
if(prefs.muted & MUTE_ADMINHELP)
to_chat(src, span_pm(span_warning("Error: Mentor-PM: You are unable to use admin PM-s (muted).")))
to_chat(src, span_admin_pm_warning("Error: Mentor-PM: You are unable to use admin PM-s (muted)."))
return
var/client/C
if(istext(whom))
@@ -156,7 +156,7 @@ var/list/mentor_verbs_default = list(
C = whom
if(!C)
if(has_mentor_powers(src))
to_chat(src, span_pm(span_warning("Error: Mentor-PM: Client not found.")))
to_chat(src, span_admin_pm_warning("Error: Mentor-PM: Client not found."))
return
var/datum/ticket/T = C.current_ticket // CHOMPedit - Ticket System
@@ -198,15 +198,13 @@ var/list/mentor_verbs_default = list(
set hidden = 1
if(prefs.muted & MUTE_ADMINHELP)
to_chat(src, span_pm(span_warning("Error: Mentor-PM: You are unable to use admin PM-s (muted).")))
to_chat(src, span_mentor_pm_warning("Error: Mentor-PM: You are unable to use mentor PM-s (muted)."))
return
//Not a mentor and no open ticket
if(!has_mentor_powers(src) && !current_ticket) // CHOMPedit - Ticket System
to_chat(src, span_pm(span_warning("You can no longer reply to this ticket, please open another one by using the Mentorhelp verb if need be.")))
to_chat(src, span_pm(span_notice("Message: [msg]")))
return
to_chat(src, span_mentor_pm_warning("You can no longer reply to this ticket, please open another one by using the Mentorhelp verb if need be."))
to_chat(src, span_mentor_pm_notice("Message: [msg]"))
var/client/recipient
if(istext(whom))
@@ -223,12 +221,12 @@ var/list/mentor_verbs_default = list(
return
if(prefs.muted & MUTE_ADMINHELP)
to_chat(src, span_pm(span_warning("Error: Mentor-PM: You are unable to use admin PM-s (muted).")))
to_chat(src, span_mentor_pm_warning("Error: Mentor-PM: You are unable to use mentor PM-s (muted)."))
return
if(!recipient)
if(has_mentor_powers(src))
to_chat(src, span_pm(span_warning("Error:Mentor-PM: Client not found.")))
to_chat(src, span_mentor_pm_warning("Error:Mentor-PM: Client not found."))
to_chat(src, msg)
else
log_admin("Mentorhelp: [key_name(src)]: [msg]")
@@ -237,10 +235,8 @@ var/list/mentor_verbs_default = list(
//Has mentor powers but the recipient no longer has an open ticket
if(has_mentor_powers(src) && !recipient.current_ticket) // CHOMPedit - Ticket System
to_chat(src, span_pm(span_warning("You can no longer reply to this ticket.")))
to_chat(src, span_pm(span_notice("Message: [msg]")))
return
to_chat(src, span_mentor_pm_warning("You can no longer reply to this ticket."))
to_chat(src, span_mentor_pm_notice("Message: [msg]"))
if (src.handle_spam_prevention(msg,MUTE_ADMINHELP))
return
@@ -248,7 +244,7 @@ var/list/mentor_verbs_default = list(
if(!msg)
return
var/interaction_message = span_pm(span_notice("Mentor-PM from-<b>[src]</b> to-<b>[recipient]</b>: [msg]"))
var/interaction_message = span_mentor_pm_notice("Mentor-PM from-<b>[src]</b> to-<b>[recipient]</b>: [msg]")
// CHOMPedit Start - Ticket System
if (recipient.current_ticket && !has_mentor_powers(recipient))

View File

@@ -358,7 +358,7 @@ GLOBAL_DATUM_INIT(mhelp_tickets, /datum/mentor_help_tickets, new)
if(tgui_alert(usr, "Really escalate this ticket to admins? No mentors will ever be able to interact with it again if you do.","Escalate",list("Yes","No")) != "Yes")
return
if (src.initiator == null) // You can't escalate a mentorhelp of someone who's logged out because it won't create the adminhelp properly
to_chat(usr, span_pm(span_warning("Error: client not found, unable to escalate.")))
to_chat(usr, span_mentor_pm_warning("Error: client not found, unable to escalate."))
return
var/datum/admin_help/AH = new /datum/admin_help(src.name, src.initiator, FALSE)
message_mentors("[usr.ckey] escalated Ticket [TicketHref("#[id]")]")
@@ -467,7 +467,7 @@ GLOBAL_DATUM_INIT(mhelp_tickets, /datum/mentor_help_tickets, new)
if(current_mentorhelp)
log_admin("Mentorhelp: [key_name(src)]: [msg]")
current_mentorhelp.MessageNoRecipient(msg)
to_chat(usr, span_adminnotice(span_mentor("Mentor-PM to-<b>Mentors</b>: [msg]")))
to_chat(usr, span_mentor_pm_notice("Mentor-PM to-<b>Mentors</b>: [msg]"))
return
else
to_chat(usr, span_warning("Ticket not found, creating new one..."))

View File

@@ -180,7 +180,7 @@
return
going_kaboom = TRUE
visible_message(span_danger("\The [src] lets out an shower of sparks as it starts to lose stability!"),\
span_italics("You hear a loud electrical crack!"))
span_warningplain("You hear a loud electrical crack!"))
playsound(src, 'sound/effects/lightningshock.ogg', 100, 1, extrarange = 5)
tesla_zap(src, 5, power_gen * 0.05)
addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(explosion), get_turf(src), 2, 3, 4, 8), 100) // Not a normal explosion.
@@ -286,7 +286,7 @@
/obj/machinery/power/rtg/kugelblitz/proc/asplod()
visible_message(span_danger("\The [src] lets out an shower of sparks as it starts to lose stability!"),\
span_italics("You hear a loud electrical crack!"))
span_warningplain("You hear a loud electrical crack!"))
playsound(src, 'sound/effects/lightningshock.ogg', 100, 1, extrarange = 5)
var/turf/T = get_turf(src)
qdel(src)

View File

@@ -113,14 +113,14 @@ export const MESSAGE_TYPES = [
name: 'Info',
description: 'Non-urgent messages from the game and items',
selector:
'.notice:not(.pm), .adminnotice:not(.pm), .info, .sinister, .cult, .infoplain, .announce, .hear, .smallnotice, .holoparasite, .boldnotice',
'.notice:not(.pm):not(.mentor), .adminnotice:not(.pm), .info, .sinister, .cult, .infoplain, .announce, .hear, .smallnotice, .holoparasite, .boldnotice',
},
{
type: MESSAGE_TYPE_WARNING,
name: 'Warnings',
description: 'Urgent messages from the game and items',
selector:
'.warning:not(.pm), .critical, .userdanger, .italics, .alertsyndie, .warningplain',
'.warning:not(.pm):not(.mentor), .critical, .userdanger, .alertsyndie, .warningplain',
},
{
type: MESSAGE_TYPE_DEADCHAT,

View File

@@ -380,6 +380,10 @@ img.icon.bigicon {
.body {
}
.warningplain {
font-style: italic;
}
.hivemind {
font-style: italic;
}

View File

@@ -398,6 +398,10 @@ img.icon.bigicon {
.body {
}
.warningplain {
font-style: italic;
}
.hivemind {
font-style: italic;
}

View File

@@ -375,11 +375,14 @@ img.icon.bigicon {
.npcsay,
.infoplain,
.oocplain,
.warningplain,
.chatexport,
.body {
}
.warningplain {
font-style: italic;
}
.hivemind {
font-style: italic;
color: #ffffff;

View File

@@ -398,6 +398,10 @@ img.icon.bigicon {
.body {
}
.warningplain {
font-style: italic;
}
.hivemind {
font-style: italic;
}