More sawmill recipes, finally :) Thanks to Ayutac
Important one is adding the nether stuff, which I forgot in a previous sawmill update. Added slicing of a part of stairs to make slabs. Added slicing slabs into pressure plate. Added sawdust recipes for a lots of wooden stuff. Also added grinder recipes when appropriate.
This commit is contained in:
parent
07e8ddf172
commit
c8ca8a5aa3
2 changed files with 120 additions and 2 deletions
|
@ -28,6 +28,7 @@ import net.fabricmc.fabric.api.datagen.v1.FabricDataGenerator
|
|||
import net.minecraft.item.Item
|
||||
import net.minecraft.item.ItemStack
|
||||
import net.minecraft.item.Items
|
||||
import net.minecraft.tag.ItemTags
|
||||
import net.minecraft.tag.TagKey
|
||||
import net.minecraft.util.Identifier
|
||||
import net.minecraft.util.registry.Registry
|
||||
|
@ -52,6 +53,7 @@ class GrinderRecipesProvider extends TechRebornRecipesProvider {
|
|||
generateSand()
|
||||
generateRedSand()
|
||||
generateConcretePowder()
|
||||
generateSawdust()
|
||||
}
|
||||
|
||||
void generateVanillaRawMetals() {
|
||||
|
@ -211,4 +213,29 @@ class GrinderRecipesProvider extends TechRebornRecipesProvider {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
void generateSawdust() {
|
||||
// designed to be a fourth of what ind. sawmill gives, i.e. the same, just in small dust
|
||||
[
|
||||
(ItemTags.PLANKS) : 8,
|
||||
(ItemTags.STAIRS) : 6,
|
||||
(ItemTags.SLABS) : 4,
|
||||
(ItemTags.WOODEN_PRESSURE_PLATES): 1,
|
||||
(ItemTags.WOODEN_TRAPDOORS) : 1,
|
||||
(ItemTags.WOODEN_FENCES) : 1,
|
||||
(ItemTags.WOODEN_DOORS) : 3,
|
||||
(ItemTags.SIGNS) : 1
|
||||
].each { item, count ->
|
||||
offerGrinderRecipe {
|
||||
ingredients item
|
||||
outputs new ItemStack(TRContent.SmallDusts.SAW, count)
|
||||
power 3
|
||||
time 180
|
||||
source item.id().path
|
||||
criterion getCriterionName(item), getCriterionConditions(item)
|
||||
}
|
||||
}
|
||||
// wooden buttons and wooden tools are not eligible
|
||||
}
|
||||
|
||||
}
|
|
@ -45,8 +45,10 @@ class IndustrialSawmillRecipesProvider extends TechRebornRecipesProvider {
|
|||
(ItemTags.DARK_OAK_LOGS): Items.DARK_OAK_PLANKS,
|
||||
(ItemTags.JUNGLE_LOGS): Items.JUNGLE_PLANKS,
|
||||
(ItemTags.OAK_LOGS): Items.OAK_PLANKS,
|
||||
(TRContent.RUBBER_LOGS): TRContent.RUBBER_PLANKS,
|
||||
(ItemTags.SPRUCE_LOGS): Items.SPRUCE_PLANKS
|
||||
(ItemTags.SPRUCE_LOGS): Items.SPRUCE_PLANKS,
|
||||
(ItemTags.CRIMSON_STEMS): Items.CRIMSON_PLANKS,
|
||||
(ItemTags.WARPED_STEMS): Items.WARPED_PLANKS,
|
||||
(TRContent.RUBBER_LOGS): TRContent.RUBBER_PLANKS
|
||||
].each {logs, planks ->
|
||||
offerIndustrialSawmillRecipe {
|
||||
ingredients logs
|
||||
|
@ -56,6 +58,95 @@ class IndustrialSawmillRecipesProvider extends TechRebornRecipesProvider {
|
|||
fluidAmount 1000 // in millibuckets
|
||||
}
|
||||
}
|
||||
[
|
||||
(Items.ACACIA_STAIRS): Items.ACACIA_SLAB,
|
||||
(Items.BIRCH_STAIRS): Items.BIRCH_SLAB,
|
||||
(Items.DARK_OAK_STAIRS): Items.DARK_OAK_SLAB,
|
||||
(Items.JUNGLE_STAIRS): Items.JUNGLE_SLAB,
|
||||
(Items.OAK_STAIRS): Items.OAK_SLAB,
|
||||
(Items.SPRUCE_STAIRS): Items.SPRUCE_SLAB,
|
||||
(Items.CRIMSON_STAIRS): Items.CRIMSON_SLAB,
|
||||
(Items.WARPED_STAIRS): Items.WARPED_SLAB,
|
||||
(TRContent.RUBBER_PLANK_STAIR): TRContent.RUBBER_PLANK_SLAB
|
||||
].each { stairs, slab ->
|
||||
offerIndustrialSawmillRecipe {
|
||||
ingredients stairs
|
||||
outputs slab, new ItemStack(TRContent.Dusts.SAW, 2)
|
||||
power 30
|
||||
time 100
|
||||
fluidAmount 250 // in millibuckets
|
||||
source "stairs"
|
||||
criterion getCriterionName(stairs), getCriterionConditions(stairs)
|
||||
}
|
||||
}
|
||||
[
|
||||
(Items.ACACIA_SLAB): Items.ACACIA_PRESSURE_PLATE,
|
||||
(Items.BIRCH_SLAB): Items.BIRCH_PRESSURE_PLATE,
|
||||
(Items.DARK_OAK_SLAB): Items.DARK_OAK_PRESSURE_PLATE,
|
||||
(Items.JUNGLE_SLAB): Items.JUNGLE_PRESSURE_PLATE,
|
||||
(Items.OAK_SLAB): Items.OAK_PRESSURE_PLATE,
|
||||
(Items.SPRUCE_SLAB): Items.SPRUCE_PRESSURE_PLATE,
|
||||
(Items.CRIMSON_SLAB): Items.CRIMSON_PRESSURE_PLATE,
|
||||
(Items.WARPED_SLAB): Items.WARPED_PRESSURE_PLATE,
|
||||
(TRContent.RUBBER_PLANK_SLAB): TRContent.RUBBER_PRESSURE_PLATE
|
||||
].each { slab, plate ->
|
||||
offerIndustrialSawmillRecipe {
|
||||
ingredients slab
|
||||
outputs new ItemStack(plate, 2), new ItemStack(TRContent.Dusts.SAW, 2)
|
||||
power 30
|
||||
time 200
|
||||
fluidAmount 250 // in millibuckets
|
||||
source "slab"
|
||||
criterion getCriterionName(slab), getCriterionConditions(slab)
|
||||
}
|
||||
}
|
||||
[
|
||||
(ItemTags.PLANKS): 8,
|
||||
// stairs would be 6, slabs 4
|
||||
// but we don't add them, of course, because the recipes for these were added above
|
||||
(ItemTags.WOODEN_PRESSURE_PLATES): 1,
|
||||
(ItemTags.WOODEN_TRAPDOORS): 1, // not 2 because they often have holes
|
||||
(ItemTags.WOODEN_FENCES): 1,
|
||||
(ItemTags.WOODEN_DOORS): 3,
|
||||
(ItemTags.SIGNS): 1
|
||||
].each { item, count ->
|
||||
offerIndustrialSawmillRecipe {
|
||||
ingredients item
|
||||
outputs new ItemStack(TRContent.Dusts.SAW, count)
|
||||
power 30
|
||||
time 200
|
||||
fluidAmount 125*count // in millibuckets
|
||||
source item.id().path
|
||||
criterion getCriterionName(item), getCriterionConditions(item)
|
||||
}
|
||||
}
|
||||
[
|
||||
(Items.BOWL) : 2,
|
||||
(Items.WOODEN_SHOVEL) : 2,
|
||||
(Items.WOODEN_SWORD) : 2,
|
||||
(Items.WOODEN_HOE) : 3,
|
||||
(Items.WOODEN_AXE) : 3,
|
||||
(Items.WOODEN_PICKAXE): 3
|
||||
].each {item, count ->
|
||||
offerIndustrialSawmillRecipe {
|
||||
ingredients item
|
||||
outputs new ItemStack(TRContent.SmallDusts.SAW, count)
|
||||
power 30
|
||||
time 100
|
||||
fluidAmount 100 // in millibuckets
|
||||
source item.toString()
|
||||
criterion getCriterionName(item), getCriterionConditions(item)
|
||||
}
|
||||
}
|
||||
offerIndustrialSawmillRecipe {
|
||||
ingredients ItemTags.WOODEN_BUTTONS
|
||||
outputs new ItemStack(TRContent.SmallDusts.SAW, 1)
|
||||
power 20
|
||||
time 50
|
||||
fluidAmount 50 // in millibuckets
|
||||
source "wooden_buttons"
|
||||
criterion getCriterionName(ItemTags.WOODEN_BUTTONS), getCriterionConditions(ItemTags.WOODEN_BUTTONS)
|
||||
}
|
||||
}
|
||||
|
||||
def offerIndustrialSawmillRecipe(@DelegatesTo(value = IndustrialSawmillRecipeJsonFactory.class, strategy = Closure.DELEGATE_FIRST) Closure closure) {
|
||||
|
|
Loading…
Reference in a new issue