Refinery
Allows you to add or remove Refinery recipes.
Refinery Recipes consist of two fluid inputs and a fluid output.
Importing the class
It might be required for you to import the package if you encounter any issues (like casting an Array), so better be safe than sorry and add the import at the very top of the file.
import mods.immersiveengineering.Refinery;
Implemented Interfaces
Refinery implements the following interfaces. That means all methods defined in these interfaces are also available in Refinery
Methods
Refinery.addJsonRecipe(name as string, mapData as MapData)
Parameter | Type |
---|---|
Parameter name | Type string |
Parameter mapData | Type MapData |
Adds a recipe to the Refinery. Make sure that the provided Tags are valid fluid tags.
Refinery.addRecipe(recipePath as string, fluidInput1 as Many<MCTag>, fluidInput2 as Many<MCTag>, catalyst as IIngredient, energy as int, output as IFluidStack)
Parameter | Type | Description |
---|---|---|
Parameter recipePath | Type string | Description The recipe name, without the resource location |
Parameter fluidInput1 | Type Many<MCTag> | Description The first fluid input, as Tag |
Parameter fluidInput2 | Type Many<MCTag> | Description The second fluid input, as Tag |
Parameter catalyst | Type IIngredient | Description The catalyst of the recipe |
Parameter energy | Type int | Description The total energy required |
Parameter output | Type IFluidStack | Description The output fluid |
Return Type: stdlib.List<T>
// Refinery.getAllRecipes() as stdlib.List<T>
<recipetype:immersiveengineering:refinery>.getAllRecipes();
Return Type: T
Refinery.getRecipeByName(name as string) as T
Parameter | Type |
---|---|
Parameter name | Type string |
Return Type: T[ResourceLocation]
// Refinery.getRecipeMap() as T[ResourceLocation]
<recipetype:immersiveengineering:refinery>.getRecipeMap();
Return Type: stdlib.List<T>
Refinery.getRecipesByOutput(output as IIngredient) as stdlib.List<T>
Parameter | Type |
---|---|
Parameter output | Type IIngredient |
// Refinery.removeAll()
<recipetype:immersiveengineering:refinery>.removeAll();
Refinery.removeByInput(input as IItemStack)
Parameter | Type |
---|---|
Parameter input | Type IItemStack |
Refinery.removeByModid(modid as string, exclude as Predicate<string>)
Parameter | Type | Optional | Default Value |
---|---|---|---|
Parameter modid | Type string | Optional false | Default Value |
Parameter exclude | Type Predicate<string> | Optional true | Default Value (name as string) as bool => false |
Refinery.removeByName(names as string[])
Parameter | Type |
---|---|
Parameter names | Type string[] |
Refinery.removeByRegex(regex as string, exclude as Predicate<string>)
Parameter | Type | Optional | Default Value |
---|---|---|---|
Parameter regex | Type string | Optional false | Default Value |
Parameter exclude | Type Predicate<string> | Optional true | Default Value (name as string) as bool => false |
Removes all recipes that return this given fluid. Since it’s only the fluid, it does not check amounts.
// Refinery.removeRecipe(fluid as Fluid)
<recipetype:immersiveengineering:refinery>.removeRecipe(<fluid:immersiveengineering:biodiesel>.fluid);
Parameter | Type | Description |
---|---|---|
Parameter fluid | Type Fluid | Description The fluid output to remove |
Removes all recipes that return this given fluid Stack. Only removes if the fluid and the fluid amount match.
// Refinery.removeRecipe(fluidStack as IFluidStack)
<recipetype:immersiveengineering:refinery>.removeRecipe(<fluid:immersiveengineering:biodiesel> * 16);
Parameter | Type | Description |
---|---|---|
Parameter fluidStack | Type IFluidStack | Description The output to remove |
Properties
Name | Type | Has Getter | Has Setter |
---|---|---|---|
Name allRecipes | Type stdlib.List<T> | Has Getter true | Has Setter false |
Name recipeMap | Type T[ResourceLocation] | Has Getter true | Has Setter false |