docs: def _make_tile(self, value, background, text):
          """Renders a tile, according to its value, and background and foreground colours."""
          tile = pygame.Surface((self.cell_width, self.cell_height), pygame.SRCALPHA)
          pygame.draw.rect(tile, background, (0, 0, self.cell_width, self.cell_height))
          # The "zero" tile doesn't have anything inside.
          if value:
              label = load_font(self.BOLD_NAME, 50 if value < 1000 else
                                (40 if value < 10000 else 30)).render(str(value), True, text)
              width, height = label.get_size()
              tile.blit(label, ((self.cell_width - width) / 2, (self.cell_height - height) / 2))
          return tile