Найти - Пользователи
Полная версия: pygame метод rect
Начало » Python для новичков » pygame метод rect
1
Pavel32272
Не могу до конца понять метод 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)
PEHDOM
Pavel32272
Не могу до конца понять метод rect в pygame, объясните пожалуйста и очень простым языком, как работает.
Для начала покажите что это такой за метод, и где он у вас в коде?
потому как я его не вижу, все что я вижу это
self.rect = self.image.get_rect()
Но это ни разу не метод, это артибут вашего класса в котором храниться объект типа pygame.Rect
get_rect(**kwargs) -> Rect (https://www.pygame.org/docs/ref/surface.html#pygame.Surface.get_rect)

А уж атрибуты и методы этого объекта и что они делают прекрасно описаны в документации: https://www.pygame.org/docs/ref/rect.html
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB