public function populate(ChunkManager $level, $chunkX, $chunkZ, Random $random) { $overLap = 8; $firstSeed = $random->nextInt(); $secondSeed = $random->nextInt(); for ($cxx = 0; $cxx < 1; $cxx++) { for ($czz = 0; $czz < 1; $czz++) { $dcx = $chunkX + $cxx; $dcz = $chunkZ + $czz; for ($cxxx = -$overLap; $cxxx <= $overLap; $cxxx++) { for ($czzz = -$overLap; $czzz <= $overLap; $czzz++) { $dcxx = $dcx + $cxxx; $dczz = $dcz + $czzz; $this->pop($level, $dcxx, $dczz, $dcx, $dcz, new Random($dcxx * $firstSeed ^ $dczz * $secondSeed ^ $random->getSeed())); } } } } }