Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.github.theonlytails.rubymod.datagen
- import com.github.theonlytails.rubymod.RubyMod
- import com.github.theonlytails.rubymod.registries.ItemRegistry
- import net.minecraft.advancements.criterion.InventoryChangeTrigger
- import net.minecraft.data.*
- import net.minecraft.item.Items
- import net.minecraft.item.crafting.Ingredient
- import net.minecraft.tags.ItemTags
- import java.util.function.Consumer
- class RecipesDataGenerator(generator: DataGenerator) : RecipeProvider(generator) {
- override fun registerRecipes(consumer: Consumer<IFinishedRecipe>) {
- // Centrifuge
- ShapedRecipeBuilder
- .shapedRecipe(ItemRegistry.CENTRIFUGE_BLOCK_ITEM)
- .patternLine("iri")
- .patternLine("ici")
- .patternLine("idi")
- .key('i', Items.IRON_INGOT)
- .key('r', ItemRegistry.RUBY)
- .key('c', Items.CAULDRON)
- .key('d', Items.REDSTONE)
- .setGroup(RubyMod.MOD_ID)
- .addCriterion("ruby", InventoryChangeTrigger.Instance.forItems(ItemRegistry.RUBY))
- .build(consumer)
- // Poisoned Apple
- ShapelessRecipeBuilder
- .shapelessRecipe(ItemRegistry.POISONED_APPLE)
- .addIngredient(Items.APPLE)
- .addIngredient(ItemRegistry.RUBY)
- .setGroup(RubyMod.MOD_ID)
- .addCriterion("ruby", InventoryChangeTrigger.Instance.forItems(ItemRegistry.RUBY))
- .build(consumer)
- // Red dye (from ruby)
- ShapelessRecipeBuilder
- .shapelessRecipe(Items.RED_DYE, 2)
- .addIngredient(ItemRegistry.RUBY)
- .setGroup(RubyMod.MOD_ID)
- .addCriterion("ruby", InventoryChangeTrigger.Instance.forItems(ItemRegistry.RUBY))
- .build(consumer)
- // Ruby (uncrafting from ruby block)
- ShapelessRecipeBuilder
- .shapelessRecipe(ItemRegistry.RUBY, 9)
- .addIngredient(ItemRegistry.RUBY_BLOCK_ITEM)
- .setGroup(RubyMod.MOD_ID)
- .addCriterion("ruby",
- InventoryChangeTrigger.Instance.forItems(ItemRegistry.RUBY_BLOCK_ITEM))
- .build(consumer)
- // Ruby Axe
- ShapedRecipeBuilder
- .shapedRecipe(ItemRegistry.RUBY_AXE)
- .patternLine(" rr")
- .patternLine(" sr")
- .patternLine(" s ")
- .key('r', ItemRegistry.RUBY)
- .key('s', Items.STICK)
- .setGroup(RubyMod.MOD_ID)
- .addCriterion("ruby", InventoryChangeTrigger.Instance.forItems(ItemRegistry.RUBY))
- .build(consumer)
- // Ruby Pickaxe
- ShapedRecipeBuilder
- .shapedRecipe(ItemRegistry.RUBY_PICKAXE)
- .patternLine("rrr")
- .patternLine(" s ")
- .patternLine(" s ")
- .key('r', ItemRegistry.RUBY)
- .key('s', Items.STICK)
- .setGroup(RubyMod.MOD_ID)
- .addCriterion("ruby", InventoryChangeTrigger.Instance.forItems(ItemRegistry.RUBY))
- .build(consumer)
- // Ruby Sword
- ShapedRecipeBuilder
- .shapedRecipe(ItemRegistry.RUBY_SWORD)
- .patternLine(" r ")
- .patternLine(" r ")
- .patternLine(" s ")
- .key('r', ItemRegistry.RUBY)
- .key('s', Items.STICK)
- .setGroup(RubyMod.MOD_ID)
- .addCriterion("ruby", InventoryChangeTrigger.Instance.forItems(ItemRegistry.RUBY))
- .build(consumer)
- // Ruby Shovel
- ShapedRecipeBuilder
- .shapedRecipe(ItemRegistry.RUBY_SHOVEL)
- .patternLine(" r ")
- .patternLine(" s ")
- .patternLine(" s ")
- .key('r', ItemRegistry.RUBY)
- .key('s', Items.STICK)
- .setGroup(RubyMod.MOD_ID)
- .addCriterion("ruby", InventoryChangeTrigger.Instance.forItems(ItemRegistry.RUBY))
- .build(consumer)
- // Ruby Hoe
- ShapedRecipeBuilder
- .shapedRecipe(ItemRegistry.RUBY_HOE)
- .patternLine(" rr")
- .patternLine(" s ")
- .patternLine(" s ")
- .key('r', ItemRegistry.RUBY)
- .key('s', Items.STICK)
- .setGroup(RubyMod.MOD_ID)
- .addCriterion("ruby", InventoryChangeTrigger.Instance.forItems(ItemRegistry.RUBY))
- .build(consumer)
- // Ruby Helmet
- ShapedRecipeBuilder
- .shapedRecipe(ItemRegistry.RUBY_HELMET)
- .patternLine("rrr")
- .patternLine("r r")
- .key('r', ItemRegistry.RUBY)
- .setGroup(RubyMod.MOD_ID)
- .addCriterion("ruby", InventoryChangeTrigger.Instance.forItems(ItemRegistry.RUBY))
- .build(consumer)
- // Ruby Chestplate
- ShapedRecipeBuilder
- .shapedRecipe(ItemRegistry.RUBY_CHESTPLATE)
- .patternLine("r r")
- .patternLine("rrr")
- .patternLine("rrr")
- .key('r', ItemRegistry.RUBY)
- .setGroup(RubyMod.MOD_ID)
- .addCriterion("ruby", InventoryChangeTrigger.Instance.forItems(ItemRegistry.RUBY))
- .build(consumer)
- // Ruby Leggings
- ShapedRecipeBuilder
- .shapedRecipe(ItemRegistry.RUBY_LEGGINGS)
- .patternLine("rrr")
- .patternLine("r r")
- .patternLine("r r")
- .key('r', ItemRegistry.RUBY)
- .setGroup(RubyMod.MOD_ID)
- .addCriterion("ruby", InventoryChangeTrigger.Instance.forItems(ItemRegistry.RUBY))
- .build(consumer)
- // Ruby Boots
- ShapedRecipeBuilder
- .shapedRecipe(ItemRegistry.RUBY_BOOTS)
- .patternLine("r r")
- .patternLine("r r")
- .key('r', ItemRegistry.RUBY)
- .setGroup(RubyMod.MOD_ID)
- .addCriterion("ruby", InventoryChangeTrigger.Instance.forItems(ItemRegistry.RUBY))
- .build(consumer)
- // Ruby Barrel
- ShapedRecipeBuilder
- .shapedRecipe(ItemRegistry.RUBY_BARREL_ITEM)
- .patternLine("brb")
- .patternLine("bcb")
- .patternLine("brb")
- .key('r', ItemRegistry.RUBY)
- .key('b', ItemRegistry.RUBY_BLOCK_ITEM)
- .key('c', Items.BARREL)
- .setGroup(RubyMod.MOD_ID)
- .addCriterion("ruby", InventoryChangeTrigger.Instance.forItems(ItemRegistry.RUBY))
- .build(consumer)
- // Ruby Block
- ShapedRecipeBuilder
- .shapedRecipe(ItemRegistry.RUBY_BLOCK_ITEM)
- .patternLine("rrr")
- .patternLine("rrr")
- .patternLine("rrr")
- .key('r', ItemRegistry.RUBY)
- .setGroup(RubyMod.MOD_ID)
- .addCriterion("ruby", InventoryChangeTrigger.Instance.forItems(ItemRegistry.RUBY))
- .build(consumer)
- // Ruby Carpet (from carpet)
- ShapedRecipeBuilder
- .shapedRecipe(ItemRegistry.RUBY_CARPET_ITEM, 8)
- .patternLine("ccc")
- .patternLine("crc")
- .patternLine("ccc")
- .key('c', ItemRegistry.RUBY)
- .key('r', Items.WHITE_CARPET)
- .setGroup(RubyMod.MOD_ID)
- .addCriterion("ruby", InventoryChangeTrigger.Instance.forItems(ItemRegistry.RUBY))
- .build(consumer)
- // Ruby Helmet
- ShapedRecipeBuilder
- .shapedRecipe(ItemRegistry.RUBY_CARPET_ITEM, 3)
- .patternLine("ww")
- .key('w', ItemRegistry.RUBY_WOOL_ITEM)
- .setGroup(RubyMod.MOD_ID)
- .addCriterion("ruby", InventoryChangeTrigger.Instance.forItems(ItemRegistry.RUBY))
- .build(consumer)
- // Smelt ruby ore
- CookingRecipeBuilder
- .smeltingRecipe(
- Ingredient.fromItems(ItemRegistry.RUBY_ORE_BLOCK_ITEM),
- ItemRegistry.RUBY,
- 1f,
- 100,
- )
- .addCriterion("ruby_ore", InventoryChangeTrigger.Instance.forItems(ItemRegistry.RUBY_ORE_BLOCK_ITEM))
- .build(consumer)
- // Blast ruby ore
- CookingRecipeBuilder
- .blastingRecipe(
- Ingredient.fromItems(ItemRegistry.RUBY_ORE_BLOCK_ITEM),
- ItemRegistry.RUBY,
- 1f,
- 100,
- )
- .addCriterion("ruby_ore", InventoryChangeTrigger.Instance.forItems(ItemRegistry.RUBY_ORE_BLOCK_ITEM))
- .build(consumer)
- // Ruby Water Bucket
- ShapelessRecipeBuilder
- .shapelessRecipe(ItemRegistry.RUBY_WATER_BUCKET)
- .addIngredient(ItemRegistry.RUBY)
- .addIngredient(Items.WATER_BUCKET)
- .setGroup(RubyMod.MOD_ID)
- .addCriterion("ruby", InventoryChangeTrigger.Instance.forItems(ItemRegistry.RUBY))
- .build(consumer)
- // Ruby Wool
- ShapelessRecipeBuilder
- .shapelessRecipe(ItemRegistry.RUBY_WOOL_ITEM)
- .addIngredient(ItemRegistry.RUBY)
- .addIngredient(ItemTags.WOOL)
- .setGroup(RubyMod.MOD_ID)
- .addCriterion("ruby", InventoryChangeTrigger.Instance.forItems(ItemRegistry.RUBY))
- .build(consumer)
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment