Просмотр исходного кода

Merge branch 'localizetexture' of ssh://192.168.0.8:29418/xianjing into hy_dny_localized

gdl_123 2 месяцев назад
Родитель
Сommit
6edfd915ea

+ 2 - 1
Assets/Lua/UI/UISettings/UISettingsView.lua

@@ -299,12 +299,13 @@ function UISettingsView:InitLanguageSelect()
 		ManagerContainer.LuaLocalizedTextureCfgMgr:SetLanguageByKey(Constant.LanguageNames[value+1])
 		ManagerContainer.LuaLocalizedTextureCfgMgr.SetLanguageLocalSetting(ManagerContainer.LuaLocalizedTextureCfgMgr.CurLanguageKey)
 	end)
-	local curLanguageKey = tostring(ManagerContainer.LuaLocalizedTextureCfgMgr.CurLanguageKey)
+	local curLanguageKey = tostring(ManagerContainer.LuaLocalizedTextureCfgMgr:GetCurLanguageKey())
 	local curV = 0
 	DropDownHelper.ClearDropDown(self.lgsDropdown.dropdown);
 	DropDownHelper.SetStartName(self.lgsDropdown.dropdown, I18N.T('lgn_'..Constant.LanguageNames[1]))
 	for i = 1, #Constant.LanguageNames do	
 		local s,e = string.find(curLanguageKey,Constant.LanguageNames[i])	
+		LogError(Constant.LanguageNames[i].." find "..curLanguageKey)
 		if s~=nil and s > 0 then
 			LogError("find ok "..curLanguageKey)
 			curV = i - 1

+ 13 - 0
Assets/Src/Core/Config/LocalizedTextureCfgMgr.cs

@@ -282,6 +282,19 @@ public class LocalizedTextureCfgMgr : Singleton<LocalizedTextureCfgMgr>
         return GetLanguageCfgByKey(ret);
     }
 
+    public string GetCurLanguageKey()
+    {
+        foreach (var item in gameLanguageCfgs)
+        {
+            if (item.Value.language == curLanguageKey && item.Key != LanguageFileEx.Unknown)
+            {
+                return item.Key;
+            }
+        }
+
+        return "";
+    }
+
     public static string GetLanguageLocalSetting()
     {
         return UnityEngine.PlayerPrefs.GetString("LanguageLocalSetting",string.Empty);

+ 18 - 0
Assets/ToLua/Source/Generate/LocalizedTextureCfgMgrWrap.cs

@@ -14,6 +14,7 @@ public class LocalizedTextureCfgMgrWrap
 		L.RegFunction("SetLanguageByKey", SetLanguageByKey);
 		L.RegFunction("GetLanguageCfgByKey", GetLanguageCfgByKey);
 		L.RegFunction("GetSystemDefaultLanguage", GetSystemDefaultLanguage);
+		L.RegFunction("GetCurLanguageKey", GetCurLanguageKey);
 		L.RegFunction("GetLanguageLocalSetting", GetLanguageLocalSetting);
 		L.RegFunction("SetLanguageLocalSetting", SetLanguageLocalSetting);
 		L.RegFunction("New", _CreateLocalizedTextureCfgMgr);
@@ -203,6 +204,23 @@ public class LocalizedTextureCfgMgrWrap
 		}
 	}
 
+	[MonoPInvokeCallbackAttribute(typeof(LuaCSFunction))]
+	static int GetCurLanguageKey(IntPtr L)
+	{
+		try
+		{
+			ToLua.CheckArgsCount(L, 1);
+			LocalizedTextureCfgMgr obj = (LocalizedTextureCfgMgr)ToLua.CheckObject<LocalizedTextureCfgMgr>(L, 1);
+			string o = obj.GetCurLanguageKey();
+			LuaDLL.lua_pushstring(L, o);
+			return 1;
+		}
+		catch (Exception e)
+		{
+			return LuaDLL.toluaL_exception(L, e);
+		}
+	}
+
 	[MonoPInvokeCallbackAttribute(typeof(LuaCSFunction))]
 	static int GetLanguageLocalSetting(IntPtr L)
 	{