Skip to content
This repository has been archived by the owner on Jul 24, 2024. It is now read-only.

Commit

Permalink
UX向上
Browse files Browse the repository at this point in the history
  • Loading branch information
azutake committed Apr 12, 2022
1 parent bc7eba2 commit 8ea91eb
Show file tree
Hide file tree
Showing 3 changed files with 14 additions and 4 deletions.
1 change: 0 additions & 1 deletion Bootstrapper.cs
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,6 @@ internal void Update()
return;
ForcePatching = true;
Start();
ForcePatching = false;
}
}
}
Expand Down
15 changes: 13 additions & 2 deletions JapanesePatcher.cs
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,12 @@ namespace ckjp
{
public class JapanesePatcher : MonoBehaviour
{
private static ConfigEntry<bool> _isFirstRun;
private static ConfigEntry<bool> _isIgnoreItemName;

internal static void Setup()
{
_isFirstRun = BepInExLoader.Inst.Config.Bind("General", "IsFirstRun", true, "初回起動を認識するためのオプションです。有効(true)にすると1回だけ強制的に日本語に切り替わります");
_isIgnoreItemName = BepInExLoader.Inst.Config.Bind("General", "IsIgnoreItemName", false, "アイテム名を日本語化しないようにします。変更後の適用にはゲームの再起動が必要です");
BepInExLoader.Inst.Log.LogMessage("Japanese Patcher Injected.");
ClassInjector.RegisterTypeInIl2Cpp<JapanesePatcher>();
Expand Down Expand Up @@ -68,7 +70,6 @@ internal void Start()
sr.Close();
st.Close();

BepInExLoader.Inst.Log.LogMessage(">>>>>>> Waiting for localization manager <<<<<<<<<<<");
if (I2.Loc.LocalizationManager.Sources.Count == 0)
I2.Loc.LocalizationManager.UpdateSources();

Expand All @@ -95,16 +96,26 @@ internal void Start()
jaLang.Flags = 0;
I2.Loc.LocalizationManager.Sources[0].UpdateDictionary();

if (!Bootstrapper.Instance.ForcePatching)
if (_isFirstRun.Value)
{
BepInExLoader.Inst.Log.LogMessage(">>>>>>> 初回起動のため強制的に日本語にします <<<<<<<<<<<");
_isFirstRun.SetSerializedValue(false.ToString());
I2.Loc.LocalizationManager.CurrentLanguage = "japanese";
Bootstrapper.Instance.ForcePatching = true;
}

if (Bootstrapper.Instance.ForcePatching)
{
var texts = FindObjectsOfType<PugText>();
foreach (var text in texts)
{
if (text.localize)
text.Render(false);
}
Bootstrapper.Instance.ForcePatching = false;
}

BepInExLoader.Inst.Log.LogMessage(">>>>>>> Finished japanese patch <<<<<<<<<<<");
Destroy(gameObject);
}

Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@
3. `ckjp-all.zip` をインストールフォルダ内に解凍します。 **Core Keeperフォルダ内にさらにフォルダを作らないように注意してください。例えば、`Core Keeper` フォルダ内に `ckjp-all` フォルダが作られて、その中に解凍されている場合、正しくありません。以下の画像と同じになるようにしてください**
![SS](img/explorer_7tgBzy59mR.png)
4. ゲームを起動します。 **初回起動には1~2分ほど時間がかかります**
5. ゲームが起動したら、 `SETTINGS` を閲覧し、 `LANGUAGES` を何度かクリックしてみてください。日本語の項目が出現するはずです。
5. ゲームが起動し、日本語化されていれば完了です

# 設定
[BepInEx ConfigManager](https://github.com/sinai-dev/BepInExConfigManager) を別途利用することでゲーム内から `F5` キーで設定画面を開くことが出来ます
Expand Down

0 comments on commit 8ea91eb

Please sign in to comment.