diff options
Diffstat (limited to 'Minecraft.World/DesertBiome.cpp')
| -rw-r--r-- | Minecraft.World/DesertBiome.cpp | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/Minecraft.World/DesertBiome.cpp b/Minecraft.World/DesertBiome.cpp new file mode 100644 index 00000000..6928861e --- /dev/null +++ b/Minecraft.World/DesertBiome.cpp @@ -0,0 +1,33 @@ +#include "stdafx.h" +#include "net.minecraft.world.level.levelgen.feature.h" +#include "net.minecraft.world.level.h" +#include "net.minecraft.world.level.tile.h" +#include "net.minecraft.world.level.biome.h" + +DesertBiome::DesertBiome(int id) : Biome(id) +{ + // remove default mob spawn settings + friendlies.clear(); + friendlies_chicken.clear(); // 4J added + friendlies_wolf.clear(); // 4J added + this->topMaterial = (BYTE) Tile::sand_Id; + this->material = (BYTE) Tile::sand_Id; + + decorator->treeCount = -999; + decorator->deadBushCount = 2; + decorator->reedsCount = 50; + decorator->cactusCount = 10; +} + +void DesertBiome::decorate(Level *level, Random *random, int xo, int zo) +{ + Biome::decorate(level, random, xo, zo); + + if (random->nextInt(1000) == 0) + { + int x = xo + random->nextInt(16) + 8; + int z = zo + random->nextInt(16) + 8; + Feature *well = new DesertWellFeature(); + well->place(level, random, x, level->getHeightmap(x, z) + 1, z); + } +}
\ No newline at end of file |
