+ recepies
This commit is contained in:
@@ -39,5 +39,7 @@ public class DataGenerators {
|
||||
generator.addProvider(event.includeClient(), new ModBlockStateProvider(packOutput, existingFileHelper));
|
||||
|
||||
generator.addProvider(event.includeClient(), new ModLanguageProvider(packOutput));
|
||||
|
||||
generator.addProvider(event.includeServer(), new ModRecipeProvider(packOutput, lookupProvider));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,69 @@
|
||||
package ovh.glitchlabs.ornamentum.datagen;
|
||||
|
||||
import net.minecraft.core.HolderLookup;
|
||||
import net.minecraft.data.PackOutput;
|
||||
import net.minecraft.data.recipes.RecipeCategory;
|
||||
import net.minecraft.data.recipes.RecipeOutput;
|
||||
import net.minecraft.data.recipes.RecipeProvider;
|
||||
import net.minecraft.data.recipes.ShapedRecipeBuilder;
|
||||
import net.minecraft.world.item.Item;
|
||||
import net.minecraft.world.item.Items;
|
||||
import net.minecraft.world.level.ItemLike;
|
||||
import ovh.glitchlabs.ornamentum.blocks.ModBlocks;
|
||||
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
|
||||
public class ModRecipeProvider extends RecipeProvider {
|
||||
|
||||
public ModRecipeProvider(PackOutput output,
|
||||
CompletableFuture<HolderLookup.Provider> registries) {
|
||||
super(output, registries);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void buildRecipes(RecipeOutput output) {
|
||||
|
||||
Map<ItemLike, ItemLike> glowGlassRecipes = new LinkedHashMap<>();
|
||||
|
||||
glowGlassRecipes.put(Items.WHITE_STAINED_GLASS, ModBlocks.WHITE_GLOW_STAINED_GLASS.get());
|
||||
glowGlassRecipes.put(Items.ORANGE_STAINED_GLASS, ModBlocks.ORANGE_GLOW_STAINED_GLASS.get());
|
||||
glowGlassRecipes.put(Items.MAGENTA_STAINED_GLASS, ModBlocks.MAGENTA_GLOW_STAINED_GLASS.get());
|
||||
glowGlassRecipes.put(Items.LIGHT_BLUE_STAINED_GLASS, ModBlocks.LIGHT_BLUE_GLOW_STAINED_GLASS.get());
|
||||
glowGlassRecipes.put(Items.YELLOW_STAINED_GLASS, ModBlocks.YELLOW_GLOW_STAINED_GLASS.get());
|
||||
glowGlassRecipes.put(Items.LIME_STAINED_GLASS, ModBlocks.LIME_GLOW_STAINED_GLASS.get());
|
||||
glowGlassRecipes.put(Items.PINK_STAINED_GLASS, ModBlocks.PINK_GLOW_STAINED_GLASS.get());
|
||||
glowGlassRecipes.put(Items.GRAY_STAINED_GLASS, ModBlocks.GRAY_GLOW_STAINED_GLASS.get());
|
||||
glowGlassRecipes.put(Items.LIGHT_GRAY_STAINED_GLASS, ModBlocks.LIGHT_GRAY_GLOW_STAINED_GLASS.get());
|
||||
glowGlassRecipes.put(Items.CYAN_STAINED_GLASS, ModBlocks.CYAN_GLOW_STAINED_GLASS.get());
|
||||
glowGlassRecipes.put(Items.PURPLE_STAINED_GLASS, ModBlocks.PURPLE_GLOW_STAINED_GLASS.get());
|
||||
glowGlassRecipes.put(Items.BLUE_STAINED_GLASS, ModBlocks.BLUE_GLOW_STAINED_GLASS.get());
|
||||
glowGlassRecipes.put(Items.BROWN_STAINED_GLASS, ModBlocks.BROWN_GLOW_STAINED_GLASS.get());
|
||||
glowGlassRecipes.put(Items.GREEN_STAINED_GLASS, ModBlocks.GREEN_GLOW_STAINED_GLASS.get());
|
||||
glowGlassRecipes.put(Items.RED_STAINED_GLASS, ModBlocks.RED_GLOW_STAINED_GLASS.get());
|
||||
glowGlassRecipes.put(Items.BLACK_STAINED_GLASS, ModBlocks.BLACK_GLOW_STAINED_GLASS.get());
|
||||
|
||||
glowGlassRecipes.forEach((input, result) ->
|
||||
createGlowGlassRecipe(output, input, result));
|
||||
}
|
||||
|
||||
private void createGlowGlassRecipe(RecipeOutput output,
|
||||
ItemLike input,
|
||||
ItemLike result) {
|
||||
|
||||
ShapedRecipeBuilder.shaped(
|
||||
RecipeCategory.BUILDING_BLOCKS,
|
||||
result,
|
||||
8
|
||||
)
|
||||
.pattern("###")
|
||||
.pattern("#X#")
|
||||
.pattern("###")
|
||||
.define('#', input)
|
||||
.define('X', Items.GLOW_INK_SAC)
|
||||
.group("stained_glass")
|
||||
.unlockedBy("has_glow_ink_sac", has(Items.GLOW_INK_SAC))
|
||||
.save(output);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user