**This release contains major code changes that WILL break backwards compatibility. Proceed with caution**
- Renamed SpritesheetObject -> SpritesheetNode
- Reworked whole SpritesheetNode's animation mechanism, which should
hopefully fix rare issue with animation glitching out
- Changed default parent of SpritesheetNode: render -> NodePath()
- Removed everything related to item initialization from
SpritesheetNode's init - things now should be added via add_item()
- SpritesheetNode's "name" is now optional init arg - if not set, will
set it either to texture's get_name() or to "SpritesheetNode"
- Added SpritesheetItem - dataclass that holds info about named items
from certain spritesheet
- Moved DEFAULT_ANIMATIONS_SPEED -> SpritesheetItem.playback_speed
- Renamed SpritesheetNode.show() -> SpritesheetNode.play()
- Removed SpritesheetNode.switch() - for same functionality, use
SpritesheetNode.play(item, ignore_if_current = True)
- Added PlaybackState enum that specifies if SpritesheetNode's sequence
is playing, paused or stopped right now
- Removed Animation and Sprite classes, since they are obsolete now
- Removed "locked" and "length" properties, since they are obsolete
- SpritesheetNode now accepts is_transparent, is_two_sided and position
on init, like make_sprite_node()
- SpritesheetNode's "sprite_sizes" init arg is now applied "as is",
instead of cutting its parts in half. This changes old behavior, so if
its critical to go back to it with existing values - either set new
"scale" argument to 0.5 on SpritesheetNode's init or use node_sizes
with halved values (mentioned belowbelow)
- SpritesheetNode now has optional "node_sizes" init argument, to
separately specify size of node's card. Under the hood it uses
make_sprite_node() thus it accepts 1, 2 or 4-items tuple. If its not
set - "sprite_sizes" will be used instead
- Renamed spritesheet_object -> nodes