From 9d620a20a0d1fa6af8b6af044610563a7af77712 Mon Sep 17 00:00:00 2001 From: Lane Kolbly Date: Sat, 13 Jun 2015 16:09:43 -0500 Subject: Work on NetherPortalScanner. Setup portal scanner to reset PortalCooldown. Changed where player is spawned. Added a_InitSpawn flag to CreateAndInitializeWorld. --- src/NetherPortalScanner.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'src/NetherPortalScanner.cpp') diff --git a/src/NetherPortalScanner.cpp b/src/NetherPortalScanner.cpp index 7bc2d4b7e..cebf09ceb 100644 --- a/src/NetherPortalScanner.cpp +++ b/src/NetherPortalScanner.cpp @@ -49,6 +49,12 @@ void cNetherPortalScanner::OnChunkAvailable(int a_ChunkX, int a_ChunkZ) if (blocks[i] == E_BLOCK_NETHER_PORTAL) { Vector3i Coordinate = cChunkDef::IndexToCoordinate(i); + if (Coordinate.y >= m_MaxY) + { + // This is above the map, don't consider it. + continue; + } + Vector3d PortalLoc = Vector3d(Coordinate.x + a_ChunkX * cChunkDef::Width, Coordinate.y, Coordinate.z + a_ChunkZ * cChunkDef::Width); if (!m_FoundPortal) { @@ -284,7 +290,7 @@ void cNetherPortalScanner::OnDisabled(void) } LOGD("Placing player at {%f, %f, %f}", Position.x, Position.y, Position.z); - m_Entity->ScheduleMoveToWorld(m_World, Position); + m_Entity->ScheduleMoveToWorld(m_World, Position, true); delete this; } -- cgit v1.2.3