From 8e13f19ee03ee618d266e3b4b3d1d633956dee27 Mon Sep 17 00:00:00 2001
From: bob <605277374@qq.com>
Date: Tue, 27 May 2025 17:57:42 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=AD=97=E4=BD=93?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.vsconfig | 6 ++
.../WaveHarmonic.Crest.Samples.Boats.asmdef | 3 +-
...WaveHarmonic.Crest.Samples.Examples.asmdef | 5 +-
.../WaveHarmonic.Crest.Samples.Ripples.asmdef | 4 +-
.../Language/Runtime/Const/LanguageConst.cs | 57 ++++++++++++++++---
.../Runtime/LanguageConcrete/LanguageImage.cs | 4 +-
.../NBC/Language/Runtime/LanguageManager.cs | 24 ++++----
Fishing2.sln.DotSettings.user | 3 +-
.../WaveHarmonic.Crest.Shared.Editor.asmdef | 3 +-
.../Scripts/WaveHarmonic.Crest.Editor.asmdef | 5 +-
.../WaveHarmonic.Crest.Scripting.asmdef | 4 +-
.../Runtime/Scripts/WaveHarmonic.Crest.asmdef | 4 +-
.../Scripts/WaveHarmonic.Crest.Samples.asmdef | 5 +-
UserSettings/EditorUserSettings.asset | 8 +--
14 files changed, 100 insertions(+), 35 deletions(-)
create mode 100644 .vsconfig
diff --git a/.vsconfig b/.vsconfig
new file mode 100644
index 000000000..f019fd0ad
--- /dev/null
+++ b/.vsconfig
@@ -0,0 +1,6 @@
+{
+ "version": "1.0",
+ "components": [
+ "Microsoft.VisualStudio.Workload.ManagedGame"
+ ]
+}
diff --git a/Assets/Samples/Crest/5.4.2/Boats/Scripts/WaveHarmonic.Crest.Samples.Boats.asmdef b/Assets/Samples/Crest/5.4.2/Boats/Scripts/WaveHarmonic.Crest.Samples.Boats.asmdef
index 5d4d96943..becbfc906 100644
--- a/Assets/Samples/Crest/5.4.2/Boats/Scripts/WaveHarmonic.Crest.Samples.Boats.asmdef
+++ b/Assets/Samples/Crest/5.4.2/Boats/Scripts/WaveHarmonic.Crest.Samples.Boats.asmdef
@@ -3,7 +3,8 @@
"rootNamespace": "",
"references": [
"GUID:75469ad4d38634e559750d17036d5f7c",
- "GUID:7c347618730f5467f86a58f333ce21df"
+ "GUID:7c347618730f5467f86a58f333ce21df",
+ "WaveHarmonic.Crest"
],
"includePlatforms": [],
"excludePlatforms": [],
diff --git a/Assets/Samples/Crest/5.4.2/Examples/Scripts/WaveHarmonic.Crest.Samples.Examples.asmdef b/Assets/Samples/Crest/5.4.2/Examples/Scripts/WaveHarmonic.Crest.Samples.Examples.asmdef
index afe58c102..7fae5946d 100644
--- a/Assets/Samples/Crest/5.4.2/Examples/Scripts/WaveHarmonic.Crest.Samples.Examples.asmdef
+++ b/Assets/Samples/Crest/5.4.2/Examples/Scripts/WaveHarmonic.Crest.Samples.Examples.asmdef
@@ -5,7 +5,10 @@
"GUID:75469ad4d38634e559750d17036d5f7c",
"GUID:7c347618730f5467f86a58f333ce21df",
"GUID:056ff2a5b2f124d468c6655552acdca5",
- "GUID:1ab2a6c2a51cd4b43867788dbaee1a55"
+ "GUID:1ab2a6c2a51cd4b43867788dbaee1a55",
+ "WaveHarmonic.Crest",
+ "WaveHarmonic.Crest.Shared",
+ "WaveHarmonic.Crest.Shared.Editor"
],
"includePlatforms": [],
"excludePlatforms": [],
diff --git a/Assets/Samples/Crest/5.4.2/Ripples/Scripts/WaveHarmonic.Crest.Samples.Ripples.asmdef b/Assets/Samples/Crest/5.4.2/Ripples/Scripts/WaveHarmonic.Crest.Samples.Ripples.asmdef
index 991fa1685..1a653a6e1 100644
--- a/Assets/Samples/Crest/5.4.2/Ripples/Scripts/WaveHarmonic.Crest.Samples.Ripples.asmdef
+++ b/Assets/Samples/Crest/5.4.2/Ripples/Scripts/WaveHarmonic.Crest.Samples.Ripples.asmdef
@@ -3,7 +3,9 @@
"rootNamespace": "",
"references": [
"GUID:7c347618730f5467f86a58f333ce21df",
- "GUID:056ff2a5b2f124d468c6655552acdca5"
+ "GUID:056ff2a5b2f124d468c6655552acdca5",
+ "WaveHarmonic.Crest",
+ "WaveHarmonic.Crest.Shared"
],
"includePlatforms": [],
"excludePlatforms": [],
diff --git a/Assets/Scripts/NBC/Language/Runtime/Const/LanguageConst.cs b/Assets/Scripts/NBC/Language/Runtime/Const/LanguageConst.cs
index e2a845b2b..5697ac7e5 100644
--- a/Assets/Scripts/NBC/Language/Runtime/Const/LanguageConst.cs
+++ b/Assets/Scripts/NBC/Language/Runtime/Const/LanguageConst.cs
@@ -3,18 +3,59 @@ using UnityEngine;
namespace NBC
{
+ public struct LanguageInfo
+ {
+ public SystemLanguage Language;
+ public string Name;
+ public string Code;
+ }
+
public class LanguageConst
{
+ public const string LanguageSaveKey = "LanguageSaveKey";
+
///
/// 自定义语言和名字映射关系
///
- public static readonly Dictionary languageMap = new Dictionary()
- {
- { SystemLanguage.English, "en" },
- { SystemLanguage.ChineseSimplified, "chs" },
- { SystemLanguage.ChineseTraditional, "cht" },
- { SystemLanguage.Japanese, "jp" },
- { SystemLanguage.Korean, "kr" },
- };
+ public static readonly Dictionary languageMap =
+ new Dictionary()
+ {
+ {
+ SystemLanguage.English,
+ new LanguageInfo() { Language = SystemLanguage.English, Name = "", Code = "en" }
+ },
+ {
+ SystemLanguage.ChineseSimplified,
+ new LanguageInfo() { Language = SystemLanguage.ChineseSimplified, Name = "", Code = "zh-CN" }
+ },
+ {
+ SystemLanguage.ChineseTraditional,
+ new LanguageInfo() { Language = SystemLanguage.ChineseTraditional, Name = "", Code = "zh-TW" }
+ },
+ {
+ SystemLanguage.Japanese,
+ new LanguageInfo() { Language = SystemLanguage.Japanese, Name = "", Code = "jp" }
+ },
+ {
+ SystemLanguage.Korean,
+ new LanguageInfo() { Language = SystemLanguage.Korean, Name = "", Code = "kr" }
+ },
+ {
+ SystemLanguage.French,
+ new LanguageInfo() { Language = SystemLanguage.French, Name = "", Code = "fr" }
+ },
+ {
+ SystemLanguage.Russian,
+ new LanguageInfo() { Language = SystemLanguage.Russian, Name = "", Code = "fr" }
+ },
+ {
+ SystemLanguage.Spanish,
+ new LanguageInfo() { Language = SystemLanguage.Spanish, Name = "", Code = "fr" }
+ },
+ {
+ SystemLanguage.Vietnamese,
+ new LanguageInfo() { Language = SystemLanguage.Vietnamese, Name = "", Code = "fr" }
+ },
+ };
}
}
\ No newline at end of file
diff --git a/Assets/Scripts/NBC/Language/Runtime/LanguageConcrete/LanguageImage.cs b/Assets/Scripts/NBC/Language/Runtime/LanguageConcrete/LanguageImage.cs
index 9ed14d7b2..73015d979 100644
--- a/Assets/Scripts/NBC/Language/Runtime/LanguageConcrete/LanguageImage.cs
+++ b/Assets/Scripts/NBC/Language/Runtime/LanguageConcrete/LanguageImage.cs
@@ -46,9 +46,9 @@ namespace NBC
public bool UseLanguage(SystemLanguage language)
{
- if (_languages.ContainsKey(language))
+ if (_languages.TryGetValue(language, out var language1))
{
- _currentLanguageDictionary = _languages[language];
+ _currentLanguageDictionary = language1;
return true;
}
diff --git a/Assets/Scripts/NBC/Language/Runtime/LanguageManager.cs b/Assets/Scripts/NBC/Language/Runtime/LanguageManager.cs
index 35c39025d..ce8c90f56 100644
--- a/Assets/Scripts/NBC/Language/Runtime/LanguageManager.cs
+++ b/Assets/Scripts/NBC/Language/Runtime/LanguageManager.cs
@@ -36,26 +36,26 @@ namespace NBC
return _currentLanguage;
}
- public void UseLanguage(string name)
+ public void AutoUseLanguage()
{
- foreach (var key in LanguageConst.languageMap.Keys)
+ SystemLanguage language = Application.systemLanguage;
+ if (PlayerPrefs.HasKey(LanguageConst.LanguageSaveKey))
{
- var value = LanguageConst.languageMap[key];
- if (value != name) continue;
- UseLanguage(key);
- return;
+ var value = PlayerPrefs.GetInt(LanguageConst.LanguageSaveKey, -1);
+ if (value >= 0)
+ {
+ language = (SystemLanguage)value;
+ }
}
-
- Debug.LogError("语言包不存在或没有添加映射关系");
- return;
+ UseLanguage(language);
}
-
+
public void UseLanguage(SystemLanguage language)
{
_currentLanguage = language;
- if (LanguageConst.languageMap.TryGetValue(language, out var name))
+ if (LanguageConst.languageMap.TryGetValue(language, out var info))
{
- _currentCustomLanguageName = name;
+ _currentCustomLanguageName = info.Code;
}
foreach (var value in _lanModuleDic.Values)
diff --git a/Fishing2.sln.DotSettings.user b/Fishing2.sln.DotSettings.user
index ab2b19c66..dbaf283eb 100644
--- a/Fishing2.sln.DotSettings.user
+++ b/Fishing2.sln.DotSettings.user
@@ -4,4 +4,5 @@
ForceIncluded
ForceIncluded
ForceIncluded
- ForceIncluded
\ No newline at end of file
+ ForceIncluded
+ ForceIncluded
\ No newline at end of file
diff --git a/Packages/com.waveharmonic.crest/Editor/Scripts/Utility/Shared/WaveHarmonic.Crest.Shared.Editor.asmdef b/Packages/com.waveharmonic.crest/Editor/Scripts/Utility/Shared/WaveHarmonic.Crest.Shared.Editor.asmdef
index 7cdcae75a..05c671eb8 100644
--- a/Packages/com.waveharmonic.crest/Editor/Scripts/Utility/Shared/WaveHarmonic.Crest.Shared.Editor.asmdef
+++ b/Packages/com.waveharmonic.crest/Editor/Scripts/Utility/Shared/WaveHarmonic.Crest.Shared.Editor.asmdef
@@ -5,7 +5,8 @@
"GUID:056ff2a5b2f124d468c6655552acdca5",
"GUID:3eae0364be2026648bf74846acb8a731",
"GUID:df380645f10b7bc4b97d4f5eb6303d95",
- "GUID:be0903cd8e1546f498710afdc59db5eb"
+ "GUID:be0903cd8e1546f498710afdc59db5eb",
+ "WaveHarmonic.Crest.Shared"
],
"includePlatforms": [
"Editor"
diff --git a/Packages/com.waveharmonic.crest/Editor/Scripts/WaveHarmonic.Crest.Editor.asmdef b/Packages/com.waveharmonic.crest/Editor/Scripts/WaveHarmonic.Crest.Editor.asmdef
index 86b226451..75a5c2c71 100644
--- a/Packages/com.waveharmonic.crest/Editor/Scripts/WaveHarmonic.Crest.Editor.asmdef
+++ b/Packages/com.waveharmonic.crest/Editor/Scripts/WaveHarmonic.Crest.Editor.asmdef
@@ -12,7 +12,10 @@
"GUID:be0903cd8e1546f498710afdc59db5eb",
"GUID:7c347618730f5467f86a58f333ce21df",
"GUID:056ff2a5b2f124d468c6655552acdca5",
- "GUID:1ab2a6c2a51cd4b43867788dbaee1a55"
+ "GUID:1ab2a6c2a51cd4b43867788dbaee1a55",
+ "WaveHarmonic.Crest",
+ "WaveHarmonic.Crest.Shared",
+ "WaveHarmonic.Crest.Shared.Editor"
],
"includePlatforms": [
"Editor"
diff --git a/Packages/com.waveharmonic.crest/Runtime/Scripts/Scripting/WaveHarmonic.Crest.Scripting.asmdef b/Packages/com.waveharmonic.crest/Runtime/Scripts/Scripting/WaveHarmonic.Crest.Scripting.asmdef
index cdfac0dab..270ceac18 100644
--- a/Packages/com.waveharmonic.crest/Runtime/Scripts/Scripting/WaveHarmonic.Crest.Scripting.asmdef
+++ b/Packages/com.waveharmonic.crest/Runtime/Scripts/Scripting/WaveHarmonic.Crest.Scripting.asmdef
@@ -5,7 +5,9 @@
"GUID:7c347618730f5467f86a58f333ce21df",
"GUID:14c30fdc5e1c1403a8ae14a752f3df85",
"GUID:056ff2a5b2f124d468c6655552acdca5",
- "GUID:1a8679b518d374790a83a275d183e377"
+ "GUID:1a8679b518d374790a83a275d183e377",
+ "WaveHarmonic.Crest",
+ "WaveHarmonic.Crest.Shared"
],
"includePlatforms": [],
"excludePlatforms": [],
diff --git a/Packages/com.waveharmonic.crest/Runtime/Scripts/WaveHarmonic.Crest.asmdef b/Packages/com.waveharmonic.crest/Runtime/Scripts/WaveHarmonic.Crest.asmdef
index 1c2fcf618..0b6c3d754 100644
--- a/Packages/com.waveharmonic.crest/Runtime/Scripts/WaveHarmonic.Crest.asmdef
+++ b/Packages/com.waveharmonic.crest/Runtime/Scripts/WaveHarmonic.Crest.asmdef
@@ -9,7 +9,9 @@
"GUID:27619889b8ba8c24980f49ee34dbb44a",
"GUID:056ff2a5b2f124d468c6655552acdca5",
"GUID:1ab2a6c2a51cd4b43867788dbaee1a55",
- "GUID:2342e6f66b7fd461bb1346f13f99f4a7"
+ "GUID:2342e6f66b7fd461bb1346f13f99f4a7",
+ "WaveHarmonic.Crest.Shared",
+ "WaveHarmonic.Crest.Shared.Editor"
],
"includePlatforms": [],
"excludePlatforms": [],
diff --git a/Packages/com.waveharmonic.crest/Shared/Scripts/WaveHarmonic.Crest.Samples.asmdef b/Packages/com.waveharmonic.crest/Shared/Scripts/WaveHarmonic.Crest.Samples.asmdef
index eeced06e4..73390c164 100644
--- a/Packages/com.waveharmonic.crest/Shared/Scripts/WaveHarmonic.Crest.Samples.asmdef
+++ b/Packages/com.waveharmonic.crest/Shared/Scripts/WaveHarmonic.Crest.Samples.asmdef
@@ -8,7 +8,10 @@
"GUID:457756d89b35d2941b3e7b37b4ece6f1",
"GUID:7c347618730f5467f86a58f333ce21df",
"GUID:056ff2a5b2f124d468c6655552acdca5",
- "GUID:1ab2a6c2a51cd4b43867788dbaee1a55"
+ "GUID:1ab2a6c2a51cd4b43867788dbaee1a55",
+ "WaveHarmonic.Crest",
+ "WaveHarmonic.Crest.Shared",
+ "WaveHarmonic.Crest.Shared.Editor"
],
"includePlatforms": [],
"excludePlatforms": [],
diff --git a/UserSettings/EditorUserSettings.asset b/UserSettings/EditorUserSettings.asset
index fe7a33327..a656166f0 100644
--- a/UserSettings/EditorUserSettings.asset
+++ b/UserSettings/EditorUserSettings.asset
@@ -30,14 +30,14 @@ EditorUserSettings:
value: 5553075e5c0d59080f0d597347770f44444f4a7f78787e36782f4967bae43769
flags: 0
RecentlyUsedSceneGuid-7:
- value: 5505015f5c515a085f5b092149760f441716407a787d7564287b1b36e7e1366e
- flags: 0
- RecentlyUsedSceneGuid-8:
value: 5b08565357035d0c0f5d0a774277071242154029757170697b784e66e6b33060
flags: 0
- RecentlyUsedSceneGuid-9:
+ RecentlyUsedSceneGuid-8:
value: 020056535456585e0f0d0a7541210d441215482c2d297f36752c1b65b3b0376e
flags: 0
+ RecentlyUsedSceneGuid-9:
+ value: 5505015f5c515a085f5b092149760f441716407a787d7564287b1b36e7e1366e
+ flags: 0
vcSharedLogLevel:
value: 0d5e400f0650
flags: 0