diff --git a/code/modules/reagents/chemistry/holder.dm b/code/modules/reagents/chemistry/holder.dm index 94ca6903411..19b666d2d82 100644 --- a/code/modules/reagents/chemistry/holder.dm +++ b/code/modules/reagents/chemistry/holder.dm @@ -519,33 +519,38 @@ var/list/cached_reagents = reagent_list if (!target) return - if (!target.reagents || src.total_volume<=0 || !src.get_reagent_amount(reagent)) + + var/datum/reagents/holder + if(istype(target, /datum/reagents)) + holder = target + else if(target.reagents && total_volume > 0 && get_reagent_amount(reagent)) + holder = target.reagents + else return if(amount < 0) return var/cached_amount = amount - var/datum/reagents/R = target.reagents - if(src.get_reagent_amount(reagent)