From 6f0f9a2e9c8d1c1253511c49c2e0371f953c1a05 Mon Sep 17 00:00:00 2001 From: DGamerL <108773801+DGamerL@users.noreply.github.com> Date: Mon, 1 Jul 2024 03:35:33 +0200 Subject: [PATCH] Various fixes for xenomorph logging (#26006) * Various fixes for biohazard logging * Better ways of counting xenos --- code/controllers/subsystem/SSticker.dm | 21 ++++++++++++------- .../mob/living/carbon/alien/alien_base.dm | 1 - 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/code/controllers/subsystem/SSticker.dm b/code/controllers/subsystem/SSticker.dm index 4733a5b1cea..4a197abfffa 100644 --- a/code/controllers/subsystem/SSticker.dm +++ b/code/controllers/subsystem/SSticker.dm @@ -833,22 +833,23 @@ SUBSYSTEM_DEF(ticker) if(ROUND_END_FORCED) SSblackbox.record_feedback("tally", "Biohazard dies admin round end", 1, output) if("Xenomorphs") - if(length(SSticker.mode.xenos) > 5) + var/living_xenos = count_xenomorps() + if(living_xenos > 5) switch(outcome) if(ROUND_END_NUCLEAR) - SSblackbox.record_feedback("tally", "Biohazard nuclear victories", 1, "Xenomorphs") + SSblackbox.record_feedback("tally", "Xeno nuclear victories", 1, "Xenomorphs") if(ROUND_END_CREW_TRANSFER) - SSblackbox.record_feedback("tally", "Biohazard survives to normal round end", 1, "Xenomorphs") + SSblackbox.record_feedback("tally", "Xeno survives to normal round end", 1, "Xenomorphs") if(ROUND_END_FORCED) - SSblackbox.record_feedback("tally", "Biohazard survives to admin round end", 1, "Xenomorphs") + SSblackbox.record_feedback("tally", "Xeno survives to admin round end", 1, "Xenomorphs") else switch(outcome) if(ROUND_END_NUCLEAR) - SSblackbox.record_feedback("tally", "Biohazard dies station nuked", 1, "Xenomorphs") + SSblackbox.record_feedback("tally", "Xeno dies station nuked", 1, "Xenomorphs") if(ROUND_END_CREW_TRANSFER) - SSblackbox.record_feedback("tally", "Biohazard dies normal end", 1, "Xenomorphs") + SSblackbox.record_feedback("tally", "Xeno dies normal end", 1, "Xenomorphs") if(ROUND_END_FORCED) - SSblackbox.record_feedback("tally", "Biohazard dies admin round end", 1, "Xenomorphs") + SSblackbox.record_feedback("tally", "Xeno dies admin round end", 1, "Xenomorphs") if("Blob") if(length(SSticker.mode.blob_overminds)) @@ -868,3 +869,9 @@ SUBSYSTEM_DEF(ticker) if(ROUND_END_FORCED) SSblackbox.record_feedback("tally", "Blob dies admin round end", 1, "Blob") +/datum/controller/subsystem/ticker/proc/count_xenomorps() + . = 0 + for(var/datum/mind/xeno_mind as anything in SSticker.mode.xenos) + if(xeno_mind.current?.stat == DEAD) + continue + .++ diff --git a/code/modules/mob/living/carbon/alien/alien_base.dm b/code/modules/mob/living/carbon/alien/alien_base.dm index 93fe906c18a..840703d26f3 100644 --- a/code/modules/mob/living/carbon/alien/alien_base.dm +++ b/code/modules/mob/living/carbon/alien/alien_base.dm @@ -171,7 +171,6 @@ deathrattle() - /mob/living/carbon/alien/proc/deathrattle() var/alien_message = deathrattle_message() for(var/mob/living/carbon/alien/M in GLOB.player_list)