diff options
author | Tycho <work.tycho+git@gmail.com> | 2014-04-05 23:12:17 +0200 |
---|---|---|
committer | Tycho <work.tycho+git@gmail.com> | 2014-04-05 23:12:17 +0200 |
commit | 23395a5ce1daab24465d607575c09e06e5b7c449 (patch) | |
tree | 18555c220fc6e602b071a935b190ef25444f18a9 /src/Blocks/BlockDirt.h | |
parent | Fixed tolua++ override support (diff) | |
parent | Fixed Endiannes conversion routines for floats and doubles. (diff) | |
download | cuberite-23395a5ce1daab24465d607575c09e06e5b7c449.tar cuberite-23395a5ce1daab24465d607575c09e06e5b7c449.tar.gz cuberite-23395a5ce1daab24465d607575c09e06e5b7c449.tar.bz2 cuberite-23395a5ce1daab24465d607575c09e06e5b7c449.tar.lz cuberite-23395a5ce1daab24465d607575c09e06e5b7c449.tar.xz cuberite-23395a5ce1daab24465d607575c09e06e5b7c449.tar.zst cuberite-23395a5ce1daab24465d607575c09e06e5b7c449.zip |
Diffstat (limited to 'src/Blocks/BlockDirt.h')
-rw-r--r-- | src/Blocks/BlockDirt.h | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/src/Blocks/BlockDirt.h b/src/Blocks/BlockDirt.h index 544424a04..aa24b8668 100644 --- a/src/Blocks/BlockDirt.h +++ b/src/Blocks/BlockDirt.h @@ -2,7 +2,7 @@ #pragma once #include "BlockHandler.h" -#include "../MersenneTwister.h" +#include "../FastRandom.h" @@ -44,12 +44,12 @@ public: } // Grass spreads to adjacent dirt blocks: - MTRand rand; // TODO: Replace with cFastRandom + cFastRandom rand; for (int i = 0; i < 2; i++) // Pick two blocks to grow to { - int OfsX = rand.randInt(2) - 1; // [-1 .. 1] - int OfsY = rand.randInt(4) - 3; // [-3 .. 1] - int OfsZ = rand.randInt(2) - 1; // [-1 .. 1] + int OfsX = rand.NextInt(3, a_RelX) - 1; // [-1 .. 1] + int OfsY = rand.NextInt(5, a_RelY) - 3; // [-3 .. 1] + int OfsZ = rand.NextInt(3, a_RelZ) - 1; // [-1 .. 1] BLOCKTYPE DestBlock; NIBBLETYPE DestMeta; @@ -79,7 +79,10 @@ public: Chunk->GetBlockTypeMeta(BlockX, BlockY + 1, BlockZ, AboveDest, AboveMeta); if ((cBlockInfo::IsOneHitDig(AboveDest) || cBlockInfo::IsTransparent(AboveDest)) && !IsBlockWater(AboveDest)) { - Chunk->FastSetBlock(BlockX, BlockY, BlockZ, E_BLOCK_GRASS, 0); + if (!cRoot::Get()->GetPluginManager()->CallHookBlockSpread((cWorld*) &a_WorldInterface, BlockX * cChunkDef::Width, BlockY, BlockZ * cChunkDef::Width, ssGrassSpread)) + { + Chunk->FastSetBlock(BlockX, BlockY, BlockZ, E_BLOCK_GRASS, 0); + } } } // for i - repeat twice } |