Cargo crates recipe and data

This commit is contained in:
DBotThePony 2022-05-15 16:14:43 +07:00
parent bf2caccecd
commit 140042bbd4
Signed by: DBot
GPG Key ID: DCC23B5715498507
6 changed files with 141 additions and 0 deletions

View File

@ -4,7 +4,9 @@ import net.minecraft.core.Direction
import net.minecraft.data.recipes.ShapedRecipeBuilder import net.minecraft.data.recipes.ShapedRecipeBuilder
import net.minecraft.data.recipes.ShapelessRecipeBuilder import net.minecraft.data.recipes.ShapelessRecipeBuilder
import net.minecraft.resources.ResourceLocation import net.minecraft.resources.ResourceLocation
import net.minecraft.world.item.DyeColor
import net.minecraft.world.item.ItemStack import net.minecraft.world.item.ItemStack
import net.minecraft.world.item.crafting.Ingredient
import net.minecraft.world.level.block.Block import net.minecraft.world.level.block.Block
import net.minecraft.world.level.block.IronBarsBlock import net.minecraft.world.level.block.IronBarsBlock
import net.minecraftforge.client.model.generators.ModelFile import net.minecraftforge.client.model.generators.ModelFile
@ -396,6 +398,47 @@ object DataGen {
} }
} }
with(recipeProvider) {
val crates = arrayOf(
DyeColor.WHITE to MBlocks.CARGO_CRATE_WHITE,
DyeColor.ORANGE to MBlocks.CARGO_CRATE_ORANGE,
DyeColor.MAGENTA to MBlocks.CARGO_CRATE_MAGENTA,
DyeColor.LIGHT_BLUE to MBlocks.CARGO_CRATE_LIGHT_BLUE,
DyeColor.YELLOW to MBlocks.CARGO_CRATE_YELLOW,
DyeColor.LIME to MBlocks.CARGO_CRATE_LIME,
DyeColor.PINK to MBlocks.CARGO_CRATE_PINK,
DyeColor.GRAY to MBlocks.CARGO_CRATE_GRAY,
DyeColor.LIGHT_GRAY to MBlocks.CARGO_CRATE_LIGHT_GRAY,
DyeColor.CYAN to MBlocks.CARGO_CRATE_CYAN,
DyeColor.PURPLE to MBlocks.CARGO_CRATE_PURPLE,
DyeColor.BLUE to MBlocks.CARGO_CRATE_BLUE,
DyeColor.BROWN to MBlocks.CARGO_CRATE_BROWN,
DyeColor.GREEN to MBlocks.CARGO_CRATE_GREEN,
DyeColor.RED to MBlocks.CARGO_CRATE_RED,
DyeColor.BLACK to MBlocks.CARGO_CRATE_BLACK,
)
for ((dye, crate) in crates) {
lambda { _, consumer ->
ShapedRecipeBuilder(crate, 1)
.define('P', MItemTags.PLATE_TRITANIUM)
.define('C', Tags.Items.CHESTS)
.define('D', dye.tag)
.pattern(" D ").pattern("PCP")
// .unlockedBy("has_dye", has(dye.tag))
.unlockedBy("has_tritanium_plate", has(MItemTags.PLATE_TRITANIUM))
.unlockedBy("has_chest", has(Tags.Items.CHESTS))
.save(consumer)
ShapelessRecipeBuilder(crate, 1)
.requires(Ingredient.of(MItemTags.TRITANIUM_CRATES), 1)
.requires(Ingredient.of(dye.tag), 1)
.unlockedBy("has_tritanium_crate", has(MItemTags.TRITANIUM_CRATES))
.save(consumer, "${crate.registryName}_alt")
}
}
}
with(recipeProvider) { with(recipeProvider) {
val baselineMetals = arrayOf("iron", "silver", "bronze", "lead", "constantan") val baselineMetals = arrayOf("iron", "silver", "bronze", "lead", "constantan")
val softMetals = arrayOf("gold", "aluminum", "aluminium", "brass", "copper", "electrum") val softMetals = arrayOf("gold", "aluminum", "aluminium", "brass", "copper", "electrum")

View File

@ -4,8 +4,11 @@ import net.minecraft.resources.ResourceLocation
import net.minecraft.tags.ItemTags import net.minecraft.tags.ItemTags
import net.minecraft.tags.TagKey import net.minecraft.tags.TagKey
import net.minecraft.world.item.Item import net.minecraft.world.item.Item
import ru.dbotthepony.mc.otm.OverdriveThatMatters
object MItemTags { object MItemTags {
val INGOT_TRITANIUM: TagKey<Item> = ItemTags.create(ResourceLocation("forge", "ingots/tritanium")) val INGOT_TRITANIUM: TagKey<Item> = ItemTags.create(ResourceLocation("forge", "ingots/tritanium"))
val PLATE_TRITANIUM: TagKey<Item> = ItemTags.create(ResourceLocation("forge", "plates/tritanium")) val PLATE_TRITANIUM: TagKey<Item> = ItemTags.create(ResourceLocation("forge", "plates/tritanium"))
val TRITANIUM_CRATES: TagKey<Item> = ItemTags.create(ResourceLocation(OverdriveThatMatters.MOD_ID, "tritanium_crates"))
val INDUSTRIAL_GLASS: TagKey<Item> = ItemTags.create(ResourceLocation(OverdriveThatMatters.MOD_ID, "industrial_glass"))
} }

View File

@ -32,6 +32,23 @@
"overdrive_that_matters:crate_purple", "overdrive_that_matters:crate_purple",
"overdrive_that_matters:cargo_crate", "overdrive_that_matters:cargo_crate",
"overdrive_that_matters:cargo_crate_white",
"overdrive_that_matters:cargo_crate_orange",
"overdrive_that_matters:cargo_crate_magenta",
"overdrive_that_matters:cargo_crate_light_blue",
"overdrive_that_matters:cargo_crate_yellow",
"overdrive_that_matters:cargo_crate_lime",
"overdrive_that_matters:cargo_crate_pink",
"overdrive_that_matters:cargo_crate_gray",
"overdrive_that_matters:cargo_crate_light_gray",
"overdrive_that_matters:cargo_crate_cyan",
"overdrive_that_matters:cargo_crate_purple",
"overdrive_that_matters:cargo_crate_blue",
"overdrive_that_matters:cargo_crate_brown",
"overdrive_that_matters:cargo_crate_green",
"overdrive_that_matters:cargo_crate_red",
"overdrive_that_matters:cargo_crate_black",
"overdrive_that_matters:industrial_glass", "overdrive_that_matters:industrial_glass",
"overdrive_that_matters:industrial_glass_pane", "overdrive_that_matters:industrial_glass_pane",

View File

@ -18,6 +18,23 @@
"overdrive_that_matters:tritanium_striped_block", "overdrive_that_matters:tritanium_striped_block",
"overdrive_that_matters:carbon_fibre_block", "overdrive_that_matters:carbon_fibre_block",
"overdrive_that_matters:cargo_crate_white",
"overdrive_that_matters:cargo_crate_orange",
"overdrive_that_matters:cargo_crate_magenta",
"overdrive_that_matters:cargo_crate_light_blue",
"overdrive_that_matters:cargo_crate_yellow",
"overdrive_that_matters:cargo_crate_lime",
"overdrive_that_matters:cargo_crate_pink",
"overdrive_that_matters:cargo_crate_gray",
"overdrive_that_matters:cargo_crate_light_gray",
"overdrive_that_matters:cargo_crate_cyan",
"overdrive_that_matters:cargo_crate_purple",
"overdrive_that_matters:cargo_crate_blue",
"overdrive_that_matters:cargo_crate_brown",
"overdrive_that_matters:cargo_crate_green",
"overdrive_that_matters:cargo_crate_red",
"overdrive_that_matters:cargo_crate_black",
"overdrive_that_matters:industrial_glass", "overdrive_that_matters:industrial_glass",
"overdrive_that_matters:industrial_glass_pane", "overdrive_that_matters:industrial_glass_pane",

View File

@ -0,0 +1,40 @@
{
"replace": false,
"values": [
"overdrive_that_matters:industrial_glass",
"overdrive_that_matters:industrial_glass_pane",
"overdrive_that_matters:industrial_glass_white",
"overdrive_that_matters:industrial_glass_pane_white",
"overdrive_that_matters:industrial_glass_orange",
"overdrive_that_matters:industrial_glass_pane_orange",
"overdrive_that_matters:industrial_glass_magenta",
"overdrive_that_matters:industrial_glass_pane_magenta",
"overdrive_that_matters:industrial_glass_light_blue",
"overdrive_that_matters:industrial_glass_pane_light_blue",
"overdrive_that_matters:industrial_glass_yellow",
"overdrive_that_matters:industrial_glass_pane_yellow",
"overdrive_that_matters:industrial_glass_lime",
"overdrive_that_matters:industrial_glass_pane_lime",
"overdrive_that_matters:industrial_glass_pink",
"overdrive_that_matters:industrial_glass_pane_pink",
"overdrive_that_matters:industrial_glass_gray",
"overdrive_that_matters:industrial_glass_pane_gray",
"overdrive_that_matters:industrial_glass_light_gray",
"overdrive_that_matters:industrial_glass_pane_light_gray",
"overdrive_that_matters:industrial_glass_cyan",
"overdrive_that_matters:industrial_glass_pane_cyan",
"overdrive_that_matters:industrial_glass_purple",
"overdrive_that_matters:industrial_glass_pane_purple",
"overdrive_that_matters:industrial_glass_blue",
"overdrive_that_matters:industrial_glass_pane_blue",
"overdrive_that_matters:industrial_glass_brown",
"overdrive_that_matters:industrial_glass_pane_brown",
"overdrive_that_matters:industrial_glass_green",
"overdrive_that_matters:industrial_glass_pane_green",
"overdrive_that_matters:industrial_glass_red",
"overdrive_that_matters:industrial_glass_pane_red",
"overdrive_that_matters:industrial_glass_black",
"overdrive_that_matters:industrial_glass_pane_black"
]
}

View File

@ -0,0 +1,21 @@
{
"replace": false,
"values": [
"overdrive_that_matters:cargo_crate_white",
"overdrive_that_matters:cargo_crate_orange",
"overdrive_that_matters:cargo_crate_magenta",
"overdrive_that_matters:cargo_crate_light_blue",
"overdrive_that_matters:cargo_crate_yellow",
"overdrive_that_matters:cargo_crate_lime",
"overdrive_that_matters:cargo_crate_pink",
"overdrive_that_matters:cargo_crate_gray",
"overdrive_that_matters:cargo_crate_light_gray",
"overdrive_that_matters:cargo_crate_cyan",
"overdrive_that_matters:cargo_crate_purple",
"overdrive_that_matters:cargo_crate_blue",
"overdrive_that_matters:cargo_crate_brown",
"overdrive_that_matters:cargo_crate_green",
"overdrive_that_matters:cargo_crate_red",
"overdrive_that_matters:cargo_crate_black"
]
}