Added 8-directional movement.