From 9ddb099cc6510dd81d3107e72ea5094b580f4e5c Mon Sep 17 00:00:00 2001 From: Isamu Mogi Date: Tue, 13 Jun 2023 12:23:34 +0900 Subject: [PATCH] =?UTF-8?q?Unity=202022.2=E4=BB=A5=E9=99=8D=E3=81=AEScript?= =?UTF-8?q?edImporterEditor.ResetValues()=E3=81=AEObsolete=E8=AD=A6?= =?UTF-8?q?=E5=91=8A=E3=81=AB=E5=AF=BE=E5=BF=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Unity 2022.2以降のバージョンでScriptedImporterEditor.ResetValues()がObsoleteになり、代わりにDiscardChanges()の利用が推奨されるようになりました。 UniGLTF.RemapScriptedImporterEditorBaseがResetValues()を利用しており、それにより、次のような警告を発生させていました。 ``` Assets/UniGLTF/Editor/UniGLTF/ScriptedImporter/RemapScriptedImporterEditorBase.cs(50,33): warning CS0672: Member 'RemapScriptedImporterEditorBase.ResetValues()' overrides obsolete member 'AssetImporterEditor.ResetValues()'. Add the Obsolete attribute to 'RemapScriptedImporterEditorBase.ResetValues()'. Assets/UniGLTF/Editor/UniGLTF/ScriptedImporter/RemapScriptedImporterEditorBase.cs(54,13): warning CS0618: 'AssetImporterEditor.ResetValues()' is obsolete: 'UnityUpgradeable () -> DiscardChanges' ``` オーバーライドされたResetValuesにもObsoleteを付与することで、警告が抑制されるようになりました。 また、移行先として推奨されているDiscardChanges()の実装も行いました。 --- .../RemapScriptedImporterEditorBase.cs | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/Assets/UniGLTF/Editor/UniGLTF/ScriptedImporter/RemapScriptedImporterEditorBase.cs b/Assets/UniGLTF/Editor/UniGLTF/ScriptedImporter/RemapScriptedImporterEditorBase.cs index 77a6d9694..bf4803adf 100644 --- a/Assets/UniGLTF/Editor/UniGLTF/ScriptedImporter/RemapScriptedImporterEditorBase.cs +++ b/Assets/UniGLTF/Editor/UniGLTF/ScriptedImporter/RemapScriptedImporterEditorBase.cs @@ -44,9 +44,24 @@ namespace UniGLTF m_editMap.AddRange(value.Select(kv => new RemapEditorBase.SubAssetPair(kv.Key, kv.Value))); } +#if UNITY_2022_2_OR_NEWER /// /// Revert /// + public override void DiscardChanges() + { + m_editMap.Clear(); + + base.DiscardChanges(); + } +#endif + + /// + /// Revert + /// +#if UNITY_2022_2_OR_NEWER + [System.Obsolete] +#endif protected override void ResetValues() { m_editMap.Clear();