Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Acid runner cannot get acid stacks from nested humans #3772

Merged
merged 8 commits into from
Jul 9, 2023
Merged
Original file line number Diff line number Diff line change
Expand Up @@ -70,19 +70,27 @@
. += "FOR THE HIVE!: in [caboom_left] seconds"

/datum/behavior_delegate/runner_acider/melee_attack_additional_effects_target(mob/living/carbon/target_mob)
if (ishuman(target_mob))
if(ishuman(target_mob)) //Will acid be applied to the mob
var/mob/living/carbon/human/target_human = target_mob
if (target_human.stat == DEAD)
if(target_human.buckled && istype(target_human.buckled, /obj/structure/bed/nest))
return
for(var/datum/effects/acid/AA in target_mob.effects_list)
qdel(AA)
if(target_human.stat == DEAD)
return

for(var/datum/effects/acid/acid_effect in target_mob.effects_list)
qdel(acid_effect)
break
if(isxeno_human(target_mob))

new /datum/effects/acid(target_mob, bound_xeno, initial(bound_xeno.caste_type))
if(isxeno_human(target_mob)) //Will the runner get acid stacks
var/obj/item/alien_embryo/embryo = locate(/obj/item/alien_embryo) in target_mob.contents
if(embryo?.stage >= 4) //very late stage hugged in case the runner unnests them
return

if(target_mob.lying)
modify_acid(acid_slash_regen_lying)
else
modify_acid(acid_slash_regen_standing)
new /datum/effects/acid(target_mob, bound_xeno, initial(bound_xeno.caste_type))
return
modify_acid(acid_slash_regen_standing)

/datum/behavior_delegate/runner_acider/on_life()
modify_acid(acid_passive_regen)
Expand Down
Loading