From d2156aab7cf25383c8f893e6222c89dcf5c17aa4 Mon Sep 17 00:00:00 2001 From: Tiger Wang Date: Wed, 5 Aug 2020 08:35:10 +0100 Subject: WakeUpSimulators correct Y computation + Add Y validity check to SimulatorManager --- src/Simulator/SimulatorManager.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src/Simulator') diff --git a/src/Simulator/SimulatorManager.cpp b/src/Simulator/SimulatorManager.cpp index 07b4a7214..81044d705 100644 --- a/src/Simulator/SimulatorManager.cpp +++ b/src/Simulator/SimulatorManager.cpp @@ -71,8 +71,12 @@ void cSimulatorManager::WakeUp(cChunk & a_Chunk, Vector3i a_Position) for (const auto Offset : cSimulator::AdjacentOffsets) { auto Relative = a_Position + Offset; - auto Chunk = a_Chunk.GetRelNeighborChunkAdjustCoords(Relative); + if (!cChunkDef::IsValidHeight(Relative.y)) + { + continue; + } + auto Chunk = a_Chunk.GetRelNeighborChunkAdjustCoords(Relative); if ((Chunk == nullptr) || !Chunk->IsValid()) { continue; -- cgit v1.2.3