diff --git a/KEngine b/KEngine
index a57b64be..c648aaa9 160000
--- a/KEngine
+++ b/KEngine
@@ -1 +1 @@
-Subproject commit a57b64be0aaf4ca31ad5a7e470c404586ff0cd6d
+Subproject commit c648aaa9b4fb9bcea704180cd433ab5e5608f0da
diff --git a/KSFramework/Assets/AppSettings.cs b/KSFramework/Assets/AppSettings.cs
index e475479c..19ffcbf2 100644
--- a/KSFramework/Assets/AppSettings.cs
+++ b/KSFramework/Assets/AppSettings.cs
@@ -56,7 +56,7 @@ public static IReloadableSettings[] SettingsList
}
#if UNITY_EDITOR
- [UnityEditor.MenuItem("KEngine/Settings/Reload All Settings")]
+ [UnityEditor.MenuItem("KEngine/Settings/Try Reload All Settings Code")]
#endif
public static void AllSettingsReload()
{
@@ -157,15 +157,29 @@ public void ReloadAll()
_ReloadAll(false);
}
+ ///
+ /// Do reload the setting class : Test, no exception when duplicate primary key, use custom string content
+ ///
+ public void ReloadAllWithString(string context)
+ {
+ _ReloadAll(false, context);
+ }
+
///
/// Do reload the setting file: Test
///
- void _ReloadAll(bool throwWhenDuplicatePrimaryKey)
+ void _ReloadAll(bool throwWhenDuplicatePrimaryKey, string customContent = null)
{
for (var j = 0; j < TabFilePaths.Length; j++)
{
var tabFilePath = TabFilePaths[j];
- using (var tableFile = SettingModule.Get(tabFilePath, false))
+ TableFile tableFile;
+ if (customContent == null)
+ tableFile = SettingModule.Get(tabFilePath, false);
+ else
+ tableFile = TableFile.LoadFromString(customContent);
+
+ using (tableFile)
{
foreach (var row in tableFile)
{
@@ -270,7 +284,7 @@ public static string ParsePrimaryKey(TableRow row)
}
///
- /// Auto Generate for Tab File: "GameConfig/+Base.bytes", "GameConfig/+TSV.bytes"
+ /// Auto Generate for Tab File: "GameConfig/#Base.bytes", "GameConfig/#TSV.bytes"
/// No use of generic and reflection, for better performance, less IL code generating
/// >
public partial class GameConfigSettings : IReloadableSettings
@@ -282,7 +296,7 @@ public partial class GameConfigSettings : IReloadableSettings
public static readonly string[] TabFilePaths =
{
- "GameConfig/+Base.bytes", "GameConfig/+TSV.bytes"
+ "GameConfig/#Base.bytes", "GameConfig/#TSV.bytes"
};
internal static GameConfigSettings _instance = new GameConfigSettings();
Dictionary _dict = new Dictionary();
@@ -348,15 +362,29 @@ public void ReloadAll()
_ReloadAll(false);
}
+ ///
+ /// Do reload the setting class : GameConfig, no exception when duplicate primary key, use custom string content
+ ///
+ public void ReloadAllWithString(string context)
+ {
+ _ReloadAll(false, context);
+ }
+
///
/// Do reload the setting file: GameConfig
///
- void _ReloadAll(bool throwWhenDuplicatePrimaryKey)
+ void _ReloadAll(bool throwWhenDuplicatePrimaryKey, string customContent = null)
{
for (var j = 0; j < TabFilePaths.Length; j++)
{
var tabFilePath = TabFilePaths[j];
- using (var tableFile = SettingModule.Get(tabFilePath, false))
+ TableFile tableFile;
+ if (customContent == null)
+ tableFile = SettingModule.Get(tabFilePath, false);
+ else
+ tableFile = TableFile.LoadFromString(customContent);
+
+ using (tableFile)
{
foreach (var row in tableFile)
{
@@ -420,7 +448,7 @@ public static GameConfigSetting Get(string primaryKey)
}
///
- /// Auto Generate for Tab File: "GameConfig/+Base.bytes", "GameConfig/+TSV.bytes"
+ /// Auto Generate for Tab File: "GameConfig/#Base.bytes", "GameConfig/#TSV.bytes"
/// Singleton class for less memory use
///
public partial class GameConfigSetting : TableRowParser
diff --git a/KSFramework/Assets/Plugins/Slua_Managed.meta b/KSFramework/Assets/Plugins/Slua_Managed.meta
index 94a90ff1..7640c350 100644
--- a/KSFramework/Assets/Plugins/Slua_Managed.meta
+++ b/KSFramework/Assets/Plugins/Slua_Managed.meta
@@ -1,5 +1,8 @@
fileFormatVersion: 2
guid: 82f4cef799e5e0f4f9177b4ca66970ae
+folderAsset: yes
+timeCreated: 1472605428
+licenseType: Pro
DefaultImporter:
userData:
assetBundleName:
diff --git a/KSFramework/Assets/SLua/Editor/LuaCodeGen.cs b/KSFramework/Assets/SLua/Editor/LuaCodeGen.cs
index 54565e7b..784d57b2 100644
--- a/KSFramework/Assets/SLua/Editor/LuaCodeGen.cs
+++ b/KSFramework/Assets/SLua/Editor/LuaCodeGen.cs
@@ -1977,6 +1977,8 @@ private void WriteFunctionCall(MethodInfo m, StreamWriter file, Type t,BindingFl
Write(file, "{0}a1/a2;", ret);
else if (m.Name == "op_UnaryNegation")
Write(file, "{0}-a1;", ret);
+ else if (m.Name == "op_UnaryPlus")
+ Write(file, "{0}+a1;", ret);
else if (m.Name == "op_Equality")
Write(file, "{0}(a1==a2);", ret);
else if (m.Name == "op_Inequality")
diff --git a/KSFramework/Product/Setting/GameConfig/+Base.bytes b/KSFramework/Product/Setting/GameConfig/#Base.bytes
similarity index 100%
rename from KSFramework/Product/Setting/GameConfig/+Base.bytes
rename to KSFramework/Product/Setting/GameConfig/#Base.bytes
diff --git a/KSFramework/Product/Setting/GameConfig/+TSV.bytes b/KSFramework/Product/Setting/GameConfig/#TSV.bytes
similarity index 100%
rename from KSFramework/Product/Setting/GameConfig/+TSV.bytes
rename to KSFramework/Product/Setting/GameConfig/#TSV.bytes
diff --git a/KSFramework/Product/SettingSource/GameConfig/+Base.xlsx b/KSFramework/Product/SettingSource/GameConfig/#Base.xlsx
similarity index 100%
rename from KSFramework/Product/SettingSource/GameConfig/+Base.xlsx
rename to KSFramework/Product/SettingSource/GameConfig/#Base.xlsx
diff --git a/KSFramework/Product/SettingSource/GameConfig/+TSV.tsv b/KSFramework/Product/SettingSource/GameConfig/#TSV.tsv
similarity index 100%
rename from KSFramework/Product/SettingSource/GameConfig/+TSV.tsv
rename to KSFramework/Product/SettingSource/GameConfig/#TSV.tsv