|
251 | 251 | var/remove_amount = round(min(fuel_list[gas_id], fuel_consumption), 0.01) |
252 | 252 | internal_fusion.adjust_moles(gas_id, -remove_amount) |
253 | 253 | delta_fuel_list[gas_id] -= remove_amount |
| 254 | + |
| 255 | + var/add_remove_amount = round(scaled_production, 0.01) // gases on the same tier are produced at normal rate |
254 | 256 | for(var/gas_id in fuel.primary_products) |
255 | | - var/add_amount = round(fuel_consumption * 0.5, 0.01) |
256 | | - internal_fusion.adjust_moles(gas_id, add_amount) |
257 | | - delta_fuel_list[gas_id] += add_amount |
| 257 | + internal_fusion.adjust_moles(gas_id, add_remove_amount) |
| 258 | + delta_fuel_list[gas_id] += add_remove_amount |
258 | 259 |
|
259 | 260 | if(power_level < 1) |
260 | 261 | return // can't produce any gases, don't need to continue |
261 | 262 |
|
262 | 263 | // Each recipe provides a tier list of six output gases. |
263 | 264 | // Which gases are produced depend on what the fusion level is. |
264 | 265 | var/list/tier = fuel.secondary_products |
265 | | - moderator_internal.adjust_moles(tier[power_level], round(scaled_production, 0.01)) // gases on the same tier are produced at normal rate |
266 | | - delta_mod_list[tier[power_level]] += round(scaled_production, 0.01) |
| 266 | + moderator_internal.adjust_moles(tier[power_level], add_remove_amount) |
| 267 | + delta_mod_list[tier[power_level]] += add_remove_amount |
267 | 268 | if(power_level < 6) |
268 | 269 | moderator_internal.adjust_moles(tier[power_level + 1], round(scaled_production * 0.5, 0.01)) // gases on the above tier are produced at reduced rate |
269 | 270 | delta_mod_list[tier[power_level + 1]] += round(scaled_production * 0.5, 0.01) |
|
0 commit comments