Как исправить условие?

import pygame as pg
import sys

WHITE = (255, 255, 255)
BLACK = (0, 0, 0)

WIDTH = 650
HEIGHT = 350
FPS = 60

sc = pg.display.set_mode((WIDTH, HEIGHT))

y_left = HEIGHT//2 - 30
pg.draw.rect(sc, WHITE, (0, y_left, 15, 60))

clock = pg.time.Clock()

while True:
    for i in pg.event.get():
        if i.type == pg.QUIT:
            sys.exit()

    sc.fill(BLACK)
    pg.draw.rect(sc, WHITE, (0, y_left, 15, 60))

    keys = pg.key.get_pressed()

*******
    if 0 <= y_left <= HEIGHT - 60:
        if keys[pg.K_w]:
            y_left -= 3
        elif keys[pg.K_s]:
            y_left += 3
*******

    pg.display.update()
    clock.tick(FPS)

Этот код создает rect и его можно двигать. Хочу сделать пинг-понг, нужно чтобы rect не выходил за пределы, но когда он только касается, перестает двигаться как исправить. Выделил * нужный код


Ответы (1 шт):

Автор решения: Mars

Измените выделенный фрагмент на этот

    if keys[pg.K_w]:
    if y_left>=3:
        y_left -= 3
elif keys[pg.K_s]:
    if y_left<=HEIGHT - 63:
        y_left += 3
→ Ссылка