public void RegisterAnimation(BaseAnimation anim) { Animations[anim.Id] = anim; if (PendingPatches.TryGetValue(anim.Id, out AnimationPatch patch)) { anim.ApplyPatch(patch); PendingPatches.Remove(anim.Id); } }
public void DeregisterAnimation(BaseAnimation anim) { Animations.Remove(anim.Id); PendingPatches.Remove(anim.Id); foreach (var id in anim.TargetIds) { AnimOutputPatches.Remove(id); } anim.OnDestroy(); }