mirror of
https://github.com/Ellpeck/ActuallyAdditions.git
synced 2024-11-25 00:18:34 +01:00
Added some more data gen to the ore and crystal cluster blocks
It's not perfect as fortune doesn't effect it.
This commit is contained in:
parent
1c97d71946
commit
6baac03f6d
9 changed files with 417 additions and 13 deletions
|
@ -631,6 +631,12 @@ e0629b02f20d4767a3e97f189e8b7631a0d008cb data/actuallyadditions/loot_tables/bloc
|
|||
28198fbeacb8c322f3a346cb565d08b0494707a5 data/actuallyadditions/loot_tables/blocks/coffee_machine_block.json
|
||||
594b68290b3fdb1623bce0d78f292329c4e0549e data/actuallyadditions/loot_tables/blocks/crusher_block.json
|
||||
94ed5804eaeaeb2fe016b88f3f18abcb9a0e42a9 data/actuallyadditions/loot_tables/blocks/crusher_double_block.json
|
||||
b128719ea6a3176dd4d1d30e31293b6b7b1d5a7b data/actuallyadditions/loot_tables/blocks/crystal_cluster_diamatine_block.json
|
||||
e3e94acccbd092d79799f234aa1879794a5a7307 data/actuallyadditions/loot_tables/blocks/crystal_cluster_emeradic_block.json
|
||||
b727c4d64e5fe625567455a3d44eb316fec95ea6 data/actuallyadditions/loot_tables/blocks/crystal_cluster_enori_block.json
|
||||
ce26fb4414f5f206b236789bb83675d995d95fcc data/actuallyadditions/loot_tables/blocks/crystal_cluster_palis_block.json
|
||||
7029332fccb22d21c1b40075861ec8ad26a5301f data/actuallyadditions/loot_tables/blocks/crystal_cluster_restonia_block.json
|
||||
8c69a610104ef1f773533573a9777334c0fe1472 data/actuallyadditions/loot_tables/blocks/crystal_cluster_void_block.json
|
||||
07466c216f63eda8003edc7e9160f6b5310d5ca4 data/actuallyadditions/loot_tables/blocks/crystal_diamatine_block.json
|
||||
c415e78fec5eefef316ede25fdbeccf48b7b8271 data/actuallyadditions/loot_tables/blocks/crystal_diamatine_empowered_block.json
|
||||
39e8c1f3951fbe6ac750cac348a157c2c0ec010d data/actuallyadditions/loot_tables/blocks/crystal_emeradic_block.json
|
||||
|
@ -696,6 +702,7 @@ ef15618a97a225579537d405ce09e46c4511ca3c data/actuallyadditions/loot_tables/bloc
|
|||
c499ca40026612cf3e584deadc44b19fa92760b9 data/actuallyadditions/loot_tables/blocks/leaf_generator_block.json
|
||||
e893ec3bfe12c6a5621f0d4ae4ce159b64615bb2 data/actuallyadditions/loot_tables/blocks/miner_block.json
|
||||
7afdd219e8bb504319602d5872ef8ce03cd7133a data/actuallyadditions/loot_tables/blocks/oil_generator_block.json
|
||||
47d4ee1751937bf282c6b9c6befc6dd146ec5cdf data/actuallyadditions/loot_tables/blocks/ore_black_quartz_block.json
|
||||
0319f141c88b3c86724b099780904e42e10dada4 data/actuallyadditions/loot_tables/blocks/phantom_booster_block.json
|
||||
5cdb345ccd91445542e7d638c215a104c397fe8c data/actuallyadditions/loot_tables/blocks/phantom_breaker_block.json
|
||||
ad1cd45abb06291112610b7e74001895682a7d93 data/actuallyadditions/loot_tables/blocks/phantom_energyface_block.json
|
||||
|
|
|
@ -0,0 +1,56 @@
|
|||
{
|
||||
"type": "minecraft:block",
|
||||
"pools": [
|
||||
{
|
||||
"rolls": 1,
|
||||
"entries": [
|
||||
{
|
||||
"type": "minecraft:alternatives",
|
||||
"children": [
|
||||
{
|
||||
"type": "minecraft:item",
|
||||
"conditions": [
|
||||
{
|
||||
"condition": "minecraft:match_tool",
|
||||
"predicate": {
|
||||
"enchantments": [
|
||||
{
|
||||
"enchantment": "minecraft:silk_touch",
|
||||
"levels": {
|
||||
"min": 1
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
],
|
||||
"name": "actuallyadditions:crystal_cluster_diamatine_block"
|
||||
},
|
||||
{
|
||||
"type": "minecraft:item",
|
||||
"functions": [
|
||||
{
|
||||
"function": "minecraft:apply_bonus",
|
||||
"enchantment": "minecraft:fortune",
|
||||
"formula": "minecraft:ore_drops"
|
||||
},
|
||||
{
|
||||
"function": "minecraft:set_count",
|
||||
"count": {
|
||||
"min": 2.0,
|
||||
"max": 8.0,
|
||||
"type": "minecraft:uniform"
|
||||
}
|
||||
},
|
||||
{
|
||||
"function": "minecraft:explosion_decay"
|
||||
}
|
||||
],
|
||||
"name": "actuallyadditions:light_blue_crystal_shard"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -0,0 +1,56 @@
|
|||
{
|
||||
"type": "minecraft:block",
|
||||
"pools": [
|
||||
{
|
||||
"rolls": 1,
|
||||
"entries": [
|
||||
{
|
||||
"type": "minecraft:alternatives",
|
||||
"children": [
|
||||
{
|
||||
"type": "minecraft:item",
|
||||
"conditions": [
|
||||
{
|
||||
"condition": "minecraft:match_tool",
|
||||
"predicate": {
|
||||
"enchantments": [
|
||||
{
|
||||
"enchantment": "minecraft:silk_touch",
|
||||
"levels": {
|
||||
"min": 1
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
],
|
||||
"name": "actuallyadditions:crystal_cluster_emeradic_block"
|
||||
},
|
||||
{
|
||||
"type": "minecraft:item",
|
||||
"functions": [
|
||||
{
|
||||
"function": "minecraft:apply_bonus",
|
||||
"enchantment": "minecraft:fortune",
|
||||
"formula": "minecraft:ore_drops"
|
||||
},
|
||||
{
|
||||
"function": "minecraft:set_count",
|
||||
"count": {
|
||||
"min": 2.0,
|
||||
"max": 8.0,
|
||||
"type": "minecraft:uniform"
|
||||
}
|
||||
},
|
||||
{
|
||||
"function": "minecraft:explosion_decay"
|
||||
}
|
||||
],
|
||||
"name": "actuallyadditions:green_crystal_shard"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -0,0 +1,56 @@
|
|||
{
|
||||
"type": "minecraft:block",
|
||||
"pools": [
|
||||
{
|
||||
"rolls": 1,
|
||||
"entries": [
|
||||
{
|
||||
"type": "minecraft:alternatives",
|
||||
"children": [
|
||||
{
|
||||
"type": "minecraft:item",
|
||||
"conditions": [
|
||||
{
|
||||
"condition": "minecraft:match_tool",
|
||||
"predicate": {
|
||||
"enchantments": [
|
||||
{
|
||||
"enchantment": "minecraft:silk_touch",
|
||||
"levels": {
|
||||
"min": 1
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
],
|
||||
"name": "actuallyadditions:crystal_cluster_enori_block"
|
||||
},
|
||||
{
|
||||
"type": "minecraft:item",
|
||||
"functions": [
|
||||
{
|
||||
"function": "minecraft:apply_bonus",
|
||||
"enchantment": "minecraft:fortune",
|
||||
"formula": "minecraft:ore_drops"
|
||||
},
|
||||
{
|
||||
"function": "minecraft:set_count",
|
||||
"count": {
|
||||
"min": 2.0,
|
||||
"max": 8.0,
|
||||
"type": "minecraft:uniform"
|
||||
}
|
||||
},
|
||||
{
|
||||
"function": "minecraft:explosion_decay"
|
||||
}
|
||||
],
|
||||
"name": "actuallyadditions:white_crystal_shard"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -0,0 +1,56 @@
|
|||
{
|
||||
"type": "minecraft:block",
|
||||
"pools": [
|
||||
{
|
||||
"rolls": 1,
|
||||
"entries": [
|
||||
{
|
||||
"type": "minecraft:alternatives",
|
||||
"children": [
|
||||
{
|
||||
"type": "minecraft:item",
|
||||
"conditions": [
|
||||
{
|
||||
"condition": "minecraft:match_tool",
|
||||
"predicate": {
|
||||
"enchantments": [
|
||||
{
|
||||
"enchantment": "minecraft:silk_touch",
|
||||
"levels": {
|
||||
"min": 1
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
],
|
||||
"name": "actuallyadditions:crystal_cluster_palis_block"
|
||||
},
|
||||
{
|
||||
"type": "minecraft:item",
|
||||
"functions": [
|
||||
{
|
||||
"function": "minecraft:apply_bonus",
|
||||
"enchantment": "minecraft:fortune",
|
||||
"formula": "minecraft:ore_drops"
|
||||
},
|
||||
{
|
||||
"function": "minecraft:set_count",
|
||||
"count": {
|
||||
"min": 2.0,
|
||||
"max": 8.0,
|
||||
"type": "minecraft:uniform"
|
||||
}
|
||||
},
|
||||
{
|
||||
"function": "minecraft:explosion_decay"
|
||||
}
|
||||
],
|
||||
"name": "actuallyadditions:blue_crystal_shard"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -0,0 +1,56 @@
|
|||
{
|
||||
"type": "minecraft:block",
|
||||
"pools": [
|
||||
{
|
||||
"rolls": 1,
|
||||
"entries": [
|
||||
{
|
||||
"type": "minecraft:alternatives",
|
||||
"children": [
|
||||
{
|
||||
"type": "minecraft:item",
|
||||
"conditions": [
|
||||
{
|
||||
"condition": "minecraft:match_tool",
|
||||
"predicate": {
|
||||
"enchantments": [
|
||||
{
|
||||
"enchantment": "minecraft:silk_touch",
|
||||
"levels": {
|
||||
"min": 1
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
],
|
||||
"name": "actuallyadditions:crystal_cluster_restonia_block"
|
||||
},
|
||||
{
|
||||
"type": "minecraft:item",
|
||||
"functions": [
|
||||
{
|
||||
"function": "minecraft:apply_bonus",
|
||||
"enchantment": "minecraft:fortune",
|
||||
"formula": "minecraft:ore_drops"
|
||||
},
|
||||
{
|
||||
"function": "minecraft:set_count",
|
||||
"count": {
|
||||
"min": 2.0,
|
||||
"max": 8.0,
|
||||
"type": "minecraft:uniform"
|
||||
}
|
||||
},
|
||||
{
|
||||
"function": "minecraft:explosion_decay"
|
||||
}
|
||||
],
|
||||
"name": "actuallyadditions:red_crystal_shard"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -0,0 +1,56 @@
|
|||
{
|
||||
"type": "minecraft:block",
|
||||
"pools": [
|
||||
{
|
||||
"rolls": 1,
|
||||
"entries": [
|
||||
{
|
||||
"type": "minecraft:alternatives",
|
||||
"children": [
|
||||
{
|
||||
"type": "minecraft:item",
|
||||
"conditions": [
|
||||
{
|
||||
"condition": "minecraft:match_tool",
|
||||
"predicate": {
|
||||
"enchantments": [
|
||||
{
|
||||
"enchantment": "minecraft:silk_touch",
|
||||
"levels": {
|
||||
"min": 1
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
],
|
||||
"name": "actuallyadditions:crystal_cluster_void_block"
|
||||
},
|
||||
{
|
||||
"type": "minecraft:item",
|
||||
"functions": [
|
||||
{
|
||||
"function": "minecraft:apply_bonus",
|
||||
"enchantment": "minecraft:fortune",
|
||||
"formula": "minecraft:ore_drops"
|
||||
},
|
||||
{
|
||||
"function": "minecraft:set_count",
|
||||
"count": {
|
||||
"min": 2.0,
|
||||
"max": 8.0,
|
||||
"type": "minecraft:uniform"
|
||||
}
|
||||
},
|
||||
{
|
||||
"function": "minecraft:explosion_decay"
|
||||
}
|
||||
],
|
||||
"name": "actuallyadditions:black_crystal_shard"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -0,0 +1,48 @@
|
|||
{
|
||||
"type": "minecraft:block",
|
||||
"pools": [
|
||||
{
|
||||
"rolls": 1,
|
||||
"entries": [
|
||||
{
|
||||
"type": "minecraft:alternatives",
|
||||
"children": [
|
||||
{
|
||||
"type": "minecraft:item",
|
||||
"conditions": [
|
||||
{
|
||||
"condition": "minecraft:match_tool",
|
||||
"predicate": {
|
||||
"enchantments": [
|
||||
{
|
||||
"enchantment": "minecraft:silk_touch",
|
||||
"levels": {
|
||||
"min": 1
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
],
|
||||
"name": "actuallyadditions:ore_black_quartz_block"
|
||||
},
|
||||
{
|
||||
"type": "minecraft:item",
|
||||
"functions": [
|
||||
{
|
||||
"function": "minecraft:apply_bonus",
|
||||
"enchantment": "minecraft:fortune",
|
||||
"formula": "minecraft:ore_drops"
|
||||
},
|
||||
{
|
||||
"function": "minecraft:explosion_decay"
|
||||
}
|
||||
],
|
||||
"name": "actuallyadditions:black_quartz"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -4,11 +4,16 @@ import com.google.common.collect.ImmutableList;
|
|||
import com.google.common.collect.ImmutableSet;
|
||||
import com.mojang.datafixers.util.Pair;
|
||||
import de.ellpeck.actuallyadditions.common.blocks.ActuallyBlocks;
|
||||
import de.ellpeck.actuallyadditions.common.items.ActuallyItems;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.data.DataGenerator;
|
||||
import net.minecraft.data.LootTableProvider;
|
||||
import net.minecraft.data.loot.BlockLootTables;
|
||||
import net.minecraft.enchantment.Enchantments;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.loot.*;
|
||||
import net.minecraft.loot.functions.ApplyBonus;
|
||||
import net.minecraft.loot.functions.SetCount;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraftforge.fml.RegistryObject;
|
||||
|
||||
|
@ -150,25 +155,33 @@ public class GeneratorLoot extends LootTableProvider {
|
|||
this.registerDropSelfLootTable(ActuallyBlocks.CRYSTAL_EMPOWERED_VOID.get());
|
||||
this.registerDropSelfLootTable(ActuallyBlocks.CRYSTAL_EMPOWERED_EMERADIC.get());
|
||||
|
||||
// Special
|
||||
// CRYSTAL_CLUSTER_RESTONIA
|
||||
// CRYSTAL_CLUSTER_PALIS
|
||||
// CRYSTAL_CLUSTER_DIAMATINE
|
||||
// CRYSTAL_CLUSTER_VOID
|
||||
// CRYSTAL_CLUSTER_EMERADIC
|
||||
// CRYSTAL_CLUSTER_ENORI
|
||||
// ORE_BLACK_QUARTZ
|
||||
this.registerCrystal(ActuallyBlocks.CRYSTAL_CLUSTER_RESTONIA, ActuallyItems.RED_CRYSTAL_SHARD);
|
||||
this.registerCrystal(ActuallyBlocks.CRYSTAL_CLUSTER_PALIS, ActuallyItems.BLUE_CRYSTAL_SHARD);
|
||||
this.registerCrystal(ActuallyBlocks.CRYSTAL_CLUSTER_DIAMATINE, ActuallyItems.LIGHT_BLUE_CRYSTAL_SHARD);
|
||||
this.registerCrystal(ActuallyBlocks.CRYSTAL_CLUSTER_VOID, ActuallyItems.BLACK_CRYSTAL_SHARD);
|
||||
this.registerCrystal(ActuallyBlocks.CRYSTAL_CLUSTER_EMERADIC, ActuallyItems.GREEN_CRYSTAL_SHARD);
|
||||
this.registerCrystal(ActuallyBlocks.CRYSTAL_CLUSTER_ENORI, ActuallyItems.WHITE_CRYSTAL_SHARD);
|
||||
|
||||
this.registerLootTable(ActuallyBlocks.ORE_BLACK_QUARTZ.get(), ore -> droppingItemWithFortune(ore, ActuallyItems.BLACK_QUARTS.get()));
|
||||
}
|
||||
|
||||
// This isn't quite right :cry: fortune doesn't change it
|
||||
private void registerCrystal(RegistryObject<Block> crystalCluster, RegistryObject<Item> crystalShard) {
|
||||
this.registerLootTable(crystalCluster.get(), (crystal) ->
|
||||
droppingWithSilkTouch(crystal,
|
||||
withExplosionDecay(crystal, ItemLootEntry.builder(crystalShard.get())
|
||||
.acceptFunction(ApplyBonus.oreDrops(Enchantments.FORTUNE))
|
||||
.acceptFunction(SetCount.builder(RandomValueRange.of(2f, 8f)))
|
||||
)
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
@Nonnull
|
||||
@Override
|
||||
protected Iterable<Block> getKnownBlocks() {
|
||||
final Set<Block> ignoreForNow = ImmutableSet.of(
|
||||
ActuallyBlocks.RICE.get(), ActuallyBlocks.CANOLA.get(), ActuallyBlocks.FLAX.get(),
|
||||
ActuallyBlocks.COFFEE.get(), ActuallyBlocks.CRYSTAL_CLUSTER_RESTONIA.get(),
|
||||
ActuallyBlocks.CRYSTAL_CLUSTER_PALIS.get(), ActuallyBlocks.CRYSTAL_CLUSTER_DIAMATINE.get(),
|
||||
ActuallyBlocks.CRYSTAL_CLUSTER_VOID.get(), ActuallyBlocks.CRYSTAL_CLUSTER_EMERADIC.get(),
|
||||
ActuallyBlocks.CRYSTAL_CLUSTER_ENORI.get(), ActuallyBlocks.ORE_BLACK_QUARTZ.get()
|
||||
ActuallyBlocks.RICE.get(), ActuallyBlocks.CANOLA.get(), ActuallyBlocks.FLAX.get(), ActuallyBlocks.COFFEE.get()
|
||||
);
|
||||
|
||||
return ActuallyBlocks.BLOCKS.getEntries().stream().map(RegistryObject::get).filter(e -> !ignoreForNow.contains(e)).collect(Collectors.toList());
|
||||
|
|
Loading…
Reference in a new issue