Именно с pygame не работал, но обычно это делается так, есть координаты спрайт и размеры окна в пределах которого он прыгает, в каждом цикле игры (там же вроде отрисовка идёт через цикл?) проверяем не совпадает-ли какая-то координата спрайт с краем окна (например окно 300х300 и у спрайта х = 300) и если совпадает, меняем направление движения спрайта на противоположной, в зависимости от того куда он ударился - верх/низ - меняем направление по оси y, лево/право - по оси x