diff --git a/code/__HELPERS/logging.dm b/code/__HELPERS/logging.dm index 269e9c16b8a..71e771f4e74 100644 --- a/code/__HELPERS/logging.dm +++ b/code/__HELPERS/logging.dm @@ -68,6 +68,14 @@ if (config.log_whisper) diary << html_decode("\[[time_stamp()]]WHISPER: [text]") +/proc/log_cultspeak(text) + if (config.log_whisper) + diary << html_decode("\[[time_stamp()]]CULT: [text]") + +/proc/log_narspeak(text) + if (config.log_whisper) + diary << html_decode("\[[time_stamp()]]NARSIE: [text]") + /proc/log_emote(text) // //writepanic("[__FILE__].[__LINE__] (no type)([usr ? usr.ckey : ""]) \\/proc/log_emote() called tick#: [world.time]") if (config.log_emote) diff --git a/code/game/gamemodes/cult/runes.dm b/code/game/gamemodes/cult/runes.dm index b92d20bd28f..c9665bfc2c8 100644 --- a/code/game/gamemodes/cult/runes.dm +++ b/code/game/gamemodes/cult/runes.dm @@ -202,15 +202,18 @@ M << "Assist your new compatriots in their dark dealings. Their goal is yours, and yours is theirs. You serve the Dark One above all else. Bring It back." M << "You can now speak and understand the forgotten tongue of the occult." M.add_language("Cult") - log_admin("[usr]([ckey(usr.key)]) has converted [M] ([ckey(M.key)]) to the cult at [M.loc.x], [M.loc.y], [M.loc.z]") + log_admin("[usr]([ckey(usr.key)]) has converted [M] ([ckey(M.key)]) to the cult at ([M.loc.x], [M.loc.y], [M.loc.z])") if(M.client) - src = null - sleep(100)//10 seconds sounds good - if(M && !M.client) - message_admins("[M] ([ckey(M.key)]) ghosted/disconnected shortly after having been converted to the cult!") - log_admin("[M]([ckey(M.key)]) ghosted/disconnected shortly after having been converted to the cult!") + spawn(600) + if(M && !M.client) + var/turf/T = get_turf(M) + message_admins("[M] ([ckey(M.key)]) ghosted/disconnected less than a minute after having been converted to the cult! ([T.x],[T.y],[T.z] - JMP)") + log_admin("[M]([ckey(M.key)]) ghosted/disconnected less than a minute after having been converted to the cult! ([T.x],[T.y],[T.z] - JMP)") return 1 else + usr << "The ritual didn't work, either something is disrupting it, or this person just isn't suited to be part of our cult." + if(M.silent && M.weakened) + usr << "You have to restrain him before the talisman's effects wear off!" M << "Your blood pulses. Your head throbs. The world goes red. All at once you are aware of a horrible, horrible truth. The veil of reality has been ripped away and in the festering wound left behind something sinister takes root." M << "And you were able to force it out of your mind. You now know the truth, there's something horrible out there, stop it and its minions at all costs." return 0 @@ -792,6 +795,8 @@ for(var/mob/dead/observer/O in player_list) O << "[user.real_name] communicates, [input]" + log_cultspeak("[key_name(user)] Cult Communicate Rune: [input]") + qdel(src) return 1 diff --git a/code/modules/admin/topic.dm b/code/modules/admin/topic.dm index 68820587c70..1f0ef0f7156 100644 --- a/code/modules/admin/topic.dm +++ b/code/modules/admin/topic.dm @@ -1640,6 +1640,7 @@ O << "Nar-Sie murmurs, [input]" message_admins("Admin [key_name_admin(usr)] has talked with the Voice of Nar-Sie.") + log_narspeak("[key_name(usr)] Voice of Nar-Sie: [input]") else if(href_list["cult_privatespeak"]) var/mob/M = locate(href_list["cult_privatespeak"]) diff --git a/code/modules/mob/living/say.dm b/code/modules/mob/living/say.dm index 28709ce72f2..714d140217c 100644 --- a/code/modules/mob/living/say.dm +++ b/code/modules/mob/living/say.dm @@ -207,7 +207,7 @@ var/list/department_radio_keys = list( send_speech(message, message_range, speaking, src, bubble_type) var/turf/T = get_turf(src) - log_say("[name]/[key] [T?"(@[T.x],[T.y],[T.z])":"(@[x],[y],[z])"]: [speaking ? "As [speaking.name] ":""] [message]") + log_say("[name]/[key] [T?"(@[T.x],[T.y],[T.z])":"(@[x],[y],[z])"] [speaking ? "As [speaking.name] ":""]: [message]") return 1