An addon for GregTech Community Edition with the goal of making it much more complicated and realistic through the use of GregTech 5 Unofficial and GregTech 6 features.
GNU General Public License v3.0
16
stars
30
forks
source link
Cleanup of Recipes and moving to RecipeHandlers #141
This PR cleans up various recipe removals and additions, where recipes are removed and then a duplicate recipe is added.
In addition, this PR refactors crafting table recipe removals, namely through wrapping the previously used GTCE methods so that we can add additional logging to see if a removal has failed.
GAConfig
Added a clarification to the double ingots to plates config option
Moved the Bundler config option to be grouped with all the other higher tier machine options
Added a config option for if Gem tools should be made with a hammer or a file
GAEnums
Rearranges the creation of the OrePrefix added by the mod, so that they are able to be directly referenced in other sections of the code
Adds a constant field, WIRE_DOUBLING_ORDER, as GTCE's is not able to be referenced
GregicAdditions
Registers our Recipe Handlers
Breaks out some Registration to be in different methods
GAMetaItems
Refer to the OrePrefixes through their new reference methods
Remove the section where Recipes were being registered from the MetaTools class
GAMetaTool
Removes all recipe registration to be moved to recipe handlers
ComponentRegistration
Adds recipes for all Components (Robot Arms, etc). Hand crafting, Assembler, and Assembly Line
GAMachineRecipeRemoval
Removes a lot of recipe removals, as they were moved to Recipe Handlers. Basically if it was in a loop of the material registry, it is now in Recipe Handlers
Removes a failing recipe removal for the primitive circuit
Removes the Ash Centrifuging removal, because we basically add back the same thing
Removes the Diesel mixing recipe, because we add back the exact same recipe
Moves all the removals to HelperMethods
GARecipeAddition
Moves some Large boiler recipes into this class, out of the "by hand" recipe class
Changes removals to use the new helper methods
Removes some failing Schematic recipe removals
Formatting
Removing Material Registry loops to the Recipe Handler
Adjusts Wooden Pipes based on if the bendingPipes config option is enabled. This cannot be done in Recipe Handlers, because there is no curved wood plate
Adjusts the recipe of the Max Hull from GTCE, now respecting if the harder hull config option from GTCE is enabled
Breaks methods into several distinct methods to address different recipes
Adds covering recipes for Superconductor wires
Removes the component recipes, as they have been transferred to their own file
cleanup
Some adjustments to the big mess in generatedRecipes, consolidating some checks and adding a TODO to break it down in a future PR
Minor cleanups to the logs -> planks modifying, need to check it against GTCE's config option that might do similar
GeneratorFuels
Moves the removals to HelperMethods
MachineCraftingRecipes
Fixes a bunch of cases where machines were removed from GTCE and then a duplicate recipe was added
Formats the machine recipes
Fixes a bug where machines would be gave recipes with tier - 1 components when there was a missing lower tier machines. This was seen for the extruder, where there is no LV variant, and so the MV Extruder was made using all LV components, including the casing.
Commenting on the recipe changes
Adds Assembler recipes for Drums and Crates
MatterReplication
Minor Formatting
RecipeHandlers
The main thing added by this PR
Registers several OrePrefix handlers to be covered by RecipeHandlers, some based on if various config options are enabled
Process Ingot
This handles the expensive Wrenches and creating recipes for the Bending Cylinders, both config based
Process Tiny Dust
Changes Tiny dusts to be made using the schematic instead of the integrated circuit
Process Small Dust
Changes Small dusts to be made using the schematic instead of the integrated circuit
Process Foil
Adds recipes for handcrafting foils and Cluster Milling foils, both config based
Process Ring
Changes the Ring Recipes to use the Bending Cylinder, config based
Process Round
Adds hand crafting and lathe recipes for the round
Process Plate Curved
Add recipes converting from plates to curved plates, and vice versa, for both hand crafting and the bender
Registers Recipes for pipes using curved plates (Adds handcrafting recipes for Tiny and Large pipes, which did not have them in base GTCE)
Registers Recipes for Rotors with curved plates (by hand and machine), or else restores the rotor assembler recipes removed by GTCE
Process Double Ingot
Adds recipes for Double Ingots and Double Ingots to plates
Process Plate
Adds handcrafting recipes for Tiny and Large pipes (similar to what is done with curved plates), when curved plates are not enabled
Process Wire GT
Adds Bundler recipes
Adds the GT5U cable recipes (Which is a big mess)
Doesn't apply to ULV or LV cables
Removes the old cable recipes
If the cable is IV tier or above:
adds recipes with material foils (two types, Polyphenylene Sulfide foils and foils the material of the cable)
adds recipes with the different cable dusts and the foils
If the cable is MV to EV tier
Adds normal insulation recipes
Adds insulation recipes with the cable dusts
Process Gems
Adds mirrored recipes for tools with gem heads
Deals with the config option to replace the hammer with the file in gem tool recipes
Both of these could probably be removed
HelperMethods
This class currently just wraps the GTCE removal methods so that we can attach logging to the removals. When I am done testing this PR, the logging levels will be moved to debug on pass and warn on fail.
Closes #144
A Note of conversation. The double ingots flag and config option currently will generate recipes for plates that normally do not have recipes, due to the NO_SMASHING flag. Do we want to add this flag to Double ingot generation, to prevent these materials from being generated, or to the crafting recipes, to prevent the hand crafting recipes from being generated? This is a break from previous behavior, but it does make some sense.
This PR cleans up various recipe removals and additions, where recipes are removed and then a duplicate recipe is added.
In addition, this PR refactors crafting table recipe removals, namely through wrapping the previously used GTCE methods so that we can add additional logging to see if a removal has failed.
GAConfig
GAEnums
WIRE_DOUBLING_ORDER
, as GTCE's is not able to be referencedGregicAdditions
GAMetaItems
GAMetaTool
ComponentRegistration
GAMachineRecipeRemoval
GARecipeAddition
bendingPipes
config option is enabled. This cannot be done in Recipe Handlers, because there is no curved wood plateharder hull
config option from GTCE is enabledgeneratedRecipes
, consolidating some checks and adding a TODO to break it down in a future PRGeneratorFuels
MachineCraftingRecipes
MatterReplication
RecipeHandlers
Process Ingot
This handles the expensive Wrenches and creating recipes for the Bending Cylinders, both config based
Process Tiny Dust
Changes Tiny dusts to be made using the schematic instead of the integrated circuit
Process Small Dust
Changes Small dusts to be made using the schematic instead of the integrated circuit
Process Foil
Adds recipes for handcrafting foils and Cluster Milling foils, both config based
Process Ring
Changes the Ring Recipes to use the Bending Cylinder, config based
Process Round
Adds hand crafting and lathe recipes for the round
Process Plate Curved
Add recipes converting from plates to curved plates, and vice versa, for both hand crafting and the bender Registers Recipes for pipes using curved plates (Adds handcrafting recipes for Tiny and Large pipes, which did not have them in base GTCE) Registers Recipes for Rotors with curved plates (by hand and machine), or else restores the rotor assembler recipes removed by GTCE
Process Double Ingot
Adds recipes for Double Ingots and Double Ingots to plates
Process Plate
Adds handcrafting recipes for Tiny and Large pipes (similar to what is done with curved plates), when curved plates are not enabled
Process Wire GT
Adds Bundler recipes Adds the GT5U cable recipes (Which is a big mess)
Process Gems
HelperMethods
This class currently just wraps the GTCE removal methods so that we can attach logging to the removals. When I am done testing this PR, the logging levels will be moved to debug on pass and warn on fail.
Closes #144
A Note of conversation. The double ingots flag and config option currently will generate recipes for plates that normally do not have recipes, due to the
NO_SMASHING
flag. Do we want to add this flag to Double ingot generation, to prevent these materials from being generated, or to the crafting recipes, to prevent the hand crafting recipes from being generated? This is a break from previous behavior, but it does make some sense.