# Часть кода которую я не понимаю
# Весь код
class personas1(pygame.sprite.Sprite):
def __init__(self, image_file1, location1, speed): # Добавляем аргумент speed
pygame.sprite.Sprite.__init__(self)
self.image = pygame.image.load(image_file1)
self.rect = self.image.get_rect()
self.rect.left, self.rect.top = location
self.speed = speed # Добовляем эту строку, создающию для персонажа атрибут speed
def move(self): # Функцыя для переещение персонажа
self.rect = self.rect.move(self.speed)
if self.rect.left < 0 and self.rect.right > shirina:
self.speed[0] = -self.speed[0]
if self.rect.top < 0 and self.rect.bottom > wisota:
self.speed[1] = -self.speed[1]
from random import *
size = shirina, wisota = 640, 505
screen = pygame.display.set_mode(size)
screen.fill([255, 255, 255])
img_file1 = '1-бег вправо.png'
bb1 = []
for topp1 in range(0, 1):
for cc1 in range(0, 1):
location = [cc * 180 + 10, topp1 * 180 + 10]
speed = [choice([-2, 2]), choice([-2, 2])] # Рандомная скорость
per1 = personas1(img_file1, location, speed) # Добавляем передачу speed
bb1.append(per1)
run = True
while run:
for event in pygame.event.get():
if event.type == pygame.QUIT:
run = True
pygame.quit()
pygame.time.delay(20) # Начинаем цыкл для пермещение персонажей (перересовка), каждый 20 мили-сек
screen.fill([255, 255, 255])
for per1 in bb1: # Цыкл перересовки экрана
per1.move() # Переещяем персонажа
screen.blit(per1.image, per1.rect) # Каждый раз отрисовываем персонажа в новом месте
pygame.display.flip()
Python:
def move(self): # Функцыя для переещение персонажа
self.rect = self.rect.move(self.speed) # Вот это я не могу понять
if self.rect.left < 0 and self.rect.right > shirina: # И это
self.speed[0] = -self.speed[0] # И это
if self.rect.top < 0 and self.rect.bottom > wisota:# И это
self.speed[1] = -self.speed[1] # И это
class personas1(pygame.sprite.Sprite):
def __init__(self, image_file1, location1, speed): # Добавляем аргумент speed
pygame.sprite.Sprite.__init__(self)
self.image = pygame.image.load(image_file1)
self.rect = self.image.get_rect()
self.rect.left, self.rect.top = location
self.speed = speed # Добовляем эту строку, создающию для персонажа атрибут speed
def move(self): # Функцыя для переещение персонажа
self.rect = self.rect.move(self.speed)
if self.rect.left < 0 and self.rect.right > shirina:
self.speed[0] = -self.speed[0]
if self.rect.top < 0 and self.rect.bottom > wisota:
self.speed[1] = -self.speed[1]
from random import *
size = shirina, wisota = 640, 505
screen = pygame.display.set_mode(size)
screen.fill([255, 255, 255])
img_file1 = '1-бег вправо.png'
bb1 = []
for topp1 in range(0, 1):
for cc1 in range(0, 1):
location = [cc * 180 + 10, topp1 * 180 + 10]
speed = [choice([-2, 2]), choice([-2, 2])] # Рандомная скорость
per1 = personas1(img_file1, location, speed) # Добавляем передачу speed
bb1.append(per1)
run = True
while run:
for event in pygame.event.get():
if event.type == pygame.QUIT:
run = True
pygame.quit()
pygame.time.delay(20) # Начинаем цыкл для пермещение персонажей (перересовка), каждый 20 мили-сек
screen.fill([255, 255, 255])
for per1 in bb1: # Цыкл перересовки экрана
per1.move() # Переещяем персонажа
screen.blit(per1.image, per1.rect) # Каждый раз отрисовываем персонажа в новом месте
pygame.display.flip()