Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines
(-1)

Code is a lil deprecated with new renpy versions.

Replace

hold_last_frame = bool(kwargs["hold_last_frame"]) if "hold_last_frame" in kwargs else False with renpy.open_file(image_path) as handle: full_width, full_height = __get_image_size(handle) sprite_width = int(full_width / x_sprite_count)

With

hold_last_frame = bool(kwargs["hold_last_frame"]) if "hold_last_frame" in kwargs else False full_width, full_height = renpy.image_size(image_path) sprite_width = int(full_width / x_sprite_count)

(1 edit) (+1)

Thank you for the comment! And sorry for the incredibly late reply.

The renpy.image_size function was intentionally ignored for efficiency reasons. The renpy builtin loads and unpacks the full file without making use of any caching. The __get_image_size function only reads the first couple dozen bytes of the file to fetch the width and height from the metadata.

For the use case, I felt that it would be unnecessarily costly to load, decompress, then throw away an image of unknown size just to get at a couple of ints.

If renpy adds a similar method that does make use of image caching, that would the preferable option.