From 343b05a12e205a87571e1555a4e784ce2f512cc8 Mon Sep 17 00:00:00 2001 From: CHOMPStation2StaffMirrorBot <94713762+CHOMPStation2StaffMirrorBot@users.noreply.github.com> Date: Sat, 4 Jan 2025 17:38:24 -0700 Subject: [PATCH] [MIRROR] fix two runtimes in virus code (#9793) Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com> --- code/datums/diseases/_disease.dm | 2 +- .../objects/effects/decals/Cleanable/humans.dm | 18 +++++++++++++++++- 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/code/datums/diseases/_disease.dm b/code/datums/diseases/_disease.dm index 492884b12a..48552997fb 100644 --- a/code/datums/diseases/_disease.dm +++ b/code/datums/diseases/_disease.dm @@ -135,7 +135,7 @@ GLOBAL_LIST_INIT(diseases, subtypesof(/datum/disease)) break var/direction = get_dir(current, target) var/turf/next = get_step(current, direction) - if(!current.CanZASPass() || !next.CanZASPass(get_turf(turn(direction, 100)))) + if(!current.CanZASPass(next)) break current = next diff --git a/code/game/objects/effects/decals/Cleanable/humans.dm b/code/game/objects/effects/decals/Cleanable/humans.dm index c2047d8e27..4485c1feaf 100644 --- a/code/game/objects/effects/decals/Cleanable/humans.dm +++ b/code/game/objects/effects/decals/Cleanable/humans.dm @@ -76,7 +76,7 @@ var/global/list/image/splatter_cache=list() /obj/effect/decal/cleanable/blood/Crossed(mob/living/carbon/human/perp) if(perp.is_incorporeal()) return - if (!istype(perp)) + if(!istype(perp)) return if(amount < 1) return @@ -274,21 +274,37 @@ var/global/list/image/splatter_cache=list() return ..() /obj/effect/decal/cleanable/mucus/Crossed(mob/living/carbon/human/perp) + if(perp.is_incorporeal()) + return + if(!istype(perp)) + return if(viruses) for(var/datum/disease/D in viruses) perp.ContractDisease(D) /obj/effect/decal/cleanable/mucus/attack_hand(mob/living/carbon/human/perp) + if(perp.is_incorporeal()) + return + if(!istype(perp)) + return if(viruses) for(var/datum/disease/D in viruses) perp.ContractDisease(D) /obj/effect/decal/cleanable/vomit/Crossed(mob/living/carbon/human/perp) + if(perp.is_incorporeal()) + return + if(!istype(perp)) + return if(viruses) for(var/datum/disease/D in viruses) perp.ContractDisease(D) /obj/effect/decal/cleanable/vomit/Crossed(mob/living/carbon/human/perp) + if(perp.is_incorporeal()) + return + if(!istype(perp)) + return if(viruses) for(var/datum/disease/D in viruses) perp.ContractDisease(D)