diff --git a/gradle.properties b/gradle.properties index dd0ec3a..3633c4e 100644 --- a/gradle.properties +++ b/gradle.properties @@ -9,8 +9,8 @@ org.gradle.jvmargs=-Xmx1G # Mod Properties mod_version = 1.0.0 - maven_group = net.testmod - archives_base_name = testmod + maven_group = com.mineralchance + archives_base_name = mineralchance # Dependencies # currently not on the main fabric site, check on the maven: https://maven.fabricmc.net/net/fabricmc/fabric-api/fabric-api diff --git a/src/main/java/com/mineralchance/MineralChance.java b/src/main/java/com/mineralchance/MineralChance.java new file mode 100644 index 0000000..e9d8f98 --- /dev/null +++ b/src/main/java/com/mineralchance/MineralChance.java @@ -0,0 +1,48 @@ +package com.mineralchance; + + +import net.fabricmc.api.ModInitializer; +import net.fabricmc.fabric.api.loot.v1.FabricLootPoolBuilder; +import net.fabricmc.fabric.api.loot.v1.event.LootTableLoadingCallback; +import net.minecraft.item.Items; +import net.minecraft.loot.BinomialLootTableRange; +import net.minecraft.loot.entry.ItemEntry; +import net.minecraft.util.Identifier; + +public class MineralChance implements ModInitializer { + + public static final Identifier STONE_LOOT_ID = new Identifier("minecraft", "blocks/stone"); + public static final Identifier NETHERRACK_LOOT_ID = new Identifier("minecraft", "blocks/netherrack"); + public static final float lootChance = 0.02f; + + @Override + public void onInitialize() { + LootTableLoadingCallback.EVENT.register((resourceManager, lootManager, id, supplier, setter) -> { + if (STONE_LOOT_ID.equals(id)) { + FabricLootPoolBuilder poolBuilder = FabricLootPoolBuilder.builder(); + + poolBuilder.rolls(BinomialLootTableRange.create(1, lootChance)).with(ItemEntry.builder(Items.DIAMOND)); + poolBuilder.rolls(BinomialLootTableRange.create(1, lootChance)).with(ItemEntry.builder(Items.REDSTONE)); + poolBuilder.rolls(BinomialLootTableRange.create(1, lootChance)).with(ItemEntry.builder(Items.LAPIS_LAZULI)); + poolBuilder.rolls(BinomialLootTableRange.create(1, lootChance)).with(ItemEntry.builder(Items.COAL)); + poolBuilder.rolls(BinomialLootTableRange.create(1, lootChance)).with(ItemEntry.builder(Items.EMERALD)); + + + supplier.pool(poolBuilder); + } + }); + + LootTableLoadingCallback.EVENT.register((resourceManager, lootManager, id, supplier, settler) -> { + if (NETHERRACK_LOOT_ID.equals(id)) + { + FabricLootPoolBuilder poolBuilder = FabricLootPoolBuilder.builder(); + poolBuilder.rolls(BinomialLootTableRange.create(1, lootChance)).with(ItemEntry.builder(Items.GOLD_NUGGET)); + poolBuilder.rolls(BinomialLootTableRange.create(1, lootChance)).with(ItemEntry.builder(Items.QUARTZ)); + poolBuilder.rolls(BinomialLootTableRange.create(1, lootChance)).with(ItemEntry.builder(Items.NETHERITE_SCRAP)); + + supplier.pool(poolBuilder); + } + }); + } + +} diff --git a/src/main/java/net/testmod/TestMod.java b/src/main/java/net/testmod/TestMod.java deleted file mode 100644 index 6e9893d..0000000 --- a/src/main/java/net/testmod/TestMod.java +++ /dev/null @@ -1,13 +0,0 @@ -package net.testmod; - -import net.fabricmc.api.ModInitializer; - -public class TestMod implements ModInitializer { - - @Override - public void onInitialize() - { - - } - -} diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json index a9e5a1c..5bcf22e 100644 --- a/src/main/resources/fabric.mod.json +++ b/src/main/resources/fabric.mod.json @@ -19,7 +19,7 @@ "environment": "*", "entrypoints": { "main": [ - "net.testmod.TestMod" + "com.mineralchance.MineralChance" ] }, "mixins": [