From 455f8f9f86124d8019a95c5ecc45750280333ef6 Mon Sep 17 00:00:00 2001 From: Jottyfan Date: Tue, 23 Dec 2025 15:35:39 +0100 Subject: [PATCH] added turquoise ore --- .../java/de/jottyfan/minecraft/Quickly.java | 11 ++++-- .../de/jottyfan/minecraft/QuicklyClient.java | 2 -- .../block/BlockOreDeepslateTurquoise.java | 27 ++++++++++++++ .../minecraft/block/BlockOreTurquoise.java | 28 +++++++++++++++ .../minecraft/block/QuicklyBlocks.java | 17 ++++++++- .../minecraft/feature/QuicklyFeatures.java | 33 ++++++++++++++++++ .../jottyfan/minecraft/item/QuicklyItems.java | 18 +++++++++- .../quickly/blockstates/blockturquoise.json | 7 ++++ .../blockstates/oredeepslateturquoise.json | 7 ++++ .../quickly/blockstates/oreturquoise.json | 7 ++++ .../assets/quickly/items/blockturquoise.json | 6 ++++ .../quickly/items/oredeepslateturquoise.json | 6 ++++ .../assets/quickly/items/oreturquoise.json | 6 ++++ .../assets/quickly/items/rawturquoise.json | 6 ++++ .../assets/quickly/items/turquoiseingot.json | 6 ++++ .../resources/assets/quickly/lang/de_de.json | 7 +++- .../resources/assets/quickly/lang/en_us.json | 7 +++- .../quickly/models/block/blockturquoise.json | 6 ++++ .../models/block/oredeepslateturquoise.json | 6 ++++ .../quickly/models/block/oreturquoise.json | 6 ++++ .../quickly/models/item/rawturquoise.json | 6 ++++ .../quickly/models/item/turquoiseingot.json | 6 ++++ .../quickly/textures/block/blockturquoise.png | Bin 0 -> 621 bytes .../textures/block/oredeepslateturquoise.png | Bin 0 -> 4827 bytes .../quickly/textures/block/oreturquoise.png | Bin 0 -> 4806 bytes .../quickly/textures/item/rawturquoise.png | Bin 0 -> 4921 bytes .../quickly/textures/item/turquoiseingot.png | Bin 0 -> 4488 bytes .../tags/block/mineable/pickaxe.json | 7 ++++ .../recipe/blasting_turquoiseingot.json | 7 ++++ .../quickly/recipe/shaped_blockturquoise.json | 15 ++++++++ .../quickly/recipe/shapeless_turquoise.json | 10 ++++++ .../quickly/tag/items/ores/oreturquoise.json | 6 ++++ .../quickly/tags/block/mineable/pickaxe.json | 7 ++++ .../configured_feature/oreturquoise.json | 27 ++++++++++++++ .../worldgen/placed_feature/oreturquoise.json | 27 ++++++++++++++ 35 files changed, 329 insertions(+), 8 deletions(-) create mode 100644 src/main/java/de/jottyfan/minecraft/block/BlockOreDeepslateTurquoise.java create mode 100644 src/main/java/de/jottyfan/minecraft/block/BlockOreTurquoise.java create mode 100644 src/main/java/de/jottyfan/minecraft/feature/QuicklyFeatures.java create mode 100644 src/main/resources/assets/quickly/blockstates/blockturquoise.json create mode 100644 src/main/resources/assets/quickly/blockstates/oredeepslateturquoise.json create mode 100644 src/main/resources/assets/quickly/blockstates/oreturquoise.json create mode 100644 src/main/resources/assets/quickly/items/blockturquoise.json create mode 100644 src/main/resources/assets/quickly/items/oredeepslateturquoise.json create mode 100644 src/main/resources/assets/quickly/items/oreturquoise.json create mode 100644 src/main/resources/assets/quickly/items/rawturquoise.json create mode 100644 src/main/resources/assets/quickly/items/turquoiseingot.json create mode 100644 src/main/resources/assets/quickly/models/block/blockturquoise.json create mode 100644 src/main/resources/assets/quickly/models/block/oredeepslateturquoise.json create mode 100644 src/main/resources/assets/quickly/models/block/oreturquoise.json create mode 100644 src/main/resources/assets/quickly/models/item/rawturquoise.json create mode 100644 src/main/resources/assets/quickly/models/item/turquoiseingot.json create mode 100644 src/main/resources/assets/quickly/textures/block/blockturquoise.png create mode 100644 src/main/resources/assets/quickly/textures/block/oredeepslateturquoise.png create mode 100644 src/main/resources/assets/quickly/textures/block/oreturquoise.png create mode 100644 src/main/resources/assets/quickly/textures/item/rawturquoise.png create mode 100644 src/main/resources/assets/quickly/textures/item/turquoiseingot.png create mode 100644 src/main/resources/data/minecraft/tags/block/mineable/pickaxe.json create mode 100644 src/main/resources/data/quickly/recipe/blasting_turquoiseingot.json create mode 100644 src/main/resources/data/quickly/recipe/shaped_blockturquoise.json create mode 100644 src/main/resources/data/quickly/recipe/shapeless_turquoise.json create mode 100644 src/main/resources/data/quickly/tag/items/ores/oreturquoise.json create mode 100644 src/main/resources/data/quickly/tags/block/mineable/pickaxe.json create mode 100644 src/main/resources/data/quickly/worldgen/configured_feature/oreturquoise.json create mode 100644 src/main/resources/data/quickly/worldgen/placed_feature/oreturquoise.json diff --git a/src/main/java/de/jottyfan/minecraft/Quickly.java b/src/main/java/de/jottyfan/minecraft/Quickly.java index d5afcc1..eded03c 100644 --- a/src/main/java/de/jottyfan/minecraft/Quickly.java +++ b/src/main/java/de/jottyfan/minecraft/Quickly.java @@ -1,10 +1,13 @@ package de.jottyfan.minecraft; -import net.fabricmc.api.ModInitializer; - import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; +import de.jottyfan.minecraft.block.QuicklyBlocks; +import de.jottyfan.minecraft.feature.QuicklyFeatures; +import de.jottyfan.minecraft.item.QuicklyItems; +import net.fabricmc.api.ModInitializer; + /** * * @author jotty @@ -18,5 +21,9 @@ public class Quickly implements ModInitializer { @Override public void onInitialize() { LOGGER.info("loading {}", MOD_ID); + + QuicklyItems.registerModItems(); + QuicklyBlocks.registerModBlocks(); + QuicklyFeatures.registerFeatures(); } } \ No newline at end of file diff --git a/src/main/java/de/jottyfan/minecraft/QuicklyClient.java b/src/main/java/de/jottyfan/minecraft/QuicklyClient.java index 37a2d4f..dcf5c47 100644 --- a/src/main/java/de/jottyfan/minecraft/QuicklyClient.java +++ b/src/main/java/de/jottyfan/minecraft/QuicklyClient.java @@ -13,7 +13,5 @@ public class QuicklyClient implements ClientModInitializer { @Override public void onInitializeClient() { - QuicklyItems.registerModItems(); - QuicklyBlocks.registerModBlocks(); } } diff --git a/src/main/java/de/jottyfan/minecraft/block/BlockOreDeepslateTurquoise.java b/src/main/java/de/jottyfan/minecraft/block/BlockOreDeepslateTurquoise.java new file mode 100644 index 0000000..1853282 --- /dev/null +++ b/src/main/java/de/jottyfan/minecraft/block/BlockOreDeepslateTurquoise.java @@ -0,0 +1,27 @@ +package de.jottyfan.minecraft.block; + + +import java.util.Arrays; +import java.util.List; + +import de.jottyfan.minecraft.item.QuicklyItems; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.storage.loot.LootParams.Builder; + +/** + * + * @author jotty + * + */ +public class BlockOreDeepslateTurquoise extends BlockOreTurquoise { + + public BlockOreDeepslateTurquoise(Properties properties) { + super(properties); + } + + @Override + protected List getDrops(BlockState state, Builder builder) { + return Arrays.asList(new ItemStack[] { new ItemStack(QuicklyItems.RAWTURQUOISE, 2) }); + } +} diff --git a/src/main/java/de/jottyfan/minecraft/block/BlockOreTurquoise.java b/src/main/java/de/jottyfan/minecraft/block/BlockOreTurquoise.java new file mode 100644 index 0000000..cbb10e2 --- /dev/null +++ b/src/main/java/de/jottyfan/minecraft/block/BlockOreTurquoise.java @@ -0,0 +1,28 @@ +package de.jottyfan.minecraft.block; + +import java.util.Arrays; +import java.util.List; + +import de.jottyfan.minecraft.item.QuicklyItems; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.block.AmethystBlock; +import net.minecraft.world.level.block.SoundType; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.storage.loot.LootParams.Builder; + +/** + * + * @author jotty + * + */ +public class BlockOreTurquoise extends AmethystBlock { + + public BlockOreTurquoise(Properties properties) { + super(properties.strength(3.0f).sound(SoundType.AMETHYST).requiresCorrectToolForDrops()); + } + + @Override + protected List getDrops(BlockState state, Builder builder) { + return Arrays.asList(new ItemStack[] { new ItemStack(QuicklyItems.RAWTURQUOISE) }); + } +} diff --git a/src/main/java/de/jottyfan/minecraft/block/QuicklyBlocks.java b/src/main/java/de/jottyfan/minecraft/block/QuicklyBlocks.java index 27d5b1d..25a7444 100644 --- a/src/main/java/de/jottyfan/minecraft/block/QuicklyBlocks.java +++ b/src/main/java/de/jottyfan/minecraft/block/QuicklyBlocks.java @@ -23,7 +23,19 @@ import net.minecraft.world.level.block.state.BlockBehaviour.Properties; */ public class QuicklyBlocks { public static final Block KELPBUNDLE = registerBlock("kelpbundle", - Properties.of().instabreak().sound(SoundType.WET_GRASS).strength(0.1f).friction(0.95f), p -> new Block(p)); + Properties.of().instabreak().sound(SoundType.WET_GRASS).strength(0.1f).friction(0.95f)); + public static final Block TURQUOISEBLOCK = registerBlock("blockturquoise", Properties.of().strength(1.5f)); + public static final Block ORETURQUOISE = registerBlock("oreturquoise", p -> new BlockOreTurquoise(p)); + public static final Block OREDEEPSLATETURQUOISE = registerBlock("oredeepslateturquoise", + p -> new BlockOreDeepslateTurquoise(p)); + + private static final Block registerBlock(String name, Properties properties) { + return QuicklyBlocks.registerBlock(name, properties, p -> new Block(p)); + } + + private static final Block registerBlock(String name, Function function) { + return QuicklyBlocks.registerBlock(name, Properties.of(), function); + } private static final Block registerBlock(String name, Properties properties, Function function) { Identifier identifier = Identifier.fromNamespaceAndPath(Quickly.MOD_ID, name); @@ -38,6 +50,9 @@ public class QuicklyBlocks { public static void registerModBlocks() { ItemGroupEvents.modifyEntriesEvent(CreativeModeTabs.BUILDING_BLOCKS).register(block -> { block.accept(KELPBUNDLE); + block.accept(TURQUOISEBLOCK); + block.accept(ORETURQUOISE); + block.accept(OREDEEPSLATETURQUOISE); }); } } diff --git a/src/main/java/de/jottyfan/minecraft/feature/QuicklyFeatures.java b/src/main/java/de/jottyfan/minecraft/feature/QuicklyFeatures.java new file mode 100644 index 0000000..7db8e36 --- /dev/null +++ b/src/main/java/de/jottyfan/minecraft/feature/QuicklyFeatures.java @@ -0,0 +1,33 @@ +package de.jottyfan.minecraft.feature; + +import de.jottyfan.minecraft.Quickly; +import net.fabricmc.fabric.api.biome.v1.BiomeModifications; +import net.fabricmc.fabric.api.biome.v1.BiomeSelectors; +import net.minecraft.core.registries.Registries; +import net.minecraft.resources.Identifier; +import net.minecraft.resources.ResourceKey; +import net.minecraft.world.level.levelgen.GenerationStep; +import net.minecraft.world.level.levelgen.feature.ConfiguredFeature; +import net.minecraft.world.level.levelgen.placement.PlacedFeature; + +/** + * + * @author jotty + * + */ +public class QuicklyFeatures { + public static final ResourceKey> CF_ORETURQUOISE = genCf("oreturquoise"); + public static final ResourceKey PF_ORETURQUOISE = genPf("oreturquoise"); + + private static final ResourceKey> genCf(String name) { + return ResourceKey.create(Registries.CONFIGURED_FEATURE, Identifier.fromNamespaceAndPath(Quickly.MOD_ID, name)); + } + + private static final ResourceKey genPf(String name) { + return ResourceKey.create(Registries.PLACED_FEATURE, Identifier.fromNamespaceAndPath(Quickly.MOD_ID, name)); + } + + public static final void registerFeatures() { + BiomeModifications.addFeature(BiomeSelectors.foundInOverworld(), GenerationStep.Decoration.UNDERGROUND_ORES, PF_ORETURQUOISE); + } +} diff --git a/src/main/java/de/jottyfan/minecraft/item/QuicklyItems.java b/src/main/java/de/jottyfan/minecraft/item/QuicklyItems.java index 53a8acc..30ef740 100644 --- a/src/main/java/de/jottyfan/minecraft/item/QuicklyItems.java +++ b/src/main/java/de/jottyfan/minecraft/item/QuicklyItems.java @@ -19,7 +19,21 @@ import net.minecraft.world.item.Item.Properties; * */ public class QuicklyItems { - public static final Item STUB = registerItem("stub", new Item.Properties(), p -> new Stub(p)); + public static final Item STUB = registerItem("stub", properties -> new Stub(properties)); + public static final Item RAWTURQUOISE = registerItem("rawturquoise"); + public static final Item TURQUOISEINGOT = registerItem("turquoiseingot"); + + private static final Item registerItem(String name) { + return QuicklyItems.registerItem(name, new Item.Properties()); + } + + private static final Item registerItem(String name, Item.Properties properties) { + return QuicklyItems.registerItem(name, properties, p -> new Item(p)); + } + + private static final Item registerItem(String name, Function function) { + return QuicklyItems.registerItem(name, new Item.Properties(), function); + } private static final Item registerItem(String name, Item.Properties properties, Function function) { Identifier identifier = Identifier.fromNamespaceAndPath(Quickly.MOD_ID, name); @@ -31,6 +45,8 @@ public class QuicklyItems { public static void registerModItems() { ItemGroupEvents.modifyEntriesEvent(CreativeModeTabs.TOOLS_AND_UTILITIES).register(item -> { item.accept(STUB); + item.accept(RAWTURQUOISE); + item.accept(TURQUOISEINGOT); }); } } diff --git a/src/main/resources/assets/quickly/blockstates/blockturquoise.json b/src/main/resources/assets/quickly/blockstates/blockturquoise.json new file mode 100644 index 0000000..34f27d6 --- /dev/null +++ b/src/main/resources/assets/quickly/blockstates/blockturquoise.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "quickly:block/blockturquoise" + } + } +} diff --git a/src/main/resources/assets/quickly/blockstates/oredeepslateturquoise.json b/src/main/resources/assets/quickly/blockstates/oredeepslateturquoise.json new file mode 100644 index 0000000..7ebeba8 --- /dev/null +++ b/src/main/resources/assets/quickly/blockstates/oredeepslateturquoise.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "quickly:block/oredeepslateturquoise" + } + } +} diff --git a/src/main/resources/assets/quickly/blockstates/oreturquoise.json b/src/main/resources/assets/quickly/blockstates/oreturquoise.json new file mode 100644 index 0000000..730d8cf --- /dev/null +++ b/src/main/resources/assets/quickly/blockstates/oreturquoise.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "quickly:block/oreturquoise" + } + } +} diff --git a/src/main/resources/assets/quickly/items/blockturquoise.json b/src/main/resources/assets/quickly/items/blockturquoise.json new file mode 100644 index 0000000..f55a032 --- /dev/null +++ b/src/main/resources/assets/quickly/items/blockturquoise.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "quickly:block/blockturquoise" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/quickly/items/oredeepslateturquoise.json b/src/main/resources/assets/quickly/items/oredeepslateturquoise.json new file mode 100644 index 0000000..73326c6 --- /dev/null +++ b/src/main/resources/assets/quickly/items/oredeepslateturquoise.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "quickly:block/oredeepslateturquoise" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/quickly/items/oreturquoise.json b/src/main/resources/assets/quickly/items/oreturquoise.json new file mode 100644 index 0000000..67b7845 --- /dev/null +++ b/src/main/resources/assets/quickly/items/oreturquoise.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "quickly:block/oreturquoise" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/quickly/items/rawturquoise.json b/src/main/resources/assets/quickly/items/rawturquoise.json new file mode 100644 index 0000000..2f6c51a --- /dev/null +++ b/src/main/resources/assets/quickly/items/rawturquoise.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "quickly:item/rawturquoise" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/quickly/items/turquoiseingot.json b/src/main/resources/assets/quickly/items/turquoiseingot.json new file mode 100644 index 0000000..bba14e0 --- /dev/null +++ b/src/main/resources/assets/quickly/items/turquoiseingot.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "quickly:item/turquoiseingot" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/quickly/lang/de_de.json b/src/main/resources/assets/quickly/lang/de_de.json index 7b0e0a3..c9427d2 100644 --- a/src/main/resources/assets/quickly/lang/de_de.json +++ b/src/main/resources/assets/quickly/lang/de_de.json @@ -1,4 +1,9 @@ { + "item.quickly.blockturquoise": "Türkisblock", "item.quickly.kelpbundle": "Seegrassbündel", - "item.quickly.stub": "Stummel" + "item.quickly.oredeepslateturquoise": "Türkistiefenerz", + "item.quickly.oreturquoise": "Türkiserz", + "item.quickly.rawturquoise": "rohes Türkis", + "item.quickly.stub": "Stummel", + "item.quickly.turquoiseingot": "Türkisbarren" } diff --git a/src/main/resources/assets/quickly/lang/en_us.json b/src/main/resources/assets/quickly/lang/en_us.json index b49fba4..8fdb089 100644 --- a/src/main/resources/assets/quickly/lang/en_us.json +++ b/src/main/resources/assets/quickly/lang/en_us.json @@ -1,4 +1,9 @@ { + "item.quickly.blockturquoise": "block of turquoise", "item.quickly.kelpbundle": "kelp bundle", - "item.quickly.stub": "stub" + "item.quickly.oredeepslateturquoise": "turquoise deepslate ore", + "item.quickly.oreturquoise": "turquoise ore", + "item.quickly.rawturquoise": "raw turquoise", + "item.quickly.stub": "stub", + "item.quickly.turquoiseingot": "turquoise ingot" } diff --git a/src/main/resources/assets/quickly/models/block/blockturquoise.json b/src/main/resources/assets/quickly/models/block/blockturquoise.json new file mode 100644 index 0000000..2b83499 --- /dev/null +++ b/src/main/resources/assets/quickly/models/block/blockturquoise.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "quickly:block/blockturquoise" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/quickly/models/block/oredeepslateturquoise.json b/src/main/resources/assets/quickly/models/block/oredeepslateturquoise.json new file mode 100644 index 0000000..bc8ffa6 --- /dev/null +++ b/src/main/resources/assets/quickly/models/block/oredeepslateturquoise.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "quickly:block/oredeepslateturquoise" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/quickly/models/block/oreturquoise.json b/src/main/resources/assets/quickly/models/block/oreturquoise.json new file mode 100644 index 0000000..fac680a --- /dev/null +++ b/src/main/resources/assets/quickly/models/block/oreturquoise.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "quickly:block/oreturquoise" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/quickly/models/item/rawturquoise.json b/src/main/resources/assets/quickly/models/item/rawturquoise.json new file mode 100644 index 0000000..ebf36b4 --- /dev/null +++ b/src/main/resources/assets/quickly/models/item/rawturquoise.json @@ -0,0 +1,6 @@ +{ + "parent": "item/coal", + "textures": { + "layer0": "quickly:item/rawturquoise" + } +} diff --git a/src/main/resources/assets/quickly/models/item/turquoiseingot.json b/src/main/resources/assets/quickly/models/item/turquoiseingot.json new file mode 100644 index 0000000..feaf66e --- /dev/null +++ b/src/main/resources/assets/quickly/models/item/turquoiseingot.json @@ -0,0 +1,6 @@ +{ + "parent": "item/coal", + "textures": { + "layer0": "quickly:item/turquoiseingot" + } +} diff --git a/src/main/resources/assets/quickly/textures/block/blockturquoise.png b/src/main/resources/assets/quickly/textures/block/blockturquoise.png new file mode 100644 index 0000000000000000000000000000000000000000..40a4fda2ab7b9f1bdc20c1a4f6784b67ac79543d GIT binary patch literal 621 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/quickly/textures/block/oreturquoise.png b/src/main/resources/assets/quickly/textures/block/oreturquoise.png new file mode 100644 index 0000000000000000000000000000000000000000..01dfec179c174ebe9f9026716bf173e1825bc384 GIT binary patch literal 4806 zcmeH~c~BEs9><$d0)k>x5Q}0U#B~%jN#}wjOXLbigaAfB6j3_q4)j0{k`4sC7!XHC zYg7;w1QgJb)y0)j)H%FX4v~TJLe%jbD^xENG&&qcsFU6UD(IDY%o3mz4$hcX`>5fZLgj$QVM3q){|lwE|DZC`7sj zqhJPH0YQeF%7|E7b62arUOOR)o*T*VLMQu{I+POObKUmJI?^RRz+j_=%e*S%9Nbrp;IU2DR&`V_2JLXM1aUp(2? zz;moF#ghtuioTrP_u~~mgLzBLV#~zs$DAO@EF1Utj}ZI&55)o^C|b2u7<|shsdo9o zeNuN@1v%w>L~(anfK!tF*AcE)tt$mPm;OFZvLx5eA?R#%TU))X%Eq()R*|?T%RRX!ksDmKrS$#Y&150|Pynnl08C6vB zB9|)O(_fo1ukOo>^ouG%b8prCqv4rtYz;=dubu|K6K5Pb7_d3BRN2=4!@+;7IP=gJ zei6ASv^GDBlOvmK@Ge(hFh6(P$I#SOd1UhyOG-%GK6Pfce|(wfM%TQj&Ye9yciF`s zRzumv+RCV&3LZ!~0}fIvMiMHJtCe&FRm(8CL8$>b2SHxm1`Q%l!U&2COTbk^>eC-j zQzbOT>dSwAjLout<4ElAMoHz2{kb83X{J#0Z39P$sK%0)voh;tIgC zv6(@om`sQyAvH!4LGf2>F$#yyp~JKQ1D?vF&a_0UCv9mJH2(ggLqQf6sB9ak80UU(XP+X-qeC&wC zmDoZ8F{;V*i7eLa4QoYIU-ZYD7?sp2OV|u$@qZKtu?E0Vohk0DB5xRwRopU~&aa_8gccfJfM? zQCyM!zpRa$hvGG` zUGhXkm4JcjF_^AH?f9Rh0*1&i6!T!wi*Sd=r3-dVcTBD^xjspOPck0Mt}(ej zNr6u?9?P!(n_Si(k5iZmd%*cM4pK|BB zL7SLXuGg0`p1Zd+MkepBn*1f1N_uL8J)SM(a^bGwLF@O$wwj(u(G<@*XwSBP zzx1L{c%`fQPhR6gxQ@JJWh%M8q@W}HK+E~>mRxK1TVJse8$UPXV)`RAzN90CRw0dR z&~<30R&uKg&!#x#mXb2Rv7ME{=&-R15Bat`Gi**n{IOlGspPV$nQg&(uL+lWSIyry zrKDqld%mHyWF~jjj{0|psReqI(wT^s-S@Gka|mvaj^&to>7H20UuWbGfGJaNxi=dU}SC9gJzSDxB@>5avl zuGpn_mX-hOVD_V4R(|%~&}eU_7bp1rVc%o~aW$0X?)|o-Gh=rGtI8(xnqynd<+Y{G zzt9RA&=ZF|3@4XRj>iUWdKI*A!TjebJ?us$eSdpO-HiuzElj6+U$>S*lFyoOhm%d# z8%mnjFLujeu5(G9*7e9s>2qr5tXO*9G3C)~l~Jiqvt*pQqAiwi0bbts%Is}7@A&G~ zu8-HBFWmN>KGe1IZir3){qh~t_gi#WP**Il=r?zsil8`tcOmxUEKI^}r_zT$p literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/quickly/textures/item/rawturquoise.png b/src/main/resources/assets/quickly/textures/item/rawturquoise.png new file mode 100644 index 0000000000000000000000000000000000000000..a0c844fe9fe4d79f3ed3c4cff5dafdb65a51b1e0 GIT binary patch literal 4921 zcmeHLdsGzX6(7{FJSq=^sn0qY@qs!!v$He1vr`s97G%*?gjJE4>g+sV!oJ)cWZ_7( z8WSHmD%hH8F)@Xp#*`B@o+_AvM<~Q&%Wu_wWQmpZMW`hZ7ptSinC_jwN<)Y z_WX)X4?E7bVBg$Fh?=@Zt0q@{5#r2f{u4g>>;=rOsy-KeZj<*xf~E5~-+uWQe{3XeHuCG2qL1xq*?W9sTjJ3#@+K5@HokQ4ll`IH!`oIZ8)-+4W0=bN!jO^e(p z-CdJi;9hn9tCNePM$At9#|zU^ejayst@-_ww^hxLeT8>cJ&1@JH@a%st4G#VwTsN| zs3XT0YrfqQwSG+Eh{?o}w+-g>lZ9(8O>VeQN4MUa{owkh14Ubdf=Ye6##UKQB*lL! zjW2(&x#FYPLygxPuT6b*M|Ww*mS$J^R&{v1_BHWuU5$%uH5X5&tB#Z%j9wVsY_;rP z^KwVc>7uPimK>}(Z~Q*|R8fhryMuhIv=P|_C%v(L-01@ispU)d#)M043%k4DT3&Bb zZ(J_mo>}|CMjq}^J>78SQqIQDLb14VsCLDK>s(C8?O|tYudSK%%LQE{LK22AEpA`o zfVA&bUTDv`6>_6JSY6$|=dfydC$wSVoA%SyF_m#KVGR$*mSjcTsDGjO!imc{59tz! z_;T^hV45EBmo2~fw6m-8-On#SG5-DL9o3TUp5Ip&7%{9CJ9Z{vKXAWiXyjIYqSf=206?ixyWwqdxC-;Zoxn6&FfyeGohvzWCE;xXx7p$rou;g5`C8O6v zp&(asxcy#$>;aatB=(UtAU0*jpHBZkfO{|Q0PAPD`;CE>#lo0eT!9jv*s9 zNj&4f)R3Ic!0Skq7g-V|X&Z;KxJ`rV^_0zki-exQ#ePs`r&ng3oS;AfaJ2+*NSzkf zkc0-Ma9)FwIvs)9473InSym)%G$jfex*xC{e-G;A$=DpHa%ffMfu% ztfEr@;2#IMFv%W)m0cbycqSVWB_vq!?47oNcH&u?HL}rAc z#|f|kQ(PYF%oV`XqergK#-$&Tg237YUH}5%41x|NNv#e@!62ZlAW%A**N9q@8;I_8 ziE<(95t4ENkAN#6Pd``ibbq1Z23i;92}%_JVJNOgaiWJX4b?*!_WV;6MFU6aMH|ZM zaUfA3ev~Fb*JwGOr$vLPGZ+F5(@Wq_Pm#nK>i?M{Z?o~FL5EU$(A6YpJe1~e8r5*L z7Uy`17e#7dU4BxEKahP-72`4G$^T5Z@z@WP9Wdy(Re|z@UtW)b&53E3EIOSa5>hvW4K4x6OC8 z9=t9G+vd$Rfin-Sdu7Ti72qn=owm#iLE$edM-a59d<+;=$!1H6>Yu9Nqa%rs1N9By zFOi96Q<9bb>+RB-^iwONn%7G6c22FCQn~0JQQPrN_@?dfw%QQ2dVQGMx#d{h_ro&3 z8@*+9S@32l$8jk1==F^8WvM05-LJ=Y*416P^fcm$He_q9*39jeGz*9K-iAmhsk-evwB)k zNyJ)VY-rsX{kV(GOJkUYQ2ZqO<~QCg3rf2Y{nf3?V|Aajd$ygB z?~R)N;b!N$w%Zd^52dV~^)KDNM+vd#W$0GLysAuMR8>>O)tOWFwb?Vz&zL@X!8jcW27bahV2glv}9`BC2YDPy8z3BVm> NPFY~8p0jfOe*naL*+>8Y literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/quickly/textures/item/turquoiseingot.png b/src/main/resources/assets/quickly/textures/item/turquoiseingot.png new file mode 100644 index 0000000000000000000000000000000000000000..4cc0e016687bd745985527b409a9547ad0a16fd7 GIT binary patch literal 4488 zcmeHKe^3)=8V;R8FbKj4gJP>|#8cEwb~hW6>=6)>NKy$xK!g)5o9u4bnqMRvlAsnU zasxsc(b_w$;@KX`)ltG=GJMf&Y0ApON5pw<5ogGm$>X z<#sZxjfS{@i-u@F%LoMi{P9HD5wk`4ENA1J<{*&?e&WO2<5n+k7*q=UWy#H}i=COKd z-R~=-h~(AOg+T7%8+YPf-wb_wKfQPP^)IsCtGrshbzf8C(7gszPkErf{LtZ>4_jv) zTBytO)7Z+;0As3dUb|q)<zQ*4w`fEYhqOTT;PS@WmNxHkt6mw)_)RCCT)v;}X z+n>yQbK&9=*X-(fyQ0vvc9ndHe3r7bGi1Kp>wk6AlYl@FvX#|nats>H^TI*7dp9?! z^=Fp9(*1f~i#SfWv{p&AZYhb$KigJtAUrPPNZ*ImJuUMxcK#xwzefP@-qoV&oA1r#cZ23jIY+qLGm4R)uDsmEBfd4{s~9Sz6vM>bX>VsP=;o59W1k|E}<6XLr%k zHAN4bpVnOK?CL!0-J{W)L+ZCf8R>Cz7N1$sP_QpHg6&`R__1)^DXpZYcuvVTzsd|v zpgy1RZ{ewqcG1q6>rKiKu1nc_9*OP`O^}~|l3Kp^+_dOTVMiamd&(qaQVqx2kKc;v z>xe8a{sT_W_~SrGSo8EN@2pGG=Piz{8k7wke5KD9!5ynODIY8w5>Ty&FGads;SI4# z8~^g{m+S7H{C?xXD__qzcf$Q? zWdqGYX4=X+)Z+Ucr^FCTsl{vLM#SjS(50-t!cFH@WanEdHds`YI4xC_;wJ!so#sf$ zZ?`!-gkLQV@)F>gH%rA(5W;Oxiwli8kjCkzAzXq>5LoAD%Q11P2ug8N3}Mo)7^MJj zYH=yYxd^G$=krN?GKte|m7*$@N{V1o41)mz_5>Up>4zPj1w6$FhnDtO+^maZoeqfS zB+X7QrxuHWA9|jj-DNb6(K|e&DgZsCe$pjHC5Y5+myVC{aJq6pGMdm2MtJhUdX}1K zkJIb6(7JNk!7Uh1L0QJ)U0$~>SPo^8(l*)-pdK(PI$_96gE40;f|tO`+FijYAoc_# z$1*R(nvfgs36?WH5fDDcI|2Q?_8=Ibj7CE1w0QaS3|h6AAD^I{7M3D{k4!QmLs7E~ zRxuU|#xbQCRx+pxR^d2`%W0CvNqQWW!QtUZhlS>;0J($(Jcv?mRwi2z7$YeejLT6u zOd^OGR-rN(W~LY%wJ_r-R=HWwm85NaRy-92sF-96Ls29OBXUv>Z>lC=0Q|>9&(#I$1kurKK*1HR#|4C(?5aYB453URZK$B*%aNwK$7)c>OON z`K+DJ<49gjR3S%k6(&!{la+F%a$Ix)?e>69{In3D7$7Xk_bDI<+CeRZ z#!Zu))1B{h+SFn`C5Vq4a~r{OqDYR^k{k_45ll`X3If6MF&Tkl1TI^OU<5J_@1$5J z@W0Uf;(<~|rd-c@!1#fnX=Fv^(PblVBd<0#xRf9$xF`tHGE#zvET^epo`7q_Who^c zRvPRcqwV_K&i-I4kSaMYXJ9!dqd_Ym3`{B*62=s$f~JsU3{_YrvU{8i=Of*8x)taM zv;yrJ)CyW0oT#LUXkRJK&jJt(MilT1!SGSRq@x8(`90%##VOMN(j+Aa7`MrQxDgxJ zyue;49oq~?HRHFPAMrOj7eC?%fO=|>N$EQ!*OXk7QeaZxsqUJRYf=hK3OvCxva>sw1Pa{K?DfYtQOy%tM}| z@gH?u9oYIYwwc)c&u@I~i>>X6*675zm%)0%h9a%MRUYIL+kk`F)$%!UVuE3zn)*j6$+43I>09r2q literal 0 HcmV?d00001 diff --git a/src/main/resources/data/minecraft/tags/block/mineable/pickaxe.json b/src/main/resources/data/minecraft/tags/block/mineable/pickaxe.json new file mode 100644 index 0000000..b494550 --- /dev/null +++ b/src/main/resources/data/minecraft/tags/block/mineable/pickaxe.json @@ -0,0 +1,7 @@ + { + "replace": false, + "values": [ + "quickly:oreturquoise", + "quickly:oredeepslateturquoise" + ] + } \ No newline at end of file diff --git a/src/main/resources/data/quickly/recipe/blasting_turquoiseingot.json b/src/main/resources/data/quickly/recipe/blasting_turquoiseingot.json new file mode 100644 index 0000000..ad039e9 --- /dev/null +++ b/src/main/resources/data/quickly/recipe/blasting_turquoiseingot.json @@ -0,0 +1,7 @@ +{ + "type": "minecraft:blasting", + "ingredient": "quickly:rawturquoise", + "result": {"id":"quickly:turquoiseingot"}, + "experience": 0.0, + "cookingtime": 200 +} \ No newline at end of file diff --git a/src/main/resources/data/quickly/recipe/shaped_blockturquoise.json b/src/main/resources/data/quickly/recipe/shaped_blockturquoise.json new file mode 100644 index 0000000..a088f86 --- /dev/null +++ b/src/main/resources/data/quickly/recipe/shaped_blockturquoise.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "ttt", + "ttt", + "ttt" + ], + "key": { + "t": "quickly:turquoiseingot" + }, + "result": { + "id": "quickly:blockturquoise", + "count": 1 + } +} \ No newline at end of file diff --git a/src/main/resources/data/quickly/recipe/shapeless_turquoise.json b/src/main/resources/data/quickly/recipe/shapeless_turquoise.json new file mode 100644 index 0000000..c83b916 --- /dev/null +++ b/src/main/resources/data/quickly/recipe/shapeless_turquoise.json @@ -0,0 +1,10 @@ +{ + "type": "minecraft:crafting_shapeless", + "ingredients": [ + "quickly:blockturquoise" + ], + "result": { + "id": "quickly:turquoiseingot", + "count": 9 + } +} \ No newline at end of file diff --git a/src/main/resources/data/quickly/tag/items/ores/oreturquoise.json b/src/main/resources/data/quickly/tag/items/ores/oreturquoise.json new file mode 100644 index 0000000..9cf4650 --- /dev/null +++ b/src/main/resources/data/quickly/tag/items/ores/oreturquoise.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "quickly:oreturquoise" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/quickly/tags/block/mineable/pickaxe.json b/src/main/resources/data/quickly/tags/block/mineable/pickaxe.json new file mode 100644 index 0000000..b494550 --- /dev/null +++ b/src/main/resources/data/quickly/tags/block/mineable/pickaxe.json @@ -0,0 +1,7 @@ + { + "replace": false, + "values": [ + "quickly:oreturquoise", + "quickly:oredeepslateturquoise" + ] + } \ No newline at end of file diff --git a/src/main/resources/data/quickly/worldgen/configured_feature/oreturquoise.json b/src/main/resources/data/quickly/worldgen/configured_feature/oreturquoise.json new file mode 100644 index 0000000..a2ff09d --- /dev/null +++ b/src/main/resources/data/quickly/worldgen/configured_feature/oreturquoise.json @@ -0,0 +1,27 @@ +{ + "type": "minecraft:ore", + "config": { + "discard_chance_on_air_exposure": 0.0, + "size": 10, + "targets": [ + { + "state": { + "Name": "quickly:oreturquoise" + }, + "target": { + "predicate_type": "minecraft:tag_match", + "tag": "minecraft:stone_ore_replaceables" + } + }, + { + "state": { + "Name": "quickly:oredeepslateturquoise" + }, + "target": { + "predicate_type": "minecraft:tag_match", + "tag": "minecraft:deepslate_ore_replaceables" + } + } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/data/quickly/worldgen/placed_feature/oreturquoise.json b/src/main/resources/data/quickly/worldgen/placed_feature/oreturquoise.json new file mode 100644 index 0000000..1307d4c --- /dev/null +++ b/src/main/resources/data/quickly/worldgen/placed_feature/oreturquoise.json @@ -0,0 +1,27 @@ +{ + "feature": "quickly:oreturquoise", + "placement": [ + { + "type": "minecraft:count", + "count": 8 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:trapezoid", + "max_inclusive": { + "absolute": 128 + }, + "min_inclusive": { + "absolute": -120 + } + } + }, + { + "type": "minecraft:biome" + } + ] +} \ No newline at end of file