diff --git a/code/game/objects/effects/decals/cleanable/aliens.dm b/code/game/objects/effects/decals/cleanable/aliens.dm index 988011c492..a4d0da1bbe 100644 --- a/code/game/objects/effects/decals/cleanable/aliens.dm +++ b/code/game/objects/effects/decals/cleanable/aliens.dm @@ -25,15 +25,13 @@ add_overlay(flesh) /obj/effect/decal/cleanable/blood/gibs/xeno/streak(list/directions) - set waitfor = 0 + set waitfor = FALSE + var/list/diseases = list() + SEND_SIGNAL(src, COMSIG_GIBS_STREAK, directions, diseases) var/direction = pick(directions) - for(var/i = 0, i < pick(1, 200; 2, 150; 3, 50), i++) + for(var/i in 0 to pick(0, 200; 1, 150; 2, 50)) sleep(2) if(i > 0) - var/list/datum/disease/diseases - GET_COMPONENT(infective, /datum/component/infective) - if(infective) - diseases = infective.diseases var/obj/effect/decal/cleanable/blood/splatter/xeno/splat = new /obj/effect/decal/cleanable/blood/splatter/xeno(loc, diseases) splat.transfer_blood_dna(blood_DNA, diseases) if(!step_to(src, get_step(src, direction), 0)) diff --git a/code/game/objects/effects/decals/cleanable/gibs.dm b/code/game/objects/effects/decals/cleanable/gibs.dm index e5d38d3ef6..03eeca7d0b 100644 --- a/code/game/objects/effects/decals/cleanable/gibs.dm +++ b/code/game/objects/effects/decals/cleanable/gibs.dm @@ -40,15 +40,13 @@ . = ..() /obj/effect/decal/cleanable/blood/gibs/proc/streak(list/directions) - set waitfor = 0 + set waitfor = FALSE + var/list/diseases = list() + SEND_SIGNAL(src, COMSIG_GIBS_STREAK, directions, diseases) var/direction = pick(directions) - for(var/i = 0, i < pick(1, 200; 2, 150; 3, 50), i++) + for(var/i in 0 to pick(0, 200; 1, 150; 2, 50)) sleep(2) if(i > 0) - var/list/datum/disease/diseases - GET_COMPONENT(infective, /datum/component/infective) - if(infective) - diseases = infective.diseases var/obj/effect/decal/cleanable/blood/splatter/splat = new /obj/effect/decal/cleanable/blood/splatter(loc, diseases) splat.transfer_blood_dna(blood_DNA, diseases) if(!step_to(src, get_step(src, direction), 0))