From 0f3cae77dd39b791c4a425f81ad559cfb6c07aa2 Mon Sep 17 00:00:00 2001 From: EgorDinamit <53223414+EgorDinamit@users.noreply.github.com> Date: Sat, 9 Mar 2024 15:40:41 +0300 Subject: [PATCH] Minor fixes (#563) --- .../simple_animal/hostile/infestation/larva.dm | 13 ++++++++++++- .../hostile/random_monster/_random_monster.dm | 1 + 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/code/modules/mob/living/simple_animal/hostile/infestation/larva.dm b/code/modules/mob/living/simple_animal/hostile/infestation/larva.dm index e8af248884e..620bdf7e22f 100644 --- a/code/modules/mob/living/simple_animal/hostile/infestation/larva.dm +++ b/code/modules/mob/living/simple_animal/hostile/infestation/larva.dm @@ -71,6 +71,7 @@ color = "#c87d44" transformation_types = list( /mob/living/simple_animal/hostile/infestation/broodling = 60 SECONDS, + /mob/living/simple_animal/hostile/infestation/floatfly = 75 SECONDS, /mob/living/simple_animal/hostile/infestation/eviscerator = 90 SECONDS, /mob/living/simple_animal/hostile/infestation/assembler = 120 SECONDS, ) @@ -95,10 +96,17 @@ retaliate = TRUE can_flee = FALSE +/datum/ai_holder/simple_animal/infestation/larva/implanter/can_attack(atom/movable/the_target, vision_required = TRUE) + var/mob/living/simple_animal/hostile/infestation/larva/implant/implanter/L = holder + if(L.transformation_time != null) + return FALSE + + return ..() + /datum/ai_holder/simple_animal/infestation/larva/implanter/list_targets() var/mob/living/simple_animal/hostile/infestation/larva/implant/implanter/L = holder if(L.transformation_time != null) // Already implanted once - return + return list() var/list/humans = list() for(var/mob/living/carbon/human/H in view(vision_range, holder)) @@ -115,6 +123,9 @@ return if(on_fire) return + if(transformation_time != null) + return + var/mob/living/carbon/human/H = A var/list/valid_organs = list() for(var/obj/item/organ/external/O in H.organs) diff --git a/code/modules/mob/living/simple_animal/hostile/random_monster/_random_monster.dm b/code/modules/mob/living/simple_animal/hostile/random_monster/_random_monster.dm index d23756e31ea..352a8477ad1 100644 --- a/code/modules/mob/living/simple_animal/hostile/random_monster/_random_monster.dm +++ b/code/modules/mob/living/simple_animal/hostile/random_monster/_random_monster.dm @@ -108,6 +108,7 @@ /mob/living/simple_animal/hostile/random_monster/Destroy() for(var/datum/D in abilities) qdel(D) + abilities = null return ..()