From 293ea2e128e29a96347af0a033aa8cbb83ec3039 Mon Sep 17 00:00:00 2001 From: ALEXTANG <574809918@qq.com> Date: Tue, 25 Apr 2023 15:44:19 +0800 Subject: [PATCH 1/3] Update start.bat --- Luban/FileServer/start.bat | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Luban/FileServer/start.bat b/Luban/FileServer/start.bat index 13cd1fa7..7f83ac58 100644 --- a/Luban/FileServer/start.bat +++ b/Luban/FileServer/start.bat @@ -1 +1 @@ -server \ No newline at end of file +server -p 8081 -cors \ No newline at end of file From 7db0d3fcc4c482fe9b9fec94661f1ec1b666c294 Mon Sep 17 00:00:00 2001 From: ALEXTANG <574809918@qq.com> Date: Tue, 25 Apr 2023 15:44:29 +0800 Subject: [PATCH 2/3] [+] ZipWrapper [+] ZipWrapper --- Assets/TEngine/Runtime/Utility/ZipWrapper.cs | 396 ++++++++++++++++++ .../Runtime/Utility/ZipWrapper.cs.meta | 11 + 2 files changed, 407 insertions(+) create mode 100644 Assets/TEngine/Runtime/Utility/ZipWrapper.cs create mode 100644 Assets/TEngine/Runtime/Utility/ZipWrapper.cs.meta diff --git a/Assets/TEngine/Runtime/Utility/ZipWrapper.cs b/Assets/TEngine/Runtime/Utility/ZipWrapper.cs new file mode 100644 index 00000000..5d28eb93 --- /dev/null +++ b/Assets/TEngine/Runtime/Utility/ZipWrapper.cs @@ -0,0 +1,396 @@ +using ICSharpCode.SharpZipLib.Zip; +using System.IO; +using ICSharpCode.SharpZipLib.Checksums; +using UnityEngine; + +public class ZipWrapper : MonoBehaviour +{ + #region ZipCallback + + public abstract class ZipCallback + { + /// + /// 压缩单个文件或文件夹前执行的回调。 + /// + /// 压缩实例。 + /// 如果返回true,则压缩文件或文件夹,反之则不压缩文件或文件夹。 + public virtual bool OnPreZip(ZipEntry entry) + { + return true; + } + + /// + /// 压缩单个文件或文件夹后执行的回调。 + /// + /// 压缩实例。 + public virtual void OnPostZip(ZipEntry entry) + { + } + + /// + /// 压缩执行完毕后的回调。 + /// + /// true表示压缩成功,false表示压缩失败。 + public virtual void OnFinished(bool result) + { + } + } + + #endregion + + #region UnzipCallback + + public abstract class UnzipCallback + { + /// + /// 解压单个文件或文件夹前执行的回调。 + /// + /// 压缩实例。 + /// 如果返回true,则压缩文件或文件夹,反之则不压缩文件或文件夹。 + public virtual bool OnPreUnzip(ZipEntry entry) + { + return true; + } + + /// + /// 解压单个文件或文件夹后执行的回调。 + /// + /// 压缩实例。 + public virtual void OnPostUnzip(ZipEntry entry) + { + } + + /// + /// 解压执行完毕后的回调。 + /// + /// true表示解压成功,false表示解压失败。 + public virtual void OnFinished(bool result) + { + } + } + + #endregion + + /// + /// 压缩文件和文件夹。 + /// + /// 文件夹路径和文件名。 + /// 压缩后的输出路径文件名。 + /// 压缩密码。 + /// ZipCallback对象,负责回调。 + /// + public static bool Zip(string[] fileOrDirectoryArray, string outputPathName, string password = null, ZipCallback zipCallback = null) + { + if ((null == fileOrDirectoryArray) || string.IsNullOrEmpty(outputPathName)) + { + if (null != zipCallback) + zipCallback.OnFinished(false); + + return false; + } + + ZipOutputStream zipOutputStream = new ZipOutputStream(File.Create(outputPathName)); + // 压缩质量和压缩速度的平衡点 + zipOutputStream.SetLevel(6); + if (!string.IsNullOrEmpty(password)) + zipOutputStream.Password = password; + + for (int index = 0; index < fileOrDirectoryArray.Length; ++index) + { + bool result = false; + string fileOrDirectory = fileOrDirectoryArray[index]; + if (Directory.Exists(fileOrDirectory)) + result = ZipDirectory(fileOrDirectory, string.Empty, zipOutputStream, zipCallback); + else if (File.Exists(fileOrDirectory)) + result = ZipFile(fileOrDirectory, string.Empty, zipOutputStream, zipCallback); + + if (!result) + { + if (null != zipCallback) + zipCallback.OnFinished(false); + + return false; + } + } + + zipOutputStream.Finish(); + zipOutputStream.Close(); + + if (null != zipCallback) + zipCallback.OnFinished(true); + + return true; + } + + /// + /// 解压Zip包。 + /// + /// Zip包的文件路径名。 + /// 解压输出路径。 + /// 解压密码。 + /// UnzipCallback对象,负责回调。 + /// + public static bool UnzipFile(string filePathName, string outputPath, string password = null, UnzipCallback unzipCallback = null) + { + if (string.IsNullOrEmpty(filePathName) || string.IsNullOrEmpty(outputPath)) + { + if (null != unzipCallback) + unzipCallback.OnFinished(false); + + return false; + } + + try + { + return UnzipFile(File.OpenRead(filePathName), outputPath, password, unzipCallback); + } + catch (System.Exception exception) + { + Debug.LogError("[ZipUtility.UnzipFile]: " + exception); + + if (null != unzipCallback) + unzipCallback.OnFinished(false); + + return false; + } + } + + /// + /// 解压Zip包。 + /// + /// Zip包字节数组。 + /// 解压输出路径。 + /// 解压密码。 + /// UnzipCallback对象,负责回调。 + /// + public static bool UnzipFile(byte[] fileBytes, string outputPath, string password = null, UnzipCallback unzipCallback = null) + { + if ((null == fileBytes) || string.IsNullOrEmpty(outputPath)) + { + if (null != unzipCallback) + unzipCallback.OnFinished(false); + + return false; + } + + bool result = UnzipFile(new MemoryStream(fileBytes), outputPath, password, unzipCallback); + if (!result) + { + if (null != unzipCallback) + unzipCallback.OnFinished(false); + } + + return result; + } + + /// + /// 解压Zip包 + /// + /// Zip包输入流。 + /// 解压输出路径。 + /// 解压密码。 + /// UnzipCallback对象,负责回调。 + /// + public static bool UnzipFile(Stream inputStream, string outputPath, string password = null, UnzipCallback unzipCallback = null) + { + if ((null == inputStream) || string.IsNullOrEmpty(outputPath)) + { + if (null != unzipCallback) + unzipCallback.OnFinished(false); + + return false; + } + + // 创建文件目录 + if (!Directory.Exists(outputPath)) + Directory.CreateDirectory(outputPath); + + // 解压Zip包 + ZipEntry zipEntry = null; + using (ZipInputStream zipInputStream = new ZipInputStream(inputStream)) + { + if (!string.IsNullOrEmpty(password)) + zipInputStream.Password = password; + + while (null != (zipEntry = zipInputStream.GetNextEntry())) + { + if (string.IsNullOrEmpty(zipEntry.Name)) + continue; + + if ((null != unzipCallback) && !unzipCallback.OnPreUnzip(zipEntry)) + continue; // 过滤 + + string filePathName = Path.Combine(outputPath, zipEntry.Name); + + // 创建文件目录 + if (zipEntry.IsDirectory) + { + Directory.CreateDirectory(filePathName); + continue; + } + + // 写入文件 + try + { + using (FileStream fileStream = File.Create(filePathName)) + { + byte[] bytes = new byte[1024]; + while (true) + { + int count = zipInputStream.Read(bytes, 0, bytes.Length); + if (count > 0) + fileStream.Write(bytes, 0, count); + else + { + if (null != unzipCallback) + unzipCallback.OnPostUnzip(zipEntry); + + break; + } + } + } + } + catch (System.Exception exception) + { + Debug.LogError($"[ZipUtility.UnzipFile]: {exception}"); + + if (null != unzipCallback) + unzipCallback.OnFinished(false); + + return false; + } + } + } + + if (null != unzipCallback) + { + unzipCallback.OnFinished(true); + } + + return true; + } + + /// + /// 压缩文件。 + /// + /// 文件路径名。 + /// 要压缩的文件的父相对文件夹。 + /// 压缩输出流。 + /// ZipCallback对象,负责回调。 + /// 是否使用Crc。 + /// + private static bool ZipFile(string filePathName, string parentRelPath, ZipOutputStream zipOutputStream, ZipCallback zipCallback = null, bool useCrc = false) + { + ZipEntry entry = null; + FileStream fileStream = null; + try + { + string entryName = $"{parentRelPath}/{Path.GetFileName(filePathName)}"; + entry = new ZipEntry(entryName); + entry.DateTime = System.DateTime.Now; + + if ((null != zipCallback) && !zipCallback.OnPreZip(entry)) + return true; // 过滤 + + fileStream = File.OpenRead(filePathName); + byte[] buffer = new byte[fileStream.Length]; + var read = fileStream.Read(buffer, 0, buffer.Length); + fileStream.Close(); + + entry.Size = buffer.Length; + + if (useCrc) + { + Crc32 crc32 = new Crc32(); + crc32.Reset(); + crc32.Update(buffer); + entry.Crc = crc32.Value; + } + + zipOutputStream.PutNextEntry(entry); + zipOutputStream.Write(buffer, 0, buffer.Length); + } + catch (System.Exception exception) + { + Debug.LogError($"[ZipUtility.ZipFile]: {exception}"); + return false; + } + finally + { + if (null != fileStream) + { + fileStream.Close(); + fileStream.Dispose(); + } + } + + if (null != zipCallback) + zipCallback.OnPostZip(entry); + + return true; + } + + /// + /// 压缩文件夹。 + /// + /// 要压缩的文件夹。 + /// 要压缩的文件夹的父相对文件夹。 + /// 压缩输出流。 + /// ZipCallback对象,负责回调。 + /// + private static bool ZipDirectory(string path, string parentRelPath, ZipOutputStream zipOutputStream, ZipCallback zipCallback = null) + { + ZipEntry entry = null; + try + { + string entryName = Path.Combine(parentRelPath, Path.GetFileName(path) + '/'); + entry = new ZipEntry(entryName) + { + DateTime = System.DateTime.Now, + Size = 0 + }; + + if ((null != zipCallback) && !zipCallback.OnPreZip(entry)) + { + return true; // 过滤 + } + + zipOutputStream.PutNextEntry(entry); + zipOutputStream.Flush(); + + string[] files = Directory.GetFiles(path); + foreach (var file in files) + { + // 排除Unity中可能的 .meta 文件 + if (file.EndsWith(".meta") == true) + { + Debug.LogWarning(file + " not to zip"); + continue; + } + + ZipFile(file, Path.Combine(parentRelPath, Path.GetFileName(path)), zipOutputStream, zipCallback); + } + } + catch (System.Exception exception) + { + Debug.LogError($"[ZipUtility.ZipDirectory]: {exception}"); + return false; + } + + string[] directories = Directory.GetDirectories(path); + foreach (var directory in directories) + { + if (!ZipDirectory(directory, Path.Combine(parentRelPath, Path.GetFileName(path)), zipOutputStream, zipCallback)) + { + return false; + } + } + + if (null != zipCallback) + { + zipCallback.OnPostZip(entry); + } + + return true; + } +} \ No newline at end of file diff --git a/Assets/TEngine/Runtime/Utility/ZipWrapper.cs.meta b/Assets/TEngine/Runtime/Utility/ZipWrapper.cs.meta new file mode 100644 index 00000000..7253bbd4 --- /dev/null +++ b/Assets/TEngine/Runtime/Utility/ZipWrapper.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6fe4e40c2c1a9ed41bc5fb538c4b09c7 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: From d3272e1bb199c9c87146ee8dc92370da121fe1b4 Mon Sep 17 00:00:00 2001 From: ALEXTANG <574809918@qq.com> Date: Wed, 26 Apr 2023 13:30:23 +0800 Subject: [PATCH 3/3] [+] Update Procedure Path And asmdef [+] Update Procedure Path And asmdef --- .../Main/{Procedure/Procedure.asmdef => GameMain.asmdef} | 2 +- .../Procedure.asmdef.meta => GameMain.asmdef.meta} | 0 Assets/GameScripts/Main/{Procedure => }/Launcher.meta | 0 .../GameScripts/Main/{Procedure => }/Launcher/Resources.meta | 0 .../Main/{Procedure => }/Launcher/Resources/AssetLoad.meta | 0 .../Launcher/Resources/AssetLoad/UILoad.prefab | 0 .../Launcher/Resources/AssetLoad/UILoad.prefab.meta | 0 .../Launcher/Resources/AssetLoad/UILoadTip.prefab | 0 .../Launcher/Resources/AssetLoad/UILoadTip.prefab.meta | 0 .../Launcher/Resources/AssetLoad/UILoadUpdate.prefab | 0 .../Launcher/Resources/AssetLoad/UILoadUpdate.prefab.meta | 0 .../GameScripts/Main/{Procedure => }/Launcher/Scripts.meta | 0 .../Main/{Procedure => }/Launcher/Scripts/UI.meta | 0 .../Main/{Procedure => }/Launcher/Scripts/UI/LoadStyle.cs | 0 .../{Procedure => }/Launcher/Scripts/UI/LoadStyle.cs.meta | 0 .../Main/{Procedure => }/Launcher/Scripts/UI/LoadText.cs | 0 .../{Procedure => }/Launcher/Scripts/UI/LoadText.cs.meta | 0 .../{Procedure => }/Launcher/Scripts/UI/LoadUpdateLogic.cs | 0 .../Launcher/Scripts/UI/LoadUpdateLogic.cs.meta | 0 .../Main/{Procedure => }/Launcher/Scripts/UI/UIBase.cs | 0 .../Main/{Procedure => }/Launcher/Scripts/UI/UIBase.cs.meta | 0 .../Main/{Procedure => }/Launcher/Scripts/UI/UIDefine.cs | 0 .../{Procedure => }/Launcher/Scripts/UI/UIDefine.cs.meta | 0 .../Main/{Procedure => }/Launcher/Scripts/UI/UILoadMgr.cs | 0 .../{Procedure => }/Launcher/Scripts/UI/UILoadMgr.cs.meta | 0 .../Main/{Procedure => }/Launcher/Scripts/UI/UILoadTip.cs | 0 .../{Procedure => }/Launcher/Scripts/UI/UILoadTip.cs.meta | 0 .../Main/{Procedure => }/Launcher/Scripts/UI/UILoadUpdate.cs | 0 .../{Procedure => }/Launcher/Scripts/UI/UILoadUpdate.cs.meta | 0 Assets/GameScripts/Main/Procedure/ProcedureLoadAssembly.cs | 5 ----- Assets/Scenes/main.unity | 1 + Assets/TEngine/Editor/Utility/Type.cs | 3 +-- .../GameFramework/Network/Kcp/Core/SimpleKcpClient.cs | 2 +- 33 files changed, 4 insertions(+), 9 deletions(-) rename Assets/GameScripts/Main/{Procedure/Procedure.asmdef => GameMain.asmdef} (94%) rename Assets/GameScripts/Main/{Procedure/Procedure.asmdef.meta => GameMain.asmdef.meta} (100%) rename Assets/GameScripts/Main/{Procedure => }/Launcher.meta (100%) rename Assets/GameScripts/Main/{Procedure => }/Launcher/Resources.meta (100%) rename Assets/GameScripts/Main/{Procedure => }/Launcher/Resources/AssetLoad.meta (100%) rename Assets/GameScripts/Main/{Procedure => }/Launcher/Resources/AssetLoad/UILoad.prefab (100%) rename Assets/GameScripts/Main/{Procedure => }/Launcher/Resources/AssetLoad/UILoad.prefab.meta (100%) rename Assets/GameScripts/Main/{Procedure => }/Launcher/Resources/AssetLoad/UILoadTip.prefab (100%) rename Assets/GameScripts/Main/{Procedure => }/Launcher/Resources/AssetLoad/UILoadTip.prefab.meta (100%) rename Assets/GameScripts/Main/{Procedure => }/Launcher/Resources/AssetLoad/UILoadUpdate.prefab (100%) rename Assets/GameScripts/Main/{Procedure => }/Launcher/Resources/AssetLoad/UILoadUpdate.prefab.meta (100%) rename Assets/GameScripts/Main/{Procedure => }/Launcher/Scripts.meta (100%) rename Assets/GameScripts/Main/{Procedure => }/Launcher/Scripts/UI.meta (100%) rename Assets/GameScripts/Main/{Procedure => }/Launcher/Scripts/UI/LoadStyle.cs (100%) rename Assets/GameScripts/Main/{Procedure => }/Launcher/Scripts/UI/LoadStyle.cs.meta (100%) rename Assets/GameScripts/Main/{Procedure => }/Launcher/Scripts/UI/LoadText.cs (100%) rename Assets/GameScripts/Main/{Procedure => }/Launcher/Scripts/UI/LoadText.cs.meta (100%) rename Assets/GameScripts/Main/{Procedure => }/Launcher/Scripts/UI/LoadUpdateLogic.cs (100%) rename Assets/GameScripts/Main/{Procedure => }/Launcher/Scripts/UI/LoadUpdateLogic.cs.meta (100%) rename Assets/GameScripts/Main/{Procedure => }/Launcher/Scripts/UI/UIBase.cs (100%) rename Assets/GameScripts/Main/{Procedure => }/Launcher/Scripts/UI/UIBase.cs.meta (100%) rename Assets/GameScripts/Main/{Procedure => }/Launcher/Scripts/UI/UIDefine.cs (100%) rename Assets/GameScripts/Main/{Procedure => }/Launcher/Scripts/UI/UIDefine.cs.meta (100%) rename Assets/GameScripts/Main/{Procedure => }/Launcher/Scripts/UI/UILoadMgr.cs (100%) rename Assets/GameScripts/Main/{Procedure => }/Launcher/Scripts/UI/UILoadMgr.cs.meta (100%) rename Assets/GameScripts/Main/{Procedure => }/Launcher/Scripts/UI/UILoadTip.cs (100%) rename Assets/GameScripts/Main/{Procedure => }/Launcher/Scripts/UI/UILoadTip.cs.meta (100%) rename Assets/GameScripts/Main/{Procedure => }/Launcher/Scripts/UI/UILoadUpdate.cs (100%) rename Assets/GameScripts/Main/{Procedure => }/Launcher/Scripts/UI/UILoadUpdate.cs.meta (100%) diff --git a/Assets/GameScripts/Main/Procedure/Procedure.asmdef b/Assets/GameScripts/Main/GameMain.asmdef similarity index 94% rename from Assets/GameScripts/Main/Procedure/Procedure.asmdef rename to Assets/GameScripts/Main/GameMain.asmdef index d6bbed25..277607f2 100644 --- a/Assets/GameScripts/Main/Procedure/Procedure.asmdef +++ b/Assets/GameScripts/Main/GameMain.asmdef @@ -1,5 +1,5 @@ { - "name": "Procedure", + "name": "GameMain", "rootNamespace": "", "references": [ "GUID:aa06d4cc755c979489c256c1bcca1dfb", diff --git a/Assets/GameScripts/Main/Procedure/Procedure.asmdef.meta b/Assets/GameScripts/Main/GameMain.asmdef.meta similarity index 100% rename from Assets/GameScripts/Main/Procedure/Procedure.asmdef.meta rename to Assets/GameScripts/Main/GameMain.asmdef.meta diff --git a/Assets/GameScripts/Main/Procedure/Launcher.meta b/Assets/GameScripts/Main/Launcher.meta similarity index 100% rename from Assets/GameScripts/Main/Procedure/Launcher.meta rename to Assets/GameScripts/Main/Launcher.meta diff --git a/Assets/GameScripts/Main/Procedure/Launcher/Resources.meta b/Assets/GameScripts/Main/Launcher/Resources.meta similarity index 100% rename from Assets/GameScripts/Main/Procedure/Launcher/Resources.meta rename to Assets/GameScripts/Main/Launcher/Resources.meta diff --git a/Assets/GameScripts/Main/Procedure/Launcher/Resources/AssetLoad.meta b/Assets/GameScripts/Main/Launcher/Resources/AssetLoad.meta similarity index 100% rename from Assets/GameScripts/Main/Procedure/Launcher/Resources/AssetLoad.meta rename to Assets/GameScripts/Main/Launcher/Resources/AssetLoad.meta diff --git a/Assets/GameScripts/Main/Procedure/Launcher/Resources/AssetLoad/UILoad.prefab b/Assets/GameScripts/Main/Launcher/Resources/AssetLoad/UILoad.prefab similarity index 100% rename from Assets/GameScripts/Main/Procedure/Launcher/Resources/AssetLoad/UILoad.prefab rename to Assets/GameScripts/Main/Launcher/Resources/AssetLoad/UILoad.prefab diff --git a/Assets/GameScripts/Main/Procedure/Launcher/Resources/AssetLoad/UILoad.prefab.meta b/Assets/GameScripts/Main/Launcher/Resources/AssetLoad/UILoad.prefab.meta similarity index 100% rename from Assets/GameScripts/Main/Procedure/Launcher/Resources/AssetLoad/UILoad.prefab.meta rename to Assets/GameScripts/Main/Launcher/Resources/AssetLoad/UILoad.prefab.meta diff --git a/Assets/GameScripts/Main/Procedure/Launcher/Resources/AssetLoad/UILoadTip.prefab b/Assets/GameScripts/Main/Launcher/Resources/AssetLoad/UILoadTip.prefab similarity index 100% rename from Assets/GameScripts/Main/Procedure/Launcher/Resources/AssetLoad/UILoadTip.prefab rename to Assets/GameScripts/Main/Launcher/Resources/AssetLoad/UILoadTip.prefab diff --git a/Assets/GameScripts/Main/Procedure/Launcher/Resources/AssetLoad/UILoadTip.prefab.meta b/Assets/GameScripts/Main/Launcher/Resources/AssetLoad/UILoadTip.prefab.meta similarity index 100% rename from Assets/GameScripts/Main/Procedure/Launcher/Resources/AssetLoad/UILoadTip.prefab.meta rename to Assets/GameScripts/Main/Launcher/Resources/AssetLoad/UILoadTip.prefab.meta diff --git a/Assets/GameScripts/Main/Procedure/Launcher/Resources/AssetLoad/UILoadUpdate.prefab b/Assets/GameScripts/Main/Launcher/Resources/AssetLoad/UILoadUpdate.prefab similarity index 100% rename from Assets/GameScripts/Main/Procedure/Launcher/Resources/AssetLoad/UILoadUpdate.prefab rename to Assets/GameScripts/Main/Launcher/Resources/AssetLoad/UILoadUpdate.prefab diff --git a/Assets/GameScripts/Main/Procedure/Launcher/Resources/AssetLoad/UILoadUpdate.prefab.meta b/Assets/GameScripts/Main/Launcher/Resources/AssetLoad/UILoadUpdate.prefab.meta similarity index 100% rename from Assets/GameScripts/Main/Procedure/Launcher/Resources/AssetLoad/UILoadUpdate.prefab.meta rename to Assets/GameScripts/Main/Launcher/Resources/AssetLoad/UILoadUpdate.prefab.meta diff --git a/Assets/GameScripts/Main/Procedure/Launcher/Scripts.meta b/Assets/GameScripts/Main/Launcher/Scripts.meta similarity index 100% rename from Assets/GameScripts/Main/Procedure/Launcher/Scripts.meta rename to Assets/GameScripts/Main/Launcher/Scripts.meta diff --git a/Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI.meta b/Assets/GameScripts/Main/Launcher/Scripts/UI.meta similarity index 100% rename from Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI.meta rename to Assets/GameScripts/Main/Launcher/Scripts/UI.meta diff --git a/Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI/LoadStyle.cs b/Assets/GameScripts/Main/Launcher/Scripts/UI/LoadStyle.cs similarity index 100% rename from Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI/LoadStyle.cs rename to Assets/GameScripts/Main/Launcher/Scripts/UI/LoadStyle.cs diff --git a/Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI/LoadStyle.cs.meta b/Assets/GameScripts/Main/Launcher/Scripts/UI/LoadStyle.cs.meta similarity index 100% rename from Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI/LoadStyle.cs.meta rename to Assets/GameScripts/Main/Launcher/Scripts/UI/LoadStyle.cs.meta diff --git a/Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI/LoadText.cs b/Assets/GameScripts/Main/Launcher/Scripts/UI/LoadText.cs similarity index 100% rename from Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI/LoadText.cs rename to Assets/GameScripts/Main/Launcher/Scripts/UI/LoadText.cs diff --git a/Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI/LoadText.cs.meta b/Assets/GameScripts/Main/Launcher/Scripts/UI/LoadText.cs.meta similarity index 100% rename from Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI/LoadText.cs.meta rename to Assets/GameScripts/Main/Launcher/Scripts/UI/LoadText.cs.meta diff --git a/Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI/LoadUpdateLogic.cs b/Assets/GameScripts/Main/Launcher/Scripts/UI/LoadUpdateLogic.cs similarity index 100% rename from Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI/LoadUpdateLogic.cs rename to Assets/GameScripts/Main/Launcher/Scripts/UI/LoadUpdateLogic.cs diff --git a/Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI/LoadUpdateLogic.cs.meta b/Assets/GameScripts/Main/Launcher/Scripts/UI/LoadUpdateLogic.cs.meta similarity index 100% rename from Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI/LoadUpdateLogic.cs.meta rename to Assets/GameScripts/Main/Launcher/Scripts/UI/LoadUpdateLogic.cs.meta diff --git a/Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI/UIBase.cs b/Assets/GameScripts/Main/Launcher/Scripts/UI/UIBase.cs similarity index 100% rename from Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI/UIBase.cs rename to Assets/GameScripts/Main/Launcher/Scripts/UI/UIBase.cs diff --git a/Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI/UIBase.cs.meta b/Assets/GameScripts/Main/Launcher/Scripts/UI/UIBase.cs.meta similarity index 100% rename from Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI/UIBase.cs.meta rename to Assets/GameScripts/Main/Launcher/Scripts/UI/UIBase.cs.meta diff --git a/Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI/UIDefine.cs b/Assets/GameScripts/Main/Launcher/Scripts/UI/UIDefine.cs similarity index 100% rename from Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI/UIDefine.cs rename to Assets/GameScripts/Main/Launcher/Scripts/UI/UIDefine.cs diff --git a/Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI/UIDefine.cs.meta b/Assets/GameScripts/Main/Launcher/Scripts/UI/UIDefine.cs.meta similarity index 100% rename from Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI/UIDefine.cs.meta rename to Assets/GameScripts/Main/Launcher/Scripts/UI/UIDefine.cs.meta diff --git a/Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI/UILoadMgr.cs b/Assets/GameScripts/Main/Launcher/Scripts/UI/UILoadMgr.cs similarity index 100% rename from Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI/UILoadMgr.cs rename to Assets/GameScripts/Main/Launcher/Scripts/UI/UILoadMgr.cs diff --git a/Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI/UILoadMgr.cs.meta b/Assets/GameScripts/Main/Launcher/Scripts/UI/UILoadMgr.cs.meta similarity index 100% rename from Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI/UILoadMgr.cs.meta rename to Assets/GameScripts/Main/Launcher/Scripts/UI/UILoadMgr.cs.meta diff --git a/Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI/UILoadTip.cs b/Assets/GameScripts/Main/Launcher/Scripts/UI/UILoadTip.cs similarity index 100% rename from Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI/UILoadTip.cs rename to Assets/GameScripts/Main/Launcher/Scripts/UI/UILoadTip.cs diff --git a/Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI/UILoadTip.cs.meta b/Assets/GameScripts/Main/Launcher/Scripts/UI/UILoadTip.cs.meta similarity index 100% rename from Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI/UILoadTip.cs.meta rename to Assets/GameScripts/Main/Launcher/Scripts/UI/UILoadTip.cs.meta diff --git a/Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI/UILoadUpdate.cs b/Assets/GameScripts/Main/Launcher/Scripts/UI/UILoadUpdate.cs similarity index 100% rename from Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI/UILoadUpdate.cs rename to Assets/GameScripts/Main/Launcher/Scripts/UI/UILoadUpdate.cs diff --git a/Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI/UILoadUpdate.cs.meta b/Assets/GameScripts/Main/Launcher/Scripts/UI/UILoadUpdate.cs.meta similarity index 100% rename from Assets/GameScripts/Main/Procedure/Launcher/Scripts/UI/UILoadUpdate.cs.meta rename to Assets/GameScripts/Main/Launcher/Scripts/UI/UILoadUpdate.cs.meta diff --git a/Assets/GameScripts/Main/Procedure/ProcedureLoadAssembly.cs b/Assets/GameScripts/Main/Procedure/ProcedureLoadAssembly.cs index b61fed1b..156fc850 100644 --- a/Assets/GameScripts/Main/Procedure/ProcedureLoadAssembly.cs +++ b/Assets/GameScripts/Main/Procedure/ProcedureLoadAssembly.cs @@ -111,11 +111,6 @@ namespace GameMain private void AllAssemblyLoadComplete() { - if (GameModule.Resource.playMode == EPlayMode.EditorSimulateMode) - { - ChangeState(m_procedureOwner); - return; - } if (m_MainLogicAssembly == null) { Log.Fatal($"Main logic assembly missing."); diff --git a/Assets/Scenes/main.unity b/Assets/Scenes/main.unity index e748a221..cc5abde9 100644 --- a/Assets/Scenes/main.unity +++ b/Assets/Scenes/main.unity @@ -246,6 +246,7 @@ MonoBehaviour: m_EditorClassIdentifier: m_InstanceRoot: {fileID: 88107082} m_dontDestroyUIRoot: 1 + m_enableErrorLog: 1 m_UICamera: {fileID: 110205813} --- !u!1 &88107081 GameObject: diff --git a/Assets/TEngine/Editor/Utility/Type.cs b/Assets/TEngine/Editor/Utility/Type.cs index c6d223d4..28647799 100644 --- a/Assets/TEngine/Editor/Utility/Type.cs +++ b/Assets/TEngine/Editor/Utility/Type.cs @@ -13,7 +13,7 @@ namespace TEngine.Editor "TEngine.Runtime", "Assembly-CSharp", "GameMain.Runtime", - + "GameMain", "GameBase", "GameLogic", "GameProto", @@ -26,7 +26,6 @@ namespace TEngine.Editor "Assembly-CSharp", "TEngine.Editor", "Assembly-CSharp-Editor", - "GameMain.Runtime", "GameMain", "GameMain.Editor", "GameBase", diff --git a/Assets/TEngine/Runtime/GameFramework/Network/Kcp/Core/SimpleKcpClient.cs b/Assets/TEngine/Runtime/GameFramework/Network/Kcp/Core/SimpleKcpClient.cs index f4c5399e..c6663630 100644 --- a/Assets/TEngine/Runtime/GameFramework/Network/Kcp/Core/SimpleKcpClient.cs +++ b/Assets/TEngine/Runtime/GameFramework/Network/Kcp/Core/SimpleKcpClient.cs @@ -35,7 +35,7 @@ namespace System.Net.Sockets.Kcp.Simple buffer.Dispose(); } - public async void SendAsync(byte[] datagram, int bytes) + public void SendAsync(byte[] datagram, int bytes) { kcp.Send(datagram.AsSpan().Slice(0, bytes)); }