public IEnumerator Extract(string SceneName) { yield return(new WaitForEndOfFrame()); yield return(new WaitForEndOfFrame()); yield return(new WaitForEndOfFrame()); TranslationObjects.Clear(); string json = YandereNextManager.ModDir + "\\Localization\\French\\" + SceneName + "\\Localization.json"; Directory.CreateDirectory(Path.GetDirectoryName(json)); if (!File.Exists(json)) { using (TextWriter writer = File.CreateText(json)) { writer.WriteLine("[{"); writer.WriteLine(""); writer.WriteLine("}]"); } } ITranslationObject[] JSONObjects = LocalizerJSON.LoadFromJSON(json); foreach (ITranslationObject JSONObject in JSONObjects) { TranslationObjects.Add(JSONObject); } ExtractingLabels(); ExtractingStandardSubtitles(); switch (SceneName) { case "SchoolScene": ExtractingLaptopDiscussion(); ExtractingNoteWindowStrings(); break; case "YanCordScene": ExtractingYanCordDiscussions(); break; case "FunScene": case "MoreFunScene": case "VeryFunScene": ExtractingFunGirlDiscussion(); break; case "StreetScene": ExtractShopText(); break; } WriteFile(json); }
public static void LoadTranslations() { if (SharedTranslations == null) { try { SharedTranslations = LocalizerJSON.LoadFromJSON(Application.streamingAssetsPath + "/Yandere_Next/Mods/default/Localization/French/Shared/Localization.json"); } catch { SharedTranslations = new ITranslationObject[0]; } } try { Translations = LocalizerJSON.LoadFromJSON(Application.streamingAssetsPath + "/Yandere_Next/Mods/default/Localization/French/" + SceneManager.GetActiveScene().name + "/Localization.json").Union(SharedTranslations).ToArray(); } catch (Exception ex) { Debug.Log("Couldn't load translation file " + ex.Message); Translations = SharedTranslations; } }