Форум сайта python.su
0
Не могу до конца понять метод rect в pygame, объясните пожалуйста и очень простым языком, как работает. На примере моего кода, я как бы понимаю как заставить его двигаться в лево и в право, и как указать позицию, но не могу понять что именно я делаю, я по сути просто пишу по памяти, но сути не догоняю, что это значит.
import pygame class Ship(): def __init__(self, ai_settings, screen): #Инициализирует корабль и задает его начальную позицию.""" self.screen = screen #Загрузка изображения корабля и получение прямоугольника self.image = pygame.image.load('images/ship.bmp')#Загрузка изображения self.rect = self.image.get_rect() self.screen_rect = screen.get_rect() self.rect.centerx = self.screen_rect.centerx self.rect.bottom = self.screen_rect.bottom self.moving_right = False self.moving_left = False self.ai_settings = ai_settings self.center = float(self.rect.centerx) def update(self): #Обновляет позицию коробля с учетом флага if self.moving_right and self.rect.right < self.screen_rect.right: self.center += self.ai_settings.ship_speed_factor if self.moving_left and self.rect.left < self.screen_rect.left: self.center -= self.ai_settings.ship_speed_factor self.rect.centerx = self.center def blitme(self): #Рисует корабль в текущей позиции. self.screen.blit(self.image, self.rect)
Офлайн
294
Pavel32272Для начала покажите что это такой за метод, и где он у вас в коде?
Не могу до конца понять метод rect в pygame, объясните пожалуйста и очень простым языком, как работает.
[code python][/code]
Отредактировано PEHDOM (Окт. 21, 2019 15:25:14)
Офлайн