Как ограничить объект rect в поле заданных координат в pygame?

У меня есть прямоугольный объект с именем ball_rect в моем коде, ордината этого объекта уменьшается каждую секунду на 2, в конечном итоге он падает, достигает нижней части экрана и исчезает. Я хочу, чтобы этот объект не выходил за пределы 200 пикселей по оси y.

Я тоже знал команду, но забыл.

вот код:

ball_y = 20
ball_x = 100

ball = pygame.image.load("data/ball.png")
ball_rect = ball.get_rect(topleft = (ball_x,ball_y)

def ball_area(): #here I want to put the code to restrict it in the margin of the screen
                      

person Community    schedule 05.11.2020    source источник


Ответы (1)


Вы должны проверить, находится ли нижняя часть прямоугольника шара ниже 200. Если ниже, измените его на 200. Обновите ball_y с новым верхом прямоугольника шара:

def ball_area():
    global ball_x, ball_y

    ball_rect = ball.get_rect(topleft = (ball_x, ball_y)
    if ball_rect.bottom > 200:
        ball_rect.bottom = 200
        ball_y = ball_rect.top
person Rabbid76    schedule 05.11.2020