separate logic for being able to bounce of top/bottom of blocks as well as sides