reload method
override
Re-resolves this sprite against Ignis.cache.
Returns this unless what it was built from has since been replaced, so a caller can tell whether anything changed by identity.
Implementation
@override
SpriteGroup<T> reload() {
List<Sprite<T>>? resolved;
for (var index = 0; index < parts.length; index += 1) {
final part = parts[index];
final reloaded = part.reload();
if (identical(reloaded, part)) continue;
resolved ??= List.of(parts);
resolved[index] = reloaded;
}
return resolved == null ? this : SpriteGroup<T>(resolved);
}