From 81eff15912e21e45e51eee3b88bc9bdc9116272e Mon Sep 17 00:00:00 2001 From: Sollace Date: Sun, 25 Sep 2022 16:23:10 +0200 Subject: [PATCH] Added sour apple trees --- .../minelittlepony/unicopia/block/Tree.java | 8 +- .../unicopia/block/UBlocks.java | 8 ++ .../unicopia/block/UTreeGen.java | 9 +- .../minelittlepony/unicopia/item/UItems.java | 1 + .../unicopia/blockstates/sour_apple.json | 7 ++ .../blockstates/sour_apple_leaves.json | 7 ++ .../blockstates/sour_apple_sapling.json | 7 ++ .../blockstates/sour_apple_sprout.json | 28 +++++ .../unicopia/models/block/sour_apple.json | 6 + .../models/block/sour_apple_leaves.json | 6 + .../models/block/sour_apple_sapling.json | 6 + .../models/item/sour_apple_leaves.json | 3 + .../models/item/sour_apple_sapling.json | 6 + .../models/item/sour_apple_seeds.json | 6 + .../textures/block/sour_apple_leaves.png | Bin 0 -> 1466 bytes .../textures/item/sour_apple_sapling.png | Bin 0 -> 1964 bytes .../textures/item/sour_apple_seeds.png | Bin 0 -> 1350 bytes .../data/minecraft/tags/blocks/leaves.json | 3 +- .../data/minecraft/tags/items/leaves.json | 3 +- .../overworld/organic_plant_derived.json | 7 +- .../overworld/organic_plant_derived_dark.json | 1 + .../loot_tables/blocks/sour_apple.json | 20 +++ .../loot_tables/blocks/sour_apple_leaves.json | 116 ++++++++++++++++++ .../blocks/sour_apple_sapling.json | 20 +++ .../unicopia/recipes/sour_apple_to_seeds.json | 7 ++ .../traits/organic_plant_derived.json | 9 ++ .../traits/organic_plant_derived_zap.json | 11 ++ .../data/unicopia/tree_types/sour_apple.json | 6 + 28 files changed, 304 insertions(+), 7 deletions(-) create mode 100644 src/main/resources/assets/unicopia/blockstates/sour_apple.json create mode 100644 src/main/resources/assets/unicopia/blockstates/sour_apple_leaves.json create mode 100644 src/main/resources/assets/unicopia/blockstates/sour_apple_sapling.json create mode 100644 src/main/resources/assets/unicopia/blockstates/sour_apple_sprout.json create mode 100644 src/main/resources/assets/unicopia/models/block/sour_apple.json create mode 100644 src/main/resources/assets/unicopia/models/block/sour_apple_leaves.json create mode 100644 src/main/resources/assets/unicopia/models/block/sour_apple_sapling.json create mode 100644 src/main/resources/assets/unicopia/models/item/sour_apple_leaves.json create mode 100644 src/main/resources/assets/unicopia/models/item/sour_apple_sapling.json create mode 100644 src/main/resources/assets/unicopia/models/item/sour_apple_seeds.json create mode 100644 src/main/resources/assets/unicopia/textures/block/sour_apple_leaves.png create mode 100644 src/main/resources/assets/unicopia/textures/item/sour_apple_sapling.png create mode 100644 src/main/resources/assets/unicopia/textures/item/sour_apple_seeds.png create mode 100644 src/main/resources/data/unicopia/loot_tables/blocks/sour_apple.json create mode 100644 src/main/resources/data/unicopia/loot_tables/blocks/sour_apple_leaves.json create mode 100644 src/main/resources/data/unicopia/loot_tables/blocks/sour_apple_sapling.json create mode 100644 src/main/resources/data/unicopia/recipes/sour_apple_to_seeds.json create mode 100644 src/main/resources/data/unicopia/traits/organic_plant_derived.json create mode 100644 src/main/resources/data/unicopia/traits/organic_plant_derived_zap.json create mode 100644 src/main/resources/data/unicopia/tree_types/sour_apple.json diff --git a/src/main/java/com/minelittlepony/unicopia/block/Tree.java b/src/main/java/com/minelittlepony/unicopia/block/Tree.java index e0cca8d8..087d5785 100644 --- a/src/main/java/com/minelittlepony/unicopia/block/Tree.java +++ b/src/main/java/com/minelittlepony/unicopia/block/Tree.java @@ -47,6 +47,7 @@ public record Tree ( private Optional> selector = Optional.empty(); private Optional countModifier = Optional.empty(); private Optional> configSupplier = Optional.empty(); + private Optional size = Optional.empty(); private Builder(Identifier id, TrunkPlacer trunkPlacer, FoliagePlacer foliagePlacer) { this.id = id; @@ -84,6 +85,11 @@ public record Tree ( return this; } + public Builder farmingCondition(int yLevel, int sizeBelowY, int sizeAboveY) { + this.size = Optional.of(new TwoLayersFeatureSize(yLevel, Math.max(0, sizeBelowY), Math.max(0, sizeAboveY))); + return this; + } + public Tree build() { RegistryEntry> configuredFeature = ConfiguredFeatures.register(id.toString(), Feature.TREE, configSupplier.map(Supplier::get) .orElseGet(() -> new TreeFeatureConfig.Builder( @@ -91,7 +97,7 @@ public record Tree ( trunkPlacer, BlockStateProvider.of(leavesType), foliagePlacer, - new TwoLayersFeatureSize(6, 0, 16) + size.get() ).forceDirt()).build()); Optional sapling = saplingId.map(id -> UBlocks.register(id, new SaplingBlock(new SaplingGenerator() { diff --git a/src/main/java/com/minelittlepony/unicopia/block/UBlocks.java b/src/main/java/com/minelittlepony/unicopia/block/UBlocks.java index b1d90a9d..b67faef5 100644 --- a/src/main/java/com/minelittlepony/unicopia/block/UBlocks.java +++ b/src/main/java/com/minelittlepony/unicopia/block/UBlocks.java @@ -58,6 +58,14 @@ public interface UBlocks { Block SWEET_APPLE = register("sweet_apple", new FruitBlock(FabricBlockSettings.of(Material.GOURD, MapColor.GREEN).sounds(BlockSoundGroup.WOOD), Direction.DOWN, SWEET_APPLE_LEAVES, FruitBlock.DEFAULT_SHAPE)); Block SWEET_APPLE_SPROUT = register("sweet_apple_sprout", new SproutBlock(0xE5FFCC88, () -> UItems.SWEET_APPLE_SEEDS, () -> UTreeGen.SWEET_APPLE_TREE.sapling().map(Block::getDefaultState).get())); + Block SOUR_APPLE_LEAVES = register("sour_apple_leaves", new FruitBearingBlock(FabricBlockSettings.copy(Blocks.OAK_LEAVES), + 0xE5FFCCCC, + () -> UBlocks.SOUR_APPLE, + () -> UItems.SOUR_APPLE.getDefaultStack() + ), ItemGroup.DECORATIONS); + Block SOUR_APPLE = register("sour_apple", new FruitBlock(FabricBlockSettings.of(Material.GOURD, MapColor.GREEN).sounds(BlockSoundGroup.WOOD), Direction.DOWN, SOUR_APPLE_LEAVES, FruitBlock.DEFAULT_SHAPE)); + Block SOUR_APPLE_SPROUT = register("sour_apple_sprout", new SproutBlock(0xE5FFCC88, () -> UItems.SOUR_APPLE_SEEDS, () -> UTreeGen.SOUR_APPLE_TREE.sapling().map(Block::getDefaultState).get())); + static T register(String name, T item) { return register(Unicopia.id(name), item); } diff --git a/src/main/java/com/minelittlepony/unicopia/block/UTreeGen.java b/src/main/java/com/minelittlepony/unicopia/block/UTreeGen.java index 99cdba17..3c4067ea 100644 --- a/src/main/java/com/minelittlepony/unicopia/block/UTreeGen.java +++ b/src/main/java/com/minelittlepony/unicopia/block/UTreeGen.java @@ -30,15 +30,18 @@ public interface UTreeGen { .sapling(Unicopia.id("zapling")) .biomes(Tree.Builder.IS_FOREST) .count(0, 0.01F, 1) + .farmingCondition(6, 0, 8) .build(); - Tree GREEN_APPLE_TREE = createAppleTree("green_apple", UBlocks.GREEN_APPLE_LEAVES); - Tree SWEET_APPLE_TREE = createAppleTree("sweet_apple", UBlocks.SWEET_APPLE_LEAVES); + Tree GREEN_APPLE_TREE = createAppleTree("green_apple", UBlocks.GREEN_APPLE_LEAVES, 2); + Tree SWEET_APPLE_TREE = createAppleTree("sweet_apple", UBlocks.SWEET_APPLE_LEAVES, 3); + Tree SOUR_APPLE_TREE = createAppleTree("sour_apple", UBlocks.SOUR_APPLE_LEAVES, 5); - static Tree createAppleTree(String name, Block leaves) { + static Tree createAppleTree(String name, Block leaves, int preferredDensity) { return Tree.Builder.create(Unicopia.id(name + "_tree"), new StraightTrunkPlacer(4, 6, 2), new BlobFoliagePlacer(ConstantIntProvider.create(3), ConstantIntProvider.create(0), 3) ) + .farmingCondition(1, preferredDensity - 2, preferredDensity) .log(Blocks.OAK_LOG) .leaves(leaves) .sapling(Unicopia.id(name + "_sapling")) diff --git a/src/main/java/com/minelittlepony/unicopia/item/UItems.java b/src/main/java/com/minelittlepony/unicopia/item/UItems.java index 12fcec61..d534ef23 100644 --- a/src/main/java/com/minelittlepony/unicopia/item/UItems.java +++ b/src/main/java/com/minelittlepony/unicopia/item/UItems.java @@ -81,6 +81,7 @@ public interface UItems { Item GREEN_APPLE_SEEDS = register("green_apple_seeds", new AliasedBlockItem(UBlocks.GREEN_APPLE_SPROUT, new Item.Settings().group(ItemGroup.MATERIALS))); Item SWEET_APPLE_SEEDS = register("sweet_apple_seeds", new AliasedBlockItem(UBlocks.SWEET_APPLE_SPROUT, new Item.Settings().group(ItemGroup.MATERIALS))); + Item SOUR_APPLE_SEEDS = register("sour_apple_seeds", new AliasedBlockItem(UBlocks.SOUR_APPLE_SPROUT, new Item.Settings().group(ItemGroup.MATERIALS))); Item MUG = register("mug", new Item(new Settings().group(ItemGroup.MATERIALS).maxCount(16))); Item CIDER = register("cider", new DrinkableItem(new Item.Settings().group(ItemGroup.FOOD).food(UFoodComponents.CIDER).maxCount(1).recipeRemainder(MUG))); diff --git a/src/main/resources/assets/unicopia/blockstates/sour_apple.json b/src/main/resources/assets/unicopia/blockstates/sour_apple.json new file mode 100644 index 00000000..e3af10bf --- /dev/null +++ b/src/main/resources/assets/unicopia/blockstates/sour_apple.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "unicopia:block/sour_apple" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/blockstates/sour_apple_leaves.json b/src/main/resources/assets/unicopia/blockstates/sour_apple_leaves.json new file mode 100644 index 00000000..f9d40dd7 --- /dev/null +++ b/src/main/resources/assets/unicopia/blockstates/sour_apple_leaves.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "unicopia:block/sour_apple_leaves" + } + } +} diff --git a/src/main/resources/assets/unicopia/blockstates/sour_apple_sapling.json b/src/main/resources/assets/unicopia/blockstates/sour_apple_sapling.json new file mode 100644 index 00000000..c9ffeae9 --- /dev/null +++ b/src/main/resources/assets/unicopia/blockstates/sour_apple_sapling.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "unicopia:block/sour_apple_sapling" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/blockstates/sour_apple_sprout.json b/src/main/resources/assets/unicopia/blockstates/sour_apple_sprout.json new file mode 100644 index 00000000..f88ff7ea --- /dev/null +++ b/src/main/resources/assets/unicopia/blockstates/sour_apple_sprout.json @@ -0,0 +1,28 @@ +{ + "variants": { + "age=0": { + "model": "unicopia:block/apple_sprout_stage0" + }, + "age=1": { + "model": "unicopia:block/apple_sprout_stage1" + }, + "age=2": { + "model": "unicopia:block/apple_sprout_stage2" + }, + "age=3": { + "model": "unicopia:block/apple_sprout_stage3" + }, + "age=4": { + "model": "unicopia:block/apple_sprout_stage4" + }, + "age=5": { + "model": "unicopia:block/apple_sprout_stage5" + }, + "age=6": { + "model": "unicopia:block/apple_sprout_stage6" + }, + "age=7": { + "model": "unicopia:block/apple_sprout_stage7" + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/block/sour_apple.json b/src/main/resources/assets/unicopia/models/block/sour_apple.json new file mode 100644 index 00000000..2f532cb0 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/sour_apple.json @@ -0,0 +1,6 @@ +{ + "parent": "unicopia:block/fruit", + "textures": { + "cross": "unicopia:item/sour_apple" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/block/sour_apple_leaves.json b/src/main/resources/assets/unicopia/models/block/sour_apple_leaves.json new file mode 100644 index 00000000..5c5c2d5b --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/sour_apple_leaves.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/leaves", + "textures": { + "all": "unicopia:block/sour_apple_leaves" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/block/sour_apple_sapling.json b/src/main/resources/assets/unicopia/models/block/sour_apple_sapling.json new file mode 100644 index 00000000..89a46a2c --- /dev/null +++ b/src/main/resources/assets/unicopia/models/block/sour_apple_sapling.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cross", + "textures": { + "cross": "unicopia:item/sour_apple_sapling" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/item/sour_apple_leaves.json b/src/main/resources/assets/unicopia/models/item/sour_apple_leaves.json new file mode 100644 index 00000000..c1f5b4ad --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/sour_apple_leaves.json @@ -0,0 +1,3 @@ +{ + "parent": "unicopia:block/sour_apple_leaves" +} \ No newline at end of file diff --git a/src/main/resources/assets/unicopia/models/item/sour_apple_sapling.json b/src/main/resources/assets/unicopia/models/item/sour_apple_sapling.json new file mode 100644 index 00000000..5011ea3a --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/sour_apple_sapling.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "unicopia:item/sour_apple_sapling" + } +} diff --git a/src/main/resources/assets/unicopia/models/item/sour_apple_seeds.json b/src/main/resources/assets/unicopia/models/item/sour_apple_seeds.json new file mode 100644 index 00000000..aaf85db0 --- /dev/null +++ b/src/main/resources/assets/unicopia/models/item/sour_apple_seeds.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "unicopia:item/sour_apple_seeds" + } +} diff --git a/src/main/resources/assets/unicopia/textures/block/sour_apple_leaves.png b/src/main/resources/assets/unicopia/textures/block/sour_apple_leaves.png new file mode 100644 index 0000000000000000000000000000000000000000..5a8900de7d20a01cb4e0f8d782599c5fa0d0d215 GIT binary patch literal 1466 zcmV;r1x5OaP) zaB^>EX>4U6ba`-PAZ2)IW&i+q+O1Y=lJq7F{I65w2uR|29E?rXcY_>14SvoH_Rc0T z>xB|R65WzKwEX?2(qDMQSWni4=#%#bk4-j7#v+>YS++SDQ`_3&68_woLKSQxR;YA{D!Fq>&LF*!bSOQ{pBP;{8>dN|CR z0YC)b4#BX30pnR6dnAKMU(ONz|P5xD8;IJkQ1f(#+krfSDdV3ln{t; z>NS9xq#0aU>sqY^8<9iVsk6>G?}Cdix$M!vbB$G~da+9CJ6sI)hg7hi2xZ+DFv80k|mRV;z zyV=iSj&qvx!V6Mqv5Q;$5|+56C0C?c)oQD&zJ?lWs`+58vq~?VeKPmV8gHzDFzTFH zDDA949KvpbTRU-$GcYEW!FXs4AfcskW+GcFjX7$ZnIxzRCy3HDa%OIffkC^lxXK52 zCvzXX5$gWm@+Md2s8RQSFh`BL0dt?c4Op97e=n^L4H{c3!v?BRlwWaKVwRLFTZcb% z$5`gRj!759+P0(7#rtE~rPS7DuszSYEr8Uqt4o&{fEKzN5nExUOVMg&-8MC>R#Ggx z2)F7hD;FQ;ZPvNjqUIE(-=jCkhxJCH0J~c?@o)-X+56o`kS*d>m7a8U({&dIMf?_| zc|n0*VK~(;$R4{Oc)R=Oo$18=4Q}(w%1@T)Uboa$#&JgwpO=HJcLbX3A7mi z{t_jvVfy_*99G4s@-8XYYJ|4bJ$XAcFZ>OP^u0DWj7}1su{kU7BJ5p(T3ZAV0-}cs`jWl11nBj`gVy$4wbQ9@w2o=8{6Mi@T10Lh*J69=mivR!tOi4sRR5;6BQ_HP{FbtfacaJCmi2`z= zBcyc$h#C+LIMQ~s7Yaa12`Clh9UkLnHkU|_KQrS=kXaf4=v#wkZSsFuSYvWtT0Ab23mdGhSMx<=~cg=Efy0+U%hj03zEIMr{Z zoaJu|ww{}3y(+%F;J3oVA<(SG-JE&H)@8Lf-ri6hp&XyXbnvMBR3h?zFn$bpO}ud5 z`Y`uV@V$S(dww==aRC1!YSwmq4s#%j*JW+|NJQlkcU}|^kCW?FQLk!7vbTHaFQX$y UQvcF%2><{907*qoM6N<$f>(gQ&Hw-a literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/unicopia/textures/item/sour_apple_sapling.png b/src/main/resources/assets/unicopia/textures/item/sour_apple_sapling.png new file mode 100644 index 0000000000000000000000000000000000000000..5d45f9d82dc74e54de7a418fd242fe71400487e4 GIT binary patch literal 1964 zcmV;d2UGZoP) zaB^>EX>4U6ba`-PAZ2)IW&i+q+Pzm^arHeWYsZ``{%Eh!B}L}x!8s$` zpVk?pV3f6ZohMU~+&1`Yq)+SQUe@J0hMz2ory|CETkm3ny6(%Zo4j7p$ z%dr+EaN;UfNYsdm(%>LTnnYo#+(od;mo0Rhn~viuMI77+l1xxW*m2zEoc!DSqoOhD z3=zTmGgh#RdBQ+5iZcI03V_f!^T-_mKJV8Hz(R>aYKA$&!EDP?Q5-#TOUwbZK+s{- zwK=q{03pKJ4#toG0qaQ|d9r~y5Fw5c_+(hlVw4LYAm_NjN>&jMa3asMu_w?W%Z}GF zN(ewW@e%+{k_@a=oqD4|BXTG^aq67&F1YBD%U-;C=e-Yp)?yA4G`QeH2r;CPqeP7^ z`WRx2DQ1&632N0PpF)Z$rJQkShUSdjIc6*rE>g6(;!7y8q>?Mrr)qW8*HB|kHJipw znl{&b3oW+Pa;J_|>e^lRJ@nX9&jYD8Wax0ik1*m$BVVW;sG29t-jVwrHQJ~FFmqt0 z5IRxAatNminsnkOW>)whBK&EP<{~TF>{0j|86wD z-S9ss8rkM!-lKGm&CfY!t+l2#jcvN@mr#)2^n)_Z#33AmKA{8Nh#Zkfs&Himbzi<2-hjSoXSi`ZHhWV;af`Km_KwBBs< zPh=C~gHFEeAMgOi+`Ngp!-!-kvK1BSIhw&cgBr{quL0kdK=L}hE{{`Ukl3^zgjGv2 z9b`Fwf<9A1H0GS#&=^WxPr$lgjA*1|ZLZCvZoy?sb#|28dg9UmPo5cIdsyxjL{I8= zLE!0d+XVw3n!RGVWDp%^vEemzwDSP)_??L{q3q_=Kv_?Ag!o(fxNKRbnA4WD-KbGA z?QAM97QW}|!(s!IA4w86f}d^tmQ>7*RbF`FO!Ml4Zk$3>lulsD zceKT2az|4`5$yW_S2!H9tJbvoP?P#T?5vH&Wf^>V$mwCVZo+g($U8busNAZ!oz#m@u%w?$(%fp&*Nc!VI*jhZ3-`A1U#8-)Wd@D>|*{!89 z^#>@P7qxnhT!wC8do3SE364oldMRWx-<6C#LU5}~iPfhJ=Zg@>jApgGs1-d@K zRVy590005!Nkl|C@pTG_jwc%=)T~StjkKM{Q<)Z%p>Z1DRQ0mBF*xr;3(TE9j2|2@YMqM$9sG z*5F;|>v!gUj4^h8k#^J5(q|#pq!=-Cih3h#=vX zh3fOM`GuSp*Zt0kB%N*#x8?J4Vpk;GvT#nF6Cr|%?T~QG!fdRGoEIlLIKXT+Dg8&j z7VV)^7bj0ouwC~lRI`7dLdniZfDc=r8BdS0T&?L?1+LgmSOXWy#%s^1BZtUqJsl$Y`$kaJ*vU4PaGsVy+CbdUPKfaAUeIkr@KwzwtN~lZ~vZuw+EoX zPhPb|`pB>_8*6*N$U-&C)Y2rWq9sdqMxHr7B$aT%ivM_t%C_r1BT0j!8@nN2(4Jq~ y1mHkF0(Ci?O={mr(&$@l zaB^>EX>4U6ba`-PAZ2)IW&i+q+Ray4lH)cE{pTri1Ogzq9EWSw+#tu#qc+Qy?CzdS zr6RTs8V0dFfN-1s_pf38!b3^fI1SM!?=2peT;hyPw2!B6G+8_5-r+?Xj}9p^Phadi z!n)%#sDR4KJnYF-B&P%ZpmfJ4ec{VthMzo&yCTLq@kwm3=O;d1W3)IBvzgK^JCFSM zEvP+|We356#K>~YV+Fhv`>?Ep6>YZFkh9HJTd*o6Vpt#Ks8OateW8^qTy)$yfHGH> zg%>4o;wn~1oDnCE1_w#fBnnIAE&?tezR+SfE#@jk7;XefCMYAESeDs0|90If8l%n> z5u)F71;3al3^cPS^BqzEgvMS+x+HjCuMdEQ5(lZ7=7<2ZEvt&6^r$T{3(x{V1$FD; z&^84~5o{}*Apru`lPGzzfjJN%j}iD}c+O%R7eGL&+~6fU5f5-8Pun;XXpv>*m5mkx z5Gq~*ph=Q}m2>L6alu8@P*zc=s$PReO`5%U=hb^3{OrXXB)Fi#hY(^&AxDWWYV z-$IKmwcM$rl)CHMeGfhM)bl{84H<6e@FR>k(#QvD3##S`vnz6+QKJnt0A?1<9E5h% zzz$(oLGwD%i5U=MM?gGG1W?dCF|(1Jgf?oP zZ9E-Szs5=_mR%(Gw~D^7bfLaYN?KCKK+bL9V;pr)4{ITZ_K>QotCZa+-Fdd1F|UW{ z8)4jeX&w&vtu5U9tbM@H6#EiS+MsIzY(p%CsI9 z;!%23O>V23@+A8t^J@LpMRSq*q~e1r{PY{==q@oG(Q@6BcN>IxYxPLuCp!;&<~6+! z!{18HLCtskxT1MAXMSe)JvH~JoT2MwWBWk*+8eyqazxXXxOZ7kWABD!F>-a2>6oi} z`o@>NLpU7wyZOllze9v^zUMDo=h}H@Jc)AIT&|CCcfG*Px5va6u9l-Jwe2+CNLu@an@ zb5)^?MR#os&c`jBm4fA0Ra&Qt63*<|ZfkOIKC2Qy@_oXTd`7D?Sn>m$tLpcnsbk+8 z_QgSh^OQ>$CQjsfIg$p)iK?{=x@$=rUP|(stdoC()HHPjVsIX1tSDn8BjmI`>dSVJ z03P*a7MMqUAvjNy_@@DTXQNCcql~2lhT^cq*;eq?&-7_M0gaA>Vc5wLO#lD@07*qo IM6N<$g3zjm!vFvP literal 0 HcmV?d00001 diff --git a/src/main/resources/data/minecraft/tags/blocks/leaves.json b/src/main/resources/data/minecraft/tags/blocks/leaves.json index 1bc14183..9df08ebc 100644 --- a/src/main/resources/data/minecraft/tags/blocks/leaves.json +++ b/src/main/resources/data/minecraft/tags/blocks/leaves.json @@ -3,6 +3,7 @@ "values": [ "unicopia:zap_leaves", "unicopia:green_apple_leaves", - "unicopia:sweet_apple_leaves" + "unicopia:sweet_apple_leaves", + "unicopia:sour_apple_leaves" ] } diff --git a/src/main/resources/data/minecraft/tags/items/leaves.json b/src/main/resources/data/minecraft/tags/items/leaves.json index 1bc14183..9df08ebc 100644 --- a/src/main/resources/data/minecraft/tags/items/leaves.json +++ b/src/main/resources/data/minecraft/tags/items/leaves.json @@ -3,6 +3,7 @@ "values": [ "unicopia:zap_leaves", "unicopia:green_apple_leaves", - "unicopia:sweet_apple_leaves" + "unicopia:sweet_apple_leaves", + "unicopia:sour_apple_leaves" ] } diff --git a/src/main/resources/data/minecraft/traits/blocks/overworld/organic_plant_derived.json b/src/main/resources/data/minecraft/traits/blocks/overworld/organic_plant_derived.json index 3dd37865..fe8c9136 100644 --- a/src/main/resources/data/minecraft/traits/blocks/overworld/organic_plant_derived.json +++ b/src/main/resources/data/minecraft/traits/blocks/overworld/organic_plant_derived.json @@ -2,6 +2,7 @@ "replace": false, "traits": "earth:2 life:1", "items": [ + "minecraft:oak_leaves", "minecraft:oak_planks", "minecraft:oak_log", "minecraft:oak_wood", @@ -9,13 +10,15 @@ "minecraft:oak_fence", "minecraft:oak_stairs", + "minecraft:spruce_leaves", "minecraft:spruce_planks", "minecraft:spruce_log", "minecraft:spruce_wood", "minecraft:spruce_slab", "minecraft:spruce_fence", "minecraft:spruce_stairs", - + + "minecraft:birch_leaves", "minecraft:birch_planks", "minecraft:birch_log", "minecraft:birch_wood", @@ -23,6 +26,7 @@ "minecraft:birch_fence", "minecraft:birch_stairs", + "minecraft:jungle_leaves", "minecraft:jungle_planks", "minecraft:jungle_log", "minecraft:jungle_wood", @@ -30,6 +34,7 @@ "minecraft:jungle_fence", "minecraft:jungle_stairs", + "minecraft:acacia_leaves", "minecraft:acacia_planks", "minecraft:acacia_log", "minecraft:acacia_wood", diff --git a/src/main/resources/data/minecraft/traits/blocks/overworld/organic_plant_derived_dark.json b/src/main/resources/data/minecraft/traits/blocks/overworld/organic_plant_derived_dark.json index 56d1e4e0..f0020cac 100644 --- a/src/main/resources/data/minecraft/traits/blocks/overworld/organic_plant_derived_dark.json +++ b/src/main/resources/data/minecraft/traits/blocks/overworld/organic_plant_derived_dark.json @@ -2,6 +2,7 @@ "replace": false, "traits": "earth:2 life:1 darkness:1", "items": [ + "minecraft:dark_oak_leaves", "minecraft:dark_oak_planks", "minecraft:dark_oak_log", "minecraft:dark_oak_stairs", diff --git a/src/main/resources/data/unicopia/loot_tables/blocks/sour_apple.json b/src/main/resources/data/unicopia/loot_tables/blocks/sour_apple.json new file mode 100644 index 00000000..72c4d970 --- /dev/null +++ b/src/main/resources/data/unicopia/loot_tables/blocks/sour_apple.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1.0, + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "unicopia:sour_apple" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/unicopia/loot_tables/blocks/sour_apple_leaves.json b/src/main/resources/data/unicopia/loot_tables/blocks/sour_apple_leaves.json new file mode 100644 index 00000000..08eab347 --- /dev/null +++ b/src/main/resources/data/unicopia/loot_tables/blocks/sour_apple_leaves.json @@ -0,0 +1,116 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "conditions": [ + { + "condition": "minecraft:alternative", + "terms": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "items": [ + "minecraft:shears" + ] + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + ], + "name": "unicopia:sour_apple_leaves" + } + ] + } + ], + "rolls": 1.0 + }, + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:inverted", + "term": { + "condition": "minecraft:alternative", + "terms": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "items": [ + "minecraft:shears" + ] + } + }, + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + } + } + ], + "entries": [ + { + "type": "minecraft:item", + "conditions": [ + { + "chances": [ + 0.02, + 0.022222223, + 0.025, + 0.033333335, + 0.1 + ], + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune" + } + ], + "functions": [ + { + "add": false, + "count": { + "type": "minecraft:uniform", + "max": 2.0, + "min": 1.0 + }, + "function": "minecraft:set_count" + }, + { + "function": "minecraft:explosion_decay" + } + ], + "name": "minecraft:stick" + } + ], + "rolls": 1.0 + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/unicopia/loot_tables/blocks/sour_apple_sapling.json b/src/main/resources/data/unicopia/loot_tables/blocks/sour_apple_sapling.json new file mode 100644 index 00000000..deece711 --- /dev/null +++ b/src/main/resources/data/unicopia/loot_tables/blocks/sour_apple_sapling.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1.0, + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "unicopia:sour_apple_sapling" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/unicopia/recipes/sour_apple_to_seeds.json b/src/main/resources/data/unicopia/recipes/sour_apple_to_seeds.json new file mode 100644 index 00000000..7884a668 --- /dev/null +++ b/src/main/resources/data/unicopia/recipes/sour_apple_to_seeds.json @@ -0,0 +1,7 @@ +{ + "type": "minecraft:crafting_shapeless", + "ingredients": [ + { "item": "unicopia:sour_apple" } + ], + "result": { "item": "unicopia:sour_apple_seeds", "count": 2 } +} diff --git a/src/main/resources/data/unicopia/traits/organic_plant_derived.json b/src/main/resources/data/unicopia/traits/organic_plant_derived.json new file mode 100644 index 00000000..dc650d27 --- /dev/null +++ b/src/main/resources/data/unicopia/traits/organic_plant_derived.json @@ -0,0 +1,9 @@ +{ + "replace": false, + "traits": "earth:2 life:1", + "items": [ + "unicopia:green_apple_leaves", + "unicopia:sweet_apple_leaves", + "unicopia:sour_apple_leaves" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/unicopia/traits/organic_plant_derived_zap.json b/src/main/resources/data/unicopia/traits/organic_plant_derived_zap.json new file mode 100644 index 00000000..172f955c --- /dev/null +++ b/src/main/resources/data/unicopia/traits/organic_plant_derived_zap.json @@ -0,0 +1,11 @@ +{ + "replace": false, + "traits": "earth:2 life:1 chaos:3", + "items": [ + "unicopia:zap_leaves", + "unicopia:zap_log", + "unicopia:stripped_zap_log", + "unicopia:zap_wood", + "unicopia:stripped_zap_wood" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/unicopia/tree_types/sour_apple.json b/src/main/resources/data/unicopia/tree_types/sour_apple.json new file mode 100644 index 00000000..b2825d9f --- /dev/null +++ b/src/main/resources/data/unicopia/tree_types/sour_apple.json @@ -0,0 +1,6 @@ +{ + "logs": [ "minecraft:oak_log", "minecraft:oak_wood" ], + "leaves": [ "unicopia:sour_apple_leaves" ], + "wideTrunk": false, + "drops": [] +} \ No newline at end of file