From cfbb6e527a3dd68bd8524fa42e9296dfd59d023e Mon Sep 17 00:00:00 2001 From: Matt Caughey Date: Mon, 23 Sep 2013 19:55:28 -0400 Subject: [PATCH] Added reed gen --- .../biomes/BiomeDecoratorBOP.java | 18 +++++++++++ .../biomesoplenty/biomes/BiomeGenBayou.java | 1 + common/biomesoplenty/biomes/BiomeGenBog.java | 1 + .../biomes/BiomeGenBorealForest.java | 1 + .../biomes/BiomeGenDeadForest.java | 1 + .../biomes/BiomeGenDeadSwamp.java | 1 + .../biomes/BiomeGenDeciduousForest.java | 1 + common/biomesoplenty/biomes/BiomeGenFen.java | 1 + .../biomes/BiomeGenLushSwamp.java | 1 + .../biomes/BiomeGenMangrove.java | 1 + .../biomesoplenty/biomes/BiomeGenMarsh.java | 1 + .../biomes/BiomeGenQuagmire.java | 1 + .../biomes/BiomeGenSilkglades.java | 1 + .../biomes/BiomeGenSludgepit.java | 1 + .../biomesoplenty/biomes/BiomeGenWetland.java | 1 + .../biomes/beach/BiomeGenBeachOvergrown.java | 1 + .../biomes/vanilla/BiomeGenSwampNew.java | 1 + .../worldgen/WorldGenWaterReeds.java | 29 ++++++++++++++++++ .../textures/blocks/item_reed.png | Bin 471 -> 456 bytes .../biomesoplenty/textures/blocks/reed.png | Bin 720 -> 610 bytes .../textures/blocks/reedbottom.png | Bin 688 -> 508 bytes 21 files changed, 63 insertions(+) create mode 100644 common/biomesoplenty/worldgen/WorldGenWaterReeds.java diff --git a/common/biomesoplenty/biomes/BiomeDecoratorBOP.java b/common/biomesoplenty/biomes/BiomeDecoratorBOP.java index f269367a6..39f5d2ea0 100644 --- a/common/biomesoplenty/biomes/BiomeDecoratorBOP.java +++ b/common/biomesoplenty/biomes/BiomeDecoratorBOP.java @@ -98,6 +98,7 @@ import biomesoplenty.worldgen.WorldGenSponge; import biomesoplenty.worldgen.WorldGenSprout; import biomesoplenty.worldgen.WorldGenSteppe; import biomesoplenty.worldgen.WorldGenSunflower; +import biomesoplenty.worldgen.WorldGenWaterReeds; import biomesoplenty.worldgen.tree.WorldGenPromisedWillow; public class BiomeDecoratorBOP extends BiomeDecorator @@ -182,6 +183,7 @@ public class BiomeDecoratorBOP extends BiomeDecorator public WorldGenerator plantDeadGen; public WorldGenerator plantDesertGen; public WorldGenerator cattailGen; + public WorldGenerator waterReedGen; public WorldGenerator highCattailGen; public WorldGenerator outbackGen; public WorldGenerator smolderingGrassGen; @@ -328,6 +330,7 @@ public class BiomeDecoratorBOP extends BiomeDecorator public int bluebellsPerChunk; public int minersDelightPerChunk; public int icyIrisPerChunk; + public int waterReedsPerChunk; public int boneSpinesPerChunk; public int boneSpines2PerChunk; @@ -532,6 +535,7 @@ public class BiomeDecoratorBOP extends BiomeDecorator desertCactusGen = new WorldGenDesertCactus(); waterlilyGen = new WorldGenWaterlily(); algaeGen = new WorldGenAlgae(); + waterReedGen = new WorldGenWaterReeds(); pitGen = new WorldGenPit(Blocks.ash.get().blockID); waterlilyPerChunk = 0; lilyflowersPerChunk = 0; @@ -623,6 +627,7 @@ public class BiomeDecoratorBOP extends BiomeDecorator bluebellsPerChunk = 0; minersDelightPerChunk = 2; icyIrisPerChunk = 0; + waterReedsPerChunk = 0; generateLakes = true; generateAsh = false; generateMycelium = false; @@ -1701,6 +1706,19 @@ public class BiomeDecoratorBOP extends BiomeDecorator algaeGen.generate(currentWorld, randomGenerator, var3, var5, var4); } + + for (var2 = 0; doGen && var2 < waterReedsPerChunk; ++var2) + { + var3 = chunk_X + randomGenerator.nextInt(16) + 8; + var4 = chunk_Z + randomGenerator.nextInt(16) + 8; + + for (var5 = randomGenerator.nextInt(256); var5 > 0 && currentWorld.getBlockId(var3, var5 - 1, var4) == 0; --var5) + { + ; + } + + waterReedGen.generate(currentWorld, randomGenerator, var3, var5, var4); + } //Added doGen = TerrainGen.decorate(currentWorld, randomGenerator, chunk_X, chunk_Z, LILYPAD); diff --git a/common/biomesoplenty/biomes/BiomeGenBayou.java b/common/biomesoplenty/biomes/BiomeGenBayou.java index e66526d3e..82d385143 100644 --- a/common/biomesoplenty/biomes/BiomeGenBayou.java +++ b/common/biomesoplenty/biomes/BiomeGenBayou.java @@ -42,6 +42,7 @@ public class BiomeGenBayou extends BiomeGenBase customBiomeDecorator.algaePerChunk = 1; customBiomeDecorator.shrubsPerChunk = 2; customBiomeDecorator.wheatGrassPerChunk = 7; + customBiomeDecorator.waterReedsPerChunk = 3; customBiomeDecorator.generatePumpkins = false; waterColorMultiplier = 16767282; spawnableWaterCreatureList.clear(); diff --git a/common/biomesoplenty/biomes/BiomeGenBog.java b/common/biomesoplenty/biomes/BiomeGenBog.java index 370662642..5752231a6 100644 --- a/common/biomesoplenty/biomes/BiomeGenBog.java +++ b/common/biomesoplenty/biomes/BiomeGenBog.java @@ -40,6 +40,7 @@ public class BiomeGenBog extends BiomeGenBase customBiomeDecorator.waterLakesPerChunk = 6; customBiomeDecorator.wheatGrassPerChunk = 3; customBiomeDecorator.poisonWaterPerChunk = 2; + customBiomeDecorator.waterReedsPerChunk = 5; customBiomeDecorator.shrubsPerChunk = 10; customBiomeDecorator.generatePumpkins = false; } diff --git a/common/biomesoplenty/biomes/BiomeGenBorealForest.java b/common/biomesoplenty/biomes/BiomeGenBorealForest.java index 5684086ce..ea55b6a40 100644 --- a/common/biomesoplenty/biomes/BiomeGenBorealForest.java +++ b/common/biomesoplenty/biomes/BiomeGenBorealForest.java @@ -29,6 +29,7 @@ public class BiomeGenBorealForest extends BiomeGenBase customBiomeDecorator.grassPerChunk = 50; customBiomeDecorator.wheatGrassPerChunk = 25; customBiomeDecorator.shrubsPerChunk = 10; + customBiomeDecorator.waterReedsPerChunk = 2; } /** diff --git a/common/biomesoplenty/biomes/BiomeGenDeadForest.java b/common/biomesoplenty/biomes/BiomeGenDeadForest.java index 02954906e..9036089f9 100644 --- a/common/biomesoplenty/biomes/BiomeGenDeadForest.java +++ b/common/biomesoplenty/biomes/BiomeGenDeadForest.java @@ -29,6 +29,7 @@ public class BiomeGenDeadForest extends BiomeGenBase customBiomeDecorator.reedsPerChunk = -999; customBiomeDecorator.wheatGrassPerChunk = 1; customBiomeDecorator.shrubsPerChunk = 2; + customBiomeDecorator.waterReedsPerChunk = 2; } /** diff --git a/common/biomesoplenty/biomes/BiomeGenDeadSwamp.java b/common/biomesoplenty/biomes/BiomeGenDeadSwamp.java index d8975a423..0028418a3 100644 --- a/common/biomesoplenty/biomes/BiomeGenDeadSwamp.java +++ b/common/biomesoplenty/biomes/BiomeGenDeadSwamp.java @@ -32,6 +32,7 @@ public class BiomeGenDeadSwamp extends BiomeGenBase customBiomeDecorator.sandPerChunk2 = -999; customBiomeDecorator.reedsBOPPerChunk = 2; customBiomeDecorator.wheatGrassPerChunk = 10; + customBiomeDecorator.waterReedsPerChunk = 3; spawnableCreatureList.clear(); spawnableWaterCreatureList.clear(); waterColorMultiplier = 10661201; diff --git a/common/biomesoplenty/biomes/BiomeGenDeciduousForest.java b/common/biomesoplenty/biomes/BiomeGenDeciduousForest.java index 539bae479..127158732 100644 --- a/common/biomesoplenty/biomes/BiomeGenDeciduousForest.java +++ b/common/biomesoplenty/biomes/BiomeGenDeciduousForest.java @@ -30,6 +30,7 @@ public class BiomeGenDeciduousForest extends BiomeGenBase customBiomeDecorator.poisonIvyPerChunk = 1; customBiomeDecorator.wheatGrassPerChunk = 10; customBiomeDecorator.shrubsPerChunk = 10; + customBiomeDecorator.waterReedsPerChunk = 1; } /** diff --git a/common/biomesoplenty/biomes/BiomeGenFen.java b/common/biomesoplenty/biomes/BiomeGenFen.java index ed310986e..fe4c93bfe 100644 --- a/common/biomesoplenty/biomes/BiomeGenFen.java +++ b/common/biomesoplenty/biomes/BiomeGenFen.java @@ -41,6 +41,7 @@ public class BiomeGenFen extends BiomeGenBase customBiomeDecorator.algaePerChunk = 1; customBiomeDecorator.portobellosPerChunk = 1; customBiomeDecorator.wheatGrassPerChunk = 8; + customBiomeDecorator.waterReedsPerChunk = 6; customBiomeDecorator.shrubsPerChunk = 7; spawnableMonsterList.add(new SpawnListEntry(EntitySlime.class, 10, 1, 3)); } diff --git a/common/biomesoplenty/biomes/BiomeGenLushSwamp.java b/common/biomesoplenty/biomes/BiomeGenLushSwamp.java index 572249b77..eb62c358e 100644 --- a/common/biomesoplenty/biomes/BiomeGenLushSwamp.java +++ b/common/biomesoplenty/biomes/BiomeGenLushSwamp.java @@ -34,6 +34,7 @@ public class BiomeGenLushSwamp extends BiomeGenBase customBiomeDecorator.poisonWaterPerChunk = 2; customBiomeDecorator.carrotsPerChunk = 1; customBiomeDecorator.shrubsPerChunk = 5; + customBiomeDecorator.waterReedsPerChunk = 5; spawnableMonsterList.add(new SpawnListEntry(EntitySlime.class, 1, 1, 1)); } diff --git a/common/biomesoplenty/biomes/BiomeGenMangrove.java b/common/biomesoplenty/biomes/BiomeGenMangrove.java index 713fb6e15..8d4f1e487 100644 --- a/common/biomesoplenty/biomes/BiomeGenMangrove.java +++ b/common/biomesoplenty/biomes/BiomeGenMangrove.java @@ -27,6 +27,7 @@ public class BiomeGenMangrove extends BiomeGenBase customBiomeDecorator.deadGrassPerChunk = 9; customBiomeDecorator.reedsPerChunk = -999; customBiomeDecorator.cactiPerChunk = -999; + customBiomeDecorator.waterReedsPerChunk = 4; customBiomeDecorator.desertSproutsPerChunk = 1; customBiomeDecorator.waterLakesPerChunk = 10; } diff --git a/common/biomesoplenty/biomes/BiomeGenMarsh.java b/common/biomesoplenty/biomes/BiomeGenMarsh.java index 1299291f2..8394fcd02 100644 --- a/common/biomesoplenty/biomes/BiomeGenMarsh.java +++ b/common/biomesoplenty/biomes/BiomeGenMarsh.java @@ -34,6 +34,7 @@ public class BiomeGenMarsh extends BiomeGenBase customBiomeDecorator.sandPerChunk2 = -999; customBiomeDecorator.mudPerChunk = 1; customBiomeDecorator.mudPerChunk2 = 1; + customBiomeDecorator.waterReedsPerChunk = 10; customBiomeDecorator.generatePumpkins = false; spawnableMonsterList.add(new SpawnListEntry(EntitySlime.class, 10, 1, 3)); } diff --git a/common/biomesoplenty/biomes/BiomeGenQuagmire.java b/common/biomesoplenty/biomes/BiomeGenQuagmire.java index d3b73a596..0ec82dc3c 100644 --- a/common/biomesoplenty/biomes/BiomeGenQuagmire.java +++ b/common/biomesoplenty/biomes/BiomeGenQuagmire.java @@ -31,6 +31,7 @@ public class BiomeGenQuagmire extends BiomeGenBase customBiomeDecorator.sandPerChunk = -999; customBiomeDecorator.sandPerChunk2 = -999; customBiomeDecorator.wheatGrassPerChunk = 3; + customBiomeDecorator.waterReedsPerChunk = 1; waterColorMultiplier = 13390080; customBiomeDecorator.generateQuagmire = true; } diff --git a/common/biomesoplenty/biomes/BiomeGenSilkglades.java b/common/biomesoplenty/biomes/BiomeGenSilkglades.java index 646445878..1c6d4e314 100644 --- a/common/biomesoplenty/biomes/BiomeGenSilkglades.java +++ b/common/biomesoplenty/biomes/BiomeGenSilkglades.java @@ -39,6 +39,7 @@ public class BiomeGenSilkglades extends BiomeGenBase customBiomeDecorator.sproutsPerChunk = 2; customBiomeDecorator.poisonIvyPerChunk = 2; customBiomeDecorator.cobwebsPerChunk = 9; + customBiomeDecorator.waterReedsPerChunk = 3; customBiomeDecorator.generatePumpkins = true; waterColorMultiplier = 16777079; spawnableWaterCreatureList.clear(); diff --git a/common/biomesoplenty/biomes/BiomeGenSludgepit.java b/common/biomesoplenty/biomes/BiomeGenSludgepit.java index 303c4bc60..44852264b 100644 --- a/common/biomesoplenty/biomes/BiomeGenSludgepit.java +++ b/common/biomesoplenty/biomes/BiomeGenSludgepit.java @@ -39,6 +39,7 @@ public class BiomeGenSludgepit extends BiomeGenBase customBiomeDecorator.deadBushPerChunk = 5; customBiomeDecorator.algaePerChunk = 2; customBiomeDecorator.poisonWaterPerChunk = 5; + customBiomeDecorator.waterReedsPerChunk = 4; spawnableCreatureList.add(new SpawnListEntry(EntitySlime.class, 1, 1, 1)); waterColorMultiplier = 11506176; } diff --git a/common/biomesoplenty/biomes/BiomeGenWetland.java b/common/biomesoplenty/biomes/BiomeGenWetland.java index 8fd8e5ed5..ace1a0218 100644 --- a/common/biomesoplenty/biomes/BiomeGenWetland.java +++ b/common/biomesoplenty/biomes/BiomeGenWetland.java @@ -45,6 +45,7 @@ public class BiomeGenWetland extends BiomeGenBase customBiomeDecorator.portobellosPerChunk = 1; customBiomeDecorator.berryBushesPerChunk = 1; customBiomeDecorator.shrubsPerChunk = 10; + customBiomeDecorator.waterReedsPerChunk = 7; spawnableCreatureList.clear(); spawnableWaterCreatureList.clear(); spawnableMonsterList.add(new SpawnListEntry(EntitySlime.class, 10, 1, 3)); diff --git a/common/biomesoplenty/biomes/beach/BiomeGenBeachOvergrown.java b/common/biomesoplenty/biomes/beach/BiomeGenBeachOvergrown.java index 0b5be5755..365028184 100644 --- a/common/biomesoplenty/biomes/beach/BiomeGenBeachOvergrown.java +++ b/common/biomesoplenty/biomes/beach/BiomeGenBeachOvergrown.java @@ -26,6 +26,7 @@ public class BiomeGenBeachOvergrown extends BiomeGenBase customBiomeDecorator.duneGrassPerChunk = 25; customBiomeDecorator.cactiPerChunk = 5; customBiomeDecorator.outbackPerChunk = 7; + customBiomeDecorator.waterReedsPerChunk = 6; } /** diff --git a/common/biomesoplenty/biomes/vanilla/BiomeGenSwampNew.java b/common/biomesoplenty/biomes/vanilla/BiomeGenSwampNew.java index 12e0c530b..cd2c1c930 100644 --- a/common/biomesoplenty/biomes/vanilla/BiomeGenSwampNew.java +++ b/common/biomesoplenty/biomes/vanilla/BiomeGenSwampNew.java @@ -39,6 +39,7 @@ public class BiomeGenSwampNew extends BiomeGenBase customBiomeDecorator.mudPerChunk = 9; customBiomeDecorator.mudPerChunk2 = 9; customBiomeDecorator.portobellosPerChunk = 1; + customBiomeDecorator.waterReedsPerChunk = 5; waterColorMultiplier = 14745456; spawnableMonsterList.add(new SpawnListEntry(EntitySlime.class, 1, 1, 1)); } diff --git a/common/biomesoplenty/worldgen/WorldGenWaterReeds.java b/common/biomesoplenty/worldgen/WorldGenWaterReeds.java new file mode 100644 index 000000000..a2e6f5e59 --- /dev/null +++ b/common/biomesoplenty/worldgen/WorldGenWaterReeds.java @@ -0,0 +1,29 @@ +package biomesoplenty.worldgen; + +import java.util.Random; + +import net.minecraft.block.Block; +import net.minecraft.world.World; +import net.minecraft.world.gen.feature.WorldGenerator; +import biomesoplenty.api.Blocks; + +public class WorldGenWaterReeds extends WorldGenerator +{ + @Override + public boolean generate(World par1World, Random par2Random, int par3, int par4, int par5) + { + for (int var6 = 0; var6 < 64; ++var6) + { + int var7 = par3 + par2Random.nextInt(4) - par2Random.nextInt(4); + int var8 = par4 + par2Random.nextInt(4) - par2Random.nextInt(4); + int var9 = par5 + par2Random.nextInt(4) - par2Random.nextInt(4); + + if (par1World.isAirBlock(var7, var8, var9) && par1World.getBlockId(var7, var8 - 1, var9) == Block.waterStill.blockID) + { + par1World.setBlock(var7, var8, var9, Blocks.plants.get().blockID, 14, 2); + } + } + + return true; + } +} diff --git a/resources/assets/biomesoplenty/textures/blocks/item_reed.png b/resources/assets/biomesoplenty/textures/blocks/item_reed.png index b9b3c790ade6ad14587f20e48af6a04921e1ccba..316de252c2fcc0892786b6eaedf60d292a4b7c3b 100644 GIT binary patch delta 371 zcmV-(0gV3F1IPoAB#|)~3c&yX4#5Gqk!$UdQz?H$Nklhb(v*b@1_Ez9n|u@*244z&C?&=duS2~=APD$r06`fsnz4Ysv1))4HCg$;rKrG;3) zntYrMz#2gT4Ay`RfHZ^rt|G(te_3nTe>Yn_!kW+l$Pf^1ZLCbZrU3*D3;~?@#{^GHk_^r2jweOamJNRe}j%w!-KWTN?krxH$8FUtQS$%X?bD z^r_9&|9{<^@&D59W`9hBK(_8%RsJ7DgEa40Qux2F!2AEKuB87DxR`G0Y5*Z(tHYyW?{H3ck&GaR-p%KzV06aK%w zGUR`6eboPnjgkM)>}dVJXGQ7%o|=&VA8#%C-&GX^4il&rR9(Rxe|4@0SQE%AAax)wf;C_RvB8#Lzc&{9{lBoY@&EMpc*2^{K~0_~STV>8 eV1Ypn7#IMzUfuPf7Tf9o0000yvdB#|)~3cvsW4!{9w)`p@gr{8ti_6tCCSR7lp4J9JeNA-9GjQT%Baqimrw9XQ&Pe{l@3GR6aE z1q%Z1HpWwiv|lHq;h3DDIi*b4851+hHran&%K7P{p0Tqti7*Rg^NlHm=vYf}-c-y# z4XLvkhpud*K;)I6tyqaJzZtj&SlDe)Hc%6R4%hRQ?%bPwC2wFiGcSk$Rttchiz zrX+^3sVSYXp+>Zihtr4ki8>b9_2FwoGd75w?9VpB<(hb%{%I9GD8wxMIFN{t=X`hF zQ&F^P!b{z-i_tum3cyhj|16`MfJ+LWJY&cs{1TAh#%qF;d9f#3o8TjNLGJU>470uE zLz33%Isf~OsxKGLNP2ZxLi62{3JwZv_>uE% zds_Zx#;sg-N9P|qPAO+^GSKOC*!gf{T%w+{^lkVDWH&q{$rm=-l}hDg1fYnxdj+sI zmxly43cp<$mY=(K_~7^c9PclilPm-sO*qp*^eX2!p?NnSU&q*hdWujyJP#D?b04u_cIYHW=^bOkhA6Ows+=w=vfCBnx+{f;%FbuO58unBoG+$ zjZhD|x@75bKXu6BY`5S)fLPer4m-lR>@xm*KA%^<2ffrG-~{L}76^t9tHrJBy7~uM Wmi*0IyL#RL0000!phzi5X|YfR3WZWZl)D7c1Y`8UnE2?&j+t4vNaTh1;7KOu?A&)(;BayWfIO{7 z;NFo)Bi=_U>0v1V!)lDQqxoQBh20#&%dHHbvl2O*`XS7kaW@(HZJ>Z9dq`K4>+|A? zeL{bSZZQO%GMn()XH(6z2(}g=!?Tgtf~$N8&W|_d4G?N%4S3Kz6T#6$xRAEN%Cc+S zSy5s~4-(JXsRbs~R3F$mKRjG3r&UlFmhON*OH-8 zh(Ozv0pm(+m;C9YO&B*-ifM6?H9*`{(&T^4oq8b=^njTSK;O=iE@nc+7)PdjGXa_C z&b-06l?R-P8jF$h(jHAmjmbC}HNsTc7vk2!^QcS*Bjtz3PQguT80;GnhU_KHoBWKq z;OilDiM{^Qph%3@Kt}L9z8!&YvG6e8C?uJWKjbd}z@KcXa}`_aT*dwyg75_+S62}P TQ_f^S00000NkvXXu0mjfc+kp8 delta 604 zcmV-i0;B!>1F!{IWoH&9s$Ev483U7&#Cjv9^rhhDTv_q}EGIfTZG_j~7? znRm`PGh^*`+d7?&#a@s4#l?l4MJD|;GUwfH*WBHHq~`x!ZYQBJPjBCmy|+5%?{+3+ zD=Cx7*q8lT|8u$|=YPTaxPOdJ%O;t^-xBvcw$d+Obh%GAM~KB@(b8KZei)qgLZM*i z@i}j`T4F~MMfl%-HsJA%2@gKG=Gko4YPH%WgU!eNPOw_78r0*f13d)J+wi#lVTRmK zu^IhyOF#7X*KSF7rBV?xs34%7II++1MJJBD_q$WFdo*#N6@NKDj}}C=(P$XH-IZan zBQNyyx*rCHog4680TStWKA*QzsbtB`DgS-4C}br5FN3~OfHx|DK_a7UHk&H==H*Q_ zmt<@Tk$zFv&Z!+!`rtfiNq^VCBJxn8eZxm>o?#*n6f%>&S(41I2T0z>0N0S=A(m3|;3 z))|WQh^~{zvf)px4T?c7m%Eg392|8L!_Nm*J-L2EV?;mk)YfhFhz(?o$%DBhkia3C zDKKxCKp8)yrHR<=1JprgwD|05K|qWw56Q`>t~L=rh&lM74+t^j^%(5DxTMT|7M*vN q1-ei_4$pcbFsa$&=U~Ie-R&=7tLBzdsRsxE0000