diff --git a/build.gradle b/build.gradle index 6b6ec6f5..dbe7d14b 100644 --- a/build.gradle +++ b/build.gradle @@ -177,7 +177,7 @@ dependencies { compileOnly fg.deobf('maven.modrinth:embeddium:0.2.12+mc1.20.1') // testing - //implementation fg.deobf("curse.maven:allthecompressed-514045:4938351") + implementation fg.deobf("curse.maven:allthecompressed-514045:4938351") //implementation fg.deobf("curse.maven:inventorysorter-240633:4655091") implementation fg.deobf("curse.maven:cyclic-239286:4994392") implementation fg.deobf("curse.maven:flib-661261:4724762") diff --git a/src/main/java/thedarkcolour/exdeorum/compat/ModIds.java b/src/main/java/thedarkcolour/exdeorum/compat/ModIds.java index e6f8bec6..9ad32d80 100644 --- a/src/main/java/thedarkcolour/exdeorum/compat/ModIds.java +++ b/src/main/java/thedarkcolour/exdeorum/compat/ModIds.java @@ -24,6 +24,8 @@ public class ModIds { public static final String THE_ONE_PROBE = "theoneprobe"; public static final String TINKERS_CONSTRUCT = "tconstruct"; public static final String ALL_THE_ORES = "alltheores"; + public static final String ALL_THE_COMPRESSED = "allthecompressed"; + public static final String COMPRESSIUM = "compressium"; public static final String THERMAL = "thermal"; public static final String OCCULTISM = "occultism"; public static final String RAILCRAFT = "railcraft"; diff --git a/src/main/java/thedarkcolour/exdeorum/data/ModCompatData.java b/src/main/java/thedarkcolour/exdeorum/data/ModCompatData.java index a2a3df6f..4e684b06 100644 --- a/src/main/java/thedarkcolour/exdeorum/data/ModCompatData.java +++ b/src/main/java/thedarkcolour/exdeorum/data/ModCompatData.java @@ -212,12 +212,30 @@ public class ModCompatData { DUSK_LOG_ITEM = item(ModIds.BLUE_SKIES, "dusk_log"), MAPLE_LOG_ITEM = item(ModIds.BLUE_SKIES, "maple_log"), CRYSTALLIZED_LOG_ITEM = item(ModIds.BLUE_SKIES, "crystallized_log"); + // Compressium + public static final RegistryObject + COMPRESSED_DIRT_COMPRESSIUM = item(ModIds.COMPRESSIUM, "dirt_1"), + COMPRESSED_COBBLESTONE_COMPRESSIUM = item(ModIds.COMPRESSIUM, "cobblestone_1"), + COMPRESSED_GRAVEL_COMPRESSIUM = item(ModIds.COMPRESSIUM, "gravel_1"), + COMPRESSED_SAND_COMPRESSIUM = item(ModIds.COMPRESSIUM, "sand_1"), + COMPRESSED_RED_SAND_COMPRESSIUM = item(ModIds.COMPRESSIUM, "redsand_1"), + COMPRESSED_SOUL_SAND_COMPRESSIUM = item(ModIds.COMPRESSIUM, "soulsand_1"); + // AllTheCompressed + public static final RegistryObject + COMPRESSED_DIRT_ATC = item(ModIds.ALL_THE_COMPRESSED, "dirt_1x"), + COMPRESSED_COBBLESTONE_ATC = item(ModIds.ALL_THE_COMPRESSED, "cobblestone_1x"), + COMPRESSED_GRAVEL_ATC = item(ModIds.ALL_THE_COMPRESSED, "gravel_1x"), + COMPRESSED_SAND_ATC = item(ModIds.ALL_THE_COMPRESSED, "sand_1x"), + COMPRESSED_RED_SAND_ATC = item(ModIds.ALL_THE_COMPRESSED, "red_sand_1x"), + COMPRESSED_SOUL_SAND_ATC = item(ModIds.ALL_THE_COMPRESSED, "soul_sand_1x"), + COMPRESSED_MOSS_BLOCK_ATC = item(ModIds.ALL_THE_COMPRESSED, "moss_block_1x"); public static final ResourceLocation[] PAMS_CROPS; static { // copy and pasted from the GitHub - String[] names = { "pamagavecrop", "pamamaranthcrop", "pamarrowrootcrop", "pamartichokecrop", "pamasparaguscrop", "pambarleycrop", "pambeancrop", "pambellpeppercrop", "pamblackberrycrop", "pamblueberrycrop", "pambroccolicrop", "pambrusselsproutcrop", "pamcabbagecrop", "pamcactusfruitcrop", "pamcandleberrycrop", "pamcantaloupecrop", "pamcassavacrop", "pamcauliflowercrop", "pamcelerycrop", "pamchickpeacrop", "pamchilipeppercrop", "pamcoffeebeancrop", "pamcorncrop", "pamcottoncrop", "pamcranberrycrop", "pamcucumbercrop", "pameggplantcrop", "pamelderberrycrop", "pamflaxcrop", "pamgarliccrop", "pamgingercrop", "pamgrapecrop", "pamgreengrapecrop", "pamhuckleberrycrop", "pamjicamacrop", "pamjuniperberrycrop", "pamjutecrop", "pamkalecrop", "pamkenafcrop", "pamkiwicrop", "pamkohlrabicrop", "pamleekcrop", "pamlentilcrop", "pamlettucecrop", "pammilletcrop", "pammulberrycrop", "pammustardseedscrop", "pamoatscrop", "pamokracrop", "pamonioncrop", "pamparsnipcrop", "pampeanutcrop", "pampeascrop", "pampineapplecrop", "pamquinoacrop", "pamradishcrop", "pamraspberrycrop", "pamrhubarbcrop", "pamricecrop", "pamrutabagacrop", "pamryecrop", "pamscallioncrop", "pamsesameseedscrop", "pamsisalcrop", "pamsoybeancrop", "pamspiceleafcrop", "pamspinachcrop", "pamstrawberrycrop", "pamsweetpotatocrop", "pamtarocrop", "pamtealeafcrop", "pamtomatillocrop", "pamtomatocrop", "pamturnipcrop", "pamwaterchestnutcrop", "pamwhitemushroomcrop", "pamwintersquashcrop", "pamzucchinicrop"}; + @SuppressWarnings("SpellCheckingInspection") + String[] names = {"pamagavecrop", "pamamaranthcrop", "pamarrowrootcrop", "pamartichokecrop", "pamasparaguscrop", "pambarleycrop", "pambeancrop", "pambellpeppercrop", "pamblackberrycrop", "pamblueberrycrop", "pambroccolicrop", "pambrusselsproutcrop", "pamcabbagecrop", "pamcactusfruitcrop", "pamcandleberrycrop", "pamcantaloupecrop", "pamcassavacrop", "pamcauliflowercrop", "pamcelerycrop", "pamchickpeacrop", "pamchilipeppercrop", "pamcoffeebeancrop", "pamcorncrop", "pamcottoncrop", "pamcranberrycrop", "pamcucumbercrop", "pameggplantcrop", "pamelderberrycrop", "pamflaxcrop", "pamgarliccrop", "pamgingercrop", "pamgrapecrop", "pamgreengrapecrop", "pamhuckleberrycrop", "pamjicamacrop", "pamjuniperberrycrop", "pamjutecrop", "pamkalecrop", "pamkenafcrop", "pamkiwicrop", "pamkohlrabicrop", "pamleekcrop", "pamlentilcrop", "pamlettucecrop", "pammilletcrop", "pammulberrycrop", "pammustardseedscrop", "pamoatscrop", "pamokracrop", "pamonioncrop", "pamparsnipcrop", "pampeanutcrop", "pampeascrop", "pampineapplecrop", "pamquinoacrop", "pamradishcrop", "pamraspberrycrop", "pamrhubarbcrop", "pamricecrop", "pamrutabagacrop", "pamryecrop", "pamscallioncrop", "pamsesameseedscrop", "pamsisalcrop", "pamsoybeancrop", "pamspiceleafcrop", "pamspinachcrop", "pamstrawberrycrop", "pamsweetpotatocrop", "pamtarocrop", "pamtealeafcrop", "pamtomatillocrop", "pamtomatocrop", "pamturnipcrop", "pamwaterchestnutcrop", "pamwhitemushroomcrop", "pamwintersquashcrop", "pamzucchinicrop"}; PAMS_CROPS = new ResourceLocation[names.length]; for (int i = 0, namesLength = names.length; i < namesLength; i++) { diff --git a/src/main/java/thedarkcolour/exdeorum/data/ModTags.java b/src/main/java/thedarkcolour/exdeorum/data/ModTags.java index 9351a000..9a85d042 100644 --- a/src/main/java/thedarkcolour/exdeorum/data/ModTags.java +++ b/src/main/java/thedarkcolour/exdeorum/data/ModTags.java @@ -89,6 +89,24 @@ class ModTags { tags.tag(EItemTags.WOODEN_BARRELS).add(WOODEN_BARRELS.stream().map(BarrelMaterial::getItem).toArray(Item[]::new)); tags.tag(EItemTags.STONE_BARRELS).add(DefaultMaterials.STONE_BARREL.getItem(), DefaultMaterials.CRYSTALLIZED_BARREL.getItem()); tags.tag(EItemTags.BARRELS).addTags(EItemTags.WOODEN_BARRELS, EItemTags.STONE_BARRELS); + + tags.tag(EItemTags.COMPRESSED_DIRT).add(EItems.COMPRESSED_DIRT) + .addOptional(ModCompatData.COMPRESSED_DIRT_ATC.getId()); + tags.tag(EItemTags.COMPRESSED_GRAVEL).add(EItems.COMPRESSED_GRAVEL) + .addOptional(ModCompatData.COMPRESSED_GRAVEL_ATC.getId()); + tags.tag(EItemTags.COMPRESSED_SAND).add(EItems.COMPRESSED_SAND) + .addOptional(ModCompatData.COMPRESSED_SAND_ATC.getId()); + tags.tag(EItemTags.COMPRESSED_DUST).add(EItems.COMPRESSED_DUST); + tags.tag(EItemTags.COMPRESSED_RED_SAND).add(EItems.COMPRESSED_RED_SAND) + .addOptional(ModCompatData.COMPRESSED_RED_SAND_ATC.getId()); + tags.tag(EItemTags.COMPRESSED_CRUSHED_DEEPSLATE).add(EItems.COMPRESSED_CRUSHED_DEEPSLATE); + tags.tag(EItemTags.COMPRESSED_CRUSHED_BLACKSTONE).add(EItems.COMPRESSED_CRUSHED_BLACKSTONE); + tags.tag(EItemTags.COMPRESSED_CRUSHED_NETHERRACK).add(EItems.COMPRESSED_CRUSHED_NETHERRACK); + tags.tag(EItemTags.COMPRESSED_SOUL_SAND).add(EItems.COMPRESSED_SOUL_SAND) + .addOptional(ModCompatData.COMPRESSED_SOUL_SAND_ATC.getId()); + tags.tag(EItemTags.COMPRESSED_CRUSHED_END_STONE).add(EItems.COMPRESSED_CRUSHED_END_STONE); + tags.tag(EItemTags.COMPRESSED_MOSS_BLOCK).add(EItems.COMPRESSED_MOSS_BLOCK) + .addOptional(ModCompatData.COMPRESSED_MOSS_BLOCK_ATC.getId()); } public static void createStructureSetTags(MKTagsProvider tags) { diff --git a/src/main/java/thedarkcolour/exdeorum/registry/EBlocks.java b/src/main/java/thedarkcolour/exdeorum/registry/EBlocks.java index d243e72d..835b208b 100644 --- a/src/main/java/thedarkcolour/exdeorum/registry/EBlocks.java +++ b/src/main/java/thedarkcolour/exdeorum/registry/EBlocks.java @@ -18,6 +18,7 @@ package thedarkcolour.exdeorum.registry; +import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.world.item.DyeColor; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.Blocks; @@ -56,4 +57,26 @@ public class EBlocks { public static final RegistryObject INFESTED_LEAVES = BLOCKS.register("infested_leaves", () -> new InfestedLeavesBlock(copy(Blocks.OAK_LEAVES))); public static final RegistryObject WITCH_WATER = BLOCKS.register("witch_water", () -> new WitchWaterBlock(EFluids.WITCH_WATER, copy(Blocks.WATER).mapColor(MapColor.COLOR_PURPLE))); public static final RegistryObject END_CAKE = BLOCKS.register("end_cake", () -> new EndCakeBlock(of().noLootTable().mapColor(MapColor.COLOR_BLACK).forceSolidOn().strength(0.5F).sound(SoundType.WOOL).pushReaction(PushReaction.BLOCK))); + + // Compressed blocks + public static final RegistryObject COMPRESSED_DIRT = compressed(Blocks.DIRT); + public static final RegistryObject COMPRESSED_GRAVEL = compressed(Blocks.GRAVEL); + public static final RegistryObject COMPRESSED_SAND = compressed(Blocks.SAND); + public static final RegistryObject COMPRESSED_DUST = compressed(DUST); + public static final RegistryObject COMPRESSED_RED_SAND = compressed(Blocks.RED_SAND); + public static final RegistryObject COMPRESSED_CRUSHED_DEEPSLATE = compressed(CRUSHED_DEEPSLATE); + public static final RegistryObject COMPRESSED_CRUSHED_BLACKSTONE = compressed(CRUSHED_BLACKSTONE); + public static final RegistryObject COMPRESSED_CRUSHED_NETHERRACK = compressed(CRUSHED_NETHERRACK); + public static final RegistryObject COMPRESSED_SOUL_SAND = compressed(Blocks.SOUL_SAND); + public static final RegistryObject COMPRESSED_CRUSHED_END_STONE = compressed(CRUSHED_END_STONE); + public static final RegistryObject COMPRESSED_MOSS_BLOCK = compressed(Blocks.MOSS_BLOCK); + + @SuppressWarnings("deprecation") + private static RegistryObject compressed(Block block) { + return BLOCKS.register("compressed_" + BuiltInRegistries.BLOCK.getKey(block).getPath(), () -> new Block(copy(block))); + } + + private static RegistryObject compressed(RegistryObject block) { + return BLOCKS.register("compressed_" + block.getId().getPath(), () -> new Block(copy(block.get()))); + } } diff --git a/src/main/java/thedarkcolour/exdeorum/registry/EItems.java b/src/main/java/thedarkcolour/exdeorum/registry/EItems.java index 93fdda2c..c0f2b8a9 100644 --- a/src/main/java/thedarkcolour/exdeorum/registry/EItems.java +++ b/src/main/java/thedarkcolour/exdeorum/registry/EItems.java @@ -145,6 +145,18 @@ public class EItems { public static final RegistryObject CRUSHED_DEEPSLATE = registerItemBlock(EBlocks.CRUSHED_DEEPSLATE); public static final RegistryObject CRUSHED_BLACKSTONE = registerItemBlock(EBlocks.CRUSHED_BLACKSTONE); + public static final RegistryObject COMPRESSED_DIRT = registerItemBlock(EBlocks.COMPRESSED_DIRT); + public static final RegistryObject COMPRESSED_GRAVEL = registerItemBlock(EBlocks.COMPRESSED_GRAVEL); + public static final RegistryObject COMPRESSED_SAND = registerItemBlock(EBlocks.COMPRESSED_SAND); + public static final RegistryObject COMPRESSED_DUST = registerItemBlock(EBlocks.COMPRESSED_DUST); + public static final RegistryObject COMPRESSED_RED_SAND = registerItemBlock(EBlocks.COMPRESSED_RED_SAND); + public static final RegistryObject COMPRESSED_CRUSHED_DEEPSLATE = registerItemBlock(EBlocks.COMPRESSED_CRUSHED_DEEPSLATE); + public static final RegistryObject COMPRESSED_CRUSHED_BLACKSTONE = registerItemBlock(EBlocks.COMPRESSED_CRUSHED_BLACKSTONE); + public static final RegistryObject COMPRESSED_CRUSHED_NETHERRACK = registerItemBlock(EBlocks.COMPRESSED_CRUSHED_NETHERRACK); + public static final RegistryObject COMPRESSED_SOUL_SAND = registerItemBlock(EBlocks.COMPRESSED_SOUL_SAND); + public static final RegistryObject COMPRESSED_CRUSHED_END_STONE = registerItemBlock(EBlocks.COMPRESSED_CRUSHED_END_STONE); + public static final RegistryObject COMPRESSED_MOSS_BLOCK = registerItemBlock(EBlocks.COMPRESSED_MOSS_BLOCK); + // Mechanical Sieves public static final RegistryObject MECHANICAL_SIEVE = registerItemBlock(EBlocks.MECHANICAL_SIEVE); public static final RegistryObject MECHANICAL_HAMMER = registerItemBlock(EBlocks.MECHANICAL_HAMMER); diff --git a/src/main/java/thedarkcolour/exdeorum/tag/EItemTags.java b/src/main/java/thedarkcolour/exdeorum/tag/EItemTags.java index b7dfbca1..d3837208 100644 --- a/src/main/java/thedarkcolour/exdeorum/tag/EItemTags.java +++ b/src/main/java/thedarkcolour/exdeorum/tag/EItemTags.java @@ -51,6 +51,19 @@ public class EItemTags { public static final TagKey ORES_LITHIUM = forgeTag("ores/lithium"); public static final TagKey ORES_BORON = forgeTag("ores/boron"); + // Compressed tags + public static final TagKey COMPRESSED_DIRT = tag("compressed/dirt"); + public static final TagKey COMPRESSED_GRAVEL = tag("compressed/gravel"); + public static final TagKey COMPRESSED_SAND = tag("compressed/sand"); + public static final TagKey COMPRESSED_DUST = tag("compressed/dust"); + public static final TagKey COMPRESSED_RED_SAND = tag("compressed/red_sand"); + public static final TagKey COMPRESSED_CRUSHED_DEEPSLATE = tag("compressed/crushed_deepslate"); + public static final TagKey COMPRESSED_CRUSHED_BLACKSTONE = tag("compressed/crushed_blackstone"); + public static final TagKey COMPRESSED_CRUSHED_NETHERRACK = tag("compressed/crushed_netherrack"); + public static final TagKey COMPRESSED_SOUL_SAND = tag("compressed/soul_sand"); + public static final TagKey COMPRESSED_CRUSHED_END_STONE = tag("compressed/crushed_end_stone"); + public static final TagKey COMPRESSED_MOSS_BLOCK = tag("compressed/moss_block"); + public static TagKey tag(String name) { return ItemTags.create(new ResourceLocation(ExDeorum.ID, name)); }