Closed wulfenbach-jpg closed 2 years ago
I blame #69035
ran this code with debugger and for some reason r_to_expose has volume of 0 for each reagent. (Blame references?)
/datum/reagents/proc/expose_multiple(list/r_to_expose, atom/A, methods = TOUCH, volume_modifier = 1, show_message = 1)
if(isnull(A))
return null
var/list/cached_reagents = r_to_expose
if(!cached_reagents.len)
return null
var/list/reagents = list()
for(var/datum/reagent/reagent as anything in cached_reagents)
reagents[reagent] = reagent.volume * volume_modifier
return A.expose_reagents(reagents, src, methods, volume_modifier, show_message)
I wouldn't be surprised if the code is referring to the reagents from the original container. In that case the volume would be getting set to zero because they are used up in the transfer.
It would also be pretty easy to check because in that case they should be in the process of deleting.
This is not only about acid, anything that uses reac_volume
in expose_mob
is likely broken too,
Here is a list of potentially affected reagents: all blob reagents, clf3, phlogiston, napalm, welding fuel, bluespace dust, nitrous oxide, acetone oxide, ants, cooking oil, ...
Round ID: N/A
Testmerges: N/A
Reproduction: