Ejemplo n.º 1
0
 def __init__(self, rect_dims, *groups):
     super().__init__(*groups)
     self.rect: pygame.Rect = pygame.Rect(rect_dims)
     self.image = pygame.Surface(self.rect.size)
     self.image.fill(Color('white'))
     self.mask: Mask = Mask((self.rect.width, self.rect.height), fill=True)
     self.dirty = 0  # will never be updated
Ejemplo n.º 2
0
def create_rectangular_mask(canvas_width, canvas_height, offset_x, offset_y,
                            mask_width, mask_height):
    m = Mask((canvas_width, canvas_height))

    for x in range(offset_x, offset_x + mask_width):
        for y in range(offset_y, offset_y + mask_height):
            m.set_at((x, y), 1)

    return m
Ejemplo n.º 3
0
    def __init__(self, manager):
        State.__init__(self, manager)

        self.sprite = Sprite()
        self.sprite.image = Surface((0, 0))
        self.sprite.rect = Rect(0, 0, 1, options.height)
        self.sprite.mask = Mask((1, options.height))
        self.sprite.mask.fill()

        self.STATE_NUMBER = manager.DEACTIVATED
    def shrink(self):
        self.height = max(self.height - self.shrink_rate, 0)

        #copy the existing noise, cropping off the top and bottom
        temp_image = Surface((self.width, self.height))
        temp_image.blit(self.image, Rect(0, 0, 0, 0),
                        Rect(0, self.crop_top, self.width, self.height))
        self.image = temp_image

        self.mask = Mask((self.width, self.height))
        self.mask.fill()

        self.top = self.top + self.crop_top

        self.rect = Rect(self.left, self.top, self.width, self.height)
Ejemplo n.º 5
0
 def blit(self):
     """
     If the shot should explode: Paint a blast! Otherwise, just do what any
     other shot would do.
     """
     if self.counter >= self.__timeout:
         size = self.__timeout - self.counter
         rad = self.__radius - size
         pos = map(int, self.get_position())
         rect = circle(self.surface, (255, 102, 0), pos, rad)
         self.rect = rect
         self.image = Surface((rect.width, rect.height))
         self.mask = Mask((rect.width, rect.height))
         self.mask.fill()  # Everything in this mask is set
     else:
         super(Mine, self).blit()
Ejemplo n.º 6
0
    def __init__(self, left, top, width, height, noise_width, noise_height,
                 delay):
        Sprite.__init__(self)

        self.top = top
        self.left = left
        self.width = width
        self.height = height

        self.image = Surface((self.width, self.height))
        self.rect = Rect(left, top, self.width, self.height)
        self.rect = Rect(left, top, 0, 0)
        self.mask = Mask((self.width, self.height))
        self.mask.fill()

        self.noise_width = noise_width
        self.noise_height = noise_height

        self.tick = 0
        self.delay = delay