Merge remote-tracking branch 'origin/1.16' into 1.16

This commit is contained in:
Michael Hillcox 2021-05-05 17:46:10 +01:00
commit a7c9655586
5 changed files with 205 additions and 67 deletions

View File

@ -9,6 +9,7 @@ public final class ActuallyTags {
public static class Items {
public static final ITag.INamedTag<Item> DRILLS = tag("drills");
public static final ITag.INamedTag<Item> COFFEE_BEANS = tag("coffee_beans");
public static final ITag.INamedTag<Item> TINY_COALS = tag("tiny_coals");
private static ITag.INamedTag<Item> tag(String name) {
return ItemTags.makeWrapperTag(String.format("%s:%s", ActuallyAdditions.MODID, name));

View File

@ -1,6 +1,7 @@
package de.ellpeck.actuallyadditions.data;
import com.google.gson.JsonObject;
import de.ellpeck.actuallyadditions.api.ActuallyTags;
import de.ellpeck.actuallyadditions.mod.ActuallyAdditions;
import de.ellpeck.actuallyadditions.mod.blocks.ActuallyBlocks;
import de.ellpeck.actuallyadditions.mod.items.ActuallyItems;
@ -32,70 +33,200 @@ public class BlockRecipeGenerator extends RecipeProvider {
.key('S', Tags.Items.SEEDS)
.build(consumer);
//Empowerer
ShapedRecipeBuilder.shapedRecipe(ActuallyBlocks.EMPOWERER.get())
.patternLine(" R ")
.patternLine(" B ")
.patternLine("CDC")
.key('R', ActuallyItems.RESTONIA_CRYSTAL.get())
.key('B', ActuallyItems.BATTERY_DOUBLE.get())
.key('C', ActuallyBlocks.IRON_CASING.get())
.key('D', ActuallyBlocks.DISPLAY_STAND.get())
.addCriterion("", hasItem(Items.AIR))
.build(consumer, new ResourceLocation(ActuallyAdditions.MODID, "empowerer"));
//Empowerer
ShapedRecipeBuilder.shapedRecipe(ActuallyBlocks.EMPOWERER.get())
.patternLine(" R ")
.patternLine(" B ")
.patternLine("CDC")
.key('R', ActuallyItems.RESTONIA_CRYSTAL.get())
.key('B', ActuallyItems.BATTERY_DOUBLE.get())
.key('C', ActuallyBlocks.IRON_CASING.get())
.key('D', ActuallyBlocks.DISPLAY_STAND.get())
.addCriterion("", hasItem(Items.AIR))
.build(consumer);
//Tiny Torch coal
//Tiny Torch
ShapedRecipeBuilder.shapedRecipe(ActuallyBlocks.TINY_TORCH.get(), 2)
.patternLine("C")
.patternLine("S")
.key('C', ActuallyItems.TINY_COAL.get())
.key('S', Tags.Items.RODS_WOODEN)
.addCriterion("", hasItem(Items.AIR))
.build(consumer, new ResourceLocation(ActuallyAdditions.MODID, "tiny_torch_coal"));
//Tiny Torch charcoal
ShapedRecipeBuilder.shapedRecipe(ActuallyBlocks.TINY_TORCH.get(), 2)
.patternLine("C")
.patternLine("S")
.key('C', ActuallyItems.TINY_CHARCOAL.get())
.key('S', Tags.Items.RODS_WOODEN)
.addCriterion("", hasItem(Items.AIR))
.build(consumer, new ResourceLocation(ActuallyAdditions.MODID, "tiny_torch_charcoal"));
.patternLine("C")
.patternLine("S")
.key('C', ActuallyTags.Items.TINY_COALS)
.key('S', Tags.Items.RODS_WOODEN)
.addCriterion("", hasItem(Items.AIR))
.build(consumer, new ResourceLocation(ActuallyAdditions.MODID, "tiny_torch"));
//Fireworks Box
ShapedRecipeBuilder.shapedRecipe(ActuallyBlocks.FIREWORK_BOX.get())
.patternLine("GFG")
.patternLine("SAS")
.patternLine("CCC")
.key('G', Tags.Items.GUNPOWDER)
.key('S', Tags.Items.RODS_WOODEN)
.key('A', ActuallyBlocks.IRON_CASING.get())
.key('F', Items.FIREWORK_ROCKET)
.key('C', ActuallyItems.ENORI_CRYSTAL.get())
.addCriterion("", hasItem(Items.AIR))
.build(consumer, new ResourceLocation(ActuallyAdditions.MODID, "firework_box"));
.patternLine("GFG")
.patternLine("SAS")
.patternLine("CCC")
.key('G', Tags.Items.GUNPOWDER)
.key('S', Tags.Items.RODS_WOODEN)
.key('A', ActuallyBlocks.IRON_CASING.get())
.key('F', Items.FIREWORK_ROCKET)
.key('C', ActuallyItems.ENORI_CRYSTAL.get())
.addCriterion("", hasItem(Items.AIR))
.build(consumer);
//Shock Suppressor
ShapedRecipeBuilder.shapedRecipe(ActuallyBlocks.SHOCK_SUPPRESSOR.get())
.patternLine("OAO")
.patternLine("ACA")
.patternLine("OAO")
.key('A', ActuallyItems.VOID_EMPOWERED_CRYSTAL.get())
.key('O', Tags.Items.OBSIDIAN)
.key('C', ActuallyItems.COIL_ADVANCED.get())
.addCriterion("", hasItem(Items.AIR))
.build(consumer, new ResourceLocation(ActuallyAdditions.MODID, "shock_suppressor"));
.patternLine("OAO")
.patternLine("ACA")
.patternLine("OAO")
.key('A', ActuallyItems.VOID_EMPOWERED_CRYSTAL.get())
.key('O', Tags.Items.OBSIDIAN)
.key('C', ActuallyItems.COIL_ADVANCED.get())
.addCriterion("", hasItem(Items.AIR))
.build(consumer);
//Display Stand
ShapedRecipeBuilder.shapedRecipe(ActuallyBlocks.DISPLAY_STAND.get())
.patternLine(" R ")
.patternLine("EEE")
.patternLine("GGG")
.key('R', ActuallyItems.COIL_ADVANCED.get())
.key('E', ActuallyBlocks.ETHETIC_GREEN_BLOCK.get())
.key('G', ActuallyBlocks.ETHETIC_WHITE_BLOCK.get())
.addCriterion("", hasItem(Items.AIR))
.build(consumer, new ResourceLocation(ActuallyAdditions.MODID, "display_stand"));
.patternLine(" R ")
.patternLine("EEE")
.patternLine("GGG")
.key('R', ActuallyItems.COIL_ADVANCED.get())
.key('E', ActuallyBlocks.ETHETIC_GREEN_BLOCK.get())
.key('G', ActuallyBlocks.ETHETIC_WHITE_BLOCK.get())
.addCriterion("", hasItem(Items.AIR))
.build(consumer);
//Vertical Digger
ShapedRecipeBuilder.shapedRecipe(ActuallyBlocks.MINER.get())
.patternLine("IRI")
.patternLine("RCR")
.patternLine("IDI")
.key('R', Tags.Items.STORAGE_BLOCKS_REDSTONE)
.key('I', ActuallyBlocks.IRON_CASING.get())
.key('C', ActuallyItems.VOID_EMPOWERED_CRYSTAL.get())
.key('D', ActuallyItems.DRILL.get())
.addCriterion("", hasItem(Items.AIR))
.build(consumer);
//Black Quartz Wall
ShapedRecipeBuilder.shapedRecipe(ActuallyBlocks.BLACK_QUARTZ_WALL.get())
.patternLine("QQQ")
.patternLine("QQQ")
.key('Q', ActuallyBlocks.BLACK_QUARTZ_PILLAR_BLOCK.get())
.addCriterion("", hasItem(Items.AIR))
.build(consumer);
//Black Quartz Slab
ShapedRecipeBuilder.shapedRecipe(ActuallyBlocks.BLACK_QUARTZ_SLAB.get())
.patternLine("QQQ")
.key('Q', ActuallyBlocks.BLACK_QUARTZ_PILLAR_BLOCK.get())
.addCriterion("", hasItem(Items.AIR))
.build(consumer);
//Black Quartz Stairs
ShapedRecipeBuilder.shapedRecipe(ActuallyBlocks.BLACK_QUARTZ_STAIR.get())
.patternLine("Q ")
.patternLine("QQ ")
.patternLine("QQQ")
.key('Q', ActuallyBlocks.BLACK_QUARTZ_PILLAR_BLOCK.get())
.build(consumer);
//Pillar Black Quartz Wall
ShapedRecipeBuilder.shapedRecipe(ActuallyBlocks.BLACK_QUARTZ_PILLAR_WALL.get())
.patternLine("QQQ")
.patternLine("QQQ")
.key('Q', ActuallyBlocks.BLACK_QUARTZ_PILLAR_BLOCK.get())
.addCriterion("", hasItem(Items.AIR))
.build(consumer);
//Pillar Black Quartz Slab
ShapedRecipeBuilder.shapedRecipe(ActuallyBlocks.BLACK_QUARTZ_PILLAR_SLAB.get())
.patternLine("QQQ")
.key('Q', ActuallyBlocks.BLACK_QUARTZ_PILLAR_BLOCK.get())
.addCriterion("", hasItem(Items.AIR))
.build(consumer);
//Pillar Black Quartz Stairs
ShapedRecipeBuilder.shapedRecipe(ActuallyBlocks.BLACK_QUARTZ_PILLAR_STAIR.get())
.patternLine("Q ")
.patternLine("QQ ")
.patternLine("QQQ")
.key('Q', ActuallyBlocks.BLACK_QUARTZ_PILLAR_BLOCK.get())
.build(consumer);
//Chiseled Black Quartz Wall
ShapedRecipeBuilder.shapedRecipe(ActuallyBlocks.CHISELED_BLACK_QUARTZ_WALL.get())
.patternLine("QQQ")
.patternLine("QQQ")
.key('Q', ActuallyBlocks.CHISELED_BLACK_QUARTZ_BLOCK.get())
.addCriterion("", hasItem(Items.AIR))
.build(consumer);
//Chiseled Black Quartz Slab
ShapedRecipeBuilder.shapedRecipe(ActuallyBlocks.CHISELED_BLACK_QUARTZ_SLAB.get())
.patternLine("QQQ")
.key('Q', ActuallyBlocks.CHISELED_BLACK_QUARTZ_BLOCK.get())
.addCriterion("", hasItem(Items.AIR))
.build(consumer);
//Chiseled Black Quartz Stairs
ShapedRecipeBuilder.shapedRecipe(ActuallyBlocks.CHISELED_BLACK_QUARTZ_STAIR.get())
.patternLine("Q ")
.patternLine("QQ ")
.patternLine("QQQ")
.key('Q', ActuallyBlocks.CHISELED_BLACK_QUARTZ_BLOCK.get())
.build(consumer);
//Ethetic White Wall
ShapedRecipeBuilder.shapedRecipe(ActuallyBlocks.ETHETIC_WHITE_WALL.get())
.patternLine("QQQ")
.patternLine("QQQ")
.key('Q', ActuallyBlocks.ETHETIC_WHITE_BLOCK.get())
.addCriterion("", hasItem(Items.AIR))
.build(consumer);
//Ethetic White Slab
ShapedRecipeBuilder.shapedRecipe(ActuallyBlocks.ETHETIC_WHITE_SLAB.get())
.patternLine("QQQ")
.key('Q', ActuallyBlocks.ETHETIC_WHITE_BLOCK.get())
.addCriterion("", hasItem(Items.AIR))
.build(consumer);
//Ethetic White Stairs
ShapedRecipeBuilder.shapedRecipe(ActuallyBlocks.ETHETIC_WHITE_STAIRS.get())
.patternLine("Q ")
.patternLine("QQ ")
.patternLine("QQQ")
.key('Q', ActuallyBlocks.ETHETIC_WHITE_BLOCK.get())
.build(consumer);
//Ethetic Green Wall
ShapedRecipeBuilder.shapedRecipe(ActuallyBlocks.ETHETIC_GREEN_WALL.get())
.patternLine("QQQ")
.patternLine("QQQ")
.key('Q', ActuallyBlocks.ETHETIC_GREEN_BLOCK.get())
.addCriterion("", hasItem(Items.AIR))
.build(consumer);
//Ethetic Green Slab
ShapedRecipeBuilder.shapedRecipe(ActuallyBlocks.ETHETIC_GREEN_SLAB.get())
.patternLine("QQQ")
.key('Q', ActuallyBlocks.ETHETIC_GREEN_BLOCK.get())
.addCriterion("", hasItem(Items.AIR))
.build(consumer);
//Ethetic Green Stairs
ShapedRecipeBuilder.shapedRecipe(ActuallyBlocks.ETHETIC_GREEN_STAIRS.get())
.patternLine("Q ")
.patternLine("QQ ")
.patternLine("QQQ")
.key('Q', ActuallyBlocks.ETHETIC_GREEN_BLOCK.get())
.addCriterion("", hasItem(Items.AIR))
.build(consumer);
//Atomic Reconstructor
ShapedRecipeBuilder.shapedRecipe(ActuallyBlocks.ATOMIC_RECONSTRUCTOR.get())
.patternLine("IRI")
.patternLine("RCR")
.patternLine("IRI")
.key('R', Tags.Items.DUSTS_REDSTONE)
.key('I', Tags.Items.INGOTS_IRON)
.key('C', ActuallyBlocks.IRON_CASING.get())
.addCriterion("", hasItem(Items.AIR))
.build(consumer);
}
@Override

View File

@ -19,6 +19,9 @@ public class ItemTagsGenerator extends ItemTagsProvider {
protected void registerTags() {
this.getOrCreateBuilder(ActuallyTags.Items.COFFEE_BEANS)
.add(ActuallyItems.COFFEE_BEANS.get());
this.getOrCreateBuilder(ActuallyTags.Items.TINY_COALS)
.add(ActuallyItems.TINY_COAL.get())
.add(ActuallyItems.TINY_CHARCOAL.get());
// getOrCreateBuilder(ActuallyTags.Items.DRILLS).add(
// ActuallyItems.DRILL_MAIN.get(),
// ActuallyItems.DRILL_BLACK.get(), ActuallyItems.DRILL_BLACK.get(), ActuallyItems.DRILL_BLUE.get(), ActuallyItems.DRILL_BROWN.get(),

View File

@ -54,7 +54,7 @@ public final class ActuallyBlocks {
public static final RegistryObject<Block> PLAYER_INTERFACE = BLOCKS.register("player_interface", BlockPlayerInterface::new);
public static final RegistryObject<Block> ITEM_VIEWER = BLOCKS.register("item_viewer", BlockItemViewer::new);
public static final RegistryObject<Block> FIREWORK_BOX = BLOCKS.register("firework_box", BlockFireworkBox::new);
public static final RegistryObject<Block> MINER = BLOCKS.register("miner", BlockMiner::new);
public static final RegistryObject<Block> MINER = BLOCKS.register("miner", BlockVerticalDigger::new);
public static final RegistryObject<Block> ATOMIC_RECONSTRUCTOR = BLOCKS.register("atomic_reconstructor", BlockAtomicReconstructor::new);
public static final RegistryObject<Block> LASER_RELAY = BLOCKS.register("laser_relay", () -> new BlockLaserRelay(BlockLaserRelay.Type.ENERGY_BASIC));
public static final RegistryObject<Block> LASER_RELAY_ADVANCED = BLOCKS.register("laser_relay_advanced", () -> new BlockLaserRelay(BlockLaserRelay.Type.ENERGY_ADVANCED));
@ -72,8 +72,8 @@ public final class ActuallyBlocks {
public static final RegistryObject<Block> ETHETIC_WHITE_STAIRS = BLOCKS.register("ethetic_white_stairs", () -> new StairsBlock(() -> ETHETIC_WHITE_BLOCK.get().getDefaultState(), AbstractBlock.Properties.from(ETHETIC_WHITE_BLOCK.get())));
public static final RegistryObject<Block> ETHETIC_GREEN_SLAB = BLOCKS.register("ethetic_green_slab", () -> new SlabBlock(AbstractBlock.Properties.from(ETHETIC_GREEN_BLOCK.get())));
public static final RegistryObject<Block> ETHETIC_WHITE_SLAB = BLOCKS.register("ethetic_white_slab", () -> new SlabBlock(AbstractBlock.Properties.from(ETHETIC_WHITE_BLOCK.get())));
public static final RegistryObject<Block> ETHETIC_GREEN_FENCE = BLOCKS.register("ethetic_green_fence", () -> new WallBlock(AbstractBlock.Properties.from(ETHETIC_GREEN_BLOCK.get())));
public static final RegistryObject<Block> ETHETIC_WHITE_FENCE = BLOCKS.register("ethetic_white_fence", () -> new WallBlock(AbstractBlock.Properties.from(ETHETIC_WHITE_BLOCK.get())));
public static final RegistryObject<Block> ETHETIC_GREEN_WALL = BLOCKS.register("ethetic_green_wall", () -> new WallBlock(AbstractBlock.Properties.from(ETHETIC_GREEN_BLOCK.get())));
public static final RegistryObject<Block> ETHETIC_WHITE_WALL = BLOCKS.register("ethetic_white_wall", () -> new WallBlock(AbstractBlock.Properties.from(ETHETIC_WHITE_BLOCK.get())));
public static final RegistryObject<Block> CRYSTAL_ENORI = BLOCKS.register("crystal_enori_block", () -> new BlockCrystal(false));
public static final RegistryObject<Block> CRYSTAL_RESTONIA = BLOCKS.register("crystal_restonia_block", () -> new BlockCrystal(false));
@ -140,15 +140,18 @@ public final class ActuallyBlocks {
public static final RegistryObject<Block> FLUID_COLLECTOR = BLOCKS.register("fluid_collector", () -> new BlockFluidCollector(false));
public static final RegistryObject<Block> COFFEE_MACHINE = BLOCKS.register("coffee_machine", BlockCoffeeMachine::new);
public static final RegistryObject<Block> PHANTOM_BOOSTER = BLOCKS.register("phantom_booster", BlockPhantomBooster::new);
public static final RegistryObject<Block> QUARTZ_WALL = BLOCKS.register("quartz_wall", () -> new WallBlock(AbstractBlock.Properties.from(blockMisc.get())));
public static final RegistryObject<Block> CHISELED_QUARTZ_WALL = BLOCKS.register("chiseled_quartz_wall", () -> new WallBlock(AbstractBlock.Properties.from(blockMisc.get())));
public static final RegistryObject<Block> PILLAR_QUARTZ_WALL = BLOCKS.register("pillar_quartz_wall", () -> new WallBlock(AbstractBlock.Properties.from(blockMisc.get())));
public static final RegistryObject<Block> QUARTZ_STAIR = BLOCKS.register("quartz_stair", () -> new StairsBlock(() -> blockMisc.get().getDefaultState(), AbstractBlock.Properties.from(blockMisc.get())));
public static final RegistryObject<Block> CHISELED_QUARTZ_STAIR = BLOCKS.register("chiseled_quartz_stair", () -> new StairsBlock(() -> blockMisc.get().getDefaultState(), AbstractBlock.Properties.from(blockMisc.get())));
public static final RegistryObject<Block> PILLAR_QUARTZ_STAIR = BLOCKS.register("pillar_quartz_stair", () -> new StairsBlock(() -> blockMisc.get().getDefaultState(), AbstractBlock.Properties.from(blockMisc.get())));
public static final RegistryObject<Block> QUARTZ_SLAB = BLOCKS.register("quartz_slab", () -> new SlabBlock(AbstractBlock.Properties.from(blockMisc.get())));
public static final RegistryObject<Block> CHISELED_QUARTZ_SLAB = BLOCKS.register("chiseled_quartz_slab", () -> new SlabBlock(AbstractBlock.Properties.from(blockMisc.get())));
public static final RegistryObject<Block> PILLAR_QUARTZ_SLAB = BLOCKS.register("pillar_quartz_slab", () -> new SlabBlock(AbstractBlock.Properties.from(blockMisc.get())));
public static final RegistryObject<Block> BLACK_QUARTZ_BLOCK = BLOCKS.register("black_quartz_block", BlockGeneric::new);
public static final RegistryObject<Block> BLACK_QUARTZ_PILLAR_BLOCK = BLOCKS.register("black_quartz_pillar_block", BlockGeneric::new);
public static final RegistryObject<Block> CHISELED_BLACK_QUARTZ_BLOCK = BLOCKS.register("chiseled_black_quartz_block", BlockGeneric::new);
public static final RegistryObject<Block> BLACK_QUARTZ_WALL = BLOCKS.register("black_quartz_wall", () -> new WallBlock(AbstractBlock.Properties.from(blockMisc.get())));
public static final RegistryObject<Block> CHISELED_BLACK_QUARTZ_WALL = BLOCKS.register("chiseled_black_quartz_wall", () -> new WallBlock(AbstractBlock.Properties.from(blockMisc.get())));
public static final RegistryObject<Block> BLACK_QUARTZ_PILLAR_WALL = BLOCKS.register("black_quartz_pillar_wall", () -> new WallBlock(AbstractBlock.Properties.from(blockMisc.get())));
public static final RegistryObject<Block> BLACK_QUARTZ_STAIR = BLOCKS.register("black_quartz_stair", () -> new StairsBlock(() -> blockMisc.get().getDefaultState(), AbstractBlock.Properties.from(blockMisc.get())));
public static final RegistryObject<Block> CHISELED_BLACK_QUARTZ_STAIR = BLOCKS.register("chiseled_black_quartz_stair", () -> new StairsBlock(() -> blockMisc.get().getDefaultState(), AbstractBlock.Properties.from(blockMisc.get())));
public static final RegistryObject<Block> BLACK_QUARTZ_PILLAR_STAIR = BLOCKS.register("black_quartz_pillar_stair", () -> new StairsBlock(() -> blockMisc.get().getDefaultState(), AbstractBlock.Properties.from(blockMisc.get())));
public static final RegistryObject<Block> BLACK_QUARTZ_SLAB = BLOCKS.register("black_quartz_slab", () -> new SlabBlock(AbstractBlock.Properties.from(blockMisc.get())));
public static final RegistryObject<Block> CHISELED_BLACK_QUARTZ_SLAB = BLOCKS.register("chiseled_black_quartz_slab", () -> new SlabBlock(AbstractBlock.Properties.from(blockMisc.get())));
public static final RegistryObject<Block> BLACK_QUARTZ_PILLAR_SLAB = BLOCKS.register("black_quartz_pillar_slab", () -> new SlabBlock(AbstractBlock.Properties.from(blockMisc.get())));
public static AbstractBlock.Properties defaultPickProps(int harvestLevel, float hardness, float resistance) {
return AbstractBlock.Properties.create(Material.ROCK).harvestLevel(harvestLevel).harvestTool(ToolType.PICKAXE).hardnessAndResistance(hardness, resistance).sound(SoundType.STONE);

View File

@ -33,9 +33,9 @@ import net.minecraftforge.api.distmarker.Dist;
import net.minecraftforge.api.distmarker.OnlyIn;
public class BlockMiner extends DirectionalBlock.Container implements IHudDisplay {
public class BlockVerticalDigger extends DirectionalBlock.Container implements IHudDisplay {
public BlockMiner() {
public BlockVerticalDigger() {
super(ActuallyBlocks.defaultPickProps(0, 8F, 30F));
}