summaryrefslogtreecommitdiffstats
path: root/source
diff options
context:
space:
mode:
authorTiger Wang <ziwei.tiger@hotmail.co.uk>2013-09-04 18:52:15 +0200
committerTiger Wang <ziwei.tiger@hotmail.co.uk>2013-09-04 18:52:15 +0200
commit3300cfe491297b284096d976c83fb7a1107162e9 (patch)
treef8fd41bc8a64298b2f1b439d4b3d0f10d2ae812c /source
parentFixed inconsistent meta naming (diff)
downloadcuberite-3300cfe491297b284096d976c83fb7a1107162e9.tar
cuberite-3300cfe491297b284096d976c83fb7a1107162e9.tar.gz
cuberite-3300cfe491297b284096d976c83fb7a1107162e9.tar.bz2
cuberite-3300cfe491297b284096d976c83fb7a1107162e9.tar.lz
cuberite-3300cfe491297b284096d976c83fb7a1107162e9.tar.xz
cuberite-3300cfe491297b284096d976c83fb7a1107162e9.tar.zst
cuberite-3300cfe491297b284096d976c83fb7a1107162e9.zip
Diffstat (limited to 'source')
-rw-r--r--source/Entities/Entity.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/source/Entities/Entity.cpp b/source/Entities/Entity.cpp
index 56fd36a05..7e118c74e 100644
--- a/source/Entities/Entity.cpp
+++ b/source/Entities/Entity.cpp
@@ -517,7 +517,14 @@ void cEntity::HandlePhysics(float a_Dt, cChunk & a_Chunk)
}
else
{
- // Push out entity.
+ //Push out entity.
+
+ if (NextChunk->GetBlock( RelBlockX + 1, BlockY, RelBlockZ ) == E_BLOCK_AIR) { NextPos.x += 0.2; }
+ else if (NextChunk->GetBlock( RelBlockX - 1, BlockY, RelBlockZ ) == E_BLOCK_AIR) { NextPos.x += -0.2; }
+ else if (NextChunk->GetBlock( RelBlockX, BlockY, RelBlockZ + 1 ) == E_BLOCK_AIR) { NextPos.z += 0.2; }
+ else if (NextChunk->GetBlock( RelBlockX, BlockY, RelBlockZ - 1 ) == E_BLOCK_AIR) { NextPos.z += -0.2; }
+ else { NextPos.y += 0.2; }
+
m_bOnGround = true;
NextPos.y += 0.2;
LOGD("Entity #%d (%s) is inside a block at {%d, %d, %d}",