PneumaticCraft: Repressurized

PneumaticCraft: Repressurized

50M Downloads

Some recipe reorganisation

desht opened this issue ยท 3 comments

commented

Some work to make recipe handling a little more consistent (and more amenable to CraftTweaker manipulation):

  • Thermopneumatic Processing Plant (TPP) recipes should be in their own recipe class in me.desht.pneumaticcraft.common.recipes, in common with assembly and pressure chamber recipes. This is just a cleanup and doesn't have any functional effect.
  • Refinery "recipe" is currently hardcoded to oil -> { list of fuel products}. Would be great to specify this via recipe, i.e. "inputFluid" to "list of outputFluids", where the list is 2, 3 or 4 output fluids. Be sure that the refinery uses the recipe with most outputs in case of input conflicts, e.g. current setup uses oil for all inputs, and chooses the 4-output recipe if possible (if the refinery multiblock is tall enough), then 3, then 2.
  • Add CraftTweaker support for heatframe cooling: input item -> output item (with automatic return of container where appropriate - e.g. current "bucket of water" -> "ice" + "empty bucket").
commented

It seems like someone in the past already wanted to centralize the recipes in the class PneumaticRecipeRegistry. The class has methods to register recipes for all machines but only contains the recipe list of Thermopneumatic Processing Plant (/edit: and heat frame cooling recipes). So instead of separating the list of recipes to their corresponding class, maybe they should all be in one class?

commented

I'm good with having all the registration methods in PneumaticRecipeRegistry (it implements IPneumaticRecipeRegistry which is in the public API), but it's a little cleaner IMHO from an organisational point of view to have a separate class for each machine's own recipes.

commented

Going to mark this one done. Thanks for the good work!