diff --git a/src/generated/resources/.cache/59eb3dbb5f86130e09b3c62d89b9525ee01cf52d b/src/generated/resources/.cache/59eb3dbb5f86130e09b3c62d89b9525ee01cf52d index 70f6aec56..417ea1a2e 100644 --- a/src/generated/resources/.cache/59eb3dbb5f86130e09b3c62d89b9525ee01cf52d +++ b/src/generated/resources/.cache/59eb3dbb5f86130e09b3c62d89b9525ee01cf52d @@ -1,6 +1,7 @@ -// 1.20.1 2024-09-12T20:35:10.8112459 Loot Tables +// 1.20.1 2024-11-28T19:06:08.9130891 Loot Tables 98386b2e65b2afb7cf5b0cabf6a7b0f062c1e640 data/superbwarfare/loot_tables/blocks/barbed_wire.json 811e69929a14e6736015849c220100bb58d914c9 data/superbwarfare/loot_tables/blocks/cemented_carbide_block.json +92190e844ccc6a9e63e4c063ee3a0932f722156a data/superbwarfare/loot_tables/blocks/container.json dabbe17417c944567dc6dfcdcba32b8377c24f69 data/superbwarfare/loot_tables/blocks/deepslate_galena_ore.json a7c1af3e194d35a64544902468bd964f45f2f9ef data/superbwarfare/loot_tables/blocks/deepslate_scheelite_ore.json 76fa64ff714374c1655f4d11776fda132287a014 data/superbwarfare/loot_tables/blocks/deepslate_silver_ore.json diff --git a/src/generated/resources/.cache/f93f628a3b0902e77de76541bcff68d1e5e3578f b/src/generated/resources/.cache/f93f628a3b0902e77de76541bcff68d1e5e3578f index 3b8d89e71..367c7a513 100644 --- a/src/generated/resources/.cache/f93f628a3b0902e77de76541bcff68d1e5e3578f +++ b/src/generated/resources/.cache/f93f628a3b0902e77de76541bcff68d1e5e3578f @@ -1,6 +1,7 @@ -// 1.20.1 2024-09-12T20:35:10.8102487 Block States: superbwarfare +// 1.20.1 2024-11-28T19:10:17.3403255 Block States: superbwarfare f3b778ca36ca78c3d80f1b778078897f59bdb0c5 assets/superbwarfare/blockstates/barbed_wire.json 0cfad4f53a8047c402edf978d0c8cf6269f063cb assets/superbwarfare/blockstates/cemented_carbide_block.json +921500c7cf6c92da0e656486126068bbf5e30348 assets/superbwarfare/blockstates/container.json 62fb0464ca59ac21693639c406e08730427d87b3 assets/superbwarfare/blockstates/deepslate_galena_ore.json b8b7cdea6c8626c74d652d0b300b3afe19c60674 assets/superbwarfare/blockstates/deepslate_scheelite_ore.json 2b24b703de4821bebe71ba53043e6a1a23d71c17 assets/superbwarfare/blockstates/deepslate_silver_ore.json diff --git a/src/generated/resources/assets/superbwarfare/blockstates/container.json b/src/generated/resources/assets/superbwarfare/blockstates/container.json new file mode 100644 index 000000000..cfc489e7d --- /dev/null +++ b/src/generated/resources/assets/superbwarfare/blockstates/container.json @@ -0,0 +1,34 @@ +{ + "variants": { + "facing=east,opened=false": { + "model": "superbwarfare:block/container", + "y": 90 + }, + "facing=east,opened=true": { + "model": "superbwarfare:block/container", + "y": 90 + }, + "facing=north,opened=false": { + "model": "superbwarfare:block/container" + }, + "facing=north,opened=true": { + "model": "superbwarfare:block/container" + }, + "facing=south,opened=false": { + "model": "superbwarfare:block/container", + "y": 180 + }, + "facing=south,opened=true": { + "model": "superbwarfare:block/container", + "y": 180 + }, + "facing=west,opened=false": { + "model": "superbwarfare:block/container", + "y": 270 + }, + "facing=west,opened=true": { + "model": "superbwarfare:block/container", + "y": 270 + } + } +} \ No newline at end of file diff --git a/src/generated/resources/data/superbwarfare/loot_tables/blocks/container.json b/src/generated/resources/data/superbwarfare/loot_tables/blocks/container.json new file mode 100644 index 000000000..a9d6f59c6 --- /dev/null +++ b/src/generated/resources/data/superbwarfare/loot_tables/blocks/container.json @@ -0,0 +1,34 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "superbwarfare:container" + } + ], + "functions": [ + { + "function": "minecraft:copy_nbt", + "ops": [ + { + "op": "replace", + "source": "Test", + "target": "BlockEntityTag.Test" + } + ], + "source": "block_entity" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "superbwarfare:blocks/container" +} \ No newline at end of file diff --git a/src/main/java/com/atsuishio/superbwarfare/datagen/ModBlockLootProvider.java b/src/main/java/com/atsuishio/superbwarfare/datagen/ModBlockLootProvider.java index a3f1ea4aa..f5818503d 100644 --- a/src/main/java/com/atsuishio/superbwarfare/datagen/ModBlockLootProvider.java +++ b/src/main/java/com/atsuishio/superbwarfare/datagen/ModBlockLootProvider.java @@ -5,11 +5,18 @@ import com.atsuishio.superbwarfare.init.ModItems; import net.minecraft.data.loot.BlockLootSubProvider; import net.minecraft.world.flag.FeatureFlags; import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.storage.loot.LootPool; +import net.minecraft.world.level.storage.loot.LootTable; +import net.minecraft.world.level.storage.loot.entries.LootItem; +import net.minecraft.world.level.storage.loot.functions.CopyNbtFunction; +import net.minecraft.world.level.storage.loot.providers.nbt.ContextNbtProvider; +import net.minecraft.world.level.storage.loot.providers.number.ConstantValue; import net.minecraftforge.registries.RegistryObject; import java.util.Set; public class ModBlockLootProvider extends BlockLootSubProvider { + public ModBlockLootProvider() { super(Set.of(), FeatureFlags.REGISTRY.allFlags()); } @@ -33,6 +40,10 @@ public class ModBlockLootProvider extends BlockLootSubProvider { this.add(ModBlocks.DEEPSLATE_GALENA_ORE.get(), this.createOreDrop(ModBlocks.DEEPSLATE_GALENA_ORE.get(), ModItems.GALENA.get())); this.add(ModBlocks.DEEPSLATE_SCHEELITE_ORE.get(), this.createOreDrop(ModBlocks.DEEPSLATE_SCHEELITE_ORE.get(), ModItems.SCHEELITE.get())); this.add(ModBlocks.DEEPSLATE_SILVER_ORE.get(), this.createOreDrop(ModBlocks.DEEPSLATE_SILVER_ORE.get(), ModItems.RAW_SILVER.get())); + + this.add(ModBlocks.CONTAINER.get(), LootTable.lootTable().withPool(this.applyExplosionCondition(ModBlocks.CONTAINER.get(), + LootPool.lootPool().setRolls(ConstantValue.exactly(1.0F)).add(LootItem.lootTableItem(ModBlocks.CONTAINER.get())) + .apply(CopyNbtFunction.copyData(ContextNbtProvider.BLOCK_ENTITY).copy("Test", "BlockEntityTag.Test"))))); } @Override diff --git a/src/main/java/com/atsuishio/superbwarfare/datagen/ModBlockStateProvider.java b/src/main/java/com/atsuishio/superbwarfare/datagen/ModBlockStateProvider.java index ed13c679b..63f4012ff 100644 --- a/src/main/java/com/atsuishio/superbwarfare/datagen/ModBlockStateProvider.java +++ b/src/main/java/com/atsuishio/superbwarfare/datagen/ModBlockStateProvider.java @@ -13,6 +13,7 @@ import net.minecraftforge.registries.RegistryObject; @SuppressWarnings({"ConstantConditions", "SameParameterValue"}) public class ModBlockStateProvider extends BlockStateProvider { + public ModBlockStateProvider(PackOutput output, ExistingFileHelper exFileHelper) { super(output, ModUtils.MODID, exFileHelper); } @@ -22,6 +23,7 @@ public class ModBlockStateProvider extends BlockStateProvider { horizontalBlock(ModBlocks.BARBED_WIRE.get(), new ModelFile.UncheckedModelFile(modLoc("block/barbed_wire"))); horizontalBlock(ModBlocks.JUMP_PAD.get(), new ModelFile.UncheckedModelFile(modLoc("block/jump_pad"))); horizontalBlock(ModBlocks.REFORGING_TABLE.get(), new ModelFile.UncheckedModelFile(modLoc("block/reforging_table"))); + horizontalBlock(ModBlocks.CONTAINER.get(), new ModelFile.UncheckedModelFile(modLoc("block/container"))); blockWithItem(ModBlocks.GALENA_ORE); blockWithItem(ModBlocks.DEEPSLATE_GALENA_ORE); diff --git a/src/main/resources/assets/superbwarfare/blockstates/container.json b/src/main/resources/assets/superbwarfare/blockstates/container.json deleted file mode 100644 index adc6fa48d..000000000 --- a/src/main/resources/assets/superbwarfare/blockstates/container.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "variants": { - "facing=north": { - "model": "superbwarfare:custom/container_particle" - }, - "facing=east": { - "model": "superbwarfare:custom/container_particle", - "y": 90 - }, - "facing=south": { - "model": "superbwarfare:custom/container_particle", - "y": 180 - }, - "facing=west": { - "model": "superbwarfare:custom/container_particle", - "y": 270 - } - } -} \ No newline at end of file