Initial work on Netherrack Soil.
Also added the processing for Ancient Debris and some of the intermediates for the new Hellforged Ingots (no uses yet).
This commit is contained in:
parent
1ae356c886
commit
032e163795
62 changed files with 826 additions and 8 deletions
|
@ -37,7 +37,8 @@ public class GeneratorBaseRecipes extends BaseRecipeProvider
|
|||
private void addVanillaRecipes(Consumer<IFinishedRecipe> consumer)
|
||||
{
|
||||
// ConditionalRecipe.builder().addRecipe(ShapedRecipeBuilder.shapedRecipe(BloodMagicItems.SACRIFICIAL_DAGGER.get()).key('g', Tags.Items.GLASS).key('G', Tags.Items.INGOTS_GOLD).key('i', Tags.Items.INGOTS_IRON).patternLine("ggg").patternLine(" Gg").patternLine("i g").addCriterion("has_glass", hasItem(Items.GLASS))::build);
|
||||
|
||||
ShapedRecipeBuilder.shapedRecipe(BloodMagicItems.CORRUPTED_DUST.get()).key('s', BloodMagicTags.TINYDUST_CORRUPTED).patternLine("sss").patternLine("sss").patternLine("sss").addCriterion("has_tiny", hasItem(BloodMagicItems.CORRUPTED_DUST_TINY.get())).build(consumer, BloodMagic.rl("corrupted_dust"));
|
||||
ShapedRecipeBuilder.shapedRecipe(BloodMagicItems.HELLFORGED_BLOCK.get()).key('s', BloodMagicTags.INGOT_HELLFORGED).patternLine("sss").patternLine("sss").patternLine("sss").addCriterion("has_hellforged", hasItem(BloodMagicItems.HELLFORGED_INGOT.get())).build(consumer, BloodMagic.rl("hellforged_block"));
|
||||
ShapedRecipeBuilder.shapedRecipe(BloodMagicItems.SACRIFICIAL_DAGGER.get()).key('g', Tags.Items.GLASS).key('G', Tags.Items.INGOTS_GOLD).key('i', Tags.Items.INGOTS_IRON).patternLine("ggg").patternLine(" Gg").patternLine("i g").addCriterion("has_glass", hasItem(Items.GLASS)).build(consumer, BloodMagic.rl("sacrificial_dagger"));
|
||||
ShapedRecipeBuilder.shapedRecipe(BloodMagicBlocks.BLOOD_ALTAR.get()).key('a', Tags.Items.STONE).key('b', Items.FURNACE).key('c', Tags.Items.INGOTS_GOLD).key('d', BloodMagicItems.MONSTER_SOUL_RAW.get()).patternLine("a a").patternLine("aba").patternLine("cdc").addCriterion("has_will", hasItem(BloodMagicItems.MONSTER_SOUL_RAW.get())).build(consumer, BloodMagic.rl("blood_altar"));
|
||||
ShapedRecipeBuilder.shapedRecipe(BloodMagicBlocks.SOUL_FORGE.get()).key('s', Tags.Items.STONE).key('g', Tags.Items.INGOTS_GOLD).key('i', Tags.Items.INGOTS_IRON).key('o', Tags.Items.STORAGE_BLOCKS_IRON).patternLine("i i").patternLine("sgs").patternLine("sos").addCriterion("has_gold", hasItem(Items.GOLD_INGOT)).build(consumer, BloodMagic.rl("soul_forge"));
|
||||
|
@ -57,6 +58,8 @@ public class GeneratorBaseRecipes extends BaseRecipeProvider
|
|||
String basePath = "smelting/";
|
||||
CookingRecipeBuilder.smeltingRecipe(Ingredient.fromTag(BloodMagicTags.DUST_IRON), Items.IRON_INGOT, 0, 200).addCriterion("has_iron_sand", hasItem(BloodMagicItems.IRON_SAND.get())).build(consumer, BloodMagic.rl(basePath + "ingot_iron"));
|
||||
CookingRecipeBuilder.smeltingRecipe(Ingredient.fromTag(BloodMagicTags.DUST_GOLD), Items.GOLD_INGOT, 0, 200).addCriterion("has_gold_sand", hasItem(BloodMagicItems.GOLD_SAND.get())).build(consumer, BloodMagic.rl(basePath + "ingot_gold"));
|
||||
CookingRecipeBuilder.smeltingRecipe(Ingredient.fromTag(BloodMagicTags.DUST_NETHERITE_SCRAP), Items.NETHERITE_SCRAP, 0, 200).addCriterion("has_netherite_dust", hasItem(BloodMagicItems.NETHERITE_SCRAP_SAND.get())).build(consumer, BloodMagic.rl(basePath + "ingot_netherite_scrap"));
|
||||
CookingRecipeBuilder.smeltingRecipe(Ingredient.fromTag(BloodMagicTags.DUST_HELLFORGED), BloodMagicItems.HELLFORGED_INGOT.get(), 0, 200).addCriterion("has_hellforged_dust", hasItem(BloodMagicItems.HELLFORGED_SAND.get())).build(consumer, BloodMagic.rl(basePath + "ingot_hellforged"));
|
||||
}
|
||||
|
||||
private void addBloodOrbRecipes(Consumer<IFinishedRecipe> consumer)
|
||||
|
@ -90,6 +93,8 @@ public class GeneratorBaseRecipes extends BaseRecipeProvider
|
|||
ShapelessRecipeBuilder.shapelessRecipe(BloodMagicBlocks.WORN_STONE_PATH.get(), 4).addIngredient(BloodMagicBlocks.STONE_PATH.get()).addIngredient(BloodMagicBlocks.STONE_PATH.get()).addIngredient(BloodMagicBlocks.STONE_PATH.get()).addIngredient(BloodMagicBlocks.STONE_PATH.get()).addIngredient(IngredientBloodOrb.fromOrb(BloodMagicItems.ORB_MASTER.get())).addCriterion("has_master_orb", hasItem(BloodMagicItems.MASTER_BLOOD_ORB.get())).build(consumer, BloodMagic.rl("path/path_wornstone"));
|
||||
|
||||
ShapedRecipeBuilder.shapedRecipe(BloodMagicItems.RITUAL_READER.get()).key('s', BloodMagicItems.DEMONIC_SLATE.get()).key('g', Tags.Items.GLASS).key('i', Tags.Items.INGOTS_GOLD).key('o', IngredientBloodOrb.fromOrb(BloodMagicItems.ORB_MASTER.get())).patternLine("gog").patternLine("isi").patternLine(" s ").addCriterion("has_master_orb", hasItem(BloodMagicItems.MASTER_BLOOD_ORB.get())).build(consumer, BloodMagic.rl("ritual_reader"));
|
||||
|
||||
// ShapedRecipeBuilder.shapedRecipe(BloodMagicBlocks.MIMIC.get()).key('b', itemIn)
|
||||
// ShapedRecipeBuilder.shapedRecipe(BloodMagicBlocks.SPEED_RUNE.get()).key('s', Items.GLASS).key('o', Ingredient.fromItems(Items.DIAMOND)).patternLine("sss").patternLine("sos").patternLine("sss").addCriterion("has_diamond", hasItem(Items.DIAMOND)).build(consumer, new ResourceLocation(BloodMagic.MODID, "speed_rune_from_standard"));
|
||||
// ShapedRecipeBuilder.shapedRecipe(BloodMagicBlocks.SPEED_RUNE.get()).key('s', Items.GLASS).key('o', IngredientBloodOrb.fromOrb(BloodMagicItems.ORB_WEAK.get())).patternLine("sss").patternLine("sos").patternLine("sss").addCriterion("has_diamond", hasItem(Items.DIAMOND)).build(consumer, new ResourceLocation(BloodMagic.MODID, "speed_rune_from_orb"));
|
||||
}
|
||||
|
|
|
@ -57,6 +57,7 @@ public class GeneratorBlockStates extends BlockStateProvider
|
|||
buildCubeAll(BloodMagicBlocks.EARTH_RITUAL_STONE.get());
|
||||
buildCubeAll(BloodMagicBlocks.DUSK_RITUAL_STONE.get());
|
||||
buildCubeAll(BloodMagicBlocks.DAWN_RITUAL_STONE.get());
|
||||
buildFarmland(BloodMagicBlocks.NETHER_SOIL.get(), BloodMagic.rl("block/nether_soil"), new ResourceLocation("block/netherrack"));
|
||||
|
||||
buildFurnace(BloodMagicBlocks.ALCHEMICAL_REACTION_CHAMBER.get());
|
||||
|
||||
|
@ -92,6 +93,18 @@ public class GeneratorBlockStates extends BlockStateProvider
|
|||
// ModelFile modelFile = models().crop("", null);
|
||||
// }
|
||||
|
||||
private void buildFarmland(Block block, ResourceLocation top, ResourceLocation side)
|
||||
{
|
||||
String basePath = block.getRegistryName().getPath();
|
||||
getVariantBuilder(block).forAllStates(state -> {
|
||||
Builder builder = ConfiguredModel.builder();
|
||||
|
||||
ModelFile file = models().withExistingParent(basePath, "template_farmland").texture("top", top).texture("dirt", side);
|
||||
|
||||
return builder.modelFile(file).build();
|
||||
});
|
||||
}
|
||||
|
||||
private void buildCubeAllWithTextureName(String texture)
|
||||
{
|
||||
models().cubeAll(texture, BloodMagic.rl("block/" + texture)).assertExistence();
|
||||
|
|
|
@ -0,0 +1,22 @@
|
|||
package wayoftime.bloodmagic.common.data;
|
||||
|
||||
import net.minecraft.data.DataGenerator;
|
||||
import net.minecraft.data.FluidTagsProvider;
|
||||
import net.minecraftforge.common.data.ExistingFileHelper;
|
||||
import wayoftime.bloodmagic.BloodMagic;
|
||||
import wayoftime.bloodmagic.common.block.BloodMagicBlocks;
|
||||
import wayoftime.bloodmagic.common.tags.BloodMagicTags;
|
||||
|
||||
public class GeneratorFluidTags extends FluidTagsProvider
|
||||
{
|
||||
public GeneratorFluidTags(DataGenerator generatorIn, ExistingFileHelper existingFileHelper)
|
||||
{
|
||||
super(generatorIn, BloodMagic.MODID, existingFileHelper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void registerTags()
|
||||
{
|
||||
this.getOrCreateBuilder(BloodMagicTags.LIFE_ESSENCE).add(BloodMagicBlocks.LIFE_ESSENCE_FLUID.get(), BloodMagicBlocks.LIFE_ESSENCE_FLUID_FLOWING.get());
|
||||
}
|
||||
}
|
|
@ -49,6 +49,7 @@ public class GeneratorItemModels extends ItemModelProvider
|
|||
registerBlockModel(BloodMagicBlocks.DUSK_RITUAL_STONE.get());
|
||||
registerBlockModel(BloodMagicBlocks.DAWN_RITUAL_STONE.get());
|
||||
registerBlockModel(BloodMagicBlocks.ALCHEMICAL_REACTION_CHAMBER.get());
|
||||
registerBlockModel(BloodMagicBlocks.NETHER_SOIL.get());
|
||||
|
||||
registerCustomBlockPath(BloodMagicBlocks.RAW_CRYSTAL_BLOCK.get(), "crystal/defaultcrystal1");
|
||||
registerCustomBlockPath(BloodMagicBlocks.CORROSIVE_CRYSTAL_BLOCK.get(), "crystal/corrosivecrystal1");
|
||||
|
|
|
@ -23,6 +23,7 @@ public class GeneratorItemTags extends ItemTagsProvider
|
|||
@Override
|
||||
public void registerTags()
|
||||
{
|
||||
registerIngots();
|
||||
registerOres();
|
||||
registerDusts();
|
||||
registerFragments();
|
||||
|
@ -58,6 +59,11 @@ public class GeneratorItemTags extends ItemTagsProvider
|
|||
|
||||
}
|
||||
|
||||
private void registerIngots()
|
||||
{
|
||||
getOrCreateBuilder(BloodMagicTags.INGOT_HELLFORGED).add(BloodMagicItems.HELLFORGED_INGOT.get());
|
||||
}
|
||||
|
||||
private void registerOres()
|
||||
{
|
||||
getOrCreateBuilder(BloodMagicTags.ORE_COPPER);
|
||||
|
@ -72,18 +78,24 @@ public class GeneratorItemTags extends ItemTagsProvider
|
|||
getOrCreateBuilder(BloodMagicTags.DUST_IRON).add(BloodMagicItems.IRON_SAND.get());
|
||||
getOrCreateBuilder(BloodMagicTags.DUST_GOLD).add(BloodMagicItems.GOLD_SAND.get());
|
||||
getOrCreateBuilder(BloodMagicTags.DUST_COAL).add(BloodMagicItems.COAL_SAND.get());
|
||||
getOrCreateBuilder(BloodMagicTags.DUST_NETHERITE_SCRAP).add(BloodMagicItems.NETHERITE_SCRAP_SAND.get());
|
||||
getOrCreateBuilder(BloodMagicTags.DUST_HELLFORGED).add(BloodMagicItems.HELLFORGED_SAND.get());
|
||||
getOrCreateBuilder(BloodMagicTags.DUST_CORRUPTED).add(BloodMagicItems.CORRUPTED_DUST.get());
|
||||
getOrCreateBuilder(BloodMagicTags.TINYDUST_CORRUPTED).add(BloodMagicItems.CORRUPTED_DUST_TINY.get());
|
||||
}
|
||||
|
||||
private void registerFragments()
|
||||
{
|
||||
getOrCreateBuilder(BloodMagicTags.FRAGMENT_IRON).add(BloodMagicItems.IRON_FRAGMENT.get());
|
||||
getOrCreateBuilder(BloodMagicTags.FRAGMENT_GOLD).add(BloodMagicItems.GOLD_FRAGMENT.get());
|
||||
getOrCreateBuilder(BloodMagicTags.FRAGMENT_NETHERITE_SCRAP).add(BloodMagicItems.NETHERITE_SCRAP_FRAGMENT.get());
|
||||
}
|
||||
|
||||
private void registerGravels()
|
||||
{
|
||||
getOrCreateBuilder(BloodMagicTags.GRAVEL_IRON).add(BloodMagicItems.IRON_GRAVEL.get());
|
||||
getOrCreateBuilder(BloodMagicTags.GRAVEL_GOLD).add(BloodMagicItems.GOLD_GRAVEL.get());
|
||||
getOrCreateBuilder(BloodMagicTags.GRAVEL_NETHERITE_SCRAP).add(BloodMagicItems.NETHERITE_SCRAP_GRAVEL.get());
|
||||
}
|
||||
|
||||
private void registerFurnaceCells()
|
||||
|
|
|
@ -461,16 +461,19 @@ public class GeneratorLanguage extends LanguageProvider
|
|||
addItem(BloodMagicItems.COAL_SAND, "Coal Sand");
|
||||
addItem(BloodMagicItems.IRON_SAND, "Iron Sand");
|
||||
addItem(BloodMagicItems.GOLD_SAND, "Gold Sand");
|
||||
addItem(BloodMagicItems.NETHERITE_SCRAP_SAND, "Netherite Scrap Sand");
|
||||
addItem(BloodMagicItems.SULFUR, "Sulfur");
|
||||
addItem(BloodMagicItems.SALTPETER, "Saltpeter");
|
||||
|
||||
// Fragments
|
||||
addItem(BloodMagicItems.IRON_FRAGMENT, "Iron Ore Fragment");
|
||||
addItem(BloodMagicItems.GOLD_FRAGMENT, "Gold Ore Fragment");
|
||||
addItem(BloodMagicItems.NETHERITE_SCRAP_FRAGMENT, "Ancient Debris Fragment");
|
||||
|
||||
// Gravels
|
||||
addItem(BloodMagicItems.IRON_GRAVEL, "Iron Gravel");
|
||||
addItem(BloodMagicItems.GOLD_GRAVEL, "Gold Gravel");
|
||||
addItem(BloodMagicItems.NETHERITE_SCRAP_GRAVEL, "Ancient Debris Gravel");
|
||||
|
||||
// addItem(BloodMagicItems , "");
|
||||
|
||||
|
|
|
@ -12,6 +12,7 @@ import com.mojang.datafixers.util.Pair;
|
|||
|
||||
import net.minecraft.advancements.criterion.StatePropertiesPredicate;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.Blocks;
|
||||
import net.minecraft.data.DataGenerator;
|
||||
import net.minecraft.data.LootTableProvider;
|
||||
import net.minecraft.data.loot.BlockLootTables;
|
||||
|
@ -105,6 +106,7 @@ public class GeneratorLootTable extends LootTableProvider
|
|||
registerDropSelfLootTable(BloodMagicBlocks.DEMON_CRYSTALLIZER.get());
|
||||
registerDropSelfLootTable(BloodMagicBlocks.INCENSE_ALTAR.get());
|
||||
// registerNoDropLootTable(BloodMagicBlocks.RAW_CRYSTAL_BLOCK.get());
|
||||
registerDropping(BloodMagicBlocks.NETHER_SOIL.get(), Blocks.NETHERRACK);
|
||||
|
||||
registerDropCrystalsLootTable(BloodMagicBlocks.RAW_CRYSTAL_BLOCK.get(), BloodMagicItems.RAW_CRYSTAL.get());
|
||||
registerDropCrystalsLootTable(BloodMagicBlocks.CORROSIVE_CRYSTAL_BLOCK.get(), BloodMagicItems.CORROSIVE_CRYSTAL.get());
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue