2.1.0 Fixes 2
This commit is contained in:
+36
-17
@@ -1,14 +1,10 @@
|
||||
package com.acethewildfire.acesbs.util;
|
||||
|
||||
import com.acethewildfire.acesbs.AcesBS;
|
||||
import com.acethewildfire.acesbs.AcesBSClient;
|
||||
import com.acethewildfire.acesbs.item.AshenSteelItems;
|
||||
import com.acethewildfire.acesbs.item.ModItems;
|
||||
import com.acethewildfire.acesbs.item.PrismaSteelItems;
|
||||
import net.fabricmc.fabric.api.loot.v3.LootTableEvents;
|
||||
import net.fabricmc.fabric.api.tag.convention.v2.ConventionalBlockTags;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.BlockState;
|
||||
import net.minecraft.block.Blocks;
|
||||
import net.minecraft.enchantment.Enchantment;
|
||||
import net.minecraft.enchantment.Enchantments;
|
||||
import net.minecraft.item.Item;
|
||||
@@ -16,36 +12,27 @@ import net.minecraft.item.ItemConvertible;
|
||||
import net.minecraft.item.Items;
|
||||
import net.minecraft.loot.LootPool;
|
||||
import net.minecraft.loot.LootTable;
|
||||
import net.minecraft.loot.LootTables;
|
||||
import net.minecraft.loot.condition.InvertedLootCondition;
|
||||
import net.minecraft.loot.condition.LocationCheckLootCondition;
|
||||
import net.minecraft.loot.condition.LootCondition;
|
||||
import net.minecraft.loot.condition.MatchToolLootCondition;
|
||||
import net.minecraft.loot.condition.RandomChanceLootCondition;
|
||||
import net.minecraft.loot.entry.ItemEntry;
|
||||
import net.minecraft.loot.function.ApplyBonusLootFunction;
|
||||
import net.minecraft.loot.function.ExplosionDecayLootFunction;
|
||||
import net.minecraft.loot.provider.number.UniformLootNumberProvider;
|
||||
import net.minecraft.predicate.BlockPredicate;
|
||||
import net.minecraft.predicate.NumberRange;
|
||||
import net.minecraft.predicate.component.ComponentPredicateTypes;
|
||||
import net.minecraft.predicate.component.ComponentsPredicate;
|
||||
import net.minecraft.predicate.entity.LocationPredicate;
|
||||
import net.minecraft.predicate.item.EnchantmentPredicate;
|
||||
import net.minecraft.predicate.item.EnchantmentsPredicate;
|
||||
import net.minecraft.predicate.item.ItemPredicate;
|
||||
import net.minecraft.registry.*;
|
||||
import net.minecraft.registry.entry.RegistryEntry;
|
||||
import net.minecraft.registry.entry.RegistryEntryList;
|
||||
import net.minecraft.registry.tag.TagKey;
|
||||
import net.minecraft.util.Identifier;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
import static com.acethewildfire.acesbs.util.ModTags.Blocks.MC_ORES;
|
||||
import static net.fabricmc.fabric.api.tag.convention.v2.ConventionalBlockTags.ORES;
|
||||
|
||||
public class UpdateRecipies {
|
||||
public class ModLootTableModifier {
|
||||
public static LootCondition.Builder specialToolCondition(RegistryEntryLookup<Item> lookup, ItemConvertible... tools) {
|
||||
return MatchToolLootCondition.builder(
|
||||
ItemPredicate.Builder.create()
|
||||
@@ -104,4 +91,36 @@ public class UpdateRecipies {
|
||||
tableBuilder.pool(extraPool);
|
||||
});
|
||||
}
|
||||
|
||||
public static void updateChests(){
|
||||
Identifier NETHER_FORTRESS_CHEST =
|
||||
Identifier.of("minecraft", "chests/nether_bridge");
|
||||
|
||||
LootTableEvents.MODIFY.register((key, tableBuilder, source, wrapperLookup) -> {
|
||||
if (NETHER_FORTRESS_CHEST.equals(key.getValue())) {
|
||||
|
||||
LootPool.Builder pool = LootPool.builder()
|
||||
.with(ItemEntry.builder(AshenSteelItems.ASHEN_SMITHING_TEMPLATE))
|
||||
.conditionally(RandomChanceLootCondition.builder(0.1f));
|
||||
|
||||
tableBuilder.pool(pool);
|
||||
}
|
||||
});
|
||||
|
||||
LootTableEvents.MODIFY.register((key, tableBuilder, source, wrapperLookup) -> {
|
||||
if (key.equals(LootTables.HERO_OF_THE_VILLAGE_ARMORER_GIFT_GAMEPLAY)) {
|
||||
|
||||
LootPool.Builder pool = LootPool.builder()
|
||||
.with(ItemEntry.builder(PrismaSteelItems.PRISMA_SMITHING_TEMPLATE))
|
||||
.conditionally(RandomChanceLootCondition.builder(0.1f));
|
||||
|
||||
tableBuilder.pool(pool);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public static void updateAll(){
|
||||
updateVanilla();
|
||||
updateChests();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user