mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-07-13 17:14:47 +01:00
Is that a PDA in your pocket or are you just happy to subtle me (#2058)
This commit is contained in:
@@ -133,13 +133,16 @@ GLOBAL_LIST_EMPTY_TYPED(pda_messengers, /datum/computer_file/program/messenger)
|
||||
var/everyone
|
||||
/// The station time at which this message was made.
|
||||
var/timestamp
|
||||
/// Whether or not the message is hidden from ghostchat
|
||||
var/subtle // BUBBER EDIT ADDITION - SUBTLE MESSAGES
|
||||
|
||||
/datum/pda_message/New(message, outgoing, timestamp, photo_name = null, everyone = FALSE)
|
||||
/datum/pda_message/New(message, outgoing, timestamp, photo_name = null, everyone = FALSE, subtle = FALSE) // BUBBER EDIT CHANGE - SUBTLE MESSAGES - Original: /datum/pda_message/New(message, outgoing, timestamp, photo_name = null, everyone = FALSE)
|
||||
src.message = message
|
||||
src.outgoing = outgoing
|
||||
src.timestamp = timestamp
|
||||
src.photo_name = photo_name
|
||||
src.everyone = everyone
|
||||
src.subtle = subtle // BUBBER EDIT ADDITION - SUBTLE MESSAGES
|
||||
|
||||
/// Returns an associative list of the message's data, used for ui_data calls.
|
||||
/datum/pda_message/proc/get_ui_data(mob/user)
|
||||
@@ -149,4 +152,5 @@ GLOBAL_LIST_EMPTY_TYPED(pda_messengers, /datum/computer_file/program/messenger)
|
||||
data["photo_path"] = photo_name ? SSassets.transport.get_asset_url(photo_name) : null
|
||||
data["everyone"] = everyone
|
||||
data["timestamp"] = timestamp
|
||||
data["subtle"] = subtle // BUBBER EDIT ADDITION - SUBTLE MESSAGES
|
||||
return data
|
||||
|
||||
+37
-15
@@ -294,7 +294,7 @@
|
||||
|
||||
return disk.send_virus(computer, target_messenger.computer, usr, params["message"])
|
||||
|
||||
return send_message(usr, params["message"], list(target))
|
||||
return send_message(usr, params["message"], list(target), subtle = params["subtle"]) // BUBBER EDIT CHANGE - SUBTLE MESSAGES - Original: return send_message(usr, params["message"], list(target))
|
||||
|
||||
if("PDA_clearPhoto")
|
||||
selected_image = null
|
||||
@@ -391,7 +391,7 @@
|
||||
//////////////////////
|
||||
|
||||
/// Brings up the quick reply prompt to send a message.
|
||||
/datum/computer_file/program/messenger/proc/quick_reply_prompt(mob/living/user, datum/pda_chat/chat)
|
||||
/datum/computer_file/program/messenger/proc/quick_reply_prompt(mob/living/user, datum/pda_chat/chat, subtle = FALSE) // BUBBER EDIT CHANGE - SUBTLE MESSAGES - Original: /datum/computer_file/program/messenger/proc/quick_reply_prompt(mob/living/user, datum/pda_chat/chat)
|
||||
if(!istype(chat))
|
||||
return
|
||||
var/datum/computer_file/program/messenger/target = chat.recipient?.resolve()
|
||||
@@ -401,8 +401,8 @@
|
||||
chat.can_reply = FALSE
|
||||
return
|
||||
var/target_name = target.computer.saved_identification
|
||||
var/input_message = tgui_input_text(user, "Enter [mime_mode ? "emojis":"a message"]", "NT Messaging[target_name ? " ([target_name])" : ""]", encode = FALSE)
|
||||
send_message(user, input_message, list(chat))
|
||||
var/input_message = tgui_input_text(user, "Enter [mime_mode ? "emojis":"a message"]. Start with # for subtle.", "NT Messaging[target_name ? " ([target_name])" : ""]", encode = FALSE) // BUBBER EDIT CHANGE - SUBTLE MESSAGES
|
||||
send_message(user, input_message, list(chat), subtle = subtle) // BUBBER EDIT CHANGE - SUBTLE MESSAGES - Original: send_message(user, input_message, list(chat))
|
||||
|
||||
/// Helper proc that sends a message to everyone
|
||||
/datum/computer_file/program/messenger/proc/send_message_to_all(mob/living/user, message)
|
||||
@@ -471,7 +471,7 @@
|
||||
return emoji_parse(message)
|
||||
|
||||
/// Sends a message to targets via PDA. When sending to everyone, set `everyone` to true so the message is formatted accordingly
|
||||
/datum/computer_file/program/messenger/proc/send_message(atom/source, message, list/targets, everyone = FALSE)
|
||||
/datum/computer_file/program/messenger/proc/send_message(atom/source, message, list/targets, everyone = FALSE, subtle = FALSE) // BUBBER EDIT CHANGE - SUBTLE MESSAGES - Original: /datum/computer_file/program/messenger/proc/send_message(atom/source, message, list/targets, everyone = FALSE)
|
||||
var/mob/living/sender
|
||||
if(isliving(source))
|
||||
sender = source
|
||||
@@ -479,6 +479,14 @@
|
||||
if(!message)
|
||||
return FALSE
|
||||
|
||||
// BUBBER EDIT ADDITION BEGIN - SUBTLE MESSAGES
|
||||
// If "subtle" it wont be sent to ghostchats.
|
||||
// A message is "subtle" if it begins with "#", the below code also removes it from the sent message.
|
||||
if(findtext(message,"#", 1) == TRUE)
|
||||
subtle = TRUE
|
||||
message = copytext(message, 2, 0)
|
||||
// BUBBER EDIT ADDITION END - SUBTLE MESSAGES
|
||||
|
||||
|
||||
// upgrade the image asset to a permanent key
|
||||
var/photo_asset_key = selected_image
|
||||
@@ -540,11 +548,11 @@
|
||||
target_chats += target_chat
|
||||
target_messengers += target_messenger
|
||||
|
||||
if(!send_message_signal(source, message, target_messengers, photo_asset_key, everyone))
|
||||
if(!send_message_signal(source, message, target_messengers, photo_asset_key, everyone, FALSE, null, null, subtle)) // BUBBER EDIT CHANGE - SUBTLE MESSAGES - Original: if(!send_message_signal(source, message, target_messengers, photo_asset_key, everyone))
|
||||
return FALSE
|
||||
|
||||
// Log it in our logs
|
||||
var/datum/pda_message/message_datum = new(message, TRUE, station_time_timestamp(PDA_MESSAGE_TIMESTAMP_FORMAT), photo_asset_key, everyone)
|
||||
var/datum/pda_message/message_datum = new(message, TRUE, station_time_timestamp(PDA_MESSAGE_TIMESTAMP_FORMAT), photo_asset_key, everyone, subtle = subtle) // BUBBER EDIT CHANGE - SUBTLE MESSAGES - Original: var/datum/pda_message/message_datum = new(message, TRUE, station_time_timestamp(PDA_MESSAGE_TIMESTAMP_FORMAT), photo_asset_key, everyone)
|
||||
for(var/datum/pda_chat/target_chat as anything in target_chats)
|
||||
target_chat.add_message(message_datum, show_in_recents = !everyone)
|
||||
target_chat.unread_messages = 0
|
||||
@@ -570,7 +578,7 @@
|
||||
|
||||
return send_message_signal(sender, message, targets, fake_photo, FALSE, TRUE, fake_name, fake_job)
|
||||
|
||||
/datum/computer_file/program/messenger/proc/send_message_signal(atom/source, message, list/datum/computer_file/program/messenger/targets, photo_path = null, everyone = FALSE, rigged = FALSE, fake_name = null, fake_job = null)
|
||||
/datum/computer_file/program/messenger/proc/send_message_signal(atom/source, message, list/datum/computer_file/program/messenger/targets, photo_path = null, everyone = FALSE, rigged = FALSE, fake_name = null, fake_job = null, subtle = FALSE) // BUBBER EDIT CHANGE - SUBTLE MESSAGES - Original: /datum/computer_file/program/messenger/proc/send_message_signal(atom/source, message, list/datum/computer_file/program/messenger/targets, photo_path = null, everyone = FALSE, rigged = FALSE, fake_name = null, fake_job = null)
|
||||
var/mob/sender
|
||||
if(ismob(source))
|
||||
sender = source
|
||||
@@ -606,6 +614,7 @@
|
||||
"everyone" = everyone,
|
||||
"photo" = photo_path,
|
||||
"automated" = FALSE,
|
||||
"subtle" = subtle, // BUBBER EDIT ADDITION - SUBTLE MESSAGES
|
||||
))
|
||||
if(rigged) //Will skip the message server and go straight to the hub so it can't be cheesed by disabling the message server machine
|
||||
signal.data["fakename"] = fake_name
|
||||
@@ -633,17 +642,30 @@
|
||||
shell_addendum = "[circuit.parent.get_creator()] "
|
||||
|
||||
// Log in the talk log
|
||||
source.log_talk(message, LOG_PDA, tag="[shell_addendum][rigged ? "Rigged" : ""] PDA: [computer.saved_identification] to [signal.format_target()]")
|
||||
source.log_talk(message, subtle ? LOG_SUBTLER : LOG_PDA, tag="[shell_addendum][rigged ? "Rigged" : ""] PDA: [computer.saved_identification] to [signal.format_target()]") // BUBBER EDIT CHANGE - SUBTLE MESSAGES - Original: source.log_talk(message, LOG_PDA, tag="[shell_addendum][rigged ? "Rigged" : ""] PDA: [computer.saved_identification] to [signal.format_target()]")
|
||||
if(rigged)
|
||||
log_bomber(sender, "sent a rigged PDA message (Name: [fake_name]. Job: [fake_job]) to [english_list(stringified_targets)] [!is_special_character(sender) ? "(SENT BY NON-ANTAG)" : ""]")
|
||||
|
||||
/** BUBBER EDIT CHANGE BEGIN - SUBTLE MESSAGES - Original:
|
||||
* var/ghost_message = span_game_say("[span_name(signal.format_sender())] [rigged ? "(as [span_name(fake_name)]) Rigged " : ""]PDA Message --> [span_name("[signal.format_target()]")]: \"[signal.format_message()]\"")
|
||||
* var/list/message_listeners = GLOB.dead_player_list + GLOB.current_observers_list
|
||||
* for(var/mob/listener as anything in message_listeners)
|
||||
* if(!(get_chat_toggles(listener) & CHAT_GHOSTPDA))
|
||||
* continue
|
||||
* to_chat(listener, "[FOLLOW_LINK(listener, source)] [ghost_message]")
|
||||
*/
|
||||
// Show it to ghosts
|
||||
var/ghost_message = span_game_say("[span_name(signal.format_sender())] [rigged ? "(as [span_name(fake_name)]) Rigged " : ""]PDA Message --> [span_name("[signal.format_target()]")]: \"[signal.format_message()]\"")
|
||||
var/public_message = "[span_name(signal.format_sender())] [rigged ? "(as [span_name(fake_name)]) Rigged " : ""]PDA Message --> [span_name("[signal.format_target()]")]: \"[signal.format_message()]\""
|
||||
var/ghost_message = span_game_say(public_message)
|
||||
var/list/message_listeners = GLOB.dead_player_list + GLOB.current_observers_list
|
||||
for(var/mob/listener as anything in message_listeners)
|
||||
if(!(get_chat_toggles(listener) & CHAT_GHOSTPDA))
|
||||
continue
|
||||
to_chat(listener, "[FOLLOW_LINK(listener, source)] [ghost_message]")
|
||||
if(!subtle)
|
||||
for(var/mob/listener as anything in message_listeners)
|
||||
if(!(get_chat_toggles(listener) & CHAT_GHOSTPDA))
|
||||
continue
|
||||
to_chat(listener, "[FOLLOW_LINK(listener, source)] [ghost_message]")
|
||||
// Log to public log
|
||||
log_public_file(public_message)
|
||||
// BUBBER EDIT CHANGE END
|
||||
|
||||
if(sender)
|
||||
to_chat(sender, span_info("PDA message sent to [signal.format_target()]: \"[message]\""))
|
||||
@@ -672,7 +694,7 @@
|
||||
|
||||
// don't create a new chat for rigged messages, make it a one off notif
|
||||
if(!is_rigged)
|
||||
var/datum/pda_message/message = new(signal.data["message"], FALSE, station_time_timestamp(PDA_MESSAGE_TIMESTAMP_FORMAT), signal.data["photo"], signal.data["everyone"])
|
||||
var/datum/pda_message/message = new(signal.data["message"], FALSE, station_time_timestamp(PDA_MESSAGE_TIMESTAMP_FORMAT), signal.data["photo"], signal.data["everyone"], signal.data["subtle"]) // BUBBER EDIT CHANGE - SUBTLE MESSAGES - Original: var/datum/pda_message/message = new(signal.data["message"], FALSE, station_time_timestamp(PDA_MESSAGE_TIMESTAMP_FORMAT), signal.data["photo"], signal.data["everyone"])
|
||||
|
||||
chat = find_chat_by_recipient(is_fake_user ? fake_name : sender_ref, is_fake_user)
|
||||
if(!istype(chat))
|
||||
|
||||
Reference in New Issue
Block a user