public override void HandleError(SerializeError error) { ResolveTypeError resolveTypeError = error as ResolveTypeError; if (resolveTypeError != null) { if (resolveTypeError.TypeId == TestResolveTypeId) { resolveTypeError.ResolvedType = TestResolveType; } } ResolveMemberError resolveMemberError = error as ResolveMemberError; if (resolveMemberError != null) { if (resolveMemberError.MemberId == TestResolveMemberId) { resolveMemberError.ResolvedMember = TestResolveMember; } } return; }
public override void HandleError(SerializeError error) { ResolveTypeError resolveTypeError = error as ResolveTypeError; ResolveMemberError resolveMemberError = error as ResolveMemberError; // From v2 to v3, a lot of Duality types were renamed or moved if (resolveTypeError != null) { switch (resolveTypeError.TypeId) { case "Duality.Resources.BatchInfo": resolveTypeError.ResolvedType = typeof(Duality.Drawing.BatchInfo); break; case "Duality.Resources.BatchInfo+DirtyFlag": resolveTypeError.ResolvedType = typeof(ObsoleteEnum); break; case "Duality.Resources.Pixmap+Layer": resolveTypeError.ResolvedType = typeof(Duality.Drawing.PixelData); break; case "Duality.Drawing.IRendererVisibilityStrategy": resolveTypeError.ResolvedType = typeof(Duality.Components.IRendererVisibilityStrategy); break; case "Duality.Drawing.DefaultRendererVisibilityStrategy": resolveTypeError.ResolvedType = typeof(Duality.Components.DefaultRendererVisibilityStrategy); break; case "Duality.Components.Renderers.AnimSpriteRenderer": resolveTypeError.ResolvedType = typeof(Duality.Components.Renderers.SpriteRenderer); break; } } else if (resolveMemberError != null) { switch (resolveMemberError.MemberId) { case "P:Duality.Components.Transform:RelativePos": resolveMemberError.ResolvedMember = typeof(Duality.Components.Transform).GetRuntimeProperty("LocalPos"); break; case "P:Duality.Components.Transform:RelativeAngle": resolveMemberError.ResolvedMember = typeof(Duality.Components.Transform).GetRuntimeProperty("LocalAngle"); break; case "P:Duality.Components.Transform:RelativeScale": resolveMemberError.ResolvedMember = typeof(Duality.Components.Transform).GetRuntimeProperty("LocalScale"); break; } } return; }