Vore death privacy pref (#18226)

* Vore death privacy pref

Added a vore death privacy pref, which prevents "X has died at Y [jump]" from popping up to ghosts when you die in a belly.

* Change formatting

* Fixes mistakes

* Update code/modules/mob/living/carbon/human/death.dm

Co-authored-by: ShadowLarkens <shadowlarkens@gmail.com>

---------

Co-authored-by: ShadowLarkens <shadowlarkens@gmail.com>
This commit is contained in:
SatinIsle
2025-08-11 12:18:51 +01:00
committed by GitHub
parent 8928b63e08
commit 88a6f5cdcb
9 changed files with 42 additions and 7 deletions
@@ -88,9 +88,10 @@
var/area/A = get_area(src)
if(!(A?.flag_check(AREA_BLOCK_SUIT_SENSORS)) && isbelly(loc))
// SSgame_master.adjust_danger(gibbed ? 40 : 20) // We don't use SSgame_master yet.
for(var/mob/observer/dead/O in GLOB.mob_list)
if(O.client?.prefs?.read_preference(/datum/preference/toggle/show_dsay))
to_chat(O, span_deadsay(span_bold("[src]") + " has died in " + span_bold("[get_area(src)]") + ". [ghost_follow_link(src, O)] "))
if(!isbelly(loc) || !vore_death_privacy)
for(var/mob/observer/dead/O in GLOB.mob_list)
if(O.client?.prefs?.read_preference(/datum/preference/toggle/show_dsay))
to_chat(O, span_deadsay(span_bold("[src]") + " has died in " + span_bold("[get_area(src)]") + ". [ghost_follow_link(src, O)] "))
if(!gibbed && !isbelly(loc))
playsound(src, pick(get_species_sound(get_gendered_sound(src))["death"]), src.species.death_volume, 1, 20, volume_channel = VOLUME_CHANNEL_DEATH_SOUNDS)
+1
View File
@@ -26,6 +26,7 @@
var/show_vore_fx = TRUE // Show belly fullscreens
var/selective_preference = DM_DEFAULT // Preference for selective bellymode
var/eating_privacy_global = FALSE // Makes eating attempt/success messages only reach for subtle range if true, overwritten by belly-specific var
var/vore_death_privacy = FALSE // Chooses whether to announce prey death when digested to ghosts.
var/allow_mimicry = TRUE // Allows mimicking their character
var/allow_mind_transfer = FALSE //Allows ones mind to be taken over or swapped
var/nutrition_message_visible = TRUE
@@ -42,6 +42,7 @@
"consume_liquid_belly" = owner.consume_liquid_belly,
"digest_pain" = owner.digest_pain,
"eating_privacy_global" = owner.eating_privacy_global,
"vore_death_privacy" = owner.vore_death_privacy,
"allow_mimicry" = owner.allow_mimicry,
//Soulcatcher
"soulcatcher_allow_capture" = owner.soulcatcher_pref_flags & SOULCATCHER_ALLOW_CAPTURE,
+2
View File
@@ -47,6 +47,7 @@
var/permit_healbelly = TRUE
var/noisy = FALSE
var/eating_privacy_global = FALSE //Makes eating attempt/success messages only reach for subtle range if true, overwritten by belly-specific var
var/vore_death_privacy = FALSE //Makes it so that vore deaths don't get advertised to ghosts
var/allow_mimicry = TRUE
// These are 'modifier' prefs, do nothing on their own but pair with drop_prey/drop_pred settings.
@@ -216,6 +217,7 @@
weight_message_visible = json_from_file["weight_message_visible"]
weight_messages = json_from_file["weight_messages"]
eating_privacy_global = json_from_file["eating_privacy_global"]
vore_death_privacy = json_from_file["vore_death_privacy"]
allow_mimicry = json_from_file["allow_mimicry"]
vore_sprite_color = json_from_file["vore_sprite_color"]
allow_mind_transfer = json_from_file["allow_mind_transfer"]
+6
View File
@@ -407,6 +407,12 @@
host.eating_privacy_global = host.eating_privacy_global
unsaved_changes = TRUE
return TRUE
if("toggle_death_privacy")
host.vore_death_privacy = !host.vore_death_privacy
if(host.client.prefs_vr)
host.vore_death_privacy = host.vore_death_privacy
unsaved_changes = TRUE
return TRUE
if("toggle_mimicry")
host.allow_mimicry = !host.allow_mimicry
if(host.client.prefs_vr)