From 5973c1a4a761e3ae744a445224ef22e136b3a0b9 Mon Sep 17 00:00:00 2001 From: SepComet <202308010230@stu.csust.edu.cn> Date: Mon, 9 Feb 2026 10:23:25 +0800 Subject: [PATCH] =?UTF-8?q?-=20=E6=B7=BB=E5=8A=A0=E5=AF=B9=E8=AF=9D?= =?UTF-8?q?=E8=A1=A8=E7=BB=93=E6=9E=84=20-=20=E8=B0=83=E6=95=B4=E9=83=A8?= =?UTF-8?q?=E5=88=86=E7=B1=BB=E7=9A=84=E5=91=BD=E5=90=8D=E7=A9=BA=E9=97=B4?= =?UTF-8?q?=20-=20=E5=BC=95=E5=85=A5=20EnumUtility=20=E7=94=A8=E4=BA=8Estr?= =?UTF-8?q?ing=E4=B8=8Eenum=E7=9A=84=E8=BD=AC=E6=8D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 10 ++- Assets/GameMain/DataTables/Dialog.txt | 7 ++ Assets/GameMain/DataTables/Dialog.txt.meta | 7 ++ Assets/GameMain/DataTables/DialogLine.txt | 13 ++++ .../GameMain/DataTables/DialogLine.txt.meta | 7 ++ Assets/GameMain/DataTables/Scene.txt | 1 - Assets/GameMain/DataTables/UIForm.txt | 1 - .../DataTable/BinaryReaderExtension.cs | 2 +- Assets/GameMain/Scripts/DataTable/DRDialog.cs | 39 +++++++++++ .../Scripts/DataTable/DRDialog.cs.meta | 11 +++ .../Scripts/DataTable/DRDialogLine.cs | 64 ++++++++++++++++++ .../Scripts/DataTable/DRDialogLine.cs.meta | 11 +++ Assets/GameMain/Scripts/DataTable/DREntity.cs | 10 +-- Assets/GameMain/Scripts/DataTable/DRMusic.cs | 2 +- Assets/GameMain/Scripts/DataTable/DRScene.cs | 18 +---- Assets/GameMain/Scripts/DataTable/DRSound.cs | 18 +---- Assets/GameMain/Scripts/DataTable/DRUIForm.cs | 14 +--- .../GameMain/Scripts/DataTable/DRUISound.cs | 14 +--- .../Scripts/DataTable/DataTableExtension.cs | 12 +--- .../Debugger/ChangeLanguageDebuggerWindow.cs | 1 + .../Constant/Constant.AssetPriority.cs | 2 +- .../Definition/Constant/Constant.Layer.cs | 2 +- .../Definition/Constant/Constant.Setting.cs | 2 +- .../Scripts/Definition/Enum/DialogUIMode.cs | 22 ++++++ .../Definition/Enum/DialogUIMode.cs.meta | 3 + .../Scripts/Definition/Enum/EmphasisType.cs | 13 ++++ .../Definition/Enum/EmphasisType.cs.meta | 11 +++ .../Scripts/Definition/Enum/ExpressionType.cs | 14 ++++ .../Definition/Enum/ExpressionType.cs.meta | 11 +++ .../{UI => Definition/Enum}/UIFormId.cs | 0 .../{UI => Definition/Enum}/UIFormId.cs.meta | 0 .../Scripts/Entity/EntityExtension.cs | 2 + .../Procedure/BuiltIn/ProcedureChangeScene.cs | 10 +-- .../Procedure/BuiltIn/ProcedureLaunch.cs | 10 +-- .../Procedure/BuiltIn/ProcedurePreload.cs | 15 ++-- .../GameMain/Scripts/Sound/SoundExtension.cs | 3 + Assets/GameMain/Scripts/UI/Base.meta | 8 +++ .../Scripts/UI/{ => Base}/IFormController.cs | 0 .../UI/{ => Base}/IFormController.cs.meta | 0 .../Scripts/UI/{ => Base}/UGuiForm.cs | 0 .../Scripts/UI/{ => Base}/UGuiForm.cs.meta | 0 .../Scripts/UI/{ => Base}/UIContext.cs | 0 .../Scripts/UI/{ => Base}/UIContext.cs.meta | 0 .../UI/{GameplayA.meta => Combine.meta} | 0 .../UI/{GameplayA => Combine}/Context.meta | 0 .../Context/CombineFormContext.cs | 0 .../Context/CombineFormContext.cs.meta | 0 .../Context/CombinePartContext.cs | 0 .../Context/CombinePartContext.cs.meta | 0 .../Context/CombineSlotContext.cs | 0 .../Context/CombineSlotContext.cs.meta | 0 .../UI/{GameplayA => Combine}/Controller.meta | 0 .../Controller/CombineFormController.cs | 0 .../Controller/CombineFormController.cs.meta | 0 .../UI/{GameplayA => Combine}/View.meta | 0 .../View/CombineDraggablePart.cs | 0 .../View/CombineDraggablePart.cs.meta | 0 .../View/CombineForm.cs | 0 .../View/CombineForm.cs.meta | 0 .../View/CombineSlot.cs | 0 .../View/CombineSlot.cs.meta | 0 Assets/GameMain/Scripts/UI/UIExtension.cs | 12 ++-- .../GameMain/Scripts/Utility/AssetUtility.cs | 2 +- .../GameMain/Scripts/Utility/EnumUtility.cs | 27 ++++++++ .../Scripts/Utility/EnumUtility.cs.meta | 11 +++ .../GameMain/Scripts/Utility/LitJsonHelper.cs | 2 +- Assets/GameMain/Scripts/Utility/WebUtility.cs | 11 +-- ProjectSettings/ProjectSettings.asset | 22 ++++-- 数据表/Dialog.txt | 7 ++ 数据表/Dialog.xlsx | Bin 0 -> 10774 bytes 数据表/DialogLine.txt | 13 ++++ 数据表/DialogLine.xlsx | Bin 0 -> 11607 bytes 数据表/Scene.txt | 1 - 数据表/UIForm.txt | 1 - 数据表/Weapon.txt | 5 -- 数据表/Weapon.xlsx | Bin 10510 -> 0 bytes 数据表/convert.py | 50 ++++++++------ 77 files changed, 397 insertions(+), 157 deletions(-) create mode 100644 Assets/GameMain/DataTables/Dialog.txt create mode 100644 Assets/GameMain/DataTables/Dialog.txt.meta create mode 100644 Assets/GameMain/DataTables/DialogLine.txt create mode 100644 Assets/GameMain/DataTables/DialogLine.txt.meta create mode 100644 Assets/GameMain/Scripts/DataTable/DRDialog.cs create mode 100644 Assets/GameMain/Scripts/DataTable/DRDialog.cs.meta create mode 100644 Assets/GameMain/Scripts/DataTable/DRDialogLine.cs create mode 100644 Assets/GameMain/Scripts/DataTable/DRDialogLine.cs.meta create mode 100644 Assets/GameMain/Scripts/Definition/Enum/DialogUIMode.cs create mode 100644 Assets/GameMain/Scripts/Definition/Enum/DialogUIMode.cs.meta create mode 100644 Assets/GameMain/Scripts/Definition/Enum/EmphasisType.cs create mode 100644 Assets/GameMain/Scripts/Definition/Enum/EmphasisType.cs.meta create mode 100644 Assets/GameMain/Scripts/Definition/Enum/ExpressionType.cs create mode 100644 Assets/GameMain/Scripts/Definition/Enum/ExpressionType.cs.meta rename Assets/GameMain/Scripts/{UI => Definition/Enum}/UIFormId.cs (100%) rename Assets/GameMain/Scripts/{UI => Definition/Enum}/UIFormId.cs.meta (100%) create mode 100644 Assets/GameMain/Scripts/UI/Base.meta rename Assets/GameMain/Scripts/UI/{ => Base}/IFormController.cs (100%) rename Assets/GameMain/Scripts/UI/{ => Base}/IFormController.cs.meta (100%) rename Assets/GameMain/Scripts/UI/{ => Base}/UGuiForm.cs (100%) rename Assets/GameMain/Scripts/UI/{ => Base}/UGuiForm.cs.meta (100%) rename Assets/GameMain/Scripts/UI/{ => Base}/UIContext.cs (100%) rename Assets/GameMain/Scripts/UI/{ => Base}/UIContext.cs.meta (100%) rename Assets/GameMain/Scripts/UI/{GameplayA.meta => Combine.meta} (100%) rename Assets/GameMain/Scripts/UI/{GameplayA => Combine}/Context.meta (100%) rename Assets/GameMain/Scripts/UI/{GameplayA => Combine}/Context/CombineFormContext.cs (100%) rename Assets/GameMain/Scripts/UI/{GameplayA => Combine}/Context/CombineFormContext.cs.meta (100%) rename Assets/GameMain/Scripts/UI/{GameplayA => Combine}/Context/CombinePartContext.cs (100%) rename Assets/GameMain/Scripts/UI/{GameplayA => Combine}/Context/CombinePartContext.cs.meta (100%) rename Assets/GameMain/Scripts/UI/{GameplayA => Combine}/Context/CombineSlotContext.cs (100%) rename Assets/GameMain/Scripts/UI/{GameplayA => Combine}/Context/CombineSlotContext.cs.meta (100%) rename Assets/GameMain/Scripts/UI/{GameplayA => Combine}/Controller.meta (100%) rename Assets/GameMain/Scripts/UI/{GameplayA => Combine}/Controller/CombineFormController.cs (100%) rename Assets/GameMain/Scripts/UI/{GameplayA => Combine}/Controller/CombineFormController.cs.meta (100%) rename Assets/GameMain/Scripts/UI/{GameplayA => Combine}/View.meta (100%) rename Assets/GameMain/Scripts/UI/{GameplayA => Combine}/View/CombineDraggablePart.cs (100%) rename Assets/GameMain/Scripts/UI/{GameplayA => Combine}/View/CombineDraggablePart.cs.meta (100%) rename Assets/GameMain/Scripts/UI/{GameplayA => Combine}/View/CombineForm.cs (100%) rename Assets/GameMain/Scripts/UI/{GameplayA => Combine}/View/CombineForm.cs.meta (100%) rename Assets/GameMain/Scripts/UI/{GameplayA => Combine}/View/CombineSlot.cs (100%) rename Assets/GameMain/Scripts/UI/{GameplayA => Combine}/View/CombineSlot.cs.meta (100%) create mode 100644 Assets/GameMain/Scripts/Utility/EnumUtility.cs create mode 100644 Assets/GameMain/Scripts/Utility/EnumUtility.cs.meta create mode 100644 数据表/Dialog.txt create mode 100644 数据表/Dialog.xlsx create mode 100644 数据表/DialogLine.txt create mode 100644 数据表/DialogLine.xlsx delete mode 100644 数据表/Weapon.txt delete mode 100644 数据表/Weapon.xlsx diff --git a/.gitignore b/.gitignore index 29742cc..eb6e5d3 100644 --- a/.gitignore +++ b/.gitignore @@ -84,4 +84,12 @@ crashlytics-build.properties /Assets/RawResources -/.vscode \ No newline at end of file +/.vscode + +# Excel temporary lock files +~$*.xls +~$*.xlsx +~$*.xlsm +~$*.xlsb + +/数据表/__pycache__ \ No newline at end of file diff --git a/Assets/GameMain/DataTables/Dialog.txt b/Assets/GameMain/DataTables/Dialog.txt new file mode 100644 index 0000000..a3e4690 --- /dev/null +++ b/Assets/GameMain/DataTables/Dialog.txt @@ -0,0 +1,7 @@ +# 对话标识表 筛选用数据 +# Id Title UIMode ChapterId +# int string DialogUIMode int +# 对话编号 策划备注 对话标识 对话形式 章节编号 + 1001 第一章介绍 Chapter1_Intro Mask 1.001 + 1002 第一章主流程 Chapter1_Main BottomBox 1.002 + 1003 第一章玩法开始前闲聊 Chapter1_SmallTalk1 BubbleBox 1.003 diff --git a/Assets/GameMain/DataTables/Dialog.txt.meta b/Assets/GameMain/DataTables/Dialog.txt.meta new file mode 100644 index 0000000..435ba4a --- /dev/null +++ b/Assets/GameMain/DataTables/Dialog.txt.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 788b17ff3aef4cd4fb6c808826c875e5 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/GameMain/DataTables/DialogLine.txt b/Assets/GameMain/DataTables/DialogLine.txt new file mode 100644 index 0000000..49a55c7 --- /dev/null +++ b/Assets/GameMain/DataTables/DialogLine.txt @@ -0,0 +1,13 @@ +# 对话内容表 筛选用数据 +# Id SpeakerId Expression SpeakerName Direction Text Emphasis ChapterId DialogId +# int int ExpressionType string int string EmphasisType int int +# 对话行编号 策划备注 说话人Id 表情 显示人名 说话朝向 说话内容 演出效果 章节Id 对话Id + 100100001 Id规则为 Null Null Null 0 相传。 1.00100001 1001.00001 + 100100002 第1位数为章节Id Null Null Null 0 Mask。 1.00100002 1001.00002 + 100100003 第2-4位数为对话Id Null Null Null 0 很好。 1.00100003 1001.00003 + 100200001 第5-9位数为对话行Id Xu Normal 徐晟壹 0 你好,王。 1.00200001 1002.00001 + 100200002 Wang Normal 王可嘉 1 你好,徐。 1.00200002 1002.00002 + 100200003 Master Normal 李诫 1 你们好。 1.00200003 1002.00003 + 100300001 Npc1 Null Null 0 这人谁啊? 1.00300001 1003.00001 + 100300002 Npc2 Null Null 0 不知道啊? 1.00300002 1003.00002 + 100300003 Npc1 Null Null 0 不知道你在这干嘛。 1.00300003 1003.00003 diff --git a/Assets/GameMain/DataTables/DialogLine.txt.meta b/Assets/GameMain/DataTables/DialogLine.txt.meta new file mode 100644 index 0000000..316dc2f --- /dev/null +++ b/Assets/GameMain/DataTables/DialogLine.txt.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 378604b840f56ae49831978cf0e0a6ea +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/GameMain/DataTables/Scene.txt b/Assets/GameMain/DataTables/Scene.txt index 29826e2..6aecfae 100644 --- a/Assets/GameMain/DataTables/Scene.txt +++ b/Assets/GameMain/DataTables/Scene.txt @@ -5,4 +5,3 @@ 1 菜单场景 Menu 1 2 战斗场景 Main 2 3 压力测试场景 StressTest 0 - 4 玩法A测试场景 GameplayA 0 \ No newline at end of file diff --git a/Assets/GameMain/DataTables/UIForm.txt b/Assets/GameMain/DataTables/UIForm.txt index f2b96f5..6b11bd8 100644 --- a/Assets/GameMain/DataTables/UIForm.txt +++ b/Assets/GameMain/DataTables/UIForm.txt @@ -6,4 +6,3 @@ 100 主菜单 MenuForm Default False True 101 设置 SettingForm Default False True 102 关于 AboutForm Default False True - 103 �����淨A MVC���Խ��� CombineForm Default False True diff --git a/Assets/GameMain/Scripts/DataTable/BinaryReaderExtension.cs b/Assets/GameMain/Scripts/DataTable/BinaryReaderExtension.cs index c38ba21..585d668 100644 --- a/Assets/GameMain/Scripts/DataTable/BinaryReaderExtension.cs +++ b/Assets/GameMain/Scripts/DataTable/BinaryReaderExtension.cs @@ -9,7 +9,7 @@ using System; using System.IO; using UnityEngine; -namespace StarForce +namespace DataTable { public static class BinaryReaderExtension { diff --git a/Assets/GameMain/Scripts/DataTable/DRDialog.cs b/Assets/GameMain/Scripts/DataTable/DRDialog.cs new file mode 100644 index 0000000..91274f2 --- /dev/null +++ b/Assets/GameMain/Scripts/DataTable/DRDialog.cs @@ -0,0 +1,39 @@ +using CustomUtility; +using Definition.Enum; +using UnityGameFramework.Runtime; + +namespace DataTable +{ + public class DRDialog : DataRowBase + { + private int m_Id; + + /// + /// 获取对话编号。 + /// + public override int Id => m_Id; + + /// + /// 获取对话标识。 + /// + public string Title { get; private set; } + + /// + /// 获取对话形式。 + /// + public DialogUIMode UIMode { get; private set; } + + public override bool ParseDataRow(string dataRowString, object userData) + { + string[] fields = dataRowString.Split('\t'); + + int index = 1; + m_Id = int.Parse(fields[index++]); + index++; + Title = fields[index++]; + UIMode = EnumUtility.Get(fields[index++]); + + return true; + } + } +} \ No newline at end of file diff --git a/Assets/GameMain/Scripts/DataTable/DRDialog.cs.meta b/Assets/GameMain/Scripts/DataTable/DRDialog.cs.meta new file mode 100644 index 0000000..a22d4d9 --- /dev/null +++ b/Assets/GameMain/Scripts/DataTable/DRDialog.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: fb12692f2a7e6174eae3b0d28c769e55 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/GameMain/Scripts/DataTable/DRDialogLine.cs b/Assets/GameMain/Scripts/DataTable/DRDialogLine.cs new file mode 100644 index 0000000..f211f38 --- /dev/null +++ b/Assets/GameMain/Scripts/DataTable/DRDialogLine.cs @@ -0,0 +1,64 @@ +using CustomUtility; +using Definition.Enum; +using UnityGameFramework.Runtime; + +namespace DataTable +{ + public class DRDialogLine : DataRowBase + { + private int m_Id; + + /// + /// 获取对话行编号 + /// + public override int Id { get; } + + /// + /// 获取说话人 Id。 + /// + public string SpeakerId { get; private set; } + + /// + /// 获取说话人表情。 + /// + public ExpressionType Expression { get; private set; } + + /// + /// 获取说话人显示名。 + /// + public string SpeakerName { get; private set; } + + /// + /// 获取说话人朝向。 + /// + public int Direction { get; private set; } + + /// + /// 获取对话内容。 + /// + public string Text { get; private set; } + + /// + /// 获取对话效果。 + /// + public EmphasisType Emphasis { get; private set; } + + public override bool ParseDataRow(string dataRowString, object userData) + { + string[] fields = dataRowString.Split('\t'); + + int index = 0; + index++; + m_Id = int.Parse(fields[index++]); + index++; + SpeakerId = fields[index++]; + Expression = EnumUtility.Get(fields[index++]); + SpeakerName = fields[index++]; + Direction = int.Parse(fields[index++]); + Text = fields[index++]; + Emphasis = EnumUtility.Get(fields[index++]); + + return true; + } + } +} \ No newline at end of file diff --git a/Assets/GameMain/Scripts/DataTable/DRDialogLine.cs.meta b/Assets/GameMain/Scripts/DataTable/DRDialogLine.cs.meta new file mode 100644 index 0000000..d4e701e --- /dev/null +++ b/Assets/GameMain/Scripts/DataTable/DRDialogLine.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: fc6d3e8e61ab627488e22bb5fc28f95d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/GameMain/Scripts/DataTable/DREntity.cs b/Assets/GameMain/Scripts/DataTable/DREntity.cs index 84fe1b2..e89ffa6 100644 --- a/Assets/GameMain/Scripts/DataTable/DREntity.cs +++ b/Assets/GameMain/Scripts/DataTable/DREntity.cs @@ -16,7 +16,7 @@ using System.Text; using UnityEngine; using UnityGameFramework.Runtime; -namespace StarForce +namespace DataTable { /// /// 实体表。 @@ -28,13 +28,7 @@ namespace StarForce /// /// 获取实体编号。 /// - public override int Id - { - get - { - return m_Id; - } - } + public override int Id => m_Id; /// /// 获取资源名称。 diff --git a/Assets/GameMain/Scripts/DataTable/DRMusic.cs b/Assets/GameMain/Scripts/DataTable/DRMusic.cs index 7bad7ce..83b2a31 100644 --- a/Assets/GameMain/Scripts/DataTable/DRMusic.cs +++ b/Assets/GameMain/Scripts/DataTable/DRMusic.cs @@ -16,7 +16,7 @@ using System.Text; using UnityEngine; using UnityGameFramework.Runtime; -namespace StarForce +namespace DataTable { /// /// 音乐配置表。 diff --git a/Assets/GameMain/Scripts/DataTable/DRScene.cs b/Assets/GameMain/Scripts/DataTable/DRScene.cs index af6154e..d68a454 100644 --- a/Assets/GameMain/Scripts/DataTable/DRScene.cs +++ b/Assets/GameMain/Scripts/DataTable/DRScene.cs @@ -1,22 +1,8 @@ -//------------------------------------------------------------ -// Game Framework -// Copyright © 2013-2021 Jiang Yin. All rights reserved. -// Homepage: https://gameframework.cn/ -// Feedback: mailto:ellan@gameframework.cn -//------------------------------------------------------------ -// 此文件由工具自动生成,请勿直接修改。 -// 生成时间:2021-06-16 21:54:35.610 -//------------------------------------------------------------ - -using GameFramework; -using System; -using System.Collections.Generic; -using System.IO; +using System.IO; using System.Text; -using UnityEngine; using UnityGameFramework.Runtime; -namespace StarForce +namespace DataTable { /// /// 场景配置表。 diff --git a/Assets/GameMain/Scripts/DataTable/DRSound.cs b/Assets/GameMain/Scripts/DataTable/DRSound.cs index 0ce1445..fe12887 100644 --- a/Assets/GameMain/Scripts/DataTable/DRSound.cs +++ b/Assets/GameMain/Scripts/DataTable/DRSound.cs @@ -1,22 +1,8 @@ -//------------------------------------------------------------ -// Game Framework -// Copyright © 2013-2021 Jiang Yin. All rights reserved. -// Homepage: https://gameframework.cn/ -// Feedback: mailto:ellan@gameframework.cn -//------------------------------------------------------------ -// 此文件由工具自动生成,请勿直接修改。 -// 生成时间:2021-06-16 21:54:35.625 -//------------------------------------------------------------ - -using GameFramework; -using System; -using System.Collections.Generic; -using System.IO; +using System.IO; using System.Text; -using UnityEngine; using UnityGameFramework.Runtime; -namespace StarForce +namespace DataTable { /// /// 声音配置表。 diff --git a/Assets/GameMain/Scripts/DataTable/DRUIForm.cs b/Assets/GameMain/Scripts/DataTable/DRUIForm.cs index 80f914b..712d3be 100644 --- a/Assets/GameMain/Scripts/DataTable/DRUIForm.cs +++ b/Assets/GameMain/Scripts/DataTable/DRUIForm.cs @@ -1,14 +1,4 @@ -//------------------------------------------------------------ -// Game Framework -// Copyright © 2013-2021 Jiang Yin. All rights reserved. -// Homepage: https://gameframework.cn/ -// Feedback: mailto:ellan@gameframework.cn -//------------------------------------------------------------ -// 此文件由工具自动生成,请勿直接修改。 -// 生成时间:2021-06-16 21:54:35.652 -//------------------------------------------------------------ - -using GameFramework; +using GameFramework; using System; using System.Collections.Generic; using System.IO; @@ -16,7 +6,7 @@ using System.Text; using UnityEngine; using UnityGameFramework.Runtime; -namespace StarForce +namespace DataTable { /// /// 界面配置表。 diff --git a/Assets/GameMain/Scripts/DataTable/DRUISound.cs b/Assets/GameMain/Scripts/DataTable/DRUISound.cs index e303c18..db77bc7 100644 --- a/Assets/GameMain/Scripts/DataTable/DRUISound.cs +++ b/Assets/GameMain/Scripts/DataTable/DRUISound.cs @@ -1,14 +1,4 @@ -//------------------------------------------------------------ -// Game Framework -// Copyright © 2013-2021 Jiang Yin. All rights reserved. -// Homepage: https://gameframework.cn/ -// Feedback: mailto:ellan@gameframework.cn -//------------------------------------------------------------ -// 此文件由工具自动生成,请勿直接修改。 -// 生成时间:2021-06-16 21:54:35.666 -//------------------------------------------------------------ - -using GameFramework; +using GameFramework; using System; using System.Collections.Generic; using System.IO; @@ -16,7 +6,7 @@ using System.Text; using UnityEngine; using UnityGameFramework.Runtime; -namespace StarForce +namespace DataTable { /// /// 声音配置表。 diff --git a/Assets/GameMain/Scripts/DataTable/DataTableExtension.cs b/Assets/GameMain/Scripts/DataTable/DataTableExtension.cs index 5e82897..b496f91 100644 --- a/Assets/GameMain/Scripts/DataTable/DataTableExtension.cs +++ b/Assets/GameMain/Scripts/DataTable/DataTableExtension.cs @@ -1,16 +1,10 @@ -//------------------------------------------------------------ -// Game Framework -// Copyright © 2013-2021 Jiang Yin. All rights reserved. -// Homepage: https://gameframework.cn/ -// Feedback: mailto:ellan@gameframework.cn -//------------------------------------------------------------ - -using GameFramework.DataTable; +using GameFramework.DataTable; using System; +using Definition; using UnityEngine; using UnityGameFramework.Runtime; -namespace StarForce +namespace DataTable { public static class DataTableExtension { diff --git a/Assets/GameMain/Scripts/Debugger/ChangeLanguageDebuggerWindow.cs b/Assets/GameMain/Scripts/Debugger/ChangeLanguageDebuggerWindow.cs index 32d46c4..b1632bb 100644 --- a/Assets/GameMain/Scripts/Debugger/ChangeLanguageDebuggerWindow.cs +++ b/Assets/GameMain/Scripts/Debugger/ChangeLanguageDebuggerWindow.cs @@ -5,6 +5,7 @@ // Feedback: mailto:ellan@gameframework.cn //------------------------------------------------------------ +using Definition; using GameFramework.Debugger; using GameFramework.Localization; using UnityEngine; diff --git a/Assets/GameMain/Scripts/Definition/Constant/Constant.AssetPriority.cs b/Assets/GameMain/Scripts/Definition/Constant/Constant.AssetPriority.cs index 9d1c0b9..6c863b6 100644 --- a/Assets/GameMain/Scripts/Definition/Constant/Constant.AssetPriority.cs +++ b/Assets/GameMain/Scripts/Definition/Constant/Constant.AssetPriority.cs @@ -5,7 +5,7 @@ // Feedback: mailto:ellan@gameframework.cn //------------------------------------------------------------ -namespace StarForce +namespace Definition { public static partial class Constant { diff --git a/Assets/GameMain/Scripts/Definition/Constant/Constant.Layer.cs b/Assets/GameMain/Scripts/Definition/Constant/Constant.Layer.cs index 29c6cda..3f89d5b 100644 --- a/Assets/GameMain/Scripts/Definition/Constant/Constant.Layer.cs +++ b/Assets/GameMain/Scripts/Definition/Constant/Constant.Layer.cs @@ -7,7 +7,7 @@ using UnityEngine; -namespace StarForce +namespace Definition { public static partial class Constant { diff --git a/Assets/GameMain/Scripts/Definition/Constant/Constant.Setting.cs b/Assets/GameMain/Scripts/Definition/Constant/Constant.Setting.cs index 05e6037..1595633 100644 --- a/Assets/GameMain/Scripts/Definition/Constant/Constant.Setting.cs +++ b/Assets/GameMain/Scripts/Definition/Constant/Constant.Setting.cs @@ -5,7 +5,7 @@ // Feedback: mailto:ellan@gameframework.cn //------------------------------------------------------------ -namespace StarForce +namespace Definition { public static partial class Constant { diff --git a/Assets/GameMain/Scripts/Definition/Enum/DialogUIMode.cs b/Assets/GameMain/Scripts/Definition/Enum/DialogUIMode.cs new file mode 100644 index 0000000..8fff194 --- /dev/null +++ b/Assets/GameMain/Scripts/Definition/Enum/DialogUIMode.cs @@ -0,0 +1,22 @@ +namespace Definition.Enum +{ + public enum DialogUIMode + { + None = 0, + + /// + /// 黑屏白字 + /// + Mask = 1, + + /// + /// 底部对话框 + /// + BottomBox = 2, + + /// + /// 对话气泡 + /// + BubbleBox = 3 + } +} \ No newline at end of file diff --git a/Assets/GameMain/Scripts/Definition/Enum/DialogUIMode.cs.meta b/Assets/GameMain/Scripts/Definition/Enum/DialogUIMode.cs.meta new file mode 100644 index 0000000..9b7298a --- /dev/null +++ b/Assets/GameMain/Scripts/Definition/Enum/DialogUIMode.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 7a10763d137f413d828c534b0233f2a6 +timeCreated: 1770600423 \ No newline at end of file diff --git a/Assets/GameMain/Scripts/Definition/Enum/EmphasisType.cs b/Assets/GameMain/Scripts/Definition/Enum/EmphasisType.cs new file mode 100644 index 0000000..642dba9 --- /dev/null +++ b/Assets/GameMain/Scripts/Definition/Enum/EmphasisType.cs @@ -0,0 +1,13 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +namespace Definition.Enum +{ + public enum EmphasisType + { + None, + Shake, + Blink, + } +} \ No newline at end of file diff --git a/Assets/GameMain/Scripts/Definition/Enum/EmphasisType.cs.meta b/Assets/GameMain/Scripts/Definition/Enum/EmphasisType.cs.meta new file mode 100644 index 0000000..793bc8e --- /dev/null +++ b/Assets/GameMain/Scripts/Definition/Enum/EmphasisType.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 96908bdc885697e4d9cb0f6627d13230 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/GameMain/Scripts/Definition/Enum/ExpressionType.cs b/Assets/GameMain/Scripts/Definition/Enum/ExpressionType.cs new file mode 100644 index 0000000..55ec0e3 --- /dev/null +++ b/Assets/GameMain/Scripts/Definition/Enum/ExpressionType.cs @@ -0,0 +1,14 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +namespace Definition.Enum +{ + public enum ExpressionType + { + None, + Normal, + Shock, + Happy, + } +} \ No newline at end of file diff --git a/Assets/GameMain/Scripts/Definition/Enum/ExpressionType.cs.meta b/Assets/GameMain/Scripts/Definition/Enum/ExpressionType.cs.meta new file mode 100644 index 0000000..664286a --- /dev/null +++ b/Assets/GameMain/Scripts/Definition/Enum/ExpressionType.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 174e046d822a14d49843dc415067f13c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/GameMain/Scripts/UI/UIFormId.cs b/Assets/GameMain/Scripts/Definition/Enum/UIFormId.cs similarity index 100% rename from Assets/GameMain/Scripts/UI/UIFormId.cs rename to Assets/GameMain/Scripts/Definition/Enum/UIFormId.cs diff --git a/Assets/GameMain/Scripts/UI/UIFormId.cs.meta b/Assets/GameMain/Scripts/Definition/Enum/UIFormId.cs.meta similarity index 100% rename from Assets/GameMain/Scripts/UI/UIFormId.cs.meta rename to Assets/GameMain/Scripts/Definition/Enum/UIFormId.cs.meta diff --git a/Assets/GameMain/Scripts/Entity/EntityExtension.cs b/Assets/GameMain/Scripts/Entity/EntityExtension.cs index 2f99f10..6d0da7a 100644 --- a/Assets/GameMain/Scripts/Entity/EntityExtension.cs +++ b/Assets/GameMain/Scripts/Entity/EntityExtension.cs @@ -7,6 +7,8 @@ using GameFramework.DataTable; using System; +using CustomUtility; +using DataTable; using Entity; using Entity.EntityData; using UnityGameFramework.Runtime; diff --git a/Assets/GameMain/Scripts/Procedure/BuiltIn/ProcedureChangeScene.cs b/Assets/GameMain/Scripts/Procedure/BuiltIn/ProcedureChangeScene.cs index d357d7d..97e9998 100644 --- a/Assets/GameMain/Scripts/Procedure/BuiltIn/ProcedureChangeScene.cs +++ b/Assets/GameMain/Scripts/Procedure/BuiltIn/ProcedureChangeScene.cs @@ -1,10 +1,6 @@ -//------------------------------------------------------------ -// Game Framework -// Copyright © 2013-2021 Jiang Yin. All rights reserved. -// Homepage: https://gameframework.cn/ -// Feedback: mailto:ellan@gameframework.cn -//------------------------------------------------------------ - +using CustomUtility; +using DataTable; +using Definition; using GameFramework.DataTable; using GameFramework.Event; using Scene; diff --git a/Assets/GameMain/Scripts/Procedure/BuiltIn/ProcedureLaunch.cs b/Assets/GameMain/Scripts/Procedure/BuiltIn/ProcedureLaunch.cs index 6b8e9bc..f86746a 100644 --- a/Assets/GameMain/Scripts/Procedure/BuiltIn/ProcedureLaunch.cs +++ b/Assets/GameMain/Scripts/Procedure/BuiltIn/ProcedureLaunch.cs @@ -1,12 +1,6 @@ -//------------------------------------------------------------ -// Game Framework -// Copyright © 2013-2021 Jiang Yin. All rights reserved. -// Homepage: https://gameframework.cn/ -// Feedback: mailto:ellan@gameframework.cn -//------------------------------------------------------------ - -using GameFramework.Localization; +using GameFramework.Localization; using System; +using Definition; using StarForce; using UnityGameFramework.Runtime; using ProcedureOwner = GameFramework.Fsm.IFsm; diff --git a/Assets/GameMain/Scripts/Procedure/BuiltIn/ProcedurePreload.cs b/Assets/GameMain/Scripts/Procedure/BuiltIn/ProcedurePreload.cs index 0b98cf8..d517acd 100644 --- a/Assets/GameMain/Scripts/Procedure/BuiltIn/ProcedurePreload.cs +++ b/Assets/GameMain/Scripts/Procedure/BuiltIn/ProcedurePreload.cs @@ -1,15 +1,10 @@ -//------------------------------------------------------------ -// Game Framework -// Copyright © 2013-2021 Jiang Yin. All rights reserved. -// Homepage: https://gameframework.cn/ -// Feedback: mailto:ellan@gameframework.cn -//------------------------------------------------------------ - -using GameFramework; +using GameFramework; using GameFramework.Event; using GameFramework.Resource; using System.Collections.Generic; -using StarForce; +using CustomUtility; +using DataTable; +using Definition; using TMPro; using UI; using UnityEngine; @@ -28,6 +23,8 @@ namespace Procedure "Sound", "UIForm", "UISound", + "Dialog", + "DialogLine" }; private Dictionary _loadedFlag = new Dictionary(); diff --git a/Assets/GameMain/Scripts/Sound/SoundExtension.cs b/Assets/GameMain/Scripts/Sound/SoundExtension.cs index 518fd5d..d8fce21 100644 --- a/Assets/GameMain/Scripts/Sound/SoundExtension.cs +++ b/Assets/GameMain/Scripts/Sound/SoundExtension.cs @@ -5,6 +5,9 @@ // Feedback: mailto:ellan@gameframework.cn //------------------------------------------------------------ +using CustomUtility; +using DataTable; +using Definition; using Entity; using GameFramework; using GameFramework.DataTable; diff --git a/Assets/GameMain/Scripts/UI/Base.meta b/Assets/GameMain/Scripts/UI/Base.meta new file mode 100644 index 0000000..4c418c7 --- /dev/null +++ b/Assets/GameMain/Scripts/UI/Base.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8cb383e8977814343a630c164eed6c51 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/GameMain/Scripts/UI/IFormController.cs b/Assets/GameMain/Scripts/UI/Base/IFormController.cs similarity index 100% rename from Assets/GameMain/Scripts/UI/IFormController.cs rename to Assets/GameMain/Scripts/UI/Base/IFormController.cs diff --git a/Assets/GameMain/Scripts/UI/IFormController.cs.meta b/Assets/GameMain/Scripts/UI/Base/IFormController.cs.meta similarity index 100% rename from Assets/GameMain/Scripts/UI/IFormController.cs.meta rename to Assets/GameMain/Scripts/UI/Base/IFormController.cs.meta diff --git a/Assets/GameMain/Scripts/UI/UGuiForm.cs b/Assets/GameMain/Scripts/UI/Base/UGuiForm.cs similarity index 100% rename from Assets/GameMain/Scripts/UI/UGuiForm.cs rename to Assets/GameMain/Scripts/UI/Base/UGuiForm.cs diff --git a/Assets/GameMain/Scripts/UI/UGuiForm.cs.meta b/Assets/GameMain/Scripts/UI/Base/UGuiForm.cs.meta similarity index 100% rename from Assets/GameMain/Scripts/UI/UGuiForm.cs.meta rename to Assets/GameMain/Scripts/UI/Base/UGuiForm.cs.meta diff --git a/Assets/GameMain/Scripts/UI/UIContext.cs b/Assets/GameMain/Scripts/UI/Base/UIContext.cs similarity index 100% rename from Assets/GameMain/Scripts/UI/UIContext.cs rename to Assets/GameMain/Scripts/UI/Base/UIContext.cs diff --git a/Assets/GameMain/Scripts/UI/UIContext.cs.meta b/Assets/GameMain/Scripts/UI/Base/UIContext.cs.meta similarity index 100% rename from Assets/GameMain/Scripts/UI/UIContext.cs.meta rename to Assets/GameMain/Scripts/UI/Base/UIContext.cs.meta diff --git a/Assets/GameMain/Scripts/UI/GameplayA.meta b/Assets/GameMain/Scripts/UI/Combine.meta similarity index 100% rename from Assets/GameMain/Scripts/UI/GameplayA.meta rename to Assets/GameMain/Scripts/UI/Combine.meta diff --git a/Assets/GameMain/Scripts/UI/GameplayA/Context.meta b/Assets/GameMain/Scripts/UI/Combine/Context.meta similarity index 100% rename from Assets/GameMain/Scripts/UI/GameplayA/Context.meta rename to Assets/GameMain/Scripts/UI/Combine/Context.meta diff --git a/Assets/GameMain/Scripts/UI/GameplayA/Context/CombineFormContext.cs b/Assets/GameMain/Scripts/UI/Combine/Context/CombineFormContext.cs similarity index 100% rename from Assets/GameMain/Scripts/UI/GameplayA/Context/CombineFormContext.cs rename to Assets/GameMain/Scripts/UI/Combine/Context/CombineFormContext.cs diff --git a/Assets/GameMain/Scripts/UI/GameplayA/Context/CombineFormContext.cs.meta b/Assets/GameMain/Scripts/UI/Combine/Context/CombineFormContext.cs.meta similarity index 100% rename from Assets/GameMain/Scripts/UI/GameplayA/Context/CombineFormContext.cs.meta rename to Assets/GameMain/Scripts/UI/Combine/Context/CombineFormContext.cs.meta diff --git a/Assets/GameMain/Scripts/UI/GameplayA/Context/CombinePartContext.cs b/Assets/GameMain/Scripts/UI/Combine/Context/CombinePartContext.cs similarity index 100% rename from Assets/GameMain/Scripts/UI/GameplayA/Context/CombinePartContext.cs rename to Assets/GameMain/Scripts/UI/Combine/Context/CombinePartContext.cs diff --git a/Assets/GameMain/Scripts/UI/GameplayA/Context/CombinePartContext.cs.meta b/Assets/GameMain/Scripts/UI/Combine/Context/CombinePartContext.cs.meta similarity index 100% rename from Assets/GameMain/Scripts/UI/GameplayA/Context/CombinePartContext.cs.meta rename to Assets/GameMain/Scripts/UI/Combine/Context/CombinePartContext.cs.meta diff --git a/Assets/GameMain/Scripts/UI/GameplayA/Context/CombineSlotContext.cs b/Assets/GameMain/Scripts/UI/Combine/Context/CombineSlotContext.cs similarity index 100% rename from Assets/GameMain/Scripts/UI/GameplayA/Context/CombineSlotContext.cs rename to Assets/GameMain/Scripts/UI/Combine/Context/CombineSlotContext.cs diff --git a/Assets/GameMain/Scripts/UI/GameplayA/Context/CombineSlotContext.cs.meta b/Assets/GameMain/Scripts/UI/Combine/Context/CombineSlotContext.cs.meta similarity index 100% rename from Assets/GameMain/Scripts/UI/GameplayA/Context/CombineSlotContext.cs.meta rename to Assets/GameMain/Scripts/UI/Combine/Context/CombineSlotContext.cs.meta diff --git a/Assets/GameMain/Scripts/UI/GameplayA/Controller.meta b/Assets/GameMain/Scripts/UI/Combine/Controller.meta similarity index 100% rename from Assets/GameMain/Scripts/UI/GameplayA/Controller.meta rename to Assets/GameMain/Scripts/UI/Combine/Controller.meta diff --git a/Assets/GameMain/Scripts/UI/GameplayA/Controller/CombineFormController.cs b/Assets/GameMain/Scripts/UI/Combine/Controller/CombineFormController.cs similarity index 100% rename from Assets/GameMain/Scripts/UI/GameplayA/Controller/CombineFormController.cs rename to Assets/GameMain/Scripts/UI/Combine/Controller/CombineFormController.cs diff --git a/Assets/GameMain/Scripts/UI/GameplayA/Controller/CombineFormController.cs.meta b/Assets/GameMain/Scripts/UI/Combine/Controller/CombineFormController.cs.meta similarity index 100% rename from Assets/GameMain/Scripts/UI/GameplayA/Controller/CombineFormController.cs.meta rename to Assets/GameMain/Scripts/UI/Combine/Controller/CombineFormController.cs.meta diff --git a/Assets/GameMain/Scripts/UI/GameplayA/View.meta b/Assets/GameMain/Scripts/UI/Combine/View.meta similarity index 100% rename from Assets/GameMain/Scripts/UI/GameplayA/View.meta rename to Assets/GameMain/Scripts/UI/Combine/View.meta diff --git a/Assets/GameMain/Scripts/UI/GameplayA/View/CombineDraggablePart.cs b/Assets/GameMain/Scripts/UI/Combine/View/CombineDraggablePart.cs similarity index 100% rename from Assets/GameMain/Scripts/UI/GameplayA/View/CombineDraggablePart.cs rename to Assets/GameMain/Scripts/UI/Combine/View/CombineDraggablePart.cs diff --git a/Assets/GameMain/Scripts/UI/GameplayA/View/CombineDraggablePart.cs.meta b/Assets/GameMain/Scripts/UI/Combine/View/CombineDraggablePart.cs.meta similarity index 100% rename from Assets/GameMain/Scripts/UI/GameplayA/View/CombineDraggablePart.cs.meta rename to Assets/GameMain/Scripts/UI/Combine/View/CombineDraggablePart.cs.meta diff --git a/Assets/GameMain/Scripts/UI/GameplayA/View/CombineForm.cs b/Assets/GameMain/Scripts/UI/Combine/View/CombineForm.cs similarity index 100% rename from Assets/GameMain/Scripts/UI/GameplayA/View/CombineForm.cs rename to Assets/GameMain/Scripts/UI/Combine/View/CombineForm.cs diff --git a/Assets/GameMain/Scripts/UI/GameplayA/View/CombineForm.cs.meta b/Assets/GameMain/Scripts/UI/Combine/View/CombineForm.cs.meta similarity index 100% rename from Assets/GameMain/Scripts/UI/GameplayA/View/CombineForm.cs.meta rename to Assets/GameMain/Scripts/UI/Combine/View/CombineForm.cs.meta diff --git a/Assets/GameMain/Scripts/UI/GameplayA/View/CombineSlot.cs b/Assets/GameMain/Scripts/UI/Combine/View/CombineSlot.cs similarity index 100% rename from Assets/GameMain/Scripts/UI/GameplayA/View/CombineSlot.cs rename to Assets/GameMain/Scripts/UI/Combine/View/CombineSlot.cs diff --git a/Assets/GameMain/Scripts/UI/GameplayA/View/CombineSlot.cs.meta b/Assets/GameMain/Scripts/UI/Combine/View/CombineSlot.cs.meta similarity index 100% rename from Assets/GameMain/Scripts/UI/GameplayA/View/CombineSlot.cs.meta rename to Assets/GameMain/Scripts/UI/Combine/View/CombineSlot.cs.meta diff --git a/Assets/GameMain/Scripts/UI/UIExtension.cs b/Assets/GameMain/Scripts/UI/UIExtension.cs index 3b6d6b8..795c8d9 100644 --- a/Assets/GameMain/Scripts/UI/UIExtension.cs +++ b/Assets/GameMain/Scripts/UI/UIExtension.cs @@ -1,13 +1,9 @@ -//------------------------------------------------------------ -// Game Framework -// Copyright © 2013-2021 Jiang Yin. All rights reserved. -// Homepage: https://gameframework.cn/ -// Feedback: mailto:ellan@gameframework.cn -//------------------------------------------------------------ - -using GameFramework.DataTable; +using GameFramework.DataTable; using GameFramework.UI; using System.Collections; +using CustomUtility; +using DataTable; +using Definition; using Procedure; using StarForce; using UnityEngine; diff --git a/Assets/GameMain/Scripts/Utility/AssetUtility.cs b/Assets/GameMain/Scripts/Utility/AssetUtility.cs index 5557d0c..4b9449a 100644 --- a/Assets/GameMain/Scripts/Utility/AssetUtility.cs +++ b/Assets/GameMain/Scripts/Utility/AssetUtility.cs @@ -7,7 +7,7 @@ using GameFramework; -namespace StarForce +namespace CustomUtility { public static class AssetUtility { diff --git a/Assets/GameMain/Scripts/Utility/EnumUtility.cs b/Assets/GameMain/Scripts/Utility/EnumUtility.cs new file mode 100644 index 0000000..83de003 --- /dev/null +++ b/Assets/GameMain/Scripts/Utility/EnumUtility.cs @@ -0,0 +1,27 @@ +using System.Collections.Generic; +using UnityGameFramework.Runtime; + +namespace CustomUtility +{ + public static class EnumUtility where T : struct, System.Enum + { + private static readonly Dictionary _enumCache = new(); + + public static T Get(string value) + { + if (!_enumCache.TryGetValue(value, out T result)) + { + if (System.Enum.TryParse(value, true, out result)) + { + _enumCache[value] = result; + } + else + { + Log.Error($"Enum 解析失败:类型:{typeof(T).Name} 不包含值 {value}"); + } + } + + return result; + } + } +} diff --git a/Assets/GameMain/Scripts/Utility/EnumUtility.cs.meta b/Assets/GameMain/Scripts/Utility/EnumUtility.cs.meta new file mode 100644 index 0000000..6850aba --- /dev/null +++ b/Assets/GameMain/Scripts/Utility/EnumUtility.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d0591e8f95955014f8c2f8d9ba3c9247 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/GameMain/Scripts/Utility/LitJsonHelper.cs b/Assets/GameMain/Scripts/Utility/LitJsonHelper.cs index 19a242e..f2d3f1e 100644 --- a/Assets/GameMain/Scripts/Utility/LitJsonHelper.cs +++ b/Assets/GameMain/Scripts/Utility/LitJsonHelper.cs @@ -9,7 +9,7 @@ using GameFramework; using LitJson; using System; -namespace StarForce +namespace CustomUtility { /// /// LitJSON 函数集辅助器。 diff --git a/Assets/GameMain/Scripts/Utility/WebUtility.cs b/Assets/GameMain/Scripts/Utility/WebUtility.cs index 8d5ceeb..f1c0fcf 100644 --- a/Assets/GameMain/Scripts/Utility/WebUtility.cs +++ b/Assets/GameMain/Scripts/Utility/WebUtility.cs @@ -1,13 +1,6 @@ -//------------------------------------------------------------ -// Game Framework -// Copyright © 2013-2021 Jiang Yin. All rights reserved. -// Homepage: https://gameframework.cn/ -// Feedback: mailto:ellan@gameframework.cn -//------------------------------------------------------------ +using System; -using System; - -namespace StarForce +namespace CustomUtility { public static class WebUtility { diff --git a/ProjectSettings/ProjectSettings.asset b/ProjectSettings/ProjectSettings.asset index c2da562..403c004 100644 --- a/ProjectSettings/ProjectSettings.asset +++ b/ProjectSettings/ProjectSettings.asset @@ -812,11 +812,23 @@ PlayerSettings: webGLMemoryGeometricGrowthCap: 96 webGLPowerPreference: 2 scriptingDefineSymbols: - Android: ENABLE_DEBUG_AND_ABOVE_LOG - Standalone: ENABLE_DEBUG_AND_ABOVE_LOG - WebGL: ENABLE_DEBUG_AND_ABOVE_LOG - Windows Store Apps: ENABLE_DEBUG_AND_ABOVE_LOG - iPhone: ENABLE_DEBUG_AND_ABOVE_LOG + Android: ENABLE_DEBUG_AND_ABOVE_LOG;DOTWEEN + EmbeddedLinux: DOTWEEN + GameCoreScarlett: DOTWEEN + GameCoreXboxOne: DOTWEEN + LinuxHeadlessSimulation: DOTWEEN + Nintendo Switch: DOTWEEN + PS4: DOTWEEN + PS5: DOTWEEN + QNX: DOTWEEN + Stadia: DOTWEEN + Standalone: ENABLE_DEBUG_AND_ABOVE_LOG;DOTWEEN + VisionOS: DOTWEEN + WebGL: ENABLE_DEBUG_AND_ABOVE_LOG;DOTWEEN + Windows Store Apps: ENABLE_DEBUG_AND_ABOVE_LOG;DOTWEEN + XboxOne: DOTWEEN + iPhone: ENABLE_DEBUG_AND_ABOVE_LOG;DOTWEEN + tvOS: DOTWEEN additionalCompilerArguments: {} platformArchitecture: {} scriptingBackend: {} diff --git a/数据表/Dialog.txt b/数据表/Dialog.txt new file mode 100644 index 0000000..a3e4690 --- /dev/null +++ b/数据表/Dialog.txt @@ -0,0 +1,7 @@ +# 对话标识表 筛选用数据 +# Id Title UIMode ChapterId +# int string DialogUIMode int +# 对话编号 策划备注 对话标识 对话形式 章节编号 + 1001 第一章介绍 Chapter1_Intro Mask 1.001 + 1002 第一章主流程 Chapter1_Main BottomBox 1.002 + 1003 第一章玩法开始前闲聊 Chapter1_SmallTalk1 BubbleBox 1.003 diff --git a/数据表/Dialog.xlsx b/数据表/Dialog.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..6643c3718d1bc3b84d8167e840c0ee51786f541d GIT binary patch literal 10774 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 literal 0 HcmV?d00001 diff --git a/数据表/DialogLine.txt b/数据表/DialogLine.txt new file mode 100644 index 0000000..49a55c7 --- /dev/null +++ b/数据表/DialogLine.txt @@ -0,0 +1,13 @@ +# 对话内容表 筛选用数据 +# Id SpeakerId Expression SpeakerName Direction Text Emphasis ChapterId DialogId +# int int ExpressionType string int string EmphasisType int int +# 对话行编号 策划备注 说话人Id 表情 显示人名 说话朝向 说话内容 演出效果 章节Id 对话Id + 100100001 Id规则为 Null Null Null 0 相传。 1.00100001 1001.00001 + 100100002 第1位数为章节Id Null Null Null 0 Mask。 1.00100002 1001.00002 + 100100003 第2-4位数为对话Id Null Null Null 0 很好。 1.00100003 1001.00003 + 100200001 第5-9位数为对话行Id Xu Normal 徐晟壹 0 你好,王。 1.00200001 1002.00001 + 100200002 Wang Normal 王可嘉 1 你好,徐。 1.00200002 1002.00002 + 100200003 Master Normal 李诫 1 你们好。 1.00200003 1002.00003 + 100300001 Npc1 Null Null 0 这人谁啊? 1.00300001 1003.00001 + 100300002 Npc2 Null Null 0 不知道啊? 1.00300002 1003.00002 + 100300003 Npc1 Null Null 0 不知道你在这干嘛。 1.00300003 1003.00003 diff --git a/数据表/DialogLine.xlsx b/数据表/DialogLine.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..7caec299921935cbd514a55ac74097042be81107 GIT binary patch literal 11607 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 literal 0 HcmV?d00001 diff --git a/数据表/Scene.txt b/数据表/Scene.txt index 29826e2..6aecfae 100644 --- a/数据表/Scene.txt +++ b/数据表/Scene.txt @@ -5,4 +5,3 @@ 1 菜单场景 Menu 1 2 战斗场景 Main 2 3 压力测试场景 StressTest 0 - 4 玩法A测试场景 GameplayA 0 \ No newline at end of file diff --git a/数据表/UIForm.txt b/数据表/UIForm.txt index 20740d2..6b11bd8 100644 --- a/数据表/UIForm.txt +++ b/数据表/UIForm.txt @@ -6,4 +6,3 @@ 100 主菜单 MenuForm Default False True 101 设置 SettingForm Default False True 102 关于 AboutForm Default False True - 103 淨A MVCԽ CoreGameplayAMvcForm Default False True diff --git a/数据表/Weapon.txt b/数据表/Weapon.txt deleted file mode 100644 index 8d2b3fd..0000000 --- a/数据表/Weapon.txt +++ /dev/null @@ -1,5 +0,0 @@ -# 武器表 -# Id Attack AttackInterval BulletId BulletSpeed BulletSoundId -# int int float int float int -# 武器编号 策划备注 攻击力 攻击间隔 子弹编号 子弹速度 子弹声音编号 - 30000 玩家武器 100 0.2 50000 20 10000 diff --git a/数据表/Weapon.xlsx b/数据表/Weapon.xlsx deleted file mode 100644 index d1a405762ad0b537d996dc49ad7b286457b71bf0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10510 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 {output_file}") print(f"已复制到 -> {target_file}") count += 1 - + except Exception as e: - print(f"处理 {file_name} 时出错: {e}") + print(f"处理 {file_path} 时出错: {e}") print(f"\n任务完成!共转换了 {count} 个文件。") + if __name__ == "__main__": convert_excel_to_txt('.') - - # --- 关键修改:在这里添加暂停 --- - print("\n" + "="*30) - input("按回车键(Enter)退出程序...") \ No newline at end of file + + print("\n" + "=" * 30) + input("按回车键(Enter)退出程序...")