aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.World/MegaTreeFeature.cpp
diff options
context:
space:
mode:
authorLoki Rautio <lokirautio@gmail.com>2026-03-04 03:56:03 -0600
committerLoki Rautio <lokirautio@gmail.com>2026-03-04 03:56:03 -0600
commit42aec6dac53dffa6afe072560a7e1d4986112538 (patch)
tree0836426857391df1b6a83f6368a183f83ec9b104 /Minecraft.World/MegaTreeFeature.cpp
parentc9d58eeac7c72f0b3038e084667b4d89a6249fce (diff)
parentef9b6fd500dfabd9463267b0dd9e29577eea8a2b (diff)
Merge branch 'main' into pr/win64-world-saves
# Conflicts: # Minecraft.Client/MinecraftServer.cpp # README.md
Diffstat (limited to 'Minecraft.World/MegaTreeFeature.cpp')
-rw-r--r--Minecraft.World/MegaTreeFeature.cpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/Minecraft.World/MegaTreeFeature.cpp b/Minecraft.World/MegaTreeFeature.cpp
index 77e06e30..09195fb4 100644
--- a/Minecraft.World/MegaTreeFeature.cpp
+++ b/Minecraft.World/MegaTreeFeature.cpp
@@ -55,10 +55,10 @@ bool MegaTreeFeature::place(Level *level, Random *random, int x, int y, int z)
int belowTile = level->getTile(x, y - 1, z);
if ((belowTile != Tile::grass_Id && belowTile != Tile::dirt_Id) || y >= Level::maxBuildHeight - treeHeight - 1) return false;
- level->setTileNoUpdate(x, y - 1, z, Tile::dirt_Id);
- level->setTileNoUpdate(x + 1, y - 1, z, Tile::dirt_Id);
- level->setTileNoUpdate(x, y - 1, z + 1, Tile::dirt_Id);
- level->setTileNoUpdate(x + 1, y - 1, z + 1, Tile::dirt_Id);
+ level->setTileAndData(x, y - 1, z, Tile::dirt_Id, 0, Tile::UPDATE_CLIENTS);
+ level->setTileAndData(x + 1, y - 1, z, Tile::dirt_Id, 0, Tile::UPDATE_CLIENTS);
+ level->setTileAndData(x, y - 1, z + 1, Tile::dirt_Id, 0, Tile::UPDATE_CLIENTS);
+ level->setTileAndData(x + 1, y - 1, z + 1, Tile::dirt_Id, 0, Tile::UPDATE_CLIENTS);
PIXBeginNamedEvent(0,"MegaTree placing leaves, %d, %d, %d", x, z, y+treeHeight);
placeLeaves(level, x, z, y + treeHeight, 2, random);
@@ -189,7 +189,7 @@ void MegaTreeFeature::placeLeaves(Level *level, int x, int z, int topPosition, i
PIXBeginNamedEvent(0,"Getting tile");
int t = level->getTile(xx, yy, zz);
PIXEndNamedEvent();
- if (!Tile::solid[t])
+ if (t == 0 || t == Tile::leaves_Id)
{
PIXBeginNamedEvent(0,"Placing block");
placeBlock(level, xx, yy, zz, Tile::leaves_Id, leafType);