diff --git a/src/simulation/Simulation.cpp b/src/simulation/Simulation.cpp index 9d2058298..2588ad7e7 100644 --- a/src/simulation/Simulation.cpp +++ b/src/simulation/Simulation.cpp @@ -1865,7 +1865,7 @@ int Simulation::eval_move(int pt, int nx, int ny, unsigned *rr) return 0; if (bmap[ny/CELL][nx/CELL]==WL_EWALL && !emap[ny/CELL][nx/CELL]) return 0; - if (bmap[ny/CELL][nx/CELL]==WL_EHOLE && !emap[ny/CELL][nx/CELL]) + if (bmap[ny/CELL][nx/CELL]==WL_EHOLE && !emap[ny/CELL][nx/CELL] && !(elements[pt].Properties&TYPE_SOLID) && !(elements[r&0xFF].Properties&TYPE_SOLID)) return 2; } return result;