надо заполнять по одному квадратику за каждый кадр, проблема в том, что у меня сейчас квадратики могут рисоваться друг на дружке, и после каждого обновления экрана предыдущие удаляются. как этого избежать?
import pygame as pg
import sys
import random as rnd
class FiveSquares:
def __init__(self):
self.size = 401
self.fps = 60
# colors
black = (0, 0, 0)
white = (255, 255, 255)
self.sc = pg.display.set_mode((self.size, self.size))
self.clock = pg.time.Clock
self.side = 100
self.c = 1
self.v = 1
# сетка
def DrawGrid(self):
for i in range(6):
pg.draw.line(self.sc, pg.Color('white'), [100 * i, 0], [100 * i, 400])
pg.draw.line(self.sc, pg.Color('white'), [0, 100 * i], [400, 100 * i])
# заполнение квадратиками
def DrawSqr(self, c, v):
c = self.c
v = self.v
for i in range(self.c):
pg.draw.rect(self.sc, pg.Color('green'), (rnd.randrange(0, 4, 1)*self.side, rnd.randrange(0, 4, 1)*self.side, self.side, self.side))
def run(self):
clock = pg.time.Clock()
while True:
self.sc.fill('black')
clock.tick(1)
for event in pg.event.get():
if event.type == pg.QUIT:
sys.exit()
self.DrawSqr(self.c, self.v)
self.DrawGrid()
self.c += 1
self.v += 1
pg.display.flip()
FiveSquares().run()