/// <summary> /// あらゆる種類の任意の数のアセットがインポートが完了したときに呼ばれる処理です。 /// </summary> /// <param name="importedAssets"> インポートされたアセットのファイルパス。 </param> /// <param name="deletedAssets"> 削除されたアセットのファイルパス。 </param> /// <param name="movedAssets"> 移動されたアセットのファイルパス。 </param> /// <param name="movedFromPath"> 移動されたアセットの移動前のファイルパス。 </param> private static void OnPostprocessAllAssets(string[] importedAssets, string[] deletedAssets, string[] movedAssets, string[] movedFromPath) { foreach (var importedAsset in importedAssets) { var asset = AssetDatabase.LoadMainAssetAtPath(importedAsset); if (asset is GameTextAsset) { GameTextLoader.Reload(); break; } } }
protected override void DrawGUI() { var generateInfos = GameTextLanguage.GameTextInfos; if (generateInfos == null) { return; } Reload(); GUILayout.Space(3f); GameTextGenerateInfo info = null; if (selection.HasValue) { info = generateInfos.ElementAtOrDefault(selection.Value); } using (new DisableScope(info == null)) { if (GUILayout.Button("Generate")) { GameTextGenerater.Generate(connector, info); Repaint(); } } GUILayout.Space(3f); var labels = generateInfos.Select(x => x.Language).ToArray(); EditorGUI.BeginChangeCheck(); var index = EditorGUILayout.Popup(GameTextLanguage.Prefs.selection, labels); if (EditorGUI.EndChangeCheck()) { selection = index; GameTextLanguage.Prefs.selection = index; GameTextLoader.Reload(); } }