Return the prescaled tile if already exists, otherwise scale and store it.

def _scale_tile(self, value, width, height):
        """Return the prescaled tile if already exists, otherwise scale and store it."""
        try:
            return self._scale_cache[value, width, height]
        except KeyError:
            tile = pygame.transform.smoothscale(self.tiles[value], (width, height))
            self._scale_cache[value, width, height] = tile
            return tile