Search in sources :

Example 1 with TreeRTGCocosNucifera

use of rtg.api.world.gen.feature.tree.rtg.TreeRTGCocosNucifera in project Realistic-Terrain-Generation by Team-RTG.

the class RealisticBiomeVanillaJungleM method initDecos.

@Override
public void initDecos() {
    // Blend of the WorldGenMegaJungle collection and some tall RTG Mangrove trees.
    TreeRTG mucronataTree = new TreeRTGRhizophoraMucronata(4, 5, 13f, 0.32f, 0.2f);
    mucronataTree.setLogBlock(BlockUtil.getStateLog(3));
    mucronataTree.setLeavesBlock(BlockUtil.getStateLeaf(3));
    mucronataTree.setMinTrunkSize(3);
    mucronataTree.setMaxTrunkSize(4);
    mucronataTree.setMinCrownSize(10);
    mucronataTree.setMaxCrownSize(27);
    this.addTree(mucronataTree);
    DecoTree mangroves = new DecoTree(mucronataTree);
    mangroves.setLoops(3);
    mangroves.setTreeType(DecoTree.TreeType.RTG_TREE);
    mangroves.setTreeCondition(DecoTree.TreeCondition.RANDOM_CHANCE);
    mangroves.setTreeConditionChance(2);
    mangroves.setMaxY(160);
    DecoTree megaJungle = new DecoTree(new WorldGenMegaJungle(false, 10, 27, BlockUtil.getStateLog(3), BlockUtil.getStateLeaf(3)));
    megaJungle.setLogBlock(BlockUtil.getStateLog(3));
    megaJungle.setLeavesBlock(BlockUtil.getStateLeaf(3));
    megaJungle.setMinTrunkSize(3);
    megaJungle.setMaxTrunkSize(4);
    megaJungle.setMinCrownSize(10);
    megaJungle.setMaxCrownSize(27);
    megaJungle.setLoops(3);
    megaJungle.setTreeType(DecoTree.TreeType.WORLDGEN);
    megaJungle.setTreeCondition(DecoTree.TreeCondition.RANDOM_CHANCE);
    megaJungle.setTreeConditionChance(2);
    megaJungle.setMaxY(160);
    DecoHelperThisOrThat decoHelperThisOrThat = new DecoHelperThisOrThat(3, DecoHelperThisOrThat.ChanceType.NOT_EQUALS_ZERO, megaJungle, mangroves);
    this.addDeco(decoHelperThisOrThat);
    // Add some palm trees for variety.
    TreeRTG nuciferaTree = new TreeRTGCocosNucifera();
    nuciferaTree.setMinTrunkSize(7);
    nuciferaTree.setMaxTrunkSize(9);
    nuciferaTree.setMinCrownSize(6);
    nuciferaTree.setMaxCrownSize(8);
    this.addTree(nuciferaTree);
    DecoTree palmCustom = new DecoTree(nuciferaTree);
    palmCustom.setLoops(1);
    palmCustom.setTreeType(DecoTree.TreeType.RTG_TREE);
    palmCustom.setTreeCondition(DecoTree.TreeCondition.RANDOM_CHANCE);
    palmCustom.setTreeConditionChance(3);
    palmCustom.setMaxY(160);
    this.addDeco(palmCustom);
    // Another pass of the WorldGenMegaJungle collection for extra jungleness.
    this.addDeco(decoHelperThisOrThat);
    // Jungle logs.
    DecoFallenTree decoFallenTree = new DecoFallenTree();
    decoFallenTree.setLoops(1);
    decoFallenTree.getDistribution().setNoiseDivisor(100f);
    decoFallenTree.getDistribution().setNoiseFactor(5f);
    decoFallenTree.getDistribution().setNoiseAddend(0.8f);
    decoFallenTree.setLogCondition(NOISE_GREATER_AND_RANDOM_CHANCE);
    decoFallenTree.setLogConditionNoise(0f);
    decoFallenTree.setLogConditionChance(3);
    decoFallenTree.setLogBlock(BlockUtil.getStateLog(3));
    decoFallenTree.setLeavesBlock(BlockUtil.getStateLeaf(3));
    decoFallenTree.setMinSize(4);
    decoFallenTree.setMaxSize(9);
    this.addDeco(decoFallenTree, this.getConfig().ALLOW_LOGS.get());
    // At this point, let's hand over some of the decoration to the base biome, but only about 85% of the time.
    DecoBaseBiomeDecorations decoBaseBiomeDecorations = new DecoBaseBiomeDecorations();
    decoBaseBiomeDecorations.setNotEqualsZeroChance(6);
    decoBaseBiomeDecorations.setLoops(1);
    this.addDeco(decoBaseBiomeDecorations);
    // A combo-deal of lilypads and vines. (This could probably be pulled out into individual decos.)
    DecoJungleLilypadVines decoJungleLilypadVines = new DecoJungleLilypadVines();
    this.addDeco(decoJungleLilypadVines);
    // A combo-deal of grass and vines. (This could probably be pulled out into individual decos.)
    DecoJungleGrassVines decoJungleGrassVines = new DecoJungleGrassVines();
    this.addDeco(decoJungleGrassVines);
    // Flowers.
    DecoFlowersRTG decoFlowersRTG = new DecoFlowersRTG();
    // Only orange tulips fit in with the colour scheme.
    decoFlowersRTG.setFlowers(new int[] { 5 });
    decoFlowersRTG.setChance(4);
    decoFlowersRTG.setMaxY(120);
    decoFlowersRTG.setStrengthFactor(2f);
    this.addDeco(decoFlowersRTG);
    // Tall cacti on red sand - matches the colour scheme nicely.
    DecoJungleCacti decoJungleCacti = new DecoJungleCacti();
    decoJungleCacti.setStrengthFactor(8f);
    decoJungleCacti.setMaxY(120);
    decoJungleCacti.setSandOnly(false);
    decoJungleCacti.setExtraHeight(7);
    decoJungleCacti.setSandMeta((byte) 1);
    this.addDeco(decoJungleCacti, this.getConfig().ALLOW_CACTUS.get());
    // Mossy boulders for the green.
    DecoBoulder decoBoulder = new DecoBoulder();
    decoBoulder.setBoulderBlock(Blocks.MOSSY_COBBLESTONE.getDefaultState());
    decoBoulder.setChance(16);
    decoBoulder.setMaxY(95);
    decoBoulder.setStrengthFactor(2f);
    this.addDeco(decoBoulder);
    // Grass filler.
    DecoGrass decoGrass = new DecoGrass();
    decoGrass.setMaxY(128);
    decoGrass.setStrengthFactor(12f);
    this.addDeco(decoGrass);
}
Also used : WorldGenMegaJungle(net.minecraft.world.gen.feature.WorldGenMegaJungle) TreeRTGCocosNucifera(rtg.api.world.gen.feature.tree.rtg.TreeRTGCocosNucifera) TreeRTG(rtg.api.world.gen.feature.tree.rtg.TreeRTG) DecoHelperThisOrThat(rtg.api.world.deco.helper.DecoHelperThisOrThat) TreeRTGRhizophoraMucronata(rtg.api.world.gen.feature.tree.rtg.TreeRTGRhizophoraMucronata)

Example 2 with TreeRTGCocosNucifera

use of rtg.api.world.gen.feature.tree.rtg.TreeRTGCocosNucifera in project Realistic-Terrain-Generation by Team-RTG.

the class RealisticBiomeVanillaJungle method initDecos.

@Override
public void initDecos() {
    // Blend of the WorldGenMegaJungle collection and some tall RTG Mangrove trees.
    TreeRTG mucronataTree = new TreeRTGRhizophoraMucronata(4, 5, 13f, 0.32f, 0.2f);
    mucronataTree.setLogBlock(BlockUtil.getStateLog(3));
    mucronataTree.setLeavesBlock(BlockUtil.getStateLeaf(3));
    mucronataTree.setMinTrunkSize(3);
    mucronataTree.setMaxTrunkSize(4);
    mucronataTree.setMinCrownSize(10);
    mucronataTree.setMaxCrownSize(27);
    this.addTree(mucronataTree);
    DecoTree mangroves = new DecoTree(new TreeRTGRhizophoraMucronata(4, 5, 13f, 0.32f, 0.2f));
    mangroves.setLoops(3);
    mangroves.setTreeType(DecoTree.TreeType.RTG_TREE);
    mangroves.setTreeCondition(DecoTree.TreeCondition.RANDOM_CHANCE);
    mangroves.setTreeConditionChance(2);
    mangroves.setMaxY(160);
    DecoTree megaJungle = new DecoTree(new WorldGenMegaJungle(false, 10, 27, BlockUtil.getStateLog(3), BlockUtil.getStateLeaf(3)));
    megaJungle.setLogBlock(BlockUtil.getStateLog(3));
    megaJungle.setLeavesBlock(BlockUtil.getStateLeaf(3));
    megaJungle.setMinTrunkSize(3);
    megaJungle.setMaxTrunkSize(4);
    megaJungle.setMinCrownSize(10);
    megaJungle.setMaxCrownSize(27);
    megaJungle.setLoops(3);
    megaJungle.setTreeType(DecoTree.TreeType.WORLDGEN);
    megaJungle.setTreeCondition(DecoTree.TreeCondition.RANDOM_CHANCE);
    megaJungle.setTreeConditionChance(2);
    megaJungle.setMaxY(160);
    DecoHelperThisOrThat decoHelperThisOrThat = new DecoHelperThisOrThat(3, DecoHelperThisOrThat.ChanceType.NOT_EQUALS_ZERO, megaJungle, mangroves);
    this.addDeco(decoHelperThisOrThat);
    // Add some palm trees for variety.
    TreeRTG nuciferaTree = new TreeRTGCocosNucifera();
    nuciferaTree.setMinTrunkSize(7);
    nuciferaTree.setMaxTrunkSize(9);
    nuciferaTree.setMinCrownSize(6);
    nuciferaTree.setMaxCrownSize(8);
    this.addTree(nuciferaTree);
    DecoTree palmCustom = new DecoTree(nuciferaTree);
    palmCustom.setLoops(1);
    palmCustom.setTreeType(DecoTree.TreeType.RTG_TREE);
    palmCustom.setTreeCondition(DecoTree.TreeCondition.RANDOM_CHANCE);
    palmCustom.setTreeConditionChance(3);
    palmCustom.setMaxY(160);
    this.addDeco(palmCustom);
    // Another pass of the WorldGenMegaJungle collection for extra jungleness.
    this.addDeco(decoHelperThisOrThat);
    // Jungle logs.
    DecoFallenTree decoFallenTree = new DecoFallenTree();
    decoFallenTree.setLoops(1);
    decoFallenTree.getDistribution().setNoiseDivisor(100f);
    decoFallenTree.getDistribution().setNoiseFactor(5f);
    decoFallenTree.getDistribution().setNoiseAddend(0.8f);
    decoFallenTree.setLogCondition(NOISE_GREATER_AND_RANDOM_CHANCE);
    decoFallenTree.setLogConditionNoise(0f);
    decoFallenTree.setLogConditionChance(3);
    decoFallenTree.setLogBlock(BlockUtil.getStateLog(3));
    decoFallenTree.setLeavesBlock(BlockUtil.getStateLeaf(3));
    decoFallenTree.setMinSize(4);
    decoFallenTree.setMaxSize(9);
    this.addDeco(decoFallenTree, this.getConfig().ALLOW_LOGS.get());
    // At this point, let's hand over some of the decoration to the base biome, but only about 85% of the time.
    DecoBaseBiomeDecorations decoBaseBiomeDecorations = new DecoBaseBiomeDecorations();
    decoBaseBiomeDecorations.setNotEqualsZeroChance(6);
    decoBaseBiomeDecorations.setLoops(1);
    this.addDeco(decoBaseBiomeDecorations);
    // A combo-deal of lilypads and vines. (This could probably be pulled out into individual decos.)
    DecoJungleLilypadVines decoJungleLilypadVines = new DecoJungleLilypadVines();
    this.addDeco(decoJungleLilypadVines);
    // A combo-deal of grass and vines. (This could probably be pulled out into individual decos.)
    DecoJungleGrassVines decoJungleGrassVines = new DecoJungleGrassVines();
    this.addDeco(decoJungleGrassVines);
    // Flowers.
    DecoFlowersRTG decoFlowersRTG = new DecoFlowersRTG();
    // Only orange tulips fit in with the colour scheme.
    decoFlowersRTG.setFlowers(new int[] { 5 });
    decoFlowersRTG.setChance(4);
    decoFlowersRTG.setMaxY(120);
    decoFlowersRTG.setStrengthFactor(2f);
    this.addDeco(decoFlowersRTG);
    // Tall cacti on red sand - matches the colour scheme nicely.
    DecoJungleCacti decoJungleCacti = new DecoJungleCacti();
    decoJungleCacti.setStrengthFactor(8f);
    decoJungleCacti.setMaxY(120);
    decoJungleCacti.setSandOnly(false);
    decoJungleCacti.setExtraHeight(7);
    decoJungleCacti.setSandMeta((byte) 1);
    this.addDeco(decoJungleCacti, this.getConfig().ALLOW_CACTUS.get());
    // Mossy boulders for the green.
    DecoBoulder decoBoulder = new DecoBoulder();
    decoBoulder.setBoulderBlock(Blocks.MOSSY_COBBLESTONE.getDefaultState());
    decoBoulder.setChance(16);
    decoBoulder.setMaxY(95);
    decoBoulder.setStrengthFactor(2f);
    this.addDeco(decoBoulder);
    // Grass filler.
    DecoGrass decoGrass = new DecoGrass();
    decoGrass.setMaxY(128);
    decoGrass.setStrengthFactor(12f);
    this.addDeco(decoGrass);
}
Also used : WorldGenMegaJungle(net.minecraft.world.gen.feature.WorldGenMegaJungle) TreeRTGCocosNucifera(rtg.api.world.gen.feature.tree.rtg.TreeRTGCocosNucifera) TreeRTG(rtg.api.world.gen.feature.tree.rtg.TreeRTG) DecoHelperThisOrThat(rtg.api.world.deco.helper.DecoHelperThisOrThat) TreeRTGRhizophoraMucronata(rtg.api.world.gen.feature.tree.rtg.TreeRTGRhizophoraMucronata)

Example 3 with TreeRTGCocosNucifera

use of rtg.api.world.gen.feature.tree.rtg.TreeRTGCocosNucifera in project Realistic-Terrain-Generation by Team-RTG.

the class RealisticBiomeVanillaJungleHills method initDecos.

@Override
public void initDecos() {
    // Blend of the WorldGenMegaJungle collection and some tall RTG Mangrove trees.
    TreeRTG mucronataTree = new TreeRTGRhizophoraMucronata(4, 5, 13f, 0.32f, 0.2f);
    mucronataTree.setLogBlock(BlockUtil.getStateLog(3));
    mucronataTree.setLeavesBlock(BlockUtil.getStateLeaf(3));
    mucronataTree.setMinTrunkSize(3);
    mucronataTree.setMaxTrunkSize(4);
    mucronataTree.setMinCrownSize(10);
    mucronataTree.setMaxCrownSize(27);
    this.addTree(mucronataTree);
    DecoTree mangroves = new DecoTree(mucronataTree);
    mangroves.setLoops(3);
    mangroves.setTreeType(DecoTree.TreeType.RTG_TREE);
    mangroves.setTreeCondition(DecoTree.TreeCondition.RANDOM_CHANCE);
    mangroves.setTreeConditionChance(2);
    mangroves.setMaxY(160);
    DecoTree megaJungle = new DecoTree(new WorldGenMegaJungle(false, 10, 27, BlockUtil.getStateLog(3), BlockUtil.getStateLeaf(3)));
    megaJungle.setLogBlock(BlockUtil.getStateLog(3));
    megaJungle.setLeavesBlock(BlockUtil.getStateLeaf(3));
    megaJungle.setMinTrunkSize(3);
    megaJungle.setMaxTrunkSize(4);
    megaJungle.setMinCrownSize(10);
    megaJungle.setMaxCrownSize(27);
    megaJungle.setLoops(3);
    megaJungle.setTreeType(DecoTree.TreeType.WORLDGEN);
    megaJungle.setTreeCondition(DecoTree.TreeCondition.RANDOM_CHANCE);
    megaJungle.setTreeConditionChance(2);
    megaJungle.setMaxY(160);
    DecoHelperThisOrThat decoHelperThisOrThat = new DecoHelperThisOrThat(3, DecoHelperThisOrThat.ChanceType.NOT_EQUALS_ZERO, megaJungle, mangroves);
    this.addDeco(decoHelperThisOrThat);
    // Add some palm trees for variety.
    TreeRTG nuciferaTree = new TreeRTGCocosNucifera();
    nuciferaTree.setMinTrunkSize(7);
    nuciferaTree.setMaxTrunkSize(9);
    nuciferaTree.setMinCrownSize(6);
    nuciferaTree.setMaxCrownSize(8);
    this.addTree(nuciferaTree);
    DecoTree palmCustom = new DecoTree(nuciferaTree);
    palmCustom.setLoops(1);
    palmCustom.setTreeType(DecoTree.TreeType.RTG_TREE);
    palmCustom.setTreeCondition(DecoTree.TreeCondition.RANDOM_CHANCE);
    palmCustom.setTreeConditionChance(3);
    palmCustom.setMaxY(160);
    this.addDeco(palmCustom);
    // Another pass of the WorldGenMegaJungle collection for extra jungleness.
    this.addDeco(decoHelperThisOrThat);
    // Jungle logs.
    DecoFallenTree decoFallenTree = new DecoFallenTree();
    decoFallenTree.setLoops(1);
    decoFallenTree.getDistribution().setNoiseDivisor(100f);
    decoFallenTree.getDistribution().setNoiseFactor(5f);
    decoFallenTree.getDistribution().setNoiseAddend(0.8f);
    decoFallenTree.setLogCondition(NOISE_GREATER_AND_RANDOM_CHANCE);
    decoFallenTree.setLogConditionNoise(0f);
    decoFallenTree.setLogConditionChance(3);
    decoFallenTree.setLogBlock(BlockUtil.getStateLog(3));
    decoFallenTree.setLeavesBlock(BlockUtil.getStateLeaf(3));
    decoFallenTree.setMinSize(4);
    decoFallenTree.setMaxSize(9);
    this.addDeco(decoFallenTree, this.getConfig().ALLOW_LOGS.get());
    // At this point, let's hand over some of the decoration to the base biome, but only about 85% of the time.
    DecoBaseBiomeDecorations decoBaseBiomeDecorations = new DecoBaseBiomeDecorations();
    decoBaseBiomeDecorations.setNotEqualsZeroChance(6);
    decoBaseBiomeDecorations.setLoops(1);
    this.addDeco(decoBaseBiomeDecorations);
    // A combo-deal of lilypads and vines. (This could probably be pulled out into individual decos.)
    DecoJungleLilypadVines decoJungleLilypadVines = new DecoJungleLilypadVines();
    this.addDeco(decoJungleLilypadVines);
    // A combo-deal of grass and vines. (This could probably be pulled out into individual decos.)
    DecoJungleGrassVines decoJungleGrassVines = new DecoJungleGrassVines();
    this.addDeco(decoJungleGrassVines);
    // Flowers.
    DecoFlowersRTG decoFlowersRTG = new DecoFlowersRTG();
    // Only orange tulips fit in with the colour scheme.
    decoFlowersRTG.setFlowers(new int[] { 5 });
    decoFlowersRTG.setChance(4);
    decoFlowersRTG.setMaxY(120);
    decoFlowersRTG.setStrengthFactor(2f);
    this.addDeco(decoFlowersRTG);
    // Tall cacti on red sand - matches the colour scheme nicely.
    DecoJungleCacti decoJungleCacti = new DecoJungleCacti();
    decoJungleCacti.setStrengthFactor(8f);
    decoJungleCacti.setMaxY(120);
    decoJungleCacti.setSandOnly(false);
    decoJungleCacti.setExtraHeight(7);
    decoJungleCacti.setSandMeta((byte) 1);
    this.addDeco(decoJungleCacti, this.getConfig().ALLOW_CACTUS.get());
    // Mossy boulders for the green.
    DecoBoulder decoBoulder = new DecoBoulder();
    decoBoulder.setBoulderBlock(Blocks.MOSSY_COBBLESTONE.getDefaultState());
    decoBoulder.setChance(16);
    decoBoulder.setMaxY(95);
    decoBoulder.setStrengthFactor(2f);
    this.addDeco(decoBoulder);
    // Grass filler.
    DecoGrass decoGrass = new DecoGrass();
    decoGrass.setMaxY(128);
    decoGrass.setStrengthFactor(12f);
    this.addDeco(decoGrass);
}
Also used : WorldGenMegaJungle(net.minecraft.world.gen.feature.WorldGenMegaJungle) TreeRTGCocosNucifera(rtg.api.world.gen.feature.tree.rtg.TreeRTGCocosNucifera) TreeRTG(rtg.api.world.gen.feature.tree.rtg.TreeRTG) DecoHelperThisOrThat(rtg.api.world.deco.helper.DecoHelperThisOrThat) TreeRTGRhizophoraMucronata(rtg.api.world.gen.feature.tree.rtg.TreeRTGRhizophoraMucronata)

Example 4 with TreeRTGCocosNucifera

use of rtg.api.world.gen.feature.tree.rtg.TreeRTGCocosNucifera in project Realistic-Terrain-Generation by Team-RTG.

the class RealisticBiomeVanillaBeach method initDecos.

@Override
public void initDecos() {
    // Scattered palm trees.
    TreeRTG nuciferaTree = new TreeRTGCocosNucifera();
    nuciferaTree.setMinTrunkSize(7);
    nuciferaTree.setMaxTrunkSize(9);
    nuciferaTree.setMinCrownSize(6);
    nuciferaTree.setMaxCrownSize(8);
    nuciferaTree.getValidGroundBlocks().clear();
    nuciferaTree.getValidGroundBlocks().add(Blocks.SAND.getDefaultState());
    this.addTree(nuciferaTree);
    DecoTree palmTrees = new DecoTree(nuciferaTree);
    palmTrees.setTreeType(DecoTree.TreeType.RTG_TREE);
    palmTrees.setTreeCondition(DecoTree.TreeCondition.NOISE_GREATER_AND_RANDOM_CHANCE);
    palmTrees.setTreeConditionNoise(-0.2f);
    palmTrees.setTreeConditionChance(12);
    palmTrees.setMaxY(68);
    this.addDeco(palmTrees, this.getConfig().ALLOW_PALM_TREES.get());
}
Also used : DecoTree(rtg.api.world.deco.DecoTree) TreeRTGCocosNucifera(rtg.api.world.gen.feature.tree.rtg.TreeRTGCocosNucifera) TreeRTG(rtg.api.world.gen.feature.tree.rtg.TreeRTG)

Aggregations

TreeRTG (rtg.api.world.gen.feature.tree.rtg.TreeRTG)4 TreeRTGCocosNucifera (rtg.api.world.gen.feature.tree.rtg.TreeRTGCocosNucifera)4 WorldGenMegaJungle (net.minecraft.world.gen.feature.WorldGenMegaJungle)3 DecoHelperThisOrThat (rtg.api.world.deco.helper.DecoHelperThisOrThat)3 TreeRTGRhizophoraMucronata (rtg.api.world.gen.feature.tree.rtg.TreeRTGRhizophoraMucronata)3 DecoTree (rtg.api.world.deco.DecoTree)1