refactoring getPositionsOfSurroundCells, add vibration