e66ce54d3e
Phase 2 (mod skeleton) + Phase 3 (import English source): - manifest.json / SlovakTranslation.cs / ILocalizationAPI.cs registering "Slovenčina" via xen.LocalizationUtility (Interplanetary Polyglot). - SlovakTranslation.csproj / .sln building net48 against the OWML and OuterWildsGameLibs NuGet packages — no game install needed to compile. - assets/Translation.xml: English source template (896 KB, 2424 entries, keys == values) to be translated into Slovak. - Project docs (README/PLAN/CLAUDE) and .gitignore. Build verified: dotnet build -c Release stages a loadable mod folder. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
43 lines
2.3 KiB
C#
43 lines
2.3 KiB
C#
using OWML.ModHelper;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
|
|
// Interface copied from xen-42's Localization Utility (MIT), so this mod can
|
|
// resolve the utility's API through OWML's TryGetModApi<T>. Keep in sync with
|
|
// https://github.com/xen-42/outer-wilds-localization-utility.
|
|
namespace SlovakTranslation
|
|
{
|
|
public interface ILocalizationAPI
|
|
{
|
|
#region Add new language
|
|
void RegisterLanguage(ModBehaviour mod, string languageName, string translationPath);
|
|
void RegisterLanguage(ModBehaviour mod, string languageName, string translationPath, string languageToReplace);
|
|
void AddLanguageFont(ModBehaviour mod, string languageName, string assetBundlePath, string fontPath, out Font font);
|
|
void AddLanguageFixer(string languageName, Func<string, string> fixer);
|
|
void SetLanguageDefaultFontSpacing(string languageName, float defaultFontSpacing);
|
|
void SetLanguageFontSizeModifier(string languageName, float fontSizeModifier);
|
|
#endregion
|
|
|
|
#region Add translations to new/existing languages
|
|
void AddTranslation(ModBehaviour mod, string languageName, string translationPath);
|
|
void AddTranslation(string languageName, KeyValuePair<string, string>[] regularEntries, KeyValuePair<string, string>[] shipLogEntries, KeyValuePair<int, string>[] uiEntries);
|
|
|
|
void AddRegularTranslation(string languageName, string key, string value);
|
|
void AddRegularTranslation(string languageName, string commonKeyPrefix, params string[] entries);
|
|
void AddRegularTranslation(string languageName, params KeyValuePair<string, string>[] entries);
|
|
|
|
void AddShiplogTranslation(string languageName, string key, string value);
|
|
void AddShiplogTranslation(string languageName, string commonKeyPrefix, params string[] entries);
|
|
void AddShiplogTranslation(string languageName, params KeyValuePair<string, string>[] entries);
|
|
|
|
void AddUITranslation(string languageName, int key, string value);
|
|
void AddUITranslation(string languageName, params KeyValuePair<int, string>[] entries);
|
|
#endregion
|
|
|
|
#region obsolete
|
|
[Obsolete] void AddLanguageFont(ModBehaviour mod, string languageName, string assetBundlePath, string fontPath);
|
|
#endregion
|
|
}
|
|
}
|