re-wrote throwing code. now cannot throw on top of obstacles.