From e9968d85172519b2c6a06fffa72d5426bd7407a1 Mon Sep 17 00:00:00 2001 From: gaoxin Date: Fri, 19 Mar 2021 14:19:05 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90=E8=AF=AD=E8=A8=80=E5=8A=9F=E8=83=BD?= =?UTF-8?q?=E3=80=91=E8=87=AA=E5=8A=A8=E5=88=87=E6=8D=A2=E8=AF=AD=E8=A8=80?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=B8=BA=E5=8F=AF=E9=85=8D=E7=BD=AE=EF=BC=8C?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=B8=B8=E6=88=8F=E4=B8=AD=E8=AE=BE=E7=BD=AE?= =?UTF-8?q?=E8=AF=AD=E8=A8=80=E6=8C=89=E9=92=AE=E7=9A=84=E4=BD=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Assets/LuaFramework/Scripts/Framework/App.cs | 1 + Assets/LuaFramework/Scripts/Utility/Util.cs | 5 +- .../Prefabs/UI/Setting/SettingPanel.prefab | 244 +----------------- .../~Lua/Modules/Setting/SettingInfo.lua | 8 +- .../Manager/ResourcesUpdateManager.cs | 2 + Assets/Scripts/GameInit/GameStart.cs | 38 --- .../GameInit/SLanguageMoreLanguageMgr.cs | 52 +++- 7 files changed, 75 insertions(+), 275 deletions(-) diff --git a/Assets/LuaFramework/Scripts/Framework/App.cs b/Assets/LuaFramework/Scripts/Framework/App.cs index f5b47afc24..3b9045465e 100644 --- a/Assets/LuaFramework/Scripts/Framework/App.cs +++ b/Assets/LuaFramework/Scripts/Framework/App.cs @@ -197,6 +197,7 @@ public class App : UnitySingleton public void Initialize() { ConfigMgr.Init(); + SLanguageMoreLanguageMgr.Instance.InitData(); VersionMgr.Initialize(); } diff --git a/Assets/LuaFramework/Scripts/Utility/Util.cs b/Assets/LuaFramework/Scripts/Utility/Util.cs index e83e757475..67f667e9f4 100644 --- a/Assets/LuaFramework/Scripts/Utility/Util.cs +++ b/Assets/LuaFramework/Scripts/Utility/Util.cs @@ -1117,11 +1117,12 @@ namespace GameLogic string spriteStr = spriteName; if (subStr == "_zh") { - if (PlayerPrefs.GetInt("language") == 1) + int lt = SLanguageMoreLanguageMgr.Instance.GetLanguageType(); + if (lt == 1) { spriteStr = spriteName.Remove(spriteName.Length - 2) + "en"; } - else if (PlayerPrefs.GetInt("language") == 2) + else if (lt == 2) { spriteStr = spriteName.Remove(spriteName.Length - 2) + "vi"; } diff --git a/Assets/ManagedResources/Prefabs/UI/Setting/SettingPanel.prefab b/Assets/ManagedResources/Prefabs/UI/Setting/SettingPanel.prefab index c674f77539..0e14b11c06 100644 --- a/Assets/ManagedResources/Prefabs/UI/Setting/SettingPanel.prefab +++ b/Assets/ManagedResources/Prefabs/UI/Setting/SettingPanel.prefab @@ -106,6 +106,7 @@ RectTransform: - {fileID: 6323907669162332623} - {fileID: 1042795630689291113} - {fileID: 7403415200051497663} + - {fileID: 655889813004748635} m_Father: {fileID: 8996595556620474117} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -510,7 +511,7 @@ RectTransform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 655889813004748635} - m_RootOrder: 0 + m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} @@ -1586,7 +1587,7 @@ RectTransform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 655889813004748635} - m_RootOrder: 1 + m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 0.5} m_AnchorMax: {x: 1, y: 0.5} @@ -1710,81 +1711,6 @@ MonoBehaviour: m_LineSpacing: 1 m_Text: "\u653B\u51FB\uFF1A" LanguageIndex: 0 ---- !u!1 &564430352927793580 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8164539038628194150} - - component: {fileID: 3266766804967399390} - - component: {fileID: 6734096809880213633} - m_Layer: 5 - m_Name: Image - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8164539038628194150 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 564430352927793580} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: - - {fileID: 8900518197752391045} - m_Father: {fileID: 3316413344436090805} - m_RootOrder: 3 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 1} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: -1146} - m_SizeDelta: {x: 0, y: 75} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &3266766804967399390 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 564430352927793580} - m_CullTransparentMesh: 0 ---- !u!114 &6734096809880213633 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 564430352927793580} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, - Version=1.0.0.0, Culture=neutral, PublicKeyToken=null - m_Sprite: {fileID: 21300000, guid: b44f71f84aa20084a9ed3a8ef44c483c, type: 3} - m_Type: 1 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 --- !u!1 &594498497032094176 GameObject: m_ObjectHideFlags: 0 @@ -1893,7 +1819,6 @@ RectTransform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 861513193} - - {fileID: 4074313861348738548} m_Father: {fileID: 7423535894473370959} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -5763,7 +5688,6 @@ RectTransform: - {fileID: 649693974224445334} - {fileID: 5075207361885460552} - {fileID: 5075207361646036926} - - {fileID: 8164539038628194150} m_Father: {fileID: 7423535894473370959} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -6425,67 +6349,6 @@ RectTransform: m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} ---- !u!1 &2974198067001771857 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 4074313861348738548} - - component: {fileID: 511661598688498961} - m_Layer: 5 - m_Name: box1 - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &4074313861348738548 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2974198067001771857} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: - - {fileID: 655889813004748635} - - {fileID: 1077111544204339403} - m_Father: {fileID: 8996595556620474117} - m_RootOrder: 1 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 1} - m_AnchorMax: {x: 0.5, y: 1} - m_AnchoredPosition: {x: 0, y: -1185} - m_SizeDelta: {x: 1080, y: 90} - m_Pivot: {x: 0.5, y: 1} ---- !u!114 &511661598688498961 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2974198067001771857} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 1297475563, guid: f70555f144d8491a825f0804e09c671c, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Padding: - m_Left: 100 - m_Right: 0 - m_Top: 45 - m_Bottom: 0 - m_ChildAlignment: 0 - m_Spacing: 0 - m_ChildForceExpandWidth: 1 - m_ChildForceExpandHeight: 1 - m_ChildControlWidth: 0 - m_ChildControlHeight: 0 --- !u!1 &3052749163510075554 GameObject: m_ObjectHideFlags: 0 @@ -6917,20 +6780,21 @@ RectTransform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3224954024497360144} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: + - {fileID: 1077111544204339403} - {fileID: 3312353661996661353} - {fileID: 3859439430310529040} - {fileID: 7964369023937820060} - m_Father: {fileID: 4074313861348738548} - m_RootOrder: 0 + m_Father: {fileID: 861513193} + m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 420, y: 90} + m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8440280213579013307 CanvasRenderer: @@ -7287,86 +7151,6 @@ MonoBehaviour: isPlayAudio: 1 isHaveCloseBtn: 0 isPlayOnOpen: 1 ---- !u!1 &3372962144034595163 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8900518197752391045} - - component: {fileID: 157444261171248351} - - component: {fileID: 8584004119700968296} - m_Layer: 5 - m_Name: Text - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &8900518197752391045 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3372962144034595163} - m_LocalRotation: {x: -0, y: -0, z: 0.004054589, w: -0.99999183} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 8164539038628194150} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0.5} - m_AnchorMax: {x: 0, y: 0.5} - m_AnchoredPosition: {x: 149.5, y: -1.6} - m_SizeDelta: {x: 241.1, y: 62.3} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &157444261171248351 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3372962144034595163} - m_CullTransparentMesh: 0 ---- !u!114 &8584004119700968296 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3372962144034595163} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: ebfe0e44da74fbd44b1b744995de2324, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 0.9882353, g: 0.92156863, b: 0.7921569, a: 1} - m_RaycastTarget: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, - Version=1.0.0.0, Culture=neutral, PublicKeyToken=null - m_FontData: - m_Font: {fileID: 12800000, guid: 4b73e9e4512d17e4daeea351e090d33c, type: 3} - m_FontSize: 40 - m_FontStyle: 0 - m_BestFit: 0 - m_MinSize: 4 - m_MaxSize: 48 - m_Alignment: 3 - m_AlignByGeometry: 0 - m_RichText: 1 - m_HorizontalOverflow: 1 - m_VerticalOverflow: 1 - m_LineSpacing: 1 - m_Text: "\u8BED\u8A00" - LanguageIndex: 0 --- !u!1 &3573780367671578872 GameObject: m_ObjectHideFlags: 0 @@ -9521,7 +9305,7 @@ RectTransform: m_Children: - {fileID: 2044536394749562946} m_Father: {fileID: 655889813004748635} - m_RootOrder: 2 + m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} @@ -16642,12 +16426,12 @@ RectTransform: m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] - m_Father: {fileID: 4074313861348738548} - m_RootOrder: 1 + m_Father: {fileID: 655889813004748635} + m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: 0, y: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: -85} m_SizeDelta: {x: 420, y: 50} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &5298306214829582365 diff --git a/Assets/ManagedResources/~Lua/Modules/Setting/SettingInfo.lua b/Assets/ManagedResources/~Lua/Modules/Setting/SettingInfo.lua index 300d9ff45e..7ff9dbabdf 100644 --- a/Assets/ManagedResources/~Lua/Modules/Setting/SettingInfo.lua +++ b/Assets/ManagedResources/~Lua/Modules/Setting/SettingInfo.lua @@ -42,11 +42,11 @@ function SettingInfo:InitComponent(gameObject, rootPanel) -- this.languageText.text=GetCurLanguage()==0 and "中文" or "英文" if IsLanguagePack then - this.dropDown = Util.GetGameObject(gameObject,"other/box1/Dropdown"):GetComponent("Dropdown") - this.dropDownText = Util.GetGameObject(gameObject,"other/box1/Dropdown/Label"):GetComponent("Text") - this.dropDownTip = Util.GetGameObject(gameObject,"other/box1/tip") + this.dropDown = Util.GetGameObject(gameObject,"other/box/Dropdown"):GetComponent("Dropdown") + this.dropDownText = Util.GetGameObject(gameObject,"other/box/Dropdown/Label"):GetComponent("Text") + this.dropDownTip = Util.GetGameObject(gameObject,"other/box/Dropdown/tip") else - this.dropDown = Util.GetGameObject(gameObject,"other/box1/Dropdown") + this.dropDown = Util.GetGameObject(gameObject,"other/box/Dropdown") this.dropDown.transform.parent.gameObject:SetActive(false) end diff --git a/Assets/Scripts/Core/ResUpdate/Manager/ResourcesUpdateManager.cs b/Assets/Scripts/Core/ResUpdate/Manager/ResourcesUpdateManager.cs index 321f280ba1..be039d1617 100644 --- a/Assets/Scripts/Core/ResUpdate/Manager/ResourcesUpdateManager.cs +++ b/Assets/Scripts/Core/ResUpdate/Manager/ResourcesUpdateManager.cs @@ -330,6 +330,8 @@ namespace ResUpdate { Debug.Log("www.text.config:" + request0.downloadHandler.text); ConfigManager.Instance.SetNetInfo(request0.downloadHandler.text); + // 初始化语言 + SLanguageMoreLanguageMgr.Instance.InitData(); } // 获取version diff --git a/Assets/Scripts/GameInit/GameStart.cs b/Assets/Scripts/GameInit/GameStart.cs index 5cd5a5a1c8..d6f4e9a26b 100644 --- a/Assets/Scripts/GameInit/GameStart.cs +++ b/Assets/Scripts/GameInit/GameStart.cs @@ -14,44 +14,6 @@ public class GameStart : MonoBehaviour private AssetBundle bundle; void Start() { - //PlayerPrefs.DeleteKey("language"); - if (!PlayerPrefs.HasKey("language")) - { - if (Application.systemLanguage == SystemLanguage.Chinese || Application.systemLanguage == SystemLanguage.ChineseSimplified || Application.systemLanguage == SystemLanguage.ChineseTraditional) - { - PlayerPrefs.SetInt("language", 0); - } - else if (Application.systemLanguage == SystemLanguage.Vietnamese) - { - PlayerPrefs.SetInt("language", 2); - } - else - { - PlayerPrefs.SetInt("language", 1); - } - } - else if(PlayerPrefs.HasKey("language_flag")&& PlayerPrefs.GetInt("language")!= PlayerPrefs.GetInt("language_flag")) - { - PlayerPrefs.SetInt("language", PlayerPrefs.GetInt("language_flag")); - } - if (!PlayerPrefs.HasKey("language_flag")) - { - PlayerPrefs.SetInt("language_flag", PlayerPrefs.GetInt("language")); - } - string languageStr = ""; - if (PlayerPrefs.GetInt("language") == 0) - { - languageStr = "中文"; - } - else if (PlayerPrefs.GetInt("language") == 1) - { - languageStr = "英文"; - } - else - { - languageStr = "越南语"; - } - Debug.Log("当前语言是:" + languageStr); if (Application.isEditor && AppConst.bundleMode && AppConst.isUpdate) { if (!System.IO.Directory.Exists(Util.AppContentPath())) diff --git a/Assets/Scripts/GameInit/SLanguageMoreLanguageMgr.cs b/Assets/Scripts/GameInit/SLanguageMoreLanguageMgr.cs index f3c324763b..ec9b8272e3 100644 --- a/Assets/Scripts/GameInit/SLanguageMoreLanguageMgr.cs +++ b/Assets/Scripts/GameInit/SLanguageMoreLanguageMgr.cs @@ -115,6 +115,7 @@ namespace GameLogic public void InitData() { //languagedictionary = new Dictionary(); + InitLanguageConfig(); InitLanguagedictionary(); //this.languagedictionary.Add(more_language.CANEL, new languageStruct() { english = EnglishLanguage.CANEL, chinese = ChineseLanguage.CANEL }); //this.languagedictionary.Add(more_language.CONFIRM, new languageStruct() { english = EnglishLanguage.CONFIRM, chinese = ChineseLanguage.CONFIRM }); @@ -145,6 +146,55 @@ namespace GameLogic data = JsonMapper.ToObject(strjson); } + public int GetLanguageType() + { + return PlayerPrefs.GetInt("language", 0); + } + + public void InitLanguageConfig() + { + if (ConfigManager.Instance.GetConfigInfo("Setting.LanguagePackager.isActive") == "1") + { + + if (!PlayerPrefs.HasKey("language")) + { + if (Application.systemLanguage == SystemLanguage.Chinese || Application.systemLanguage == SystemLanguage.ChineseSimplified || Application.systemLanguage == SystemLanguage.ChineseTraditional) + { + PlayerPrefs.SetInt("language", 0); + } + else if (Application.systemLanguage == SystemLanguage.Vietnamese) + { + PlayerPrefs.SetInt("language", 2); + } + else + { + PlayerPrefs.SetInt("language", 1); + } + } + else if (PlayerPrefs.HasKey("language_flag") && PlayerPrefs.GetInt("language") != PlayerPrefs.GetInt("language_flag")) + { + PlayerPrefs.SetInt("language", PlayerPrefs.GetInt("language_flag")); + } + if (!PlayerPrefs.HasKey("language_flag")) + { + PlayerPrefs.SetInt("language_flag", PlayerPrefs.GetInt("language")); + } + } + else + { + PlayerPrefs.SetInt("language", 0); + } + + string languageStr = ""; + switch (GetLanguageType()) + { + case 0: languageStr = "中文";break; + case 1: languageStr = "英文"; break; + case 2: languageStr = "越南语"; break; + } + Debug.Log("当前语言是:" + languageStr); + } + /// /// 初始化 /// @@ -197,7 +247,7 @@ namespace GameLogic string index1 = ((int)language).ToString(); var data2 = JsonMapper.ToJson(data[index1]); var data1 = JsonMapper.ToObject(data2); - switch (PlayerPrefs.GetInt("language")) + switch (GetLanguageType()) { case 0: languageThrans = data1.chinese;