From 320781793728ad1ffaa16474d64582463c77db27 Mon Sep 17 00:00:00 2001 From: paulevsGitch Date: Sat, 10 Oct 2020 21:52:47 +0300 Subject: [PATCH] Chorus grass --- .../ru/betterend/blocks/basis/BlockPlant.java | 14 +++++-- .../ru/betterend/registry/BlockRegistry.java | 3 ++ .../betterend/registry/FeatureRegistry.java | 1 + .../world/biome/BiomeChorusForest.java | 1 + .../world/features/EndLakeFeature.java | 8 ++-- .../betterend/blockstates/chorus_grass.json | 38 ++++++++++++++++++ .../models/block/chorus_grass_01.json | 6 +++ .../models/block/chorus_grass_02.json | 6 +++ .../models/block/chorus_grass_03.json | 6 +++ .../models/block/chorus_grass_04.json | 6 +++ .../models/block/chorus_grass_05.json | 6 +++ .../models/block/chorus_grass_06.json | 6 +++ .../models/block/chorus_grass_07.json | 6 +++ .../models/block/chorus_grass_08.json | 6 +++ .../betterend/models/item/chorus_grass.json | 6 +++ .../textures/block/chorus_grass_01.png | Bin 0 -> 2061 bytes .../textures/block/chorus_grass_02.png | Bin 0 -> 2039 bytes .../textures/block/chorus_grass_03.png | Bin 0 -> 2108 bytes .../textures/block/chorus_grass_04.png | Bin 0 -> 2015 bytes 19 files changed, 113 insertions(+), 6 deletions(-) create mode 100644 src/main/resources/assets/betterend/blockstates/chorus_grass.json create mode 100644 src/main/resources/assets/betterend/models/block/chorus_grass_01.json create mode 100644 src/main/resources/assets/betterend/models/block/chorus_grass_02.json create mode 100644 src/main/resources/assets/betterend/models/block/chorus_grass_03.json create mode 100644 src/main/resources/assets/betterend/models/block/chorus_grass_04.json create mode 100644 src/main/resources/assets/betterend/models/block/chorus_grass_05.json create mode 100644 src/main/resources/assets/betterend/models/block/chorus_grass_06.json create mode 100644 src/main/resources/assets/betterend/models/block/chorus_grass_07.json create mode 100644 src/main/resources/assets/betterend/models/block/chorus_grass_08.json create mode 100644 src/main/resources/assets/betterend/models/item/chorus_grass.json create mode 100644 src/main/resources/assets/betterend/textures/block/chorus_grass_01.png create mode 100644 src/main/resources/assets/betterend/textures/block/chorus_grass_02.png create mode 100644 src/main/resources/assets/betterend/textures/block/chorus_grass_03.png create mode 100644 src/main/resources/assets/betterend/textures/block/chorus_grass_04.png diff --git a/src/main/java/ru/betterend/blocks/basis/BlockPlant.java b/src/main/java/ru/betterend/blocks/basis/BlockPlant.java index ef675a52..64e17a66 100644 --- a/src/main/java/ru/betterend/blocks/basis/BlockPlant.java +++ b/src/main/java/ru/betterend/blocks/basis/BlockPlant.java @@ -38,15 +38,23 @@ public class BlockPlant extends BlockBaseNotFull implements IRenderTypeable, Fer private static final VoxelShape SHAPE = Block.createCuboidShape(4, 0, 4, 12, 14, 12); public BlockPlant() { - super(FabricBlockSettings.of(Material.PLANT) + this(false); + } + + public BlockPlant(int light) { + this(false, light); + } + + public BlockPlant(boolean replaceable) { + super(FabricBlockSettings.of(replaceable ? Material.PLANT : Material.REPLACEABLE_PLANT) .breakByTool(FabricToolTags.SHEARS) .sounds(BlockSoundGroup.GRASS) .breakByHand(true) .noCollision()); } - public BlockPlant(int light) { - super(FabricBlockSettings.of(Material.PLANT) + public BlockPlant(boolean replaceable, int light) { + super(FabricBlockSettings.of(replaceable ? Material.PLANT : Material.REPLACEABLE_PLANT) .breakByTool(FabricToolTags.SHEARS) .sounds(BlockSoundGroup.GRASS) .lightLevel(light) diff --git a/src/main/java/ru/betterend/registry/BlockRegistry.java b/src/main/java/ru/betterend/registry/BlockRegistry.java index 8f9251cd..5860712a 100644 --- a/src/main/java/ru/betterend/registry/BlockRegistry.java +++ b/src/main/java/ru/betterend/registry/BlockRegistry.java @@ -29,6 +29,7 @@ import ru.betterend.blocks.EndStoneSmelter; import ru.betterend.blocks.EnderBlock; import ru.betterend.blocks.TerminiteBlock; import ru.betterend.blocks.basis.BlockGlowingFur; +import ru.betterend.blocks.basis.BlockPlant; import ru.betterend.blocks.basis.BlockVine; import ru.betterend.blocks.complex.WoodenMaterial; import ru.betterend.tab.CreativeTab; @@ -69,6 +70,8 @@ public class BlockRegistry { public static final Block END_LILY = registerBlockNI("end_lily", new BlockEndLily()); public static final Block END_LILY_SEED = registerBlock("end_lily_seed", new BlockEndLilySeed()); + public static final Block CHORUS_GRASS = registerBlock("chorus_grass", new BlockPlant(true)); + // Vines // public static final Block DENSE_VINE = registerBlock("dense_vine", new BlockVine(15, true)); diff --git a/src/main/java/ru/betterend/registry/FeatureRegistry.java b/src/main/java/ru/betterend/registry/FeatureRegistry.java index 92c4589e..60a2d3f6 100644 --- a/src/main/java/ru/betterend/registry/FeatureRegistry.java +++ b/src/main/java/ru/betterend/registry/FeatureRegistry.java @@ -16,6 +16,7 @@ public class FeatureRegistry { public static final EndFeature UMBRELLA_MOSS = new EndFeature("umbrella_moss", new DoublePlantFeature(BlockRegistry.UMBRELLA_MOSS, BlockRegistry.UMBRELLA_MOSS_TALL, 5), 5); public static final EndFeature CREEPING_MOSS = new EndFeature("creeping_moss", new SinglePlantFeature(BlockRegistry.CREEPING_MOSS, 5), 5); public static final EndFeature BLUE_VINE = new EndFeature("blue_vine", new BlueVineFeature(), 1); + public static final EndFeature CHORUS_GRASS = new EndFeature("chorus_grass", new SinglePlantFeature(BlockRegistry.CHORUS_GRASS, 4), 4); public static final EndFeature DENSE_VINE = new EndFeature("dense_vine", new VineFeature(BlockRegistry.DENSE_VINE, 24), 3); diff --git a/src/main/java/ru/betterend/world/biome/BiomeChorusForest.java b/src/main/java/ru/betterend/world/biome/BiomeChorusForest.java index b647bb02..4d07d47d 100644 --- a/src/main/java/ru/betterend/world/biome/BiomeChorusForest.java +++ b/src/main/java/ru/betterend/world/biome/BiomeChorusForest.java @@ -18,6 +18,7 @@ public class BiomeChorusForest extends EndBiome { .addStructureFeature(StructureRegistry.GIANT_MOSSY_GLOWSHROOM) .addFeature(FeatureRegistry.ENDER_ORE) .addFeature(FeatureRegistry.RARE_END_LAKE) + .addFeature(FeatureRegistry.CHORUS_GRASS) .addMobSpawn(EntityRegistry.END_SLIME, 5, 1, 2) .addMobSpawn(EntityType.ENDERMAN, 50, 1, 4)); } diff --git a/src/main/java/ru/betterend/world/features/EndLakeFeature.java b/src/main/java/ru/betterend/world/features/EndLakeFeature.java index f92cf8a3..f2fe5996 100644 --- a/src/main/java/ru/betterend/world/features/EndLakeFeature.java +++ b/src/main/java/ru/betterend/world/features/EndLakeFeature.java @@ -168,9 +168,11 @@ public class EndLakeFeature extends DefaultFeature { if (world.getBlockState(pos).getBlock().isIn(BlockTagRegistry.GEN_TERRAIN)) { BlocksHelper.setWithoutUpdate(world, POS.down(), BlockRegistry.ENDSTONE_DUST.getDefaultState()); - EndBiome biome = BiomeRegistry.getFromBiome(world.getBiome(POS)); - if (biome == BiomeRegistry.CHORUS_FOREST) { - generateFoggyMushroomland(world, x, z, waterLevel); + if (random.nextInt(3) == 0 && pos.getY() < waterLevel - 1) { + EndBiome biome = BiomeRegistry.getFromBiome(world.getBiome(POS)); + if (biome == BiomeRegistry.FOGGY_MUSHROOMLAND) { + generateFoggyMushroomland(world, x, z, waterLevel); + } } } pos = POS.up(); diff --git a/src/main/resources/assets/betterend/blockstates/chorus_grass.json b/src/main/resources/assets/betterend/blockstates/chorus_grass.json new file mode 100644 index 00000000..6de30ad2 --- /dev/null +++ b/src/main/resources/assets/betterend/blockstates/chorus_grass.json @@ -0,0 +1,38 @@ +{ + "variants": { + "": [ + { "model": "betterend:block/chorus_grass_01" }, + { "model": "betterend:block/chorus_grass_02" }, + { "model": "betterend:block/chorus_grass_03" }, + { "model": "betterend:block/chorus_grass_04" }, + { "model": "betterend:block/chorus_grass_05" }, + { "model": "betterend:block/chorus_grass_06" }, + { "model": "betterend:block/chorus_grass_07" }, + { "model": "betterend:block/chorus_grass_08" }, + { "model": "betterend:block/chorus_grass_01", "y": 90 }, + { "model": "betterend:block/chorus_grass_02", "y": 90 }, + { "model": "betterend:block/chorus_grass_03", "y": 90 }, + { "model": "betterend:block/chorus_grass_04", "y": 90 }, + { "model": "betterend:block/chorus_grass_05", "y": 90 }, + { "model": "betterend:block/chorus_grass_06", "y": 90 }, + { "model": "betterend:block/chorus_grass_07", "y": 90 }, + { "model": "betterend:block/chorus_grass_08", "y": 90 }, + { "model": "betterend:block/chorus_grass_01", "y": 180 }, + { "model": "betterend:block/chorus_grass_02", "y": 180 }, + { "model": "betterend:block/chorus_grass_03", "y": 180 }, + { "model": "betterend:block/chorus_grass_04", "y": 180 }, + { "model": "betterend:block/chorus_grass_05", "y": 180 }, + { "model": "betterend:block/chorus_grass_06", "y": 180 }, + { "model": "betterend:block/chorus_grass_07", "y": 180 }, + { "model": "betterend:block/chorus_grass_08", "y": 180 }, + { "model": "betterend:block/chorus_grass_01", "y": 270 }, + { "model": "betterend:block/chorus_grass_02", "y": 270 }, + { "model": "betterend:block/chorus_grass_03", "y": 270 }, + { "model": "betterend:block/chorus_grass_04", "y": 270 }, + { "model": "betterend:block/chorus_grass_05", "y": 270 }, + { "model": "betterend:block/chorus_grass_06", "y": 270 }, + { "model": "betterend:block/chorus_grass_07", "y": 270 }, + { "model": "betterend:block/chorus_grass_08", "y": 270 } + ] + } +} diff --git a/src/main/resources/assets/betterend/models/block/chorus_grass_01.json b/src/main/resources/assets/betterend/models/block/chorus_grass_01.json new file mode 100644 index 00000000..2231cc82 --- /dev/null +++ b/src/main/resources/assets/betterend/models/block/chorus_grass_01.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betterend:block/chorus_grass_01" + } +} diff --git a/src/main/resources/assets/betterend/models/block/chorus_grass_02.json b/src/main/resources/assets/betterend/models/block/chorus_grass_02.json new file mode 100644 index 00000000..761c1e67 --- /dev/null +++ b/src/main/resources/assets/betterend/models/block/chorus_grass_02.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betterend:block/chorus_grass_02" + } +} diff --git a/src/main/resources/assets/betterend/models/block/chorus_grass_03.json b/src/main/resources/assets/betterend/models/block/chorus_grass_03.json new file mode 100644 index 00000000..14c78de3 --- /dev/null +++ b/src/main/resources/assets/betterend/models/block/chorus_grass_03.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betterend:block/chorus_grass_03" + } +} diff --git a/src/main/resources/assets/betterend/models/block/chorus_grass_04.json b/src/main/resources/assets/betterend/models/block/chorus_grass_04.json new file mode 100644 index 00000000..8630cd2d --- /dev/null +++ b/src/main/resources/assets/betterend/models/block/chorus_grass_04.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cross", + "textures": { + "cross": "betterend:block/chorus_grass_04" + } +} diff --git a/src/main/resources/assets/betterend/models/block/chorus_grass_05.json b/src/main/resources/assets/betterend/models/block/chorus_grass_05.json new file mode 100644 index 00000000..8fead9a9 --- /dev/null +++ b/src/main/resources/assets/betterend/models/block/chorus_grass_05.json @@ -0,0 +1,6 @@ +{ + "parent": "betterend:block/crop_block", + "textures": { + "texture": "betterend:block/chorus_grass_01" + } +} diff --git a/src/main/resources/assets/betterend/models/block/chorus_grass_06.json b/src/main/resources/assets/betterend/models/block/chorus_grass_06.json new file mode 100644 index 00000000..3fc34e68 --- /dev/null +++ b/src/main/resources/assets/betterend/models/block/chorus_grass_06.json @@ -0,0 +1,6 @@ +{ + "parent": "betterend:block/crop_block", + "textures": { + "texture": "betterend:block/chorus_grass_02" + } +} diff --git a/src/main/resources/assets/betterend/models/block/chorus_grass_07.json b/src/main/resources/assets/betterend/models/block/chorus_grass_07.json new file mode 100644 index 00000000..e7ffd9bf --- /dev/null +++ b/src/main/resources/assets/betterend/models/block/chorus_grass_07.json @@ -0,0 +1,6 @@ +{ + "parent": "betterend:block/crop_block", + "textures": { + "texture": "betterend:block/chorus_grass_03" + } +} diff --git a/src/main/resources/assets/betterend/models/block/chorus_grass_08.json b/src/main/resources/assets/betterend/models/block/chorus_grass_08.json new file mode 100644 index 00000000..687c6976 --- /dev/null +++ b/src/main/resources/assets/betterend/models/block/chorus_grass_08.json @@ -0,0 +1,6 @@ +{ + "parent": "betterend:block/crop_block", + "textures": { + "texture": "betterend:block/chorus_grass_04" + } +} diff --git a/src/main/resources/assets/betterend/models/item/chorus_grass.json b/src/main/resources/assets/betterend/models/item/chorus_grass.json new file mode 100644 index 00000000..e4965460 --- /dev/null +++ b/src/main/resources/assets/betterend/models/item/chorus_grass.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "betterend:block/chorus_grass_01" + } +} diff --git a/src/main/resources/assets/betterend/textures/block/chorus_grass_01.png b/src/main/resources/assets/betterend/textures/block/chorus_grass_01.png new file mode 100644 index 0000000000000000000000000000000000000000..5962de43f87464773ba979f540995252af9a86f3 GIT binary patch literal 2061 zcmcIleQXnD9KMdo5ZG8GOZd=u-hhB`y^nV7daTaTj;(ARb8ALN1a`f9+a7E0j=S61 z4rDq7fjB>q1sQC*Fk+&SiF`$d8H9lX3B(W}Lku_tlpzf8BSZn;+uBMDkp1K3-n;j` zd*0{w{66k?Ys*Rt(?(AkjUY&xtH@an?-}|SH42)!4Co-5~09 zm!S?x0cf_-f^(FaMy)m@Wg%^}c@|2Ol$9W@1ZBcWiXknG$%e)c3|dooKU40U8@B~l zb}XoAGD8rNNW>U186_n^P&S*5AZdc8afraxn5eN)TvW3X3{IeOiXdx(B%(Sa>yv6V zI|h{wxe%6QN31Dy5e_;Hq}{G1O~ z8*640Z1WWXemrdGK~`NA4;cYzGyAP38YcndG5gIdo@1g}9MBdkNtq~~xB4-Z=NP}F zgjrZBLYNHzLKXuU`mY*?6p|FT#KV}I^n!-$(2F8Lh1rY6KamQsEItbf=wRJ3ET@;d z9pm&o10IV%79JA4;prTrjRXNCeN6I)V5;QTBCG=P12EFVsW0MD`c<~>@#=?{`~O#c zJh)tt6$1cvPy*BaA@p7|lp5l{SsQ%!KwnD0VYAbx$u0{Q$vzE4NUgvwyhlB{7C{Vs zE@!?cr|J9kvx~Q~8LI+H_xo>5X`R*B{84Lb>x`abc){Nz{;0f{GWlkzx2o#1rd6ws zS5`K9N3FZp_~M*z?zZ)+mkSQocilw?R^I+9cEV=b>YsN1*3S(o(Q~id+8E6>_J%5t z{J3M*#^OyS)99zur+#?yFY6iXy)|P;jws$%zAx4_5$ViZGIdhZyq&!pN~UG)>@8V; zwBxP0S*|HhrT0Y+gm-wSU%g-$_j~Gsi`&G##hI7OpFfq~UM9ckdHb+$@yw0K_uZ_? zLas-y1E#h7wCtMMyw1?^i?+~ny8X+SPds<~&UwUh=4yApLEgLk3bG~bP9`;WPv+9q z=jR1lOAD9oZs|Hy6}vxhlSH=f>CBaOcy}%C{5V7TbVc>qtq3o7G|fHq%;(nBhV+z+ zzW&C(CF@=t)xxjo2)4XFVcfF)ugO28m$uDMxv1UUP;jz1^UMd$;=FC^cQ3>XPURTd zO-CG_*~{}Px>xM4D>;75CG)$^ihG-~E?qNJTu=468rxhlaOpdMTTll0;|7R`AOfRcYDc(Oa5Dhpr_h%p=a}-lkbd4t6DVBJi1N)%_FXYQs?$L)s6oE De@oUr literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/betterend/textures/block/chorus_grass_02.png b/src/main/resources/assets/betterend/textures/block/chorus_grass_02.png new file mode 100644 index 0000000000000000000000000000000000000000..4ec519207e1d347bb35944ac40db2ba623cea143 GIT binary patch literal 2039 zcmcIleQ?uc9PW_uF^+*UZW+e@B?-z+`$0~GIbyy^Uc;(&I4}$kb9H7Z}Pm) z@A-Y?m!*XTd4p3%r|5LL!TBDy58a1q=YW3b`fz(EK(~RCXO^PV4H~AMNxHgqBXzpu z@A#r(wb(n2Va2c>aH1dTqhSf5b-Ju6Q3=O4fQ6tyz)S#}i6(5Ei6Q`Pga%04 zVZg|C=|cP6B3rISP}|>Kxtz!%jzo|co1e3oOaYFtaBKiknpnbb;b_8YplFIRS}ZJ= zV0%jD(Z>Tqx3X%gIK;?t95A!y0AaP5?Sz#w`3XB^HWOx})x-kU4{dgF@V*|-GQ@O zo*{?FAM>|~Uhi~v(?&`mBE3uUyJ3nLP$NKw&LE0(Z|aM@lYRwM++BU|a({2t$Ain3 z0wD-d2PJXMA5!Zz-Kin}pS7-cxAdhRIBIs$6@iymWTfkdy~9QqrroVxETTdPC@yrm@yxm-o_^vT)j}>%X*jUbxwLX1~?dygbnS zcx~&SFCJo(+r#ZwF12iHpU^u&;qaD|t zk3>7ZnQ|(7ZSwZFPW^rUwd6JPB(-gw+IZsF>@J&&|J+S)ScwVh3CYElM>GzuQwM*@pKo+gz4*ZeDg%uyNFp*+)tmPDtyo@5|rNwnExpQ0F_gDz@s} zv>jmN2bnbw9du@;_rL$sjs>afiiEm}vC-z0p`Tk9A8XuRn|tz^*~@a@DUqL~!nM0L zWeyy-(lg=kPi@QO-OJye`Te@uFDIl3NlwR!w%GJVXXgLI4Tm*-{fjI@dMvsA)s;^# mJ;{}n%y}>HdB(e2ZX`WhJoaYRRnu7Q*PNeI;NCX%x!AwC#m<)i literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/betterend/textures/block/chorus_grass_03.png b/src/main/resources/assets/betterend/textures/block/chorus_grass_03.png new file mode 100644 index 0000000000000000000000000000000000000000..1a1118a8621dd6a632b11050abb6864216e78fb1 GIT binary patch literal 2108 zcmcIldr%a096t>TVZ>LGp@Z8ZrpVsz?cN=CnZ}+#b!QCFadmJD> z5GNlDreZ$wIi*f!<7ArJfTp4;L!@SngxN!EYJ^cqBrTPG3&-U&>hMoH``i8fc0a$* z_w#-1cUL&lUL6`58LH7}hNdLjGT?o*YUS|7I^q683w)`+n>J&DAdwK^kVCiQU$N$BEnA|BUK7@?yHBTbnR|A9hl635dSwwZog zaAiRY6vad1xXNZD*^Cn;PLdczU~-vTVM;N#9No`g12QWK9z_t{h|0(~ zMXzE(q0&AVT%G`}TlR+u1`ID{Jh)Cvs4n#b?e?cbU9JFHR+37f6~Erc63ba-9)M>6 zS@cRQNGbttCA!}j#|HL#yi!rGryPreBH)5B84A+{OnC}KMU)G~C-@O~9q`6OTP46K zqLd|yMg56#^s^vVtC|=SGHH(B=0u-7Srz5q18j@}EGS8k1g2BZEK)~PI@(~GLQph8 z^g->g6gWm<1_l;6fiD{f)NZF!+_J*BS&(A0piq=n5ICCUSSQPx4H&_bJO(IzJZ3VQ z^%$imD1(VIaXNzR)dlz4MAoZDP~G2Gxtz#CjzExTp3*rfo})01H<>UUrPpI7z)%?J zB%K7s7y&_<`q^HS1o-hVMUS$osyN6vdJ=PTCOyU*^gLx`30}_` zQG{b@UX)x6EEU1U91j5(ziG-QWfBnvXkUYY+B$pppzS&@MB z)*a2TYPnlbR?RcuQ2%4$G0_{C&OTaS0f3}WNq!$p7J0?TNMJ@jjPyY23xAS+nJIa? z`hn&C|5fh~E?dC3^8xIjII8-CtG%W#HTZwC*8A>}zSIwg%}$*Lx-47-`ZRDuY6*7X zt4*e38qMGlDYh9|rlwt)=L$!q4}Ul@p`^hXK6J>P9eLs1-&!rPp@~a^#fbZZB5$4l zAa|vsJml`MkZt9$QE^yQdFMCQ$p_Qxcm94Nb#&1F*^`?2_{|$SjCJj+{?2Vo{191N zR=@SinXlq+FA&#ne6cMjlx=O%Y+4i?XV?C6FP}YI+tv72j~A)+wvBA*(I$*`9B93^ zCcOJ*NA%XT2EBdE+m)M|H;q_b`*rxj2X_~TZD?9_>G;S9`ayV?Om}Rn`LcOt#tGk{ z`0mmN7M z9xX&-x*BgZ9;Xg<0*RTFKY=ZBp+%Eqj{HhJNjRl^fw8lHRo z(&_6p*{7yg^w_J8J*;0cuQT$yyu9KYSEsaAbO+sTF8jQ(Yu57Q)!XkB`xY#FL&~mn z3_G{7<@#aA_I(Gsta6(-FDe-ij%h!2vi0J!jthGhS7%mlaeT61Y|~HcM==q*U&yj4_>?CUPY8`>507KofGfv6C$sU ziTNmKm1Xv^k5^xxzI4f_-^aajvXU>TxHfLhZ)KC758Y@=sB|B$UUj)LZg%Xu=ObLF zI@dXFWlsB{a&K(v_?>Ot(thLnyZ8wqgM*kIySvU$UDtRvJuUt2Gj(-AyJ~ZH((3;` MB`M9eFEMY)KboWQL;wH) literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/betterend/textures/block/chorus_grass_04.png b/src/main/resources/assets/betterend/textures/block/chorus_grass_04.png new file mode 100644 index 0000000000000000000000000000000000000000..f60f5956949e6d214be704ce1255bc23aa3b285c GIT binary patch literal 2015 zcmcIleQeZZ96mOM4J1wmgdvWmLjdGxNB?M?QR&2 z!U7Hw84itGmJB3-5ZxTYGR1(AOd(?d0||-=35oI{fn^SuBO&;9cRPszvVUy)w(r|M z@AG?pAN{p{d0FYi@zclKY_^F3zqbP3^Q@6G7G7r#JP_b5SM$GN*lZK>tue;d+%nB( zd-`WNSZP-BOF2=E+XYDt0edp8LA1@bU|~`d#Pz^LLLee59<=Z1aTJjy54zI96TDUe zqOyO34pwX^3yK@oi>!n$EJhY2IY74QlTL!AnE41rkS?5X;UtX_Bu6+onnltF3a#l%}ywSK49SEkX2URsT zlBne)EJ#U-l^8cNXQix2YQmUniAwJQUcm$&lp-hsBds$?ksM8NwEJa(<_IDMs+tV(jYb~I3)=K_jh3W^8rq|kr6RAMAH~0h20Ve zvkpMe!@A&puPRns5w!NFDpyiP$dL&WC%GJqQxKgPL(nWnu?&m32}tQC1XiS3(H$03 zUP88Ix(q)aA@(qbK zEEPE}L;$WS5fu4XO^F&)bzYTV%xSBjAv?6|mkpS`+Vm%~0=$);#bji-?l?iT%H4yC zR-S=`rXS0Xh~DUQrf3sU07;*a{1nVk!)8Lz!J-I^^l0h}f1G|psClyb(dGXCRi6&7 z7!{NVfE^S^Eq`#U*Q8Q||2J#H?;h$)BXHR4tZAmp!bPS}0|ip+unUueeML6gn8N|@ zqM*B{yOCG+yfV4&#`{B4?&iGKc_oXk2=6dX2M(PYqkr-1X;!cEc3>~Q*D;hkkZp2L3Aj)s?C1+R6`3+T^LqSGBxx{*QL{%vf`+d}ry*$gY>B%$0D*w@YT9 zb9MxrmF*XZ8QIVFXJ72}sCgeh7yi0HJm0cd+WyV8@moL3+18y^Q`PE9&TEY>ZF=FS z-IxB{;hg(p!>M`xY5)wQQ<>+aZ{yO(>UDX{elC&GH=`Bs*V2u D+84R7 literal 0 HcmV?d00001