reload method
override
Re-resolves this sprite against Ignis.cache.
Returns this unless what it was built from has since been replaced, so
the caller can tell whether anything changed by identity.
Implementation
@override
SpriteMap<T> reload() {
Map<T, Sprite<int>>? resolved;
for (final entry in sprites.entries) {
final key = entry.key;
final sprite = entry.value;
final reloaded = sprite.reload();
if (identical(reloaded, sprite)) continue;
resolved ??= Map.of(sprites);
resolved[key] = reloaded;
}
if (resolved == null) return this;
return SpriteMap<T>(resolved);
}