Improved IGrinderRegistry (#3110)

* Improved IGrinderRegistry

Added a builder for grinder recipes similar to IInscriberRegistry.
Replaced different add methods with this builder.
IIinscriberRegistry#addRecipe and removeRecipe now return true on success.
This commit is contained in:
yueh
2017-09-29 20:32:59 +02:00
committed by GitHub
parent 1c05dd5834
commit 2ed7a5598a
7 changed files with 388 additions and 154 deletions
@@ -27,6 +27,9 @@ import appeng.api.AEApi;
import appeng.api.exceptions.MissingIngredientError;
import appeng.api.exceptions.RecipeError;
import appeng.api.exceptions.RegistrationError;
import appeng.api.features.IGrinderRecipe;
import appeng.api.features.IGrinderRecipeBuilder;
import appeng.api.features.IGrinderRegistry;
import appeng.api.recipes.ICraftHandler;
import appeng.api.recipes.IIngredient;
import appeng.recipes.RecipeHandler;
@@ -60,7 +63,14 @@ public class Grind implements ICraftHandler, IWebsiteSerializer
{
for( final ItemStack is : this.pro_input.getItemStackSet() )
{
AEApi.instance().registries().grinder().addRecipe( is, this.pro_output[0].getItemStack(), 8 );
final IGrinderRegistry grinderRegistry = AEApi.instance().registries().grinder();
final IGrinderRecipeBuilder builder = grinderRegistry.builder();
final IGrinderRecipe grinderRecipe = builder.withInput( is )
.withOutput( this.pro_output[0].getItemStack() )
.withTurns( 8 )
.build();
grinderRegistry.addRecipe( grinderRecipe );
}
}