From b691c43c44ff180d10e7d4a9afc83b98551ff586 Mon Sep 17 00:00:00 2001 From: daoge_cmd <3523206925@qq.com> Date: Sun, 1 Mar 2026 12:16:08 +0800 Subject: Initial commit --- Minecraft.World/DesertBiome.cpp | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 Minecraft.World/DesertBiome.cpp (limited to 'Minecraft.World/DesertBiome.cpp') 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 -- cgit v1.2.3