def maskFromSurface(surface, threshold=127): mask = mask.Mask(surface.get_size()) key = surface.get_colorkey() if key: for y in range(surface.get_height()): for x in range(surface.get_width()): if surface.get_at((x + 0.1, y + 0.1)) != key: mask.set_at((x, y), 1) else: for y in range(surface.get_height()): for x in range(surface.get_width()): if surface.get_at((x, y))[3] > threshold: mask.set_at((x, y), 1) return mask
def maskFromSurface(surface, threshold = 127): mask = mask.Mask(surface.get_size()) key = surface.get_colorkey() if key: for y in range(surface.get_height()): for x in range(surface.get_width()): if surface.get_at((x+0.1,y+0.1)) != key: mask.set_at((x,y),1) else: for y in range(surface.get_height()): for x in range (surface.get_width()): if surface.get_at((x,y))[3] > threshold: mask.set_at((x,y),1) return mask
def load_image(file, transparent): file = os.path.join(main_dir, 'images', file) try: surface = pygame.image.load(file) except pygame.error: raise SystemExit('Could not load image "%s" %s' % (file, pygame.get_error())) if transparent: corner = surface.get_at((0, 0)) surface.set_colorkey(corner, RLEACCEL) return surface.convert()