测试loottable
This commit is contained in:
parent
20bedc1159
commit
684ff941ed
7 changed files with 85 additions and 21 deletions
|
@ -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
|
98386b2e65b2afb7cf5b0cabf6a7b0f062c1e640 data/superbwarfare/loot_tables/blocks/barbed_wire.json
|
||||||
811e69929a14e6736015849c220100bb58d914c9 data/superbwarfare/loot_tables/blocks/cemented_carbide_block.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
|
dabbe17417c944567dc6dfcdcba32b8377c24f69 data/superbwarfare/loot_tables/blocks/deepslate_galena_ore.json
|
||||||
a7c1af3e194d35a64544902468bd964f45f2f9ef data/superbwarfare/loot_tables/blocks/deepslate_scheelite_ore.json
|
a7c1af3e194d35a64544902468bd964f45f2f9ef data/superbwarfare/loot_tables/blocks/deepslate_scheelite_ore.json
|
||||||
76fa64ff714374c1655f4d11776fda132287a014 data/superbwarfare/loot_tables/blocks/deepslate_silver_ore.json
|
76fa64ff714374c1655f4d11776fda132287a014 data/superbwarfare/loot_tables/blocks/deepslate_silver_ore.json
|
||||||
|
|
|
@ -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
|
f3b778ca36ca78c3d80f1b778078897f59bdb0c5 assets/superbwarfare/blockstates/barbed_wire.json
|
||||||
0cfad4f53a8047c402edf978d0c8cf6269f063cb assets/superbwarfare/blockstates/cemented_carbide_block.json
|
0cfad4f53a8047c402edf978d0c8cf6269f063cb assets/superbwarfare/blockstates/cemented_carbide_block.json
|
||||||
|
921500c7cf6c92da0e656486126068bbf5e30348 assets/superbwarfare/blockstates/container.json
|
||||||
62fb0464ca59ac21693639c406e08730427d87b3 assets/superbwarfare/blockstates/deepslate_galena_ore.json
|
62fb0464ca59ac21693639c406e08730427d87b3 assets/superbwarfare/blockstates/deepslate_galena_ore.json
|
||||||
b8b7cdea6c8626c74d652d0b300b3afe19c60674 assets/superbwarfare/blockstates/deepslate_scheelite_ore.json
|
b8b7cdea6c8626c74d652d0b300b3afe19c60674 assets/superbwarfare/blockstates/deepslate_scheelite_ore.json
|
||||||
2b24b703de4821bebe71ba53043e6a1a23d71c17 assets/superbwarfare/blockstates/deepslate_silver_ore.json
|
2b24b703de4821bebe71ba53043e6a1a23d71c17 assets/superbwarfare/blockstates/deepslate_silver_ore.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
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -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"
|
||||||
|
}
|
|
@ -5,11 +5,18 @@ import com.atsuishio.superbwarfare.init.ModItems;
|
||||||
import net.minecraft.data.loot.BlockLootSubProvider;
|
import net.minecraft.data.loot.BlockLootSubProvider;
|
||||||
import net.minecraft.world.flag.FeatureFlags;
|
import net.minecraft.world.flag.FeatureFlags;
|
||||||
import net.minecraft.world.level.block.Block;
|
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 net.minecraftforge.registries.RegistryObject;
|
||||||
|
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
public class ModBlockLootProvider extends BlockLootSubProvider {
|
public class ModBlockLootProvider extends BlockLootSubProvider {
|
||||||
|
|
||||||
public ModBlockLootProvider() {
|
public ModBlockLootProvider() {
|
||||||
super(Set.of(), FeatureFlags.REGISTRY.allFlags());
|
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_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_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.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
|
@Override
|
||||||
|
|
|
@ -13,6 +13,7 @@ import net.minecraftforge.registries.RegistryObject;
|
||||||
|
|
||||||
@SuppressWarnings({"ConstantConditions", "SameParameterValue"})
|
@SuppressWarnings({"ConstantConditions", "SameParameterValue"})
|
||||||
public class ModBlockStateProvider extends BlockStateProvider {
|
public class ModBlockStateProvider extends BlockStateProvider {
|
||||||
|
|
||||||
public ModBlockStateProvider(PackOutput output, ExistingFileHelper exFileHelper) {
|
public ModBlockStateProvider(PackOutput output, ExistingFileHelper exFileHelper) {
|
||||||
super(output, ModUtils.MODID, 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.BARBED_WIRE.get(), new ModelFile.UncheckedModelFile(modLoc("block/barbed_wire")));
|
||||||
horizontalBlock(ModBlocks.JUMP_PAD.get(), new ModelFile.UncheckedModelFile(modLoc("block/jump_pad")));
|
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.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.GALENA_ORE);
|
||||||
blockWithItem(ModBlocks.DEEPSLATE_GALENA_ORE);
|
blockWithItem(ModBlocks.DEEPSLATE_GALENA_ORE);
|
||||||
|
|
|
@ -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
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
Loading…
Add table
Reference in a new issue