From 5941a2cdb2f8afee26fe4ae7d0a3eaceea9619dc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E6=80=9D=E6=B5=B7?= <1464576565@qq.com> Date: Fri, 5 Sep 2025 20:06:35 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1.精简框架核心代码 2.降低框架扩展功能的依赖耦合 3.更新高性能FSM结构 --- .gitmodules | 3 - Client/Assets/Editor/BuildDLLCommand.cs | 107 -- Client/Assets/Editor/BuildDLLCommand.cs.meta | 3 - Client/Assets/PlayerController.cs | 142 ++ Client/Assets/PlayerController.cs.meta | 3 + .../Scripts/Hotfix/GameLogic/EnemyAI.cs | 90 -- .../Scripts/Hotfix/GameLogic/EnemyAI.cs.meta | 3 - .../Scripts/Hotfix/GameLogic/GameLogic.asmdef | 5 +- .../GameLogic/TestWindow/UIHomeWindow.cs | 2 +- .../Startup/Framework/LauncherUIHandler.cs | 2 +- .../PatchUpdater/ProcedureDownloadWebFiles.cs | 2 +- .../Startup/Framework/Procedure/Procedure.cs | 35 +- .../Scripts/Startup/Unity.Startup.asmdef | 3 +- Client/Assets/Test/GameBase.dll.bytes | Bin 5120 -> 5120 bytes Client/Assets/Test/GameBase.pdb.bytes | Bin 21660 -> 21684 bytes Client/Assets/Test/GameLib.dll.bytes | Bin 5120 -> 5120 bytes Client/Assets/Test/GameLib.pdb.bytes | Bin 21572 -> 21596 bytes Client/Assets/Test/GameLogic.dll.bytes | Bin 59392 -> 59392 bytes Client/Assets/Test/GameLogic.pdb.bytes | Bin 33432 -> 33620 bytes Client/Assets/Test/GameProto.dll.bytes | Bin 4608 -> 4608 bytes Client/Assets/Test/GameProto.pdb.bytes | Bin 21556 -> 21584 bytes Client/Assets/UITestMono.cs | 15 - Client/Assets/UITestMono.cs.meta | 2 - .../com.alicizax.unity.audio/Editor.meta | 8 - .../Editor/AlicizaX.Audio.Editor.asmdef | 20 - .../Editor/AlicizaX.Audio.Editor.asmdef.meta | 7 - .../Editor/AudioComponentInspector.cs | 44 - .../Editor/AudioComponentInspector.cs.meta | 3 - .../com.alicizax.unity.audio/LICENSE.md | 201 --- .../com.alicizax.unity.audio/LICENSE.md.meta | 7 - .../com.alicizax.unity.audio/Runtime.meta | 8 - .../Runtime/AlicizaX.Audio.Runtime.asmdef | 19 - .../AlicizaX.Audio.Runtime.asmdef.meta | 7 - .../Runtime/Audio.meta | 3 - .../Runtime/Audio/AudioAgent.cs | 455 ------ .../Runtime/Audio/AudioAgent.cs.meta | 11 - .../Runtime/Audio/AudioAgentRuntimeState.cs | 33 - .../Audio/AudioAgentRuntimeState.cs.meta | 3 - .../Runtime/Audio/AudioCategory.cs | 239 --- .../Runtime/Audio/AudioCategory.cs.meta | 11 - .../Runtime/Audio/AudioComponent.cs | 48 - .../Runtime/Audio/AudioComponent.cs.meta | 11 - .../Runtime/Audio/AudioData.cs | 67 - .../Runtime/Audio/AudioData.cs.meta | 3 - .../Runtime/Audio/AudioGroupConfig.cs | 48 - .../Runtime/Audio/AudioGroupConfig.cs.meta | 11 - .../Runtime/Audio/AudioModule.cs | 593 ------- .../Runtime/Audio/AudioModule.cs.meta | 3 - .../Runtime/Audio/AudioType.cs | 34 - .../Runtime/Audio/AudioType.cs.meta | 11 - .../Runtime/Audio/IAudioModule.cs | 130 -- .../Runtime/Audio/IAudioModule.cs.meta | 3 - .../Runtime/Audio/Resources.meta | 8 - .../Runtime/Audio/Resources/AudioMixer.mixer | 708 -------- .../Audio/Resources/AudioMixer.mixer.meta | 8 - .../com.alicizax.unity.audio/Runtime/link.xml | 3 - .../Runtime/link.xml.meta | 3 - .../com.alicizax.unity.audio/package.json | 20 - .../package.json.meta | 7 - .../com.alicizax.unity.debugger/Editor.meta | 8 - .../Editor/AlicizaX.Debugger.Editor.asmdef | 20 - .../AlicizaX.Debugger.Editor.asmdef.meta | 7 - .../Editor/Inspector.meta | 8 - .../Inspector/DebuggerComponentInspector.cs | 64 - .../DebuggerComponentInspector.cs.meta | 11 - .../Editor/Res.meta | 8 - .../Editor/Res/DebuggerSkin.guiskin | 1427 ----------------- .../Editor/Res/DebuggerSkin.guiskin.meta | 8 - .../com.alicizax.unity.debugger/LICENSE.md | 201 --- .../LICENSE.md.meta | 7 - .../com.alicizax.unity.debugger/Runtime.meta | 8 - .../Runtime/AlicizaX.Debugger.Runtime.asmdef | 17 - .../AlicizaX.Debugger.Runtime.asmdef.meta | 7 - .../Runtime/Debugger.meta | 8 - .../Debugger/DebuggerActiveWindowType.cs | 28 - .../Debugger/DebuggerActiveWindowType.cs.meta | 11 - .../DebuggerComponent.ConsoleWindow.cs | 420 ----- .../DebuggerComponent.ConsoleWindow.cs.meta | 11 - ...rComponent.EnvironmentInformationWindow.cs | 74 - ...onent.EnvironmentInformationWindow.cs.meta | 11 - .../Debugger/DebuggerComponent.FpsCounter.cs | 77 - .../DebuggerComponent.FpsCounter.cs.meta | 11 - ...ggerComponent.GraphicsInformationWindow.cs | 163 -- ...omponent.GraphicsInformationWindow.cs.meta | 11 - ...nent.InputAccelerationInformationWindow.cs | 39 - ...InputAccelerationInformationWindow.cs.meta | 11 - ...Component.InputCompassInformationWindow.cs | 42 - ...nent.InputCompassInformationWindow.cs.meta | 11 - ...mponent.InputGyroscopeInformationWindow.cs | 43 - ...nt.InputGyroscopeInformationWindow.cs.meta | 11 - ...omponent.InputLocationInformationWindow.cs | 44 - ...ent.InputLocationInformationWindow.cs.meta | 11 - ...Component.InputSummaryInformationWindow.cs | 33 - ...nent.InputSummaryInformationWindow.cs.meta | 11 - ...erComponent.InputTouchInformationWindow.cs | 43 - ...ponent.InputTouchInformationWindow.cs.meta | 11 - .../Debugger/DebuggerComponent.LogNode.cs | 119 -- .../DebuggerComponent.LogNode.cs.meta | 11 - ...erComponent.ObjectPoolInformationWindow.cs | 87 - ...ponent.ObjectPoolInformationWindow.cs.meta | 11 - .../DebuggerComponent.OperationsWindow.cs | 67 - ...DebuggerComponent.OperationsWindow.cs.meta | 11 - ...DebuggerComponent.PathInformationWindow.cs | 29 - ...gerComponent.PathInformationWindow.cs.meta | 11 - ...ggerComponent.ProfilerInformationWindow.cs | 61 - ...omponent.ProfilerInformationWindow.cs.meta | 11 - ...uggerComponent.QualityInformationWindow.cs | 104 -- ...Component.QualityInformationWindow.cs.meta | 11 - ...omponent.ReferencePoolInformationWindow.cs | 107 -- ...ent.ReferencePoolInformationWindow.cs.meta | 11 - ...t.RuntimeMemoryInformationWindow.Sample.cs | 62 - ...timeMemoryInformationWindow.Sample.cs.meta | 11 - ...omponent.RuntimeMemoryInformationWindow.cs | 136 -- ...ent.RuntimeMemoryInformationWindow.cs.meta | 11 - ...onent.RuntimeMemorySummaryWindow.Record.cs | 56 - ....RuntimeMemorySummaryWindow.Record.cs.meta | 11 - ...gerComponent.RuntimeMemorySummaryWindow.cs | 124 -- ...mponent.RuntimeMemorySummaryWindow.cs.meta | 11 - ...ebuggerComponent.SceneInformationWindow.cs | 38 - ...erComponent.SceneInformationWindow.cs.meta | 11 - ...buggerComponent.ScreenInformationWindow.cs | 92 -- ...rComponent.ScreenInformationWindow.cs.meta | 11 - ...rComponent.ScrollableDebuggerWindowBase.cs | 95 -- ...onent.ScrollableDebuggerWindowBase.cs.meta | 11 - .../DebuggerComponent.SettingsWindow.cs | 219 --- .../DebuggerComponent.SettingsWindow.cs.meta | 11 - ...buggerComponent.SystemInformationWindow.cs | 56 - ...rComponent.SystemInformationWindow.cs.meta | 11 - ...DebuggerComponent.TimeInformationWindow.cs | 70 - ...gerComponent.TimeInformationWindow.cs.meta | 11 - ...gerComponent.WebPlayerInformationWindow.cs | 34 - ...mponent.WebPlayerInformationWindow.cs.meta | 11 - .../Runtime/Debugger/DebuggerComponent.cs | 418 ----- .../Debugger/DebuggerComponent.cs.meta | 11 - .../DebuggerManager.DebuggerWindowGroup.cs | 301 ---- ...ebuggerManager.DebuggerWindowGroup.cs.meta | 11 - .../Runtime/Debugger/DebuggerModule.cs | 123 -- .../Runtime/Debugger/DebuggerModule.cs.meta | 11 - .../Runtime/Debugger/IDebuggerModule.cs | 38 - .../Runtime/Debugger/IDebuggerModule.cs.meta | 11 - .../Runtime/Debugger/IDebuggerWindow.cs | 29 - .../Runtime/Debugger/IDebuggerWindow.cs.meta | 11 - .../Runtime/Debugger/IDebuggerWindowGroup.cs | 31 - .../Debugger/IDebuggerWindowGroup.cs.meta | 11 - .../Runtime/link.xml | 3 - .../Runtime/link.xml.meta | 3 - .../com.alicizax.unity.debugger/package.json | 20 - .../package.json.meta | 7 - .../com.alicizax.unity.editor.extension | 2 +- .../Runtime/AlicizaX.Entry.Runtime.asmdef | 53 +- .../Runtime/GameApp.Audio.cs | 5 +- .../Runtime/GameApp.Event.cs | 26 - .../Runtime/GameApp.Event.cs.meta | 3 - .../Runtime/GameApp.Fsm.cs | 6 +- .../Runtime/GameApp.Localization.cs | 4 +- .../Runtime/GameApp.Network.cs | 2 +- .../Runtime/GameApp.Resource.cs | 6 +- .../Runtime/GameApp.Scene.cs | 6 +- .../Runtime/GameApp.Timer.cs | 5 +- .../Runtime/GameApp.UI.cs | 5 +- ....alicizax.unity.focus-creative-games.luban | 2 +- .../com.alicizax.unity.fsm/Editor.meta | 8 - .../Editor/AlicizaX.Fsm.Editor.asmdef | 20 - .../Editor/AlicizaX.Fsm.Editor.asmdef.meta | 7 - .../Editor/FsmComponentInspector.cs | 41 - .../Editor/FsmComponentInspector.cs.meta | 3 - .../com.alicizax.unity.fsm/LICENSE.md | 201 --- .../com.alicizax.unity.fsm/LICENSE.md.meta | 7 - .../com.alicizax.unity.fsm/Runtime.meta | 8 - .../Runtime/AlicizaX.Fsm.Runtime.asmdef | 17 - .../Runtime/AlicizaX.Fsm.Runtime.asmdef.meta | 7 - .../com.alicizax.unity.fsm/Runtime/Fsm.meta | 3 - .../com.alicizax.unity.fsm/Runtime/Fsm/Fsm.cs | 274 ---- .../Runtime/Fsm/Fsm.cs.meta | 3 - .../Runtime/Fsm/FsmComponent.cs | 33 - .../Runtime/Fsm/FsmComponent.cs.meta | 3 - .../Runtime/Fsm/FsmModule.cs | 125 -- .../Runtime/Fsm/FsmModule.cs.meta | 3 - .../Runtime/Fsm/IFsmModule.cs | 13 - .../Runtime/Fsm/IFsmModule.cs.meta | 2 - .../com.alicizax.unity.fsm/Runtime/link.xml | 3 - .../Runtime/link.xml.meta | 3 - .../com.alicizax.unity.fsm/package.json | 20 - .../com.alicizax.unity.fsm/package.json.meta | 7 - .../Editor.meta | 8 - .../AlicizaX.Localization.Editor.asmdef | 16 - .../AlicizaX.Localization.Editor.asmdef.meta | 7 - .../Editor/LocalizationEditor.cs | 7 - .../Editor/LocalizationEditor.cs.meta | 3 - .../LICENSE.md | 201 --- .../LICENSE.md.meta | 7 - .../Runtime.meta | 8 - .../AlicizaX.Localization.Runtime.asmdef | 17 - .../AlicizaX.Localization.Runtime.asmdef.meta | 7 - .../Runtime/Localization.meta | 3 - .../Runtime/Localization/Event.meta | 3 - .../Event/LocalizationChangeEvent.cs | 20 - .../Event/LocalizationChangeEvent.cs.meta | 3 - .../Localization/LocalizationComponent.cs | 25 - .../LocalizationComponent.cs.meta | 3 - .../Runtime/Localization/Manager.meta | 3 - .../Manager/ILocalizationModule.cs | 426 ----- .../Manager/ILocalizationModule.cs.meta | 3 - .../Manager/LocalizationModule.cs | 738 --------- .../Manager/LocalizationModule.cs.meta | 3 - .../Runtime/link.xml | 3 - .../Runtime/link.xml.meta | 3 - .../package.json | 23 - .../package.json.meta | 7 - Client/Packages/com.alicizax.unity.network | 2 +- .../com.alicizax.unity.resource/Editor.meta | 8 - .../Editor/AlicizaX.Resource.Editor.asmdef | 23 - .../AlicizaX.Resource.Editor.asmdef.meta | 7 - .../Editor/Encryption.meta | 8 - .../Editor/Encryption/DefaultEncryption.cs | 50 - .../Encryption/DefaultEncryption.cs.meta | 3 - .../Editor/Inspector.meta | 3 - .../Inspector/ResourceComponentInspector.cs | 264 --- .../ResourceComponentInspector.cs.meta | 3 - .../ResourceExtComponentInspector.cs | 59 - .../ResourceExtComponentInspector.cs.meta | 3 - .../com.alicizax.unity.resource/LICENSE.md | 201 --- .../LICENSE.md.meta | 7 - .../com.alicizax.unity.resource/Runtime.meta | 8 - .../Runtime/AlicizaX.Resource.Runtime.asmdef | 19 - .../AlicizaX.Resource.Runtime.asmdef.meta | 7 - .../Runtime/EventArgs.meta | 3 - .../AssetDownloadProgressUpdateEventArgs.cs | 55 - ...setDownloadProgressUpdateEventArgs.cs.meta | 3 - .../Runtime/Resource.meta | 3 - .../Runtime/Resource/Callback.meta | 3 - .../Resource/Callback/LoadAssetCallbacks.cs | 94 -- .../Callback/LoadAssetCallbacks.cs.meta | 11 - .../Callback/LoadAssetFailureCallback.cs | 11 - .../Callback/LoadAssetFailureCallback.cs.meta | 3 - .../Callback/LoadAssetSuccessCallback.cs | 11 - .../Callback/LoadAssetSuccessCallback.cs.meta | 3 - .../Callback/LoadAssetUpdateCallback.cs | 10 - .../Callback/LoadAssetUpdateCallback.cs.meta | 3 - .../Resource/Callback/LoadResourceStatus.cs | 38 - .../Callback/LoadResourceStatus.cs.meta | 3 - .../Resource/Callback/LoadSceneCallbacks.cs | 94 -- .../Callback/LoadSceneCallbacks.cs.meta | 3 - .../Callback/LoadSceneFailureCallback.cs | 11 - .../Callback/LoadSceneFailureCallback.cs.meta | 3 - .../Callback/LoadSceneSuccessCallback.cs | 11 - .../Callback/LoadSceneSuccessCallback.cs.meta | 3 - .../Callback/LoadSceneUpdateCallback.cs | 10 - .../Callback/LoadSceneUpdateCallback.cs.meta | 3 - .../Resource/Callback/UnloadSceneCallbacks.cs | 60 - .../Callback/UnloadSceneCallbacks.cs.meta | 3 - .../Callback/UnloadSceneFailureCallback.cs | 9 - .../UnloadSceneFailureCallback.cs.meta | 3 - .../Callback/UnloadSceneSuccessCallback.cs | 9 - .../UnloadSceneSuccessCallback.cs.meta | 3 - .../Runtime/Resource/Extension.meta | 3 - .../Resource/Extension/AssetItemObject.cs | 26 - .../Extension/AssetItemObject.cs.meta | 3 - .../Resource/Extension/ISetAssetObject.cs | 23 - .../Extension/ISetAssetObject.cs.meta | 3 - .../Runtime/Resource/Extension/Implement.meta | 3 - .../Implement/SetSpriteExtensions.cs | 56 - .../Implement/SetSpriteExtensions.cs.meta | 3 - .../Extension/Implement/SetSpriteObject.cs | 116 -- .../Implement/SetSpriteObject.cs.meta | 3 - .../Resource/Extension/LoadAssetObject.cs | 28 - .../Extension/LoadAssetObject.cs.meta | 3 - .../ResourceExtComponent.Resource.cs | 63 - .../ResourceExtComponent.Resource.cs.meta | 3 - .../ResourceExtComponent.SubSprite.cs | 130 -- .../ResourceExtComponent.SubSprite.cs.meta | 3 - .../Extension/ResourceExtComponent.cs | 150 -- .../Extension/ResourceExtComponent.cs.meta | 3 - .../Runtime/Resource/HasAssetResult.cs | 43 - .../Runtime/Resource/HasAssetResult.cs.meta | 3 - .../Runtime/Resource/IResourceModule.cs | 290 ---- .../Runtime/Resource/IResourceModule.cs.meta | 3 - .../Runtime/Resource/ReadWritePathType.cs | 23 - .../Resource/ReadWritePathType.cs.meta | 3 - .../Runtime/Resource/Reference.meta | 3 - .../Resource/Reference/AssetsReference.cs | 194 --- .../Reference/AssetsReference.cs.meta | 3 - .../Resource/Reference/AssetsSetHelper.cs | 151 -- .../Reference/AssetsSetHelper.cs.meta | 3 - .../Runtime/Resource/ResourceComponent.cs | 269 ---- .../Resource/ResourceComponent.cs.meta | 11 - .../Runtime/Resource/ResourceLogger.cs | 27 - .../Runtime/Resource/ResourceLogger.cs.meta | 3 - .../Resource/ResourceModule.AssetObject.cs | 69 - .../ResourceModule.AssetObject.cs.meta | 3 - .../Resource/ResourceModule.Initialization.cs | 123 -- .../ResourceModule.Initialization.cs.meta | 3 - .../Runtime/Resource/ResourceModule.Pool.cs | 71 - .../Resource/ResourceModule.Pool.cs.meta | 3 - .../Resource/ResourceModule.Services.cs | 178 -- .../Resource/ResourceModule.Services.cs.meta | 3 - .../Runtime/Resource/ResourceModule.cs | 1096 ------------- .../Runtime/Resource/ResourceModule.cs.meta | 3 - .../Runtime/link.xml | 3 - .../Runtime/link.xml.meta | 3 - .../com.alicizax.unity.resource/package.json | 22 - .../package.json.meta | 7 - .../com.alicizax.unity.scene/LICENSE.md | 201 --- .../com.alicizax.unity.scene/LICENSE.md.meta | 7 - .../com.alicizax.unity.scene/Runtime.meta | 8 - .../Runtime/AlicizaX.Scene.Runtime.asmdef | 20 - .../AlicizaX.Scene.Runtime.asmdef.meta | 7 - .../Runtime/Scene.meta | 3 - .../Runtime/Scene/ISceneModule.cs | 90 -- .../Runtime/Scene/ISceneModule.cs.meta | 3 - .../Runtime/Scene/SceneComponent.cs | 16 - .../Runtime/Scene/SceneComponent.cs.meta | 3 - .../Runtime/Scene/SceneModule.cs | 408 ----- .../Runtime/Scene/SceneModule.cs.meta | 3 - .../com.alicizax.unity.scene/Runtime/link.xml | 3 - .../Runtime/link.xml.meta | 3 - .../com.alicizax.unity.scene/package.json | 22 - .../package.json.meta | 7 - .../com.alicizax.unity.timer/LICENSE.md | 201 --- .../com.alicizax.unity.timer/LICENSE.md.meta | 7 - .../com.alicizax.unity.timer/Runtime.meta | 8 - .../Runtime/AlicizaX.Timer.Runtime.asmdef | 16 - .../AlicizaX.Timer.Runtime.asmdef.meta | 7 - .../Runtime/Timer.meta | 3 - .../Runtime/Timer/ITimerModule.cs | 64 - .../Runtime/Timer/ITimerModule.cs.meta | 3 - .../Runtime/Timer/TimerComponent.cs | 17 - .../Runtime/Timer/TimerComponent.cs.meta | 3 - .../Runtime/Timer/TimerModule.cs | 235 --- .../Runtime/Timer/TimerModule.cs.meta | 3 - .../com.alicizax.unity.timer/Runtime/link.xml | 3 - .../Runtime/link.xml.meta | 3 - .../com.alicizax.unity.timer/package.json | 22 - .../package.json.meta | 7 - .../com.alicizax.unity.tuyoogame.yooasset | 2 +- Client/Packages/com.alicizax.unity.ui | 1 - .../Packages/com.alicizax.unity.ui.extension | 2 +- .../Runtime/Base/Variable.meta | 8 - .../Runtime/Base/Variable/GenericVariable.cs | 82 - .../Base/Variable/GenericVariable.cs.meta | 11 - .../Runtime/Base/Variable/Variable.cs | 42 - .../Runtime/Base/Variable/Variable.cs.meta | 11 - .../com.alicizax.unity/Runtime/Variable.meta | 3 - .../Runtime/Variable/VarBoolean.cs | 37 - .../Runtime/Variable/VarBoolean.cs.meta | 11 - .../Runtime/Variable/VarByte.cs | 37 - .../Runtime/Variable/VarByte.cs.meta | 11 - .../Runtime/Variable/VarByteArray.cs | 37 - .../Runtime/Variable/VarByteArray.cs.meta | 11 - .../Runtime/Variable/VarChar.cs | 37 - .../Runtime/Variable/VarChar.cs.meta | 11 - .../Runtime/Variable/VarCharArray.cs | 37 - .../Runtime/Variable/VarCharArray.cs.meta | 11 - .../Runtime/Variable/VarColor.cs | 38 - .../Runtime/Variable/VarColor.cs.meta | 11 - .../Runtime/Variable/VarColor32.cs | 38 - .../Runtime/Variable/VarColor32.cs.meta | 11 - .../Runtime/Variable/VarDateTime.cs | 38 - .../Runtime/Variable/VarDateTime.cs.meta | 11 - .../Runtime/Variable/VarDecimal.cs | 37 - .../Runtime/Variable/VarDecimal.cs.meta | 11 - .../Runtime/Variable/VarDouble.cs | 37 - .../Runtime/Variable/VarDouble.cs.meta | 11 - .../Runtime/Variable/VarGameObject.cs | 38 - .../Runtime/Variable/VarGameObject.cs.meta | 11 - .../Runtime/Variable/VarInt16.cs | 37 - .../Runtime/Variable/VarInt16.cs.meta | 11 - .../Runtime/Variable/VarInt32.cs | 37 - .../Runtime/Variable/VarInt32.cs.meta | 11 - .../Runtime/Variable/VarInt64.cs | 37 - .../Runtime/Variable/VarInt64.cs.meta | 11 - .../Runtime/Variable/VarMaterial.cs | 38 - .../Runtime/Variable/VarMaterial.cs.meta | 11 - .../Runtime/Variable/VarObject.cs | 17 - .../Runtime/Variable/VarObject.cs.meta | 11 - .../Runtime/Variable/VarQuaternion.cs | 38 - .../Runtime/Variable/VarQuaternion.cs.meta | 11 - .../Runtime/Variable/VarRect.cs | 38 - .../Runtime/Variable/VarRect.cs.meta | 11 - .../Runtime/Variable/VarSByte.cs | 37 - .../Runtime/Variable/VarSByte.cs.meta | 11 - .../Runtime/Variable/VarSingle.cs | 37 - .../Runtime/Variable/VarSingle.cs.meta | 11 - .../Runtime/Variable/VarString.cs | 37 - .../Runtime/Variable/VarString.cs.meta | 11 - .../Runtime/Variable/VarTexture.cs | 38 - .../Runtime/Variable/VarTexture.cs.meta | 11 - .../Runtime/Variable/VarTransform.cs | 38 - .../Runtime/Variable/VarTransform.cs.meta | 11 - .../Runtime/Variable/VarUInt16.cs | 37 - .../Runtime/Variable/VarUInt16.cs.meta | 11 - .../Runtime/Variable/VarUInt32.cs | 37 - .../Runtime/Variable/VarUInt32.cs.meta | 11 - .../Runtime/Variable/VarUInt64.cs | 37 - .../Runtime/Variable/VarUInt64.cs.meta | 11 - .../Runtime/Variable/VarUnityObject.cs | 38 - .../Runtime/Variable/VarUnityObject.cs.meta | 11 - .../Runtime/Variable/VarVector2.cs | 38 - .../Runtime/Variable/VarVector2.cs.meta | 11 - .../Runtime/Variable/VarVector3.cs | 38 - .../Runtime/Variable/VarVector3.cs.meta | 11 - .../Runtime/Variable/VarVector4.cs | 38 - .../Runtime/Variable/VarVector4.cs.meta | 11 - .../Runtime/Variable/Vec2.cs | 26 - .../Runtime/Variable/Vec2.cs.meta | 3 - Client/Packages/manifest.json | 1 - Client/Packages/packages-lock.json | 79 +- .../ProjectSettings/HybridCLRSettings.asset | 2 - Client/ProjectSettings/ProjectSettings.asset | 2 +- Client/UserSettings/EditorUserSettings.asset | 4 +- Client/UserSettings/Layouts/default-6000.dwlt | 67 +- 411 files changed, 238 insertions(+), 18766 deletions(-) delete mode 100644 .gitmodules delete mode 100644 Client/Assets/Editor/BuildDLLCommand.cs delete mode 100644 Client/Assets/Editor/BuildDLLCommand.cs.meta create mode 100644 Client/Assets/PlayerController.cs create mode 100644 Client/Assets/PlayerController.cs.meta delete mode 100644 Client/Assets/Scripts/Hotfix/GameLogic/EnemyAI.cs delete mode 100644 Client/Assets/Scripts/Hotfix/GameLogic/EnemyAI.cs.meta delete mode 100644 Client/Assets/UITestMono.cs delete mode 100644 Client/Assets/UITestMono.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.audio/Editor.meta delete mode 100644 Client/Packages/com.alicizax.unity.audio/Editor/AlicizaX.Audio.Editor.asmdef delete mode 100644 Client/Packages/com.alicizax.unity.audio/Editor/AlicizaX.Audio.Editor.asmdef.meta delete mode 100644 Client/Packages/com.alicizax.unity.audio/Editor/AudioComponentInspector.cs delete mode 100644 Client/Packages/com.alicizax.unity.audio/Editor/AudioComponentInspector.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.audio/LICENSE.md delete mode 100644 Client/Packages/com.alicizax.unity.audio/LICENSE.md.meta delete mode 100644 Client/Packages/com.alicizax.unity.audio/Runtime.meta delete mode 100644 Client/Packages/com.alicizax.unity.audio/Runtime/AlicizaX.Audio.Runtime.asmdef delete mode 100644 Client/Packages/com.alicizax.unity.audio/Runtime/AlicizaX.Audio.Runtime.asmdef.meta delete mode 100644 Client/Packages/com.alicizax.unity.audio/Runtime/Audio.meta delete mode 100644 Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioAgent.cs delete mode 100644 Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioAgent.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioAgentRuntimeState.cs delete mode 100644 Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioAgentRuntimeState.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioCategory.cs delete mode 100644 Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioCategory.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioComponent.cs delete mode 100644 Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioComponent.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioData.cs delete mode 100644 Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioData.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioGroupConfig.cs delete mode 100644 Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioGroupConfig.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioModule.cs delete mode 100644 Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioModule.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioType.cs delete mode 100644 Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioType.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.audio/Runtime/Audio/IAudioModule.cs delete mode 100644 Client/Packages/com.alicizax.unity.audio/Runtime/Audio/IAudioModule.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.audio/Runtime/Audio/Resources.meta delete mode 100644 Client/Packages/com.alicizax.unity.audio/Runtime/Audio/Resources/AudioMixer.mixer delete mode 100644 Client/Packages/com.alicizax.unity.audio/Runtime/Audio/Resources/AudioMixer.mixer.meta delete mode 100644 Client/Packages/com.alicizax.unity.audio/Runtime/link.xml delete mode 100644 Client/Packages/com.alicizax.unity.audio/Runtime/link.xml.meta delete mode 100644 Client/Packages/com.alicizax.unity.audio/package.json delete mode 100644 Client/Packages/com.alicizax.unity.audio/package.json.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Editor.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Editor/AlicizaX.Debugger.Editor.asmdef delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Editor/AlicizaX.Debugger.Editor.asmdef.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Editor/Inspector.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Editor/Inspector/DebuggerComponentInspector.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Editor/Inspector/DebuggerComponentInspector.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Editor/Res.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Editor/Res/DebuggerSkin.guiskin delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Editor/Res/DebuggerSkin.guiskin.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/LICENSE.md delete mode 100644 Client/Packages/com.alicizax.unity.debugger/LICENSE.md.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/AlicizaX.Debugger.Runtime.asmdef delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/AlicizaX.Debugger.Runtime.asmdef.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerActiveWindowType.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerActiveWindowType.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ConsoleWindow.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ConsoleWindow.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.EnvironmentInformationWindow.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.EnvironmentInformationWindow.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.FpsCounter.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.FpsCounter.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.GraphicsInformationWindow.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.GraphicsInformationWindow.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputAccelerationInformationWindow.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputAccelerationInformationWindow.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputCompassInformationWindow.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputCompassInformationWindow.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputGyroscopeInformationWindow.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputGyroscopeInformationWindow.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputLocationInformationWindow.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputLocationInformationWindow.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputSummaryInformationWindow.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputSummaryInformationWindow.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputTouchInformationWindow.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputTouchInformationWindow.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.LogNode.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.LogNode.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ObjectPoolInformationWindow.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ObjectPoolInformationWindow.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.OperationsWindow.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.OperationsWindow.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.PathInformationWindow.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.PathInformationWindow.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ProfilerInformationWindow.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ProfilerInformationWindow.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.QualityInformationWindow.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.QualityInformationWindow.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ReferencePoolInformationWindow.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ReferencePoolInformationWindow.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.RuntimeMemoryInformationWindow.Sample.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.RuntimeMemoryInformationWindow.Sample.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.RuntimeMemoryInformationWindow.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.RuntimeMemoryInformationWindow.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.RuntimeMemorySummaryWindow.Record.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.RuntimeMemorySummaryWindow.Record.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.RuntimeMemorySummaryWindow.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.RuntimeMemorySummaryWindow.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.SceneInformationWindow.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.SceneInformationWindow.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ScreenInformationWindow.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ScreenInformationWindow.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ScrollableDebuggerWindowBase.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ScrollableDebuggerWindowBase.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.SettingsWindow.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.SettingsWindow.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.SystemInformationWindow.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.SystemInformationWindow.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.TimeInformationWindow.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.TimeInformationWindow.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.WebPlayerInformationWindow.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.WebPlayerInformationWindow.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerManager.DebuggerWindowGroup.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerManager.DebuggerWindowGroup.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerModule.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerModule.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/IDebuggerModule.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/IDebuggerModule.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/IDebuggerWindow.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/IDebuggerWindow.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/IDebuggerWindowGroup.cs delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/IDebuggerWindowGroup.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/link.xml delete mode 100644 Client/Packages/com.alicizax.unity.debugger/Runtime/link.xml.meta delete mode 100644 Client/Packages/com.alicizax.unity.debugger/package.json delete mode 100644 Client/Packages/com.alicizax.unity.debugger/package.json.meta delete mode 100644 Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Event.cs delete mode 100644 Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Event.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.fsm/Editor.meta delete mode 100644 Client/Packages/com.alicizax.unity.fsm/Editor/AlicizaX.Fsm.Editor.asmdef delete mode 100644 Client/Packages/com.alicizax.unity.fsm/Editor/AlicizaX.Fsm.Editor.asmdef.meta delete mode 100644 Client/Packages/com.alicizax.unity.fsm/Editor/FsmComponentInspector.cs delete mode 100644 Client/Packages/com.alicizax.unity.fsm/Editor/FsmComponentInspector.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.fsm/LICENSE.md delete mode 100644 Client/Packages/com.alicizax.unity.fsm/LICENSE.md.meta delete mode 100644 Client/Packages/com.alicizax.unity.fsm/Runtime.meta delete mode 100644 Client/Packages/com.alicizax.unity.fsm/Runtime/AlicizaX.Fsm.Runtime.asmdef delete mode 100644 Client/Packages/com.alicizax.unity.fsm/Runtime/AlicizaX.Fsm.Runtime.asmdef.meta delete mode 100644 Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm.meta delete mode 100644 Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm/Fsm.cs delete mode 100644 Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm/Fsm.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm/FsmComponent.cs delete mode 100644 Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm/FsmComponent.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm/FsmModule.cs delete mode 100644 Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm/FsmModule.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm/IFsmModule.cs delete mode 100644 Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm/IFsmModule.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.fsm/Runtime/link.xml delete mode 100644 Client/Packages/com.alicizax.unity.fsm/Runtime/link.xml.meta delete mode 100644 Client/Packages/com.alicizax.unity.fsm/package.json delete mode 100644 Client/Packages/com.alicizax.unity.fsm/package.json.meta delete mode 100644 Client/Packages/com.alicizax.unity.localization/Editor.meta delete mode 100644 Client/Packages/com.alicizax.unity.localization/Editor/AlicizaX.Localization.Editor.asmdef delete mode 100644 Client/Packages/com.alicizax.unity.localization/Editor/AlicizaX.Localization.Editor.asmdef.meta delete mode 100644 Client/Packages/com.alicizax.unity.localization/Editor/LocalizationEditor.cs delete mode 100644 Client/Packages/com.alicizax.unity.localization/Editor/LocalizationEditor.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.localization/LICENSE.md delete mode 100644 Client/Packages/com.alicizax.unity.localization/LICENSE.md.meta delete mode 100644 Client/Packages/com.alicizax.unity.localization/Runtime.meta delete mode 100644 Client/Packages/com.alicizax.unity.localization/Runtime/AlicizaX.Localization.Runtime.asmdef delete mode 100644 Client/Packages/com.alicizax.unity.localization/Runtime/AlicizaX.Localization.Runtime.asmdef.meta delete mode 100644 Client/Packages/com.alicizax.unity.localization/Runtime/Localization.meta delete mode 100644 Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Event.meta delete mode 100644 Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Event/LocalizationChangeEvent.cs delete mode 100644 Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Event/LocalizationChangeEvent.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.localization/Runtime/Localization/LocalizationComponent.cs delete mode 100644 Client/Packages/com.alicizax.unity.localization/Runtime/Localization/LocalizationComponent.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Manager.meta delete mode 100644 Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Manager/ILocalizationModule.cs delete mode 100644 Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Manager/ILocalizationModule.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Manager/LocalizationModule.cs delete mode 100644 Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Manager/LocalizationModule.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.localization/Runtime/link.xml delete mode 100644 Client/Packages/com.alicizax.unity.localization/Runtime/link.xml.meta delete mode 100644 Client/Packages/com.alicizax.unity.localization/package.json delete mode 100644 Client/Packages/com.alicizax.unity.localization/package.json.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Editor.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Editor/AlicizaX.Resource.Editor.asmdef delete mode 100644 Client/Packages/com.alicizax.unity.resource/Editor/AlicizaX.Resource.Editor.asmdef.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Editor/Encryption.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Editor/Encryption/DefaultEncryption.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Editor/Encryption/DefaultEncryption.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Editor/Inspector.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Editor/Inspector/ResourceComponentInspector.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Editor/Inspector/ResourceComponentInspector.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Editor/Inspector/ResourceExtComponentInspector.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Editor/Inspector/ResourceExtComponentInspector.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/LICENSE.md delete mode 100644 Client/Packages/com.alicizax.unity.resource/LICENSE.md.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/AlicizaX.Resource.Runtime.asmdef delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/AlicizaX.Resource.Runtime.asmdef.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/EventArgs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/EventArgs/AssetDownloadProgressUpdateEventArgs.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/EventArgs/AssetDownloadProgressUpdateEventArgs.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadAssetCallbacks.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadAssetCallbacks.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadAssetFailureCallback.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadAssetFailureCallback.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadAssetSuccessCallback.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadAssetSuccessCallback.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadAssetUpdateCallback.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadAssetUpdateCallback.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadResourceStatus.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadResourceStatus.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadSceneCallbacks.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadSceneCallbacks.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadSceneFailureCallback.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadSceneFailureCallback.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadSceneSuccessCallback.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadSceneSuccessCallback.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadSceneUpdateCallback.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadSceneUpdateCallback.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/UnloadSceneCallbacks.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/UnloadSceneCallbacks.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/UnloadSceneFailureCallback.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/UnloadSceneFailureCallback.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/UnloadSceneSuccessCallback.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/UnloadSceneSuccessCallback.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/AssetItemObject.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/AssetItemObject.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/ISetAssetObject.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/ISetAssetObject.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/Implement.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/Implement/SetSpriteExtensions.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/Implement/SetSpriteExtensions.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/Implement/SetSpriteObject.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/Implement/SetSpriteObject.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/LoadAssetObject.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/LoadAssetObject.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/ResourceExtComponent.Resource.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/ResourceExtComponent.Resource.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/ResourceExtComponent.SubSprite.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/ResourceExtComponent.SubSprite.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/ResourceExtComponent.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/ResourceExtComponent.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/HasAssetResult.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/HasAssetResult.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/IResourceModule.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/IResourceModule.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ReadWritePathType.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ReadWritePathType.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Reference.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Reference/AssetsReference.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Reference/AssetsReference.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Reference/AssetsSetHelper.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Reference/AssetsSetHelper.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceComponent.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceComponent.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceLogger.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceLogger.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.AssetObject.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.AssetObject.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.Initialization.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.Initialization.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.Pool.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.Pool.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.Services.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.Services.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.cs delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/link.xml delete mode 100644 Client/Packages/com.alicizax.unity.resource/Runtime/link.xml.meta delete mode 100644 Client/Packages/com.alicizax.unity.resource/package.json delete mode 100644 Client/Packages/com.alicizax.unity.resource/package.json.meta delete mode 100644 Client/Packages/com.alicizax.unity.scene/LICENSE.md delete mode 100644 Client/Packages/com.alicizax.unity.scene/LICENSE.md.meta delete mode 100644 Client/Packages/com.alicizax.unity.scene/Runtime.meta delete mode 100644 Client/Packages/com.alicizax.unity.scene/Runtime/AlicizaX.Scene.Runtime.asmdef delete mode 100644 Client/Packages/com.alicizax.unity.scene/Runtime/AlicizaX.Scene.Runtime.asmdef.meta delete mode 100644 Client/Packages/com.alicizax.unity.scene/Runtime/Scene.meta delete mode 100644 Client/Packages/com.alicizax.unity.scene/Runtime/Scene/ISceneModule.cs delete mode 100644 Client/Packages/com.alicizax.unity.scene/Runtime/Scene/ISceneModule.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.scene/Runtime/Scene/SceneComponent.cs delete mode 100644 Client/Packages/com.alicizax.unity.scene/Runtime/Scene/SceneComponent.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.scene/Runtime/Scene/SceneModule.cs delete mode 100644 Client/Packages/com.alicizax.unity.scene/Runtime/Scene/SceneModule.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.scene/Runtime/link.xml delete mode 100644 Client/Packages/com.alicizax.unity.scene/Runtime/link.xml.meta delete mode 100644 Client/Packages/com.alicizax.unity.scene/package.json delete mode 100644 Client/Packages/com.alicizax.unity.scene/package.json.meta delete mode 100644 Client/Packages/com.alicizax.unity.timer/LICENSE.md delete mode 100644 Client/Packages/com.alicizax.unity.timer/LICENSE.md.meta delete mode 100644 Client/Packages/com.alicizax.unity.timer/Runtime.meta delete mode 100644 Client/Packages/com.alicizax.unity.timer/Runtime/AlicizaX.Timer.Runtime.asmdef delete mode 100644 Client/Packages/com.alicizax.unity.timer/Runtime/AlicizaX.Timer.Runtime.asmdef.meta delete mode 100644 Client/Packages/com.alicizax.unity.timer/Runtime/Timer.meta delete mode 100644 Client/Packages/com.alicizax.unity.timer/Runtime/Timer/ITimerModule.cs delete mode 100644 Client/Packages/com.alicizax.unity.timer/Runtime/Timer/ITimerModule.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.timer/Runtime/Timer/TimerComponent.cs delete mode 100644 Client/Packages/com.alicizax.unity.timer/Runtime/Timer/TimerComponent.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.timer/Runtime/Timer/TimerModule.cs delete mode 100644 Client/Packages/com.alicizax.unity.timer/Runtime/Timer/TimerModule.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity.timer/Runtime/link.xml delete mode 100644 Client/Packages/com.alicizax.unity.timer/Runtime/link.xml.meta delete mode 100644 Client/Packages/com.alicizax.unity.timer/package.json delete mode 100644 Client/Packages/com.alicizax.unity.timer/package.json.meta delete mode 160000 Client/Packages/com.alicizax.unity.ui delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Base/Variable.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Base/Variable/GenericVariable.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Base/Variable/GenericVariable.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Base/Variable/Variable.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Base/Variable/Variable.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarBoolean.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarBoolean.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarByte.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarByte.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarByteArray.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarByteArray.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarChar.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarChar.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarCharArray.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarCharArray.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarColor.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarColor.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarColor32.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarColor32.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarDateTime.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarDateTime.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarDecimal.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarDecimal.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarDouble.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarDouble.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarGameObject.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarGameObject.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarInt16.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarInt16.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarInt32.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarInt32.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarInt64.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarInt64.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarMaterial.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarMaterial.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarObject.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarObject.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarQuaternion.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarQuaternion.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarRect.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarRect.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarSByte.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarSByte.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarSingle.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarSingle.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarString.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarString.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarTexture.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarTexture.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarTransform.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarTransform.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarUInt16.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarUInt16.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarUInt32.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarUInt32.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarUInt64.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarUInt64.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarUnityObject.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarUnityObject.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarVector2.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarVector2.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarVector3.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarVector3.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarVector4.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/VarVector4.cs.meta delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/Vec2.cs delete mode 100644 Client/Packages/com.alicizax.unity/Runtime/Variable/Vec2.cs.meta diff --git a/.gitmodules b/.gitmodules deleted file mode 100644 index 58cbb7b..0000000 --- a/.gitmodules +++ /dev/null @@ -1,3 +0,0 @@ -[submodule "Client/Packages/com.alicizax.unity.ui.extension"] - path = Client/Packages/com.alicizax.unity.ui.extension - url = http://101.34.252.46:3000/AlicizaX/com.alicizax.unity.ui.extension.git diff --git a/Client/Assets/Editor/BuildDLLCommand.cs b/Client/Assets/Editor/BuildDLLCommand.cs deleted file mode 100644 index da83646..0000000 --- a/Client/Assets/Editor/BuildDLLCommand.cs +++ /dev/null @@ -1,107 +0,0 @@ -#if ENABLE_HYBRIDCLR -using HybridCLR.Editor; -using HybridCLR.Editor.Commands; -#endif -using AlicizaX.Editor; -using UnityEditor; -using UnityEngine; - -[InitializeOnLoad] -public static class BuildDLLCommand -{ - private const string EnableHybridClrScriptingDefineSymbol = "ENABLE_HYBRIDCLR"; - public const string AssemblyTextAssetPath = "Bundles/DLL"; - - - /// - /// 禁用HybridCLR宏定义。 - /// - [MenuItem("HybridCLR/Tools/Define Symbols/Disable HybridCLR", false, 30)] - public static void Disable() - { - ScriptingDefineSymbols.RemoveScriptingDefineSymbol(EnableHybridClrScriptingDefineSymbol); - HybridCLR.Editor.SettingsUtil.Enable = false; - } - - /// - /// 开启HybridCLR宏定义。 - /// - [MenuItem("HybridCLR/Tools/Define Symbols/Enable HybridCLR", false, 31)] - public static void Enable() - { - ScriptingDefineSymbols.RemoveScriptingDefineSymbol(EnableHybridClrScriptingDefineSymbol); - ScriptingDefineSymbols.AddScriptingDefineSymbol(EnableHybridClrScriptingDefineSymbol); - HybridCLR.Editor.SettingsUtil.Enable = true; - } - -#if ENABLE_HYBRIDCLR - [MenuItem("HybridCLR/Tools/BuildAssets And CopyTo AssemblyTextAssetPath")] - public static void BuildAndCopyDlls() - { - BuildTarget target = EditorUserBuildSettings.activeBuildTarget; - CompileDllCommand.CompileDll(target); - CopyAOTHotUpdateDlls(target); - } -#endif - - public static void GenerateHybridCLRSome() - { - PrebuildCommand.GenerateAll(); - } - - public static void BuildAndCopyDlls(BuildTarget target) - { -#if ENABLE_HYBRIDCLR - CompileDllCommand.CompileDll(target); - CopyAOTHotUpdateDlls(target); -#endif - } - - public static void CopyAOTHotUpdateDlls(BuildTarget target) - { - CopyAOTAssembliesToAssetPath(); - CopyHotUpdateAssembliesToAssetPath(); - AssetDatabase.Refresh(); - } - - public static void CopyAOTAssembliesToAssetPath() - { -#if ENABLE_HYBRIDCLR - var target = EditorUserBuildSettings.activeBuildTarget; - string aotAssembliesSrcDir = SettingsUtil.GetAssembliesPostIl2CppStripDir(target); - string aotAssembliesDstDir = Application.dataPath + "/" + AssemblyTextAssetPath; - - foreach (var dll in AOTGenericReferences.PatchedAOTAssemblyList) - { - string srcDllPath = $"{aotAssembliesSrcDir}/{dll}"; - if (!System.IO.File.Exists(srcDllPath)) - { - Debug.LogError( - $"ab中添加AOT补充元数据dll:{srcDllPath} 时发生错误,文件不存在。裁剪后的AOT dll在BuildPlayer时才能生成,因此需要你先构建一次游戏App后再打包。"); - continue; - } - - string dllBytesPath = $"{aotAssembliesDstDir}/{dll}.bytes"; - System.IO.File.Copy(srcDllPath, dllBytesPath, true); - Debug.Log($"[CopyAOTAssembliesToStreamingAssets] copy AOT dll {srcDllPath} -> {dllBytesPath}"); - } -#endif - } - - public static void CopyHotUpdateAssembliesToAssetPath() - { -#if ENABLE_HYBRIDCLR - var target = EditorUserBuildSettings.activeBuildTarget; - - string hotfixDllSrcDir = SettingsUtil.GetHotUpdateDllsOutputDirByTarget(target); - string hotfixAssembliesDstDir = Application.dataPath + "/" + AssemblyTextAssetPath; - foreach (var dll in SettingsUtil.HotUpdateAssemblyFilesExcludePreserved) - { - string dllPath = $"{hotfixDllSrcDir}/{dll}"; - string dllBytesPath = $"{hotfixAssembliesDstDir}/{dll}.bytes"; - System.IO.File.Copy(dllPath, dllBytesPath, true); - Debug.Log($"[CopyHotUpdateAssembliesToStreamingAssets] copy hotfix dll {dllPath} -> {dllBytesPath}"); - } -#endif - } -} diff --git a/Client/Assets/Editor/BuildDLLCommand.cs.meta b/Client/Assets/Editor/BuildDLLCommand.cs.meta deleted file mode 100644 index 5a82fd4..0000000 --- a/Client/Assets/Editor/BuildDLLCommand.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 0761954ba63648b8b73f8ebb736bb9eb -timeCreated: 1737524294 \ No newline at end of file diff --git a/Client/Assets/PlayerController.cs b/Client/Assets/PlayerController.cs new file mode 100644 index 0000000..ad5591e --- /dev/null +++ b/Client/Assets/PlayerController.cs @@ -0,0 +1,142 @@ +using System; +using System.Collections.Generic; +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Threading; +using AlicizaX; +using AlicizaX.Fsm; +using UnityEngine; + + +public enum PlayerState +{ + Idle, + Move, + Jump, + Dead +} + +public sealed class PlayerBlackBoard : IMemory +{ + public float Hp; + public bool Grounded; + public Vector3 Pos; + public Vector3 Vel; + + public void Clear() + { + Hp = 100f; + Grounded = true; + Pos = Vector3.zero; + Vel = Vector3.zero; + } +} + +public static class PlayerFSM +{ + public static readonly StateFunc[] Funcs; + public static readonly Transition[] Trans; + + static PlayerFSM() + { + Funcs = new StateFunc[3]; + + Funcs[(int)PlayerState.Idle] = StateFunc.Make( + (PlayerBlackBoard b) => { }, + (PlayerBlackBoard b) => + { + var h = Input.GetAxisRaw("Horizontal"); + var v = Input.GetAxisRaw("Vertical"); + if (h != 0 || v != 0) return (int)PlayerState.Move; + if (Input.GetKeyDown(KeyCode.Space) && b.Grounded) return (int)PlayerState.Jump; + return -1; + }, + (PlayerBlackBoard b) => { } + ); + + Funcs[(int)PlayerState.Move] = StateFunc.Make( + (PlayerBlackBoard b) => { }, + (PlayerBlackBoard b) => + { + var move = new Vector3(Input.GetAxisRaw("Horizontal"), 0, Input.GetAxisRaw("Vertical")); + if (move.sqrMagnitude < 0.001f) return (int)PlayerState.Idle; + b.Pos += move.normalized * 5f * Time.deltaTime; + if (Input.GetKeyDown(KeyCode.Space) && b.Grounded) return (int)PlayerState.Jump; + return -1; + }, + (PlayerBlackBoard b) => { } + ); + + Funcs[(int)PlayerState.Jump] = StateFunc.Make( + (PlayerBlackBoard b) => + { + b.Grounded = false; + b.Vel = Vector3.up * 5f; + }, + (PlayerBlackBoard b) => + { + b.Vel += Physics.gravity * Time.deltaTime; + b.Pos += b.Vel * Time.deltaTime; + if (b.Pos.y <= 0f) + { + b.Pos = new Vector3(b.Pos.x, 0f, b.Pos.z); + b.Grounded = true; + return (int)PlayerState.Idle; + } + + return -1; + }, + (PlayerBlackBoard b) => { } + ); + + Trans = new Transition[] + { + new Transition((int)PlayerState.Idle, (int)PlayerState.Dead, (PlayerBlackBoard b) => b.Hp <= 0f, priority: -10), + new Transition((int)PlayerState.Move, (int)PlayerState.Dead, (PlayerBlackBoard b) => b.Hp <= 0f, priority: -10), + new Transition((int)PlayerState.Jump, (int)PlayerState.Dead, (PlayerBlackBoard b) => b.Hp <= 0f, priority: -10), + }; + } + + public static FsmConfig CreateConfig(PlayerState defaultState = PlayerState.Idle) + { + return new FsmConfig(Funcs, Trans, (int)defaultState); + } +} + +public class PlayerController : MonoBehaviour +{ + private Fsm _fsm; + + void Awake() + { + // Use pooled blackboard and manager-created FSM (auto debug bind in Editor) + var cfg = PlayerFSM.CreateConfig(); + _fsm = GameApp.Fsm.Create(cfg, owner: this, stateNameGetter: i => ((PlayerState)i).ToString()); + _fsm.Blackboard.Clear(); // ensure default values on start + } + + void Update() + { + if (Input.GetKeyDown(KeyCode.H)) + { + _fsm.Blackboard.Hp -= 50f; + Debug.Log("HP: " + _fsm.Blackboard.Hp); + } + + if (Input.GetKeyDown(KeyCode.P)) + { + _fsm.Blackboard.Hp = 100f; + _fsm.Reset((int)PlayerState.Idle); + Debug.Log("Revived"); + } + + transform.position = _fsm.Blackboard.Pos; + } + + void OnDestroy() + { + // Return both FSM and BB to their pools via manager helper + GameApp.Fsm.DestroyFsm(_fsm); + _fsm = null; + } +} diff --git a/Client/Assets/PlayerController.cs.meta b/Client/Assets/PlayerController.cs.meta new file mode 100644 index 0000000..7978e86 --- /dev/null +++ b/Client/Assets/PlayerController.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 467f04e0978c41baa315c54cbf52a295 +timeCreated: 1756969075 \ No newline at end of file diff --git a/Client/Assets/Scripts/Hotfix/GameLogic/EnemyAI.cs b/Client/Assets/Scripts/Hotfix/GameLogic/EnemyAI.cs deleted file mode 100644 index 205976f..0000000 --- a/Client/Assets/Scripts/Hotfix/GameLogic/EnemyAI.cs +++ /dev/null @@ -1,90 +0,0 @@ -// 状态定义 - -using System; -using AlicizaX; -using AlicizaX.Fsm.Runtime; -using UnityEditor; -using UnityEngine; -using UnityEngine.Profiling; - -public class NavigationState : StateBase -{ - protected override void OnInit() - { - Debug.Log("Nav1初始化"); - } - - protected override void OnEnter() - { - Debug.Log("Nav1进入"); - } - - protected override void OnExit() - { - Debug.Log("Nav1退出"); - } - - protected override void OnUpdate(float deltaTime) - { - if (Input.GetKeyDown(KeyCode.A)) - { - SwitchState(EnemyAI.EnemyAIState.Navi2); - } - } -} - - -public class NavigationState2 : StateBase -{ - protected override void OnInit() - { - Debug.Log("Nav2初始化"); - } - - protected override void OnEnter() - { - Debug.Log("Nav2进入"); - } - - protected override void OnExit() - { - Debug.Log("Nav2退出"); - } - - protected override void OnUpdate(float deltaTime) - { - if (Input.GetKeyDown(KeyCode.D)) - { - SwitchState(EnemyAI.EnemyAIState.Navi); - } - } -} - - -public class EnemyAI : MonoBehaviour -{ - public enum EnemyAIState - { - Navi, - Navi2 - } - - private void Start() - { - // Profiler.BeginSample("FSM"); - // - // var fsm = GameApp.Fsm.Create("EnemyAI"); - // fsm.Register(EnemyAIState.Navi); - // fsm.SwitchState(0); - // GameApp.Fsm.Destroy(fsm); - // - // Profiler.EndSample(); - - Profiler.BeginSample("FSM2"); - var fsm2 = GameApp.Fsm.Create("EnemyAI2"); - fsm2.Register(EnemyAIState.Navi); - fsm2.Register(EnemyAIState.Navi2); - fsm2.SwitchState(0); - Profiler.EndSample(); - } -} diff --git a/Client/Assets/Scripts/Hotfix/GameLogic/EnemyAI.cs.meta b/Client/Assets/Scripts/Hotfix/GameLogic/EnemyAI.cs.meta deleted file mode 100644 index c130d92..0000000 --- a/Client/Assets/Scripts/Hotfix/GameLogic/EnemyAI.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: c707b7c451a649d7b20c79c895cad26b -timeCreated: 1745549059 \ No newline at end of file diff --git a/Client/Assets/Scripts/Hotfix/GameLogic/GameLogic.asmdef b/Client/Assets/Scripts/Hotfix/GameLogic/GameLogic.asmdef index e377981..ecb58ab 100644 --- a/Client/Assets/Scripts/Hotfix/GameLogic/GameLogic.asmdef +++ b/Client/Assets/Scripts/Hotfix/GameLogic/GameLogic.asmdef @@ -9,8 +9,6 @@ "GUID:5553d74549d54e74cb548b3ab58a8483", "GUID:000cc1eaf688c5246be5328cb0cf16c8", "GUID:be2f20a77f3232f44b9711ef43234aac", - "GUID:4041d17782e62754ba8777fe2dfb6b27", - "GUID:2393d135922de5c4ab12e74f1e397920", "GUID:e9c35c8938f782649bb7e670099ca425", "GUID:f51ebe6a0ceec4240a699833d6309b23", "GUID:425703724086804498a0f4888e7e2e6d", @@ -19,7 +17,8 @@ "GUID:760f1778adc613f49a4394fb41ff0bbc", "GUID:f318a940a77af754eb1172da9dc1b400", "GUID:198eb6af143bbc4488e2779d96697e06", - "GUID:75469ad4d38634e559750d17036d5f7c" + "GUID:75469ad4d38634e559750d17036d5f7c", + "GUID:1619e00706139ce488ff80c0daeea8e7" ], "includePlatforms": [], "excludePlatforms": [], diff --git a/Client/Assets/Scripts/Hotfix/GameLogic/TestWindow/UIHomeWindow.cs b/Client/Assets/Scripts/Hotfix/GameLogic/TestWindow/UIHomeWindow.cs index 6df9c1d..4d454fe 100644 --- a/Client/Assets/Scripts/Hotfix/GameLogic/TestWindow/UIHomeWindow.cs +++ b/Client/Assets/Scripts/Hotfix/GameLogic/TestWindow/UIHomeWindow.cs @@ -3,7 +3,6 @@ using AlicizaX.UI.Runtime; using GameLogic.Event.Generated; using GameLogic.UI; using UnityEngine; -using AudioType = AlicizaX.Audio.Runtime.AudioType; namespace Hotfix.GameLogic.TestWindow { @@ -23,6 +22,7 @@ namespace Hotfix.GameLogic.TestWindow baseui.ImgBackGround.color = Color.gray; baseui.Btntest.onClick.AddListener(OnTestClick); baseui.Btntest.BindHotKey(); + Utility.Text.Format("1{}", 0); } diff --git a/Client/Assets/Scripts/Startup/Framework/LauncherUIHandler.cs b/Client/Assets/Scripts/Startup/Framework/LauncherUIHandler.cs index 0a8de72..d46325e 100644 --- a/Client/Assets/Scripts/Startup/Framework/LauncherUIHandler.cs +++ b/Client/Assets/Scripts/Startup/Framework/LauncherUIHandler.cs @@ -4,8 +4,8 @@ using System.Collections.Generic; using AlicizaX.Resource.Runtime; using AlicizaX.Localization.Runtime; using AlicizaX; +using AlicizaX.Framework.Runtime.Event.Generated; using Cysharp.Threading.Tasks; -using AlicizaX.Resource.Runtime.Event.Generated; using UnityEngine; diff --git a/Client/Assets/Scripts/Startup/Framework/Procedure/PatchUpdater/ProcedureDownloadWebFiles.cs b/Client/Assets/Scripts/Startup/Framework/Procedure/PatchUpdater/ProcedureDownloadWebFiles.cs index 6b1639f..8ed4752 100644 --- a/Client/Assets/Scripts/Startup/Framework/Procedure/PatchUpdater/ProcedureDownloadWebFiles.cs +++ b/Client/Assets/Scripts/Startup/Framework/Procedure/PatchUpdater/ProcedureDownloadWebFiles.cs @@ -2,7 +2,7 @@ using Cysharp.Threading.Tasks; using AlicizaX.Resource.Runtime; using AlicizaX; -using AlicizaX.Resource.Runtime.Event.Generated; +using AlicizaX.Framework.Runtime.Event.Generated; using UnityEngine; using YooAsset; diff --git a/Client/Assets/Scripts/Startup/Framework/Procedure/Procedure.cs b/Client/Assets/Scripts/Startup/Framework/Procedure/Procedure.cs index ab836fe..8f4f409 100644 --- a/Client/Assets/Scripts/Startup/Framework/Procedure/Procedure.cs +++ b/Client/Assets/Scripts/Startup/Framework/Procedure/Procedure.cs @@ -22,29 +22,34 @@ namespace Unity.Startup.Procedure public class Procedure : MonoBehaviour { - private UltraFSM _fsm; + private SimpleFSM _fsm; private void Start() { - _fsm = GameApp.Fsm.Create("Procedure"); - _fsm.Register(UpdateProcedureState.ProcedureStart, false); - _fsm.Register(UpdateProcedureState.ProcedureGetGlobalInfoState, false); - _fsm.Register(UpdateProcedureState.ProcedureGetAppVersionInfoState, false); - _fsm.Register(UpdateProcedureState.ProcedureUpdateStaticVersion, false); - _fsm.Register(UpdateProcedureState.ProcedureUpdateManifest, false); - _fsm.Register(UpdateProcedureState.ProcedurePatchInit, false); - _fsm.Register(UpdateProcedureState.ProcedureCreateDownloader, false); - _fsm.Register(UpdateProcedureState.ProcedureDownloadWebFiles, false); - _fsm.Register(UpdateProcedureState.ProcedurePatchDone, false); - _fsm.Register(UpdateProcedureState.ProcedureClearCache, false); - _fsm.Register(UpdateProcedureState.ProcedureLoadAssembly, false); - _fsm.Register(UpdateProcedureState.ProcedureGameLauncherState, false); + _fsm = new SimpleFSM(); + _fsm.Register(UpdateProcedureState.ProcedureStart); + _fsm.Register(UpdateProcedureState.ProcedureGetGlobalInfoState); + _fsm.Register(UpdateProcedureState.ProcedureGetAppVersionInfoState); + _fsm.Register(UpdateProcedureState.ProcedureUpdateStaticVersion); + _fsm.Register(UpdateProcedureState.ProcedureUpdateManifest); + _fsm.Register(UpdateProcedureState.ProcedurePatchInit); + _fsm.Register(UpdateProcedureState.ProcedureCreateDownloader); + _fsm.Register(UpdateProcedureState.ProcedureDownloadWebFiles); + _fsm.Register(UpdateProcedureState.ProcedurePatchDone); + _fsm.Register(UpdateProcedureState.ProcedureClearCache); + _fsm.Register(UpdateProcedureState.ProcedureLoadAssembly); + _fsm.Register(UpdateProcedureState.ProcedureGameLauncherState); _fsm.SwitchState(UpdateProcedureState.ProcedureStart); } + private void Update() + { + _fsm.Update(Time.deltaTime); + } + private void OnDestroy() { - GameApp.Fsm.Destroy(_fsm); + _fsm.Dispose(); _fsm = null; } } diff --git a/Client/Assets/Scripts/Startup/Unity.Startup.asmdef b/Client/Assets/Scripts/Startup/Unity.Startup.asmdef index 7a347e7..1ce8b59 100644 --- a/Client/Assets/Scripts/Startup/Unity.Startup.asmdef +++ b/Client/Assets/Scripts/Startup/Unity.Startup.asmdef @@ -17,7 +17,8 @@ "Unity.TextMeshPro", "AlicizaX.UI.Runtime", "AlicizaX.Localization.Runtime", - "ZString" + "ZString", + "AlicizaX.Framework.Runtime" ], "includePlatforms": [], "excludePlatforms": [], diff --git a/Client/Assets/Test/GameBase.dll.bytes b/Client/Assets/Test/GameBase.dll.bytes index c66263d7e1f3cb2d05b3d3454101b83a11850f8d..cc21ee26d8e95d7b932e74198b548216758a6fd1 100644 GIT binary patch delta 590 zcmZqBXwaC@!NUE_^x(uE8OC)JSB5jjOlD+MXRXj=U3o_YDDlutrF)(m3fFy+tSQsLKG$R9pAj9MoreI-iZ3cENxDuc$ zE{4sAnYJ=!-eNFj^kulmz{ViQ_y|affXOM$&w%VsF!_}EB}0G$&@_fN2~%b^prJ7! z9^*uYi_C9;yn`SfT<#Q@H<4jC(?_7(Sp;wLLl);)O$K!aZ3Z<)JqB)uuMBz&!VLd_ zq%?ypV={v=P&}Eznn4>#Iy0CsHZXVtMHYa`!(dqspqs3Krt$&p;{ejeK$??5iD3uO z&x{NoCO5LGiyAUm1AWcFzyczmz;N?kR$~@{+xh8IvbI&8OGVcgux0%?KZ#3;m5rTA zP-e0!*H0#P#>ooYeuhsra<61y^bKGF>dge=Gr$-)!woYD9Hc;3GXVX;z+eir*L3ni zZe@WkIrj6`_JQ7$Px4$98>x$~aw=Tj}9XoP}!AhyCpMKQ(+lgoHCx&Es%C@=_sBsZ_% X31i&M$M=hwX@k{fL814I6Ajn_zY2WJ delta 561 zcmZqBXwaC@!BVcqcW7dd4CA7SE5jLmCo?jtv*u_rFoaB2WYU=&$*9isfopOTW1V25 z76TY~07)hWR)!;!1)1zcx4W-wxGVDJWtEC7>-!Ll4cH(3Bpyi zs?T5z^eqDe3y6RM{mmy?jadYgOYdA+&~)2>0rNM>jI&+4C-ZPAF|)8UPB!NH$;8Ak zS&!RKoPpt->6Q)#M&AG?pyo6nJ^&2%1Cu9mi?gZ$tx=o2mRnh1{-$gG$_sXSt&4oI z=%RD`^T`jm9lZ5Y64PVc6LV9Y5{pyy3R037f;}9KOwAaess)06e$d&cYe7ZBV zb@#?**HUO4f?V4VVk=Bk6k}|h+{&ZL3FQ4(Wl&%c*t~-$jB&C9qrhf9zF*8tORP2v L3cY8XXuu8t`DcQ@ diff --git a/Client/Assets/Test/GameBase.pdb.bytes b/Client/Assets/Test/GameBase.pdb.bytes index 692f465106f3796b0fc55c8ea097baf7afab52a9..56f9ccf7f5f3bc5cf0bf313d18e0fbf674243f26 100644 GIT binary patch delta 526 zcmbQUl5xvQ#t9}dPZ$^&lBT@M!ycGeXfVS8AiDu1?;h&u z0;C<77#K=|fPAN%{3Ia1OOE}#wSA!Xi z0m2Rp91K!HlV>n0P2R&;Ah04RzVztCeXd(}C`>JU8nkz_4%0I>#>~mWoU=9`;@sl8 zStCG@d2*S5?qthgv&ml_6(%zWs7}rgHmwf}IeCX+0Ruyi@BPdRg>8=0ZGyamdh~z0 zC+4OG6y=xX>lLM@>80f409}*MBlr}g_DJcBx#bI6eA_j{LW;sS-U!XhEU9!&$t=k) z(hK!O(qOYt>o>y#28PEAR|;Pi-0!?0Mys-T^^Khn4SDIAc^;{#I=F5=S;hbiEhPs# zu}_otJ5E$T`tSP26FX8niI delta 499 zcmdn8l5x&T#t9}d4;UC2lBT@M!w#5OXfVSbAiDr0?;h&u z0;F}AfczjJ-zg_Q3CN$n>6*Xtf}LLLB3~@J=-mGNoavU1i4$@d*(UzgjFbZ^WME)s zPz_>X2nu3iU}9hdLJ$Z6VipEAI3Fa+%D{!f2dM*zGcvdbF#~CkGg-m>)XDXX;!LT+ zljkuiP2R^?wAq2_85?8WWOdG2BKZX+nYo!&i6xo&c??CVIjM=oshbaQZgrjPXevB; zW>C~*&0yEfrT&7oGO4SDIAd8VnTIkx}kDZN?fsI9rmkksI0-TexLKIYV7!NQ68G}UxIk^!=rgDKKBEhl%M)r-7 diff --git a/Client/Assets/Test/GameLib.dll.bytes b/Client/Assets/Test/GameLib.dll.bytes index 6cdb2a7029df9abebedb4ed65cd6127147bd49ca..d6940b293e22521abac6e2974ae7f4137bf81102 100644 GIT binary patch delta 541 zcmZqBXwaC@!Lm&A!GeiBGK{Mxt_)`kpUlXp&RU|$zz{N7kx6HAB%?axkI9XU^@816 z3}D~^B$*gk87@o~WU`l3V$$GZVBlf^NeUaVFhl}rMg|5!hRG>R!NT0y4D4EPB|ueN z44V%#ZDq{7#bC^Mnc*G-8-pC@?M21~VAAxdb5xmI{S)5}v8PplH8Ppi{7`Pd}GUzb~GyDUR z(hRbU$qdFo@ni;T25lhe%wWRUz~BuOSpX&vgJn5@Zn6TJ$_uoQ14tVJX-)rB4>%kuZWvMt_7#f(%r3d#7l-k<;hOtDgP!pcsOJ nnIN{pL`5;i?#YEbnww|xq%v;iAFoaB2WYU=&$*9iwVsay6y&ne0X6m^8Q;7`U{A4OkdLfHI5>41$w0nSyz=U@~l4Y@5$BZDq{7 z!C=gInc)rt8-pC<10X2^CMPjJ0kYe{lJ4q7C(NQJb8sm!v#>Kx*5~@k#KbUJ zi`!3}fuT`h!e<6X-vB0{=2Rfw0}S;&lY69{qOBvU_a%CsC zf86zD@*Qr6$?`lBMoBT@M!ycGeXfVS8AiDu1?;h&u z0;C<77#L)NfPAN%{3IZM(zo3od7n0UZ(ONtUbFV*ofHYZyAvnmFtShls~Nd55U7HI znc-L<3&W2OiU)8Qumm18I;mS;2gP$@Prl z9Dc$M3>*xH0w>R4RGPepu|Qx&P<-jpiThl)>`<6m_%vwmW*w#{Y>b(c1vzJJKES!f zb+cN4AoJuB|J=#u!Df>m`nyif4YrZ6S*Z1!;Q<4~-VmczS-kqj&dCRZ zB`vvbK3T>9bhna&o!FWBVQ#mgBT+>$Z`Cf sKtD1uObSuZy2N;ZA@C+xQ~)B%9h#R}Qt6tPo|%`*1(Xe90V`nu0B0Rz*Z=?k delta 408 zcmcb!g7L@-#t9}d4;UC2lBT@M!w#5OXfVSbAiDr0?;h&u z0;F}A7#JjifPAN%{3Ia%o>Yg+zn3zud*#YbZvVLJOQXVs&l4x)FtSbjs~LGL5U7HI znc-|83&XEKCI%)3Mj!-%5Fln@V1x5PqO1&DD14AQkT@g5`#@$O4RR(cn9n=8o>81B zS$Oh1My1L77>hPLFg;;otedRLIZGtJpd>RlvnsJ9Ge3`^C^aWFu{d?}KF+PKlUssv zC#wg$ZZ7s0WS;yn$ZT>>u#Lp_r#r7PJYZm$XXxf7v?$+u{jsgjcKF>|GWkHTWY+Z? zqB9tPu5P>iqePktcIBqGz)L zMqc_HD+4N?Yyve_K14QQh-~5zSp~~Na2URmfdoZvON(l(5+YX#>F80YOo4z1*^rdS zkj6=|lq2An3{sAM>9S_h*%-1N&JMt836s9p02RZAYETG9kZZ|Ckl&LBnt_6pBgsLca^9wQ#@U(n}-Bgnqe~R>m;NUEM4cQG?Sw#vySB z6|+Wk3XrFS95M<+3}&Vq{BXb^3$39Uu*bY_u@@#I&BK!e2E(T@$h>bc7=ied9%pYz z_LzmII%qI+s6jzkB(U}%gzb}1If|vBB#P{IA&^+I&POQ#3q=$`$6%vS zFAJ#835Ec21_wypf+?H3dLEWim!8?Ly6vTz7@ut9pB9^j5zu1|Tv3_;hAkM-s2K*Z zGz5^U{b8)CB1rkqq3N3!z*5lxq^lNfgnBnpMuY6mK^ca?k|A9n8|mrBxN;%fjqyhz z(tRGcue(dg&aTUqP>#8ceuReQbpZJxq8Ffz0|>oY%8umkhA{dacJu%yfu)d@EM-R` zmJo}~nT5zeVVJft3Q60^s#vzpSk=sQ1i`!xAk9qO_67`CRS)sX)sV~W2|?JomIFJV#id{8sL5PL{xq&5(p%{n|>b7X-NO(pnZUa1bw zg~AyfEVUdo&g5b7HKd{=C9HQTdxSL7V~B)nOfejQ%Ws{|Wvo>Ho6AESHc~yt{5Z46 zSnj_yq{WvaPV-^Gj9?^&MX-dvJ$gAk#xTqU^tJs%?#<;~T|{o{MDpdvrHJP-)^6}A z(6J6axb)~1fZgY#qAt2?`4;ZR@}TMKnTHhubH2m`(W{_}&Bh!eH*93zoR4IU=R!04 z=4&wiN*u>1Ejx}Ql;nVcnXYv#M9p{sN)&OGczRe#*YDJ`=DGCje$8zk_o=x?dgoz$* z{+8B$4SRP;3uvX826HTS_JSx@q!LP0drAyjf0%m{w25vkLt4=0=*CikyS*EWgBGye z%icuKDB;Yi-nn!Uhfa7mAH@5qqhGCh@byd~L#28y!gNdwM1omum|PQ72_ zevUgfs4>ulxexMMd=s3)at5ck9kCTXiwKwA#T{1rm1M9)No(Q~Z>f@>FuY- z7JEGEzli!cC7?bB*(Jm2mbN?*Z%HRP?9Lr*RCIAD#VYhe#IE7df+TC+nPu7EA{)js z#5>(6Idiz{IrIC4<@)4x-+c2;$%r%iF%T?Uz&7p=ICVs;Fp|6$Vf)ef#2r1~VqhBt z!&;osK5^>j+*}Ax;-k>L9Hc%HeKZ&2MS~2in_9ja7AAVQ`JtK59E&}W`ExQ#Mj`XLGo1MsLWMJby1d)F zu?2AE7bfn`2pJn-+{$(A1mBwL9EN1BbDw*d!HLNC9h~YMIWyI{q(>1{q`HicmFld@ zsh+IAP~%)@Zd$G@-tI#hIi>0LgnPi;$XOeO17s}LUcT$ahd+MLo z-YKb%lwZm2@k3?_tn(aLm1K-dVHi^7>=ce<;9*7Mx_C^H_lZLkU<`4D^)V#WZY<0i zKkf3pOHT#%RDeBaP|cYH=)czGN+Je`?Vz3~6=203lwhUf=Q?DA`51(=8b47;Cp5?g zo^@~t(_`(@U4GV)utP#T>nuR~x_sQjx~}k=&W|$ztbli$ZE%i zcGOrWjFl)^ID6Zwf5}Rw6Q*!Aw%OVW_R7WKdw)N*7qR=3BOqQbSFp3oKKE0*t?zkJ6U;*m56|SYD^gTbwXYpU_=r z60AQ{+OjDFlOsJnEnDdV%T{_4T5hEaEK}(M)0DxFDW~MEWh-4^*-95!Zlx!oWhz}@ znVQS%4^M%?Ot);MC!u94U0~Tt7g(m!lh85+fpJPgTei}xShmuW(6W^-uuP>3EK@QG z4fK65Z!KGc>6y$<%T~HT+A{Y6K_ij1a)}l97+q*Kg99W^e*!zo@G|oi zvD`0ftZj_%UEIFh)FcWrIAuqZf(!@-cC_!oe9Dd{A@T?NF?KYGu*361-OvqS5RQ~=4f9Z?jz#Qx)|JV+2_;TeSp~^@18_1~QExC=2U?14h6=`C zjV?EvNzc}SV;*9eiw8t}PeTznA-bk=I_jmOM3gL`=#8)>y6}{u1=apAUg9av_F_ER z$8dTp328wsdJ{A}K@r`;ZZ(KVkxRah5RPtR8mftqO{_nk>*IMPibGfl9sLy=6&>O|Vii&wGB!{mSbUJrD8Fi^q3hWzpkJFgW-s zbBwALMKK~6N0Jh$Ps?{KVpI$b6C?%-axk5+59 zxuL0ThK0ZSHV1rEr`!hqPU!3OJ8ds$!p_ZKVPBr1Qv}WXXi|`Mj7eTrnoVqIoQqj+ z(geScE`w1Y?X|IVmu&1CeXn~W{WQd*d0ECbJxG5=cFcvVW(D&~vC9p+ICOdYlv9 z=+W^lB>Vnd2m9UvuXT!1PGAgu;d}@D+jZ4nOl?#i_=F5R`?%-=8M6=FewR+Kc(|@X zT=%D_TS(7)-UmJ6ct2x2{Zw}8`(*5O7t&ueZn9L_>yFSv(uor~yYjh%X`WrtC(uRC z%8UuL!BLqpiLMrY?_~NnZMJZc8%>@~4e=3e)C)DhaI*HH(O zAwqRFwibppoo;gNbx)!lA;00(soTk({xZOxz9~mbv9T*JhPlEUpa`aKn?9NTB4&%p z^p0n?xJfyHjnPF{dR`8===0#qfgt(eL?L}1-YM=#S4Ca4+tYSPPl8C=@nu0IXY*J=NPi{ue=Segb6U0T?G(w^$AiEog zXNR9Y0i8m_Fi+x``41vT7>$x>zlBDV(}3`SV0Py95EhXW=!pTu&U_Kd&h$wcqr(V9871Hz2{|ANasjdqm&imyHAA-KMe~u;wzeB zYLG@>@-~XIlwz7Dk;r6JN*72Jf#zAtcxsZULdwecJw7*x7*3%ItRo`dPd$j?6f}M@ zxzPMNEDYDD@%zTBe39*Z;KT$cX z90FaZ{K1ALDq}zB54EGL<2!Cq9Y5)KAN)HdZTDY~@*GJ=g+DR?Hrtu?AKp(vi)`%5 zx%4GyzVbfk0)@-d=_^Pda@nwWMA28B8qx1blp}mtBSumP{D)k5Y0@G~Ix`=`PMhd} zQ%458WuXR-QLHQUi3Pj;6LghMnkYMpg@yi8qNhyce9V6(>b-2qYCM0%vmSkF!2(xI zagcj7`@P9=w{I$z-H?U4MFUWth3>O80kv5uA<=Iv^r1u^K2pHS0g0}VsF&KY%eZK( zDU&h8v;MABNcT##pI#6%(8Q4xnVa5Yq->{PaIWsASz}}q(u|v~kZ3zy=3W4q{4$)9 zXxUiS+()lsnB4S|M7{JX_DDAwA6de)F=}r5r$n19qmF25#f27nH+U7ASSQgY`nO<< z?xAjpOru`>6XWcw#(+Ts53<~i`vGs z6|;F9UC+k)pKLyxcHzLvp5Ebl1P7C!q260oy?=N99H)ej zEcBs^(U%rl>}8~uqkjgP_k|ex83MhfGa7E8Tf>ZsEi_xADhs{lW?6%UX2~Yzmp!hYeF7vmB`rSI7fXF@OBArbzC0&Jt{tKslMeust>2zE7-MO`a94F znpq_srH_C{(s~Pd14s3I`kRT6>o4ipA5G*K2S*FZT`lW5I)aR{O=L(<3#rnC#GV#X zgN4}BLYi$=WJe2Wkwon1yLut5w>01Kf2@z9Ie2g~9sO7zO(!MV1V=yCi)i#@(`|3y zWB#Rsy!P9SN1Z2hIqAXJZ~M%3LYEU%qBiddUCt$mhJ{Y>Z>;3C-}Zrif`4aVp`V3M z=saEc+HY$Gl9NE9H{B<6PJ6!g+ZLk*&U3!@+o}x+WmZVo6Fi}p)9t3Ga>1BD_e*qK zxhbU61bXiru6SJeg+3SPPZF6^Z6f`*MCOc{NMA{`k zNjVals+CYvu#*cs)vd>YTA^EBO^+LYLwEuTYzGBAx#K=sboN z4Tbpjf2B|3u~?y>qi2Gil6I11l`g_5U=}`n8kmO9T*a0WR@JhN{UmxaDWGiBkgA?9OKAMtUik8n%^<Tdhb6C8ac~rSu3E4hSJ`*?iPAGo|{YJ^7`&@UCq8`a~;ibm=KEEhXo^xf1 z0yUa3T%4um`bLRz^^446QLFwVP%ds13D*>GJ_jdHwxXyFsJjH^;fC0*RH+vWMcv_a zLHr4h1rLks#Fe5+72d_7lcw8yKxc(EgJ!#TiuKaOdc@#qF<+gey&ziEAKG3L&x+3j zze8gkXly-IsZWa^i}#%WC9dOU#90{D55RxY`7|2-4=qRCBJCJkq@gXc!WJpsA;qJm zc$UnDgEGhmWsn=BegpJ#)Z3-$X4D=>?J=khERWIiL;Fa)ZpLdu2Y|E3>D; zpf0=tm@bV@mqw>c)#+08L85do!MVw}Q^5kL`ms6YL9_4Zax925L#gp`+o#`P-kJ;-bhv^|% zK4xzaY-po+p4K_8ljVC*-s*TB^nS-a$$1y$ryYvA7@DfeE;guK>s?tMr7>rb)&;s4 zWn-&7EU0)lJpSh-I8;+_PJmEVqx#J%L}%@Z!ur;{gL#zI87Imw$9R8h3+#nOcPOnXEJ@^OWx?%at`spYnTU zrMOExEdC~h>Q%?7wd!=WS?yA9R_{_(RLj7x*D`T_598NW5uhx*oXJ6kp`Ph6X-TC zQ?tB0bn$@nG3Q*AKX)-*;boc|V)~KJ^uaLG<&qwCbGb!oPE{A6JlSn9D;{LZEdFx} z6?>UezVC8@3WU#&9(zCqdh7%ZfhW*!FK8BeFYwk2KeWI$76Q#dR0JZC1v(Ktf!!|` z^a8|2U|+yrSYU<}fKI1T_^uZlWfABsJhTbA1m_ijDOCbG2hSV=+veGzmtuDm_)Y6X z(0Mqr@RxN}pjTqQ6to0ywgk1{?U0~WydhFCEE%BraBC!e37aG7By8rwN+Y!6v>7jT zU#B;z`9|ecU;UoCN!_I$QU9#c-wC_f?ym?9YH#P`c?6teE?hd#DD>TOB_0#4mAw5;N!( z@Lr*>@i|8gE3d1$iee7P!iBRthc$P$F0O5FZ(iH9qP26*+LbM{Ti3NrnN(Gl_~WFJ znVl_bI%_*RS~}0GT)42D&OLAS!i5Q6Rc@lP>e2Jhy?SkDO9x9PQ0?N**4T2>l-0-D+FGP+0_=1wTsSc?t~$qPY;0((uc)o4uPm>tt}d^wt}CmX zP+dEzvA(LVs-k>CV`F_?Wkt=jy2{$}nu^K>p!%}v^6HA(iM7?$m6gQ3IDIFo$|g}& zb#--ZZA1CQy81~~4HIe_t12oQCr+GJH=(M!p{8P5{>Rtl~0`5 z&{zYF+PcQtX=N2viRY`wC2DHs?fG$yQzU+N&c;Ojxr-7npZkNvMN_60*0!}SZe7tf63|W zmZfIl>eWk^wzSu^$9~Y!e05t3ccq1*52x0JlAPI{Ei30N zYmcp7x@^yLQ@>IYhia$n3D-?f_ROizQ1+~72r7vir(L%v+}NRNjj{G?6W2H0xF_$s zZK^uAvo*2tqDgy7XYAXc+smnox)XmnaJ7HCcj=K`C%UKq=7vS@ZOUpmnpku&Vrcmk zY|_KQ8YNh6%U6`Zm5zK>3B-2_hdmsO-=PHO=**5kV9OVZ&&SLcl;9Q248{+dxA*Ok z1$u3HkoFE&g7X;r0=)%pyBZEuD#0beB?7W>!WS$@V`qWm$R~(gN{Dn*CGpL{%3-E( zrFrYb7Z1S}pPny*t%=)T%Qdc50;`;8I2_=Thb>$Suv!VO^;&EbN#m=PK(}gF1iB@H zeq%a@o?UiHF+iSz<_1?@Qlb0=r zqIWyq@j`dI-LD8AzHx&e4h<~Xd4bi-(}?6PCHk*+I)$Us?e85XNE*lDslN1(sK_;C#E zpAo6g0`V`*F^+#0Tpx`8T@L@RGs+ZXK8Ah-`JmzB9EpGCNNRFCxjvFe-XU|934~|_ z`9~-o7u+zd2bJ}SHUD*gqWJd@7)uA{_C5qF2Yc zxz8k&0pUhvVle+YiFm-1>{4cL!2%(Cm|=Ev^7(ifY5@r>W75W?Tj#XIR6)Y8QHin@ zbFt~;GzjqTr>)K<{`|&>F;QqZkZhQ}JOliJsE4p5g-u^dOOz(60}LsDd$%FMxIp;hZconco}XjIcC9HWEk*jz+!U+iE;-(+L&}Z9Z45$u+m#8 zX-(p#KTLMmPcLCWR$-$ciNNo5w|wn@~g||ZvN@kuM@kEoUb-qy)^O1BRLZ+;f@)W5C&I` z{ng?5kNo!c3wH0{@Wm@Ile|9Qa{l&$h&X&Q(eNhD>E9IbDJ8My%?W$ndGmg;XYa9D bYT}{y-reJS=O3#0x_VFGPk&Xmm)ZXx!*bUb delta 15877 zcma)j3wTu3)%H63%$%9b{gO;VAS3|-L&7C@5)79F5)H~tK#8IuK)`%L29lscNX|ro zihzRS1@A@ZCtliLtO82)7i(LsrAqb3?_K+xWF`sp>3N=6XTNK$ zz1G@$uYEb25Iv+u52-tDwA{byk&`>O4H3v3>c-X_pAefPEE5_bQHcDabr6xG zLl9X+I~bNoIEI6TnRl4*?i6B(_ro^$ZjvLqVXEiPzXyk9q=hCS)fX z9LWOX!(6uRW8bMX<7|qpM{-M+A)JQS2Et1{NuNDzyb_uh!1hy;A zwk5DbaW;krwhbd$23uz}6pWUs@h+RNY4 zW%7^eHW5Z|$%HlXm8h_gz{1-YhHx3=$W}Qfk#Yv522dmL8yB6|M^uq0Li#1tnj9DD zT4V|%qzxvU*6U_!Tt$miCW0yk6U_iDk!gM5bcRDk>moLWcZA=;e3cM4CL^YMdk~$L zQWP?hOxIebUQeqd)u`9O60?~cFlM)*9j;-kFwoafa-t!vWl^sk7WB8nytCNRIii%l zhF10(VnKgH%sY!AwiD`WXIrlw7WB8nyl@TYf9_2!k3cny$(0wr0E{uda4lY8%+tIG zrdZy{glQed^5H<23d%;0V7mI%ZAkLLYp=kH=g`I=jx?B#%tg;@k&9RvgFBPovIi}M zu_5^KW5rC-vHFPsWu3yggY_agzhk0p1pjO%mhx{DEG!o(2U?0L7FH5>3EffmRVHPG=KVe*kmBW;wZAK|A zl=V~CH0tt7-`8-wE;`zjVWa7(YxvA1^gk!n0uB$)q0}CgmS-^}sbTb@<4~{9mcwyo zud$XN;>@0AIa-F^&{Mr9anCngAcTuyG;%4%Cp-`S9g+DUCU+sY5k%thr3^mg{*;g|SUHd`H3{azb*zo?xQyQjf*afujGh?HUIK*`N1m&bbu{gMEp?$oODp^egUq}BJFtm#@OQGFh%85yF+*B5pd})*0w8h~(Nssc z3B~Y#fxwWVc{RYuFyhx7otdcH$u4hhDh%peFj3lNVeG_tvGuOJ2K7t|haFHw2O44t zsP+zI0N%C^tY?;_y)5mVfnv_s)RCR&d&?Q^CLSm>(UB8niDqwY1~3mS2ptLH@8oue z3X)@fcd$CQle^{SrnJi(I+wIC_WV3uHeSXewViosvOgrqNnI$r&UU{ob)nOy75<4W z4acfvp(uPLu@AN-Zs8CeT06(Bj#F}D&$-8>GA~IsLH3N+&aI0?Vn4V?x!A-nV8Q_t zu>wzu-fXue-6qXQHL(V(vWTpP1_Y@K&nZefw`kBgL`mrj-AP({UBR}zj2^GL=)SH9peR2?K;_qZd5otl40Xf(=1r5bkD30V^3n@4XRXf?GOhGP~$V@@0 zkQ4idH%CVza`2pp*d}EnqNOqsVGD`K(oQtmNJQ*%NW|^%VkRO>&YptYJedO$nRroVfStY51n=3nAYv-Pbw8d8YN9jFDivazyu0wXEQ(AY0+<8V4 zvk6&Etnr{2SsPE{bBH*J&mrO@HbpveAZ~F$7N5;PViI42Fp$jcd1w$P^|dA*+YgWL zhYJkcUdTDh28#MB7$=osLhU$@1^6)Jce|DdY>5C%Q(O&eNE~1_hyx^k9AFSFdarE^ zKwN}AjsuGU!po7Bk?XjHIQmPlE)kS680IA@!VH$X$P+lJ@uQ9jnr*Pcni^RTLZYR!%)3x z2x0UwG>~uD8OS&6EH>>xtJjXskq#6Xh6eHtL)i6Y4*~TWVmkx*hMj?Y!wwDyx-=B+ zX9$9Re8bQ{zF}yoso&Ml&Op9lC(hS3AVM9GxyhV_F&X%0$yR#-O`r@p7G!6VK%>X(7%rP_!^$6m8!_Yv!VW{3T6i-gW z&Op9lryn2r7cmSiHVvUa`UEtPZx|ZLH|#W+cF=!)>1hP;TVrE4iXQfwzUD4dc8k^8)QQ zhuPRqB%jAWEf0 zuTm583RQJWJC9%FW~d;saDIY|{)sghA2z>5cR>>ltDuitrHjM2aGmz)fC0;ylu7tB z^;=r*z{g|+DW4a#2CQLpvcnxv!?$t-6(W@5kRQJ|jaH+Y*f0(KkF&T4qb+$y|4Xzp z+buTm>r4ths0WJ_vkt7>1}iRm|tF5U^^JUS?-iOe&GdHFHz*TTCXIhx#; zZ42K8uF*)Mxi-4>E*dl$!IvT&xK+bk>nbxHTy2l>3z4Re}K-@7QFQ8J%}%2tB-3%TvaZOj#^4# z^FD8Bz(b`yj=v z*s5Gbba^sSh+1%#PN&Jh^tNB(3-F6Y2CQD(BK>+c6mWRcN2k=AoEEJ>+yrPEyqBAr&*m|h{)#j$v;Qy|6dZfV`+ffaYl~Z2rCEL5n}yqpbpyZb=#^a zNnI|gsLj1xJfLg}azKA`tq&lRg6jhzdJvyM7gNy5O;yoUjZUCnb&YOzb0^;gdI@c^ z-pYwipUbpWkjVBo z6bwsr5TA7(O4A7|1k7BDF4|3Lln3WN`UB`BOs%mL#Tt1T5{%J!iP}t*j{)=1mBF`? zw?I}PQKT2K%}0{oN)AXFqnk}sBK_TKBKXK*Ir|EtvfV%8;mnBJ?17Y!ndJY?o+= zi8hiG^|~=ITOiwvvG>s|*xiEWZ6=+CJJ9)Cu+rT~YPOHQhw3DZ)Qz&DA-j;aCdg(1 z1z}=^G&6^8mS|Hi(rAr;rB$I%+-=ruO0sl-)_A+Xnc>@nvdwWbXuT6ur@y-y><==n zwJ|LWG5t%5(nnmC1uz3JprR2h<|za!D_gwB3C_`0G7;tbTee z-|>Wsh*a3gt!ML@}1u@ zRlbG3&-=YeHF{b62+ijt&GO%avXJ!s6csB;uAMnEJQ~UuSUI?%+WaKrFPGhBTuqiB&!ciuA$2J>g$|c$?%~+_?l(88L%`_2Pu~40f*ouW3 zO~h6#bge{&6)Wiyb>Uo?tYIa4rjPK~2C{z_n6FvswLY>7h8wM@M(eHgQ;9xPeudTC zN-?nzG-yCIi))Xsbitqc~`x zgq!WNy>*(47Mo~?xDx0p6WO$-K#!Z~l$FtUCYm8-Q+aEn&GtfxHc8Y)o3P!uXrCdI zLkKHzq(k_uga_%kXoAsC<3e)NSB#XM^ju)I=B9-sr3-1sO^YSkNgp~h6znadSk{A< zN%RVpVVKZR?5rVP|eyG$7e5yBN_<>3$G>nV>m{-W+Q zH+^Jp^r`oM$7BEHoDC*_1l12rq2ch8J{7;{gZ|!&PN3fRX1x^0FR;AY^9`G;oQzUT zL>@-NO!RV)(fEA+S8%wmvoWkNg%^ex)tbmI(IqCj)Wx!;CVE~vTx}rCk(1g`>M#+n z2}9{76Y-ibl6nC-VyYSS&su9L9Z~P=`9Ow_I_zzR_CckRSp#u{*G!9g?jifsMev^T!wo!DQiJpf{PBX|3T8BCu zHaT5@^n=!GoDLh$5Pl9?lROR^PYHewT7MsO*ko!;w9MwPaWeCB&{`jI*f@Lnfl(lt z1`;iHIc%~!C3*`E@i8i&gVq<|udoN{)*QGfqR(ZdA1hO_9Tn4?3eFgUbU_}hoeC|*xxa^g zm&9d*8q)JrAC$8!%-`u0_~JGAf5BN%q3#gVO@5{=ICd&HYA~JbWO_Y5iv_*x;_rtU zDsy&uxLkp+14T~+=d6(K7U3T2GajT=W2FIiBwMn|4F&R#wLo;GC{4|Y&~%y;e1O)8yF+_1nH=t4An`)3{oqecejY906HYOGne=PWU4hq7 zi%r)`x2KNzc=N|iUP?qi%ms&rghs6rlpXmwlq3vtBh)TRpLxx~ zb<Ahd8Dj5f6xy$`BdW*W%)2RaDAuSJYi89`UeJYE2V^)DmyD$Og?9BPhrD z0F72}NjXmxs4;J)$X3pGULb1K!`@k9uKJQ^zNk|lNx59q>FPebMo816)ziu6i8hpH ziMy1G)rc6ao=G|n(gnzgBjQfcAsW;N+@H}#`p|Z_*hpIPUeNoTPl|2Q!Zx({uvnwc zwR|YL)Gw`{h?8P>;4`sBeB<~7ZKI3T!{T)@%kibSO?nwE^uu1EZlfH>VK_cyIZpRV zL-$HU_sR3pd_ANt4XF=@Jij;U+Z2GS*6BI%zc-7aYa zbUx+ia6Dfo;Qz=3{2!Ta^C``v;TxA*vq&0UB!gHaH4jM515$I5)O=VxW%;eTMIEEQ zrM^PLykDws(%Z?QZ2Vf0|{B+8xNSyrlfaJor>VCS-Zc$l(ILbe_ zPXm3$t}j*D!A2=qYT@!8Nl!@HVCBjU*5@UC8FaVg?3SF}R^}YHwt{{v`5#OE$C8hK zJODpiV++|DTgcW}zfy84C8tuCtOm(ykgNvD$+B;yM{URL++wC*NP5afNz7sTg`}r! zS(3x_3t2v8n<_a>zmVlqw&T7%aBRnt{HEMJ2n#bWho(nfyZd_n_u(o?~cjUtX zD@d7?0oy+WQn737bPfUC>dOK3`wKy@@>l41&GS}+?h!LUo!V^B(^jUlWVuw*=Ta7c zV{z4kPO~(Ej`c7#%2~-*_e!%IYf!$<$<*m#dMLG>Lg4W;~OJMk>VBAL{EDg74et2*xIiMb8 z6t1xGSGa|^*=wXIX8SH&j%6#OmFE=_E5r?Ar+88PON>_+t5>NvsSl_p)PJhiohIyn zbABK=wL~$veV!kYF-ATa>;lW*!Ri0pj?)pRpPSD=J#o@z)zjk55|#%~zTZ^JR8M<9DSgE@ak;TJ~M zj>eClOXJAI4a5^+0SCtkw)xAd4eLjS}sSv^A4YPRx` zI!bZyNL5TOudgqdkzb!r74z0EX-N=!OFIlhMIXZ7Z=d1wJTRP zELquzVr_Nv+EtA$CYsmQ(AHSh&>H)4!n3i*%R=YRYPhCpMMGOtq*;mzi5Z1dTid*P zZCmA17EFt*T-hi~g;X&u(!9KBMb+Bn%NtuRiZm>1Y?-{QzP>m%xqOHyEalgGYD~s^Y4e36;~!%FD`%YbF$wR+SYM zmlqUGuP!PmFDNLF-B&*Lg37X*lB(jG>cY~}D%6-zRa8<^S(#r{S)M-)U_udUR+Us& z<(KByloyp(*GwxYE-tI7o?cKq9bTtXb#vpYb(OWT*URf{*EFnL+gM+}KYOA>XcsoF zn-*CX8(py}SlzsAUc;)@D;ue*aYa)zmt&7sEFD%`)4FPAWZ7B>7Bn}tt*dT^v~is5 zmWvu!G%Q^gvrXzuS=P9+tzmxCsz$0@*|fB2eZ#_W3u5VJl4~3rQd_8$^ zXx_C=ZA-6`LncSe7{Zt~<+j*UQ;PR%Q@>UMiE+JbR+uHCJ$zM&)SbJB|I(+`rGUr9o+uJb#vnXr-ftk-W2=0;>b7p*L1|0tGNS8Vq|D zu_Q>Ep%B~JU7}k^QHJ0oApBi3Ih-K20Y&j(MGAD)x$+f}66m@@8Hx`divvNzBp}|9 zKv#ena53@m2Qs8^6pfnijrf*KuNZGmFiH2xbr!j=wBdTlQD!FSfSb!j~FV4&||eB zh#PT)fV|P)waJc#M&I>!ZSjzmOAL7U9N3sq=5c{-f7k7D9J_9}VywG%^Jor9(<;!$ zK-bS?mqd56uc_S4e#KvG&qDRL{9P%`oo+=?iZDC3TgI?0*6_|?9qsT(w;8?h5rze! z+FdZ=R(kB%EOxuyAKk(I79{EZ1>_;dS$I62Bp*i8hYqo$?VNL6gM{7gLK2!qyWL^~ zNBY^3WV85S3I-i8n_5rZ=#x8m?5Irpi^;K`a zqDm%G8FCK~ee|TgM^9!JY9lv#tT^%oItBmgG*odrFsFKKZ?j}khLvYBj>RzYaYoGf z?wv{U5M#liAh!G6NA%TpOgcIFR4vei-zsLv$pKK%12ziHZqWkKonS8NVRl=!4D_g~ zW!T-Q6dy&&-_?g#CNvKWbd@kEw`l(8Pnqa@VX#uw{B3xr!ID*IA_?<8`u{m%S(07F zK4qqH6t_vlL*K(LWA?pRT7(Bv%Er^JT=8(*UFd~C6NvvhCL54am}(klDCX4=BzyEm zV|{vymlc08uI7vm=#DkKH&ididSU0a0KQ03eEwn={yeBF#R#X&;FZZlEs?aGX>=zW z3#74goE??GD*ttcm#Bd@7-%EE{L$?^!;rgSglZ4VWd-XC7fN~-m?TDWNnr)Kgg_mQ z0@+{%iFPH~dm|tJevOKQUaaH&g|VaWuZb-@a&^J1b=Q7N%FH=@09=9Jw(s!!00r~m zb0YqzLH;w(H;{c3J9T8Z@4Z*9d3N(FFH}GB=&DgKZ4X=&3x6;*cJ&A8g{GkK3sV5| z*A|}s@i%Sb-g^80q*rdJ!a2U@S;Xb6o!KEV>vZhx4{{wp=3oQzvG~?M78d(9^gB_p zz~7&V%?m@Z!Q9dJkNe|e!ivGc|I_*ESa!fCiXfsm2!bFW5+q9o2WH3!$Vv}`0wx5;fMFH%n$gw8 zfQpJ@R@NLa;mLtdq=j8}8Qgb1TmM9~{#=6j8R1Nu7oc9j(@q{!`1NfRcbj!v$>QD}c_^KMrc6^UBCF z4J%ZTYnm!5OOruA0#wswkOdALl0i<8p8-e!WB}$5=vP2~58w>VS?G2;3vCtRYq;pV zkV_%4h>Jb|{4=;{3qU86i%c?k$ObS9-~uQDd=T+a2c+g%_+oifL8l7nIGrk@XLPEB zWV4l!6~I0l+u)T!u4Sfp(76UBP)Or48q_L*aA192cdsR;(?pdLG9kfD+V|R_!P+F2)jVJJfiv?E(XPTP$&;va1OXDaNYpNb6^64o~=4V2>sdjQuP;JCq4fEf*N z+#qjc_zm}gS;Z`$2D6A_D*QmfrxZ~=p3e`ySkJCx4g7l2bj zhN2D>A_m7j%3yHZqd`8{qheU5CIdY(hQ&m|q#We9hms*2--ECouLt|FHKKo?7~c6}OT=$wIub5hz83gM%L$@k1hk zc4X;5iuW`E-OSR56mOsedYy#>Yz*}SQO-7n)C^DzTc0sh`y|B*HbyNSE7-;)7MtJ( z!PW5~WRRLpA}tRPY}C$bB{;}^_ASV7SLmeke?eZXgh;H{BH2iy;so-!dLk)=keV;e=SiqGX?pto%It#9W1Fg3Z%0 zwi@YFEWNGbO6-%Wt2&e7S5iM!Z@x{bqj90|)eWCX`9W28*DEAg>lUz%9sYdwl|lab z-n$khS^Ixe4fXNMj86*9N{Y`*28W7Y9G2!vudDKjJyH$sB(n6iG?eR3jFztAP9gH7 z54ax0VW|nvjg<6B<9RD7x3bW(3Js%_>P!5;l^=V^HC`@m))cTb1FOpCJ%K58BO*5Q zo)ec+-Sd+FX0u(r?Z(FAFGi2>m!1i~u9e&3<~XI{&OS3gt86mX8l!R-NtY=zI5)`imRAVQ$ls>kIonI(9#v|IC{b*3Reo7dswR zk#ig_`|wKL7Gi7L|*PH4;9b4Ar^fs<2TvkSW zHaNPa=g%FhP3E;*%IF=fH%rk7|AZE9mfq3)DJ zM;*EymzHsqHyU58_I$oqFur~Pb)s#=Ch5i52U=Y>SU7&nS!!|ew}*Xhqbo(5)Qx?w zEU13ku|TceK0wE4!6W;JZ1vuiOWRJIj@OXw;4Suk9Bz~}Nj^W@Cvc;ovLr_PS&ETl zd4;>@6(4T0#?k5^c7s~^wO0GR>nvB)mLHy^SZlsy#bJ@Uuux>cEqE|)^&jJVsg)l3 zO*Mc2AX9!V%kSqd%cTp*UariTHHIpM=YGC_Y?=I-fN7sg3VeoX$RD_CTW~vEP82?} z$?oKj^D13W1Z)+(xY?S0>3T%Wn^J`n$8LLWZS}C2Fy(9ySN-5mPjc6s_^B$wZrCGM zb9Z!I;#B25{(hJ5pXod6VEE(O#U<~S`)`{|ZQH~OsqAsITr;|1nB|)V^5$uGu7+}# z^}Kqon-;0^Ebdxq^+fb07m)(9zw-ja|Ww zf9|f4XN9dl6h-_0X&#@l}9u$&asjERCzu7 zU{|x{bFo2oL!t2E9v4aLl5y>8b0;1tdhu7%Fw5Q4yw;B{YXdCZ$A3%~yvc86X-qCI zDEZ^0hod3C-C(2AnsbHg?4G~;0fo4B@1Cs_5#)Gj;`#u&Pa=oJ;67nlV{NbUw&xRj z^A%PYerk`Jk!>L;R4y{vMp#DfTX(W-^0NcY!TX-n)|+>R>1+>(_%-K@$=zQy9ZSx> zc2G*V`X=pH>Oo$PPw*+P%EeE_?v7;Lt=^N}at;ekb(ehz4Sjhp`UfiKSmhy05of=} zhoreW?qf_H-R9X>k9qv&;!%Yk{R}n!#Wi2EO(lk#Fgt7P(!Vb$RMdyhJFNWFW%Coq zh7T3O3$=0lziaJ|7q(ol-u-;TPWw0?PL{8=wt>EJ_`1KcgQz(&b}KSPto`Mw9+#3r zZkL`1`q0>j^Qlh0m0M7dtrvGDn! zs3SlBEiR>w^ndhfnG@0S{h{r5 zcG}noD@O^)j3-;Pn%~+auRZc)R)qDoNwxbnN1wm#-dK7g^gy50u|iT1a5DCnx>c^` z<-6vljz5y)H8b#a5|z5_{@Ko&2XoE}sR*|4%A1M4(x?)zYUdo8Or*v6+ zT%4$@teQD`{=GHo=XM@HSIC+hGAhz`q}T7Or@nW&H>EbRuj-EEX7c-wSDi~VK8qr6 zN(}n;zS!ZddgJ%A{#QCYxjPp`&meCmj*=!JqxH_K&0lDz-RkGem+&W}kC`R)g~qeeWo=%~2Y{v9e=6{BfQ^~jl; zy_UBAcq8V+5&nl>Bk3z`U&?RMtVMYmOaC@sn;)8%pttx^-uU(xH~dn5K3uwJ4;!IV zHIIDT9JEirlq;?fJL_Ev$ZV-I6^`GxXS>kO*3`@?_PLxOs8$$x+Un1f-hXI*O0)Z( z3gnd^5=hrcADut{XIJpSi*w%J?|IAC(EgpDSFm>Jp(!i&2r>-*b?@fBk)x=St|i?I zjybO$USV@(R#QWvf>RgoyUnwmeqXEX#ahAI)SPrHyMnja{NTz3ecJjP_>x$S-3yFCo1-4;iKxX)sa=_#%EXr#b$RrUrOb4p-B-8&K*{$x zV|C0}Yn1vX{o)$*eo;r4*Sd{UTR%J9sZC6dc^h`)rpJeA8!Cn&>0MoC8NVfCm-sbl z>3t$(mwu>HshZfNZICEK=cNrzrKYYjaJNBHKx7|DBO^e}<*hG-rggB1bzk(W+_(sz>PiNhAHEI`?^QUYEXe z*P72^?m|JLU~YW4y;lxAU=?KMq}vDOXXFV)$@V$PDfUT1Av_>IPV`%YTH&a)Hd5ED zPL;o9&&HZ(bJo{MZFBXsv*VnP;lir{E>)W{cKb?FI*)%B<8_m2WLpJ(nwuP-%dEuzY1b0m!Ysd)oaeSZQ&($#tgbpAH3OUa2@)91 znHh5aKDJ!q|448pyWD-%grI3bOGbXgmVr5$d6{2qDMVx{@t$DgQ~7n@7c|WGudtaJ zk`uP~j$eL4e8xZYwIpA)8+9VIu-Q2Audhh_*u;&cBgI*Og@r%@-I z_l`Va5ojVeeY^f%>v`CEno0ly5(k?_ax7=+;^$KW&>f9UYA)(WD zk3@E|wG*ULy?lM`g>nAR5T8UpZ`moiC)njFdEjGLb4kurIz3-UdqRWlN8G@!hVAOt zdB;8WMB5hS?!0qIDuzOZj$gLm7d2D9o7NxF2Zf$*uj7ju3 zcIu{K4_;1Rdt`N4(46?TY4FNLXvh#qo#ZGYIeZkxK@RY)MZ)P}BAnZhnFKN?Iq>EM zhd{X4mE;&et_Y4du^{tp;q6RS%9;}}Hf0gfic)H@XvCsfR@REJB4hDczKyXGPE<|D z;AA*g1}E%5i@8!!fwcl07=iE7Jw>E+O+l$Q?I^YEi??RTrLM#;YJ@}=8jBl^#8o6m z2Z_r`d>BI(;WH-swUv;Vfr%-}QIZB1j-YsOTtG<1gUXQPsA5Y}i{P=ak`GD)lB0r^ zJlGEji5F;wksNtiLs#bq8ddQ1RTBgn?tn%PY*Zv+qj@s;>L@62Avs*y7Wzj>;$`5V zYxIB$8xJefv%sl(S-F8BWQek5@&vLV;Z+R+JPrA2p>gC`ee6MoR7F}uztK7{G8!eNJKDE2ugI372V2mM9sEr@U=v295*Ob6iC}p`mQ8YIAws2y1;Mb! zL!t_u5lcvp2@WJ*g2k|X-W8XpWtFYwIs#SLgF(gEtm_3q$3Vz~oKP2w(O7t3;X~J=4gQRA z9PHTmRG2K1B{T@3fiW9ax6vf%mz%1*B67yt(+CpIX6(bgwC)^*uOYWa+B6+A!WP^n_o6sS-v9RG0wotPb8&>+@RP`h|^v(h` z!{&s~xS^x;coWEk4Rza+_#*}zO&~dN7{@MBLBrug9@1eW6&W@ONA*!EaO4er;1Q)0 zh|)g^2^B+Hk)^3Hm1PwPR8~ZI!NyAXK+P~XFyrwlrL`6^V@D{!rT}5K#6pd&0J{lH zaFT*AD3m7~x||9cHZqo-PR~^(BAn!E5rp_1DgNCT4k(Fm@Ch4_60B_esfP`RS$q;n zeM=m4l?i=9yqFLlBT89hU;-Sb5gA~uLvp00B^ngnQ!A3Ai+iKb5YQ0<$>!Tb_fR~H zgdA>@m0B@;bfNUwa9Ed4w~1hg=~J*oqr{cUI2|rtMyE~#+yOXq zT&Zscb}2ou|LwTK&_u+-T>O6;z>)trg1)eW{c}vEJ|&}+65wkYGl*{gw;)Q}O6<5* zFhA)9m9-plX-Tz|uArZv0Y0FFh$97_0p5eN7;5@bT&ALCf_EOqb=WQAVve>Uwv#us zqz_Xi#iI#0S!PR1D1V9vvzw4?vLN6Pl?``E+0%*9*jd+|Y-Y+-n#g6S@Y#Cv4Wc=GrRHDp4<_dM92bl~O< z!h{;azooD|bdVJmuts$7YGG2?Aavj^2x1%-uuJHmiC9d)Vn|J6ux>0Cj#$7vCrMSY zls+JqJc8Dm;3o}6%dpjdq(fRVg#Hg2M(Lpc+A9|<@}mn`5QlG4YIYRHit!-JqvV`h)PF+gA-QWkKnH_3qq6A|8Nd2sUtp-1nz);PZK5QM*4ARoYNKry~+ ZB4fCx45kYDgeGBXj457;JWn@}{|2AsBFq2) delta 8877 zcmbtZ2UwFyx1M|n5CS0yy*KF~7K$`!(gjfw5gQ^R#1Lu#0rd-sA}fj|AYwsX7ExRT zMMXtdT^r)Bu8LR|`?}(Sis-Ib(0e9;=Fj83_qq3n=bba}%$%7sGiN5>cfR%_V$%v@ zoio|1g3yR%2=%BUv=u=kJEVifb>M|)*xOM!d_z!ne*SOaiFCs!0N4;c00F>lv;ferG|yW9-hfmGf_u#dUH&uUCjjRFmjMp|uK`q^0@C8)!SJ6lijn5kP_$t2I9P#hLcSaDNy=%6&ZnWmpXbgauj$E8vQy_HH*6`5cMLrmnE!9=qG2~v*BsAy3J z73Bg*z)HYcKm}kspcc>oXa<}FTmZBK9s!;MUIR8{QjvKU6*&Xu0r-Gyz*4{pzy>`? zwgYMb4S+uZssbu97DzIv4&!Mk3{K0pKMoRq$gdb$}J(VF;|X$nfgDei;|t|@k{nMagE+c@}_7g9fHUdxQr_m*IFtGURxs9M6*D0y&;7$8%&jj7Oqe znS!G*;9?oR9(bM%$1}>8;dn;Fe0WAh;Id{z6S@HP!<+&6wSZONq~>2I9EYFoWDB4L zRN}`*ghHh$z8erK1yH2VngqhP0cIG3wWiX1Jfs9#3Mmy$f)wrm2}ecCXYdE@Kk37a zB&4@A9?=gT?V159izvvSM?s|kT>hAc_YYf+r%FMpDR}?zua%mVPf5WKzt~=U{ZY_H zKE9{?*9VE0nt~V^Mj(yxK2eZWhA9v;X@!5r2$1;JDuRpA8h$Je z=~=_|=4wTyD4+(tYDo9%osp&;6dF>X{R3%;iZ%fUj_C@i8EZPEt2ECL3aCl%6q}9& z_>M_U%#GsaCnA1)dOEx@ATHtx68T8NW|}Dr5*G{nva%8dlF`h$l6A~<_Bp$OX_n9R zeYe`ZkJMpj_Dd$K6-;IXrY7?9{6ZZQvKX@|G>)FB^(fZ@Q#W+do^zz?!F3OF%f6eA zV+nu%vNIkVH(b@AwyyEIr>`0u&rb|ZP0tp9qRLlA;Q`4LHBU;9#Dq1DD72BxUh+QRo&PFmvyheOdvtQ?O z{j13Zbw)|-nWdB3(S^vQ4@G~BgO`!^Sbo~?uI$goJH8ZlRU8)X?HX7yr|2m6x-ReT z{2y+yBBt25KA}qjBYu?V$1c0$-DCY?R8L6Q0gG7&40W=1?b;u3fBd`7*NeT}zkD9J zYAou0bH^)jLER_Uk{P2d+sw#q=lw!9IBn>pjo6?~O$!ZB-@g8J#VX_NyEs4Gwl$JW zcGp*0ZPlQWzvV-P*>k6jv>0+A}uu zvYwU&y-g{jjk)wk@>G3;fS7~2VNOue#bQlT@gp~E zSH+_xg}L5qLqGf-q(RRu`1mp8+{P89g*HJtv#V-!raGT++u38+pYyt7`-WVB`fA4y z@egZPIv-)CZ>9rX)(*WBR+kQpw(P1|_ba`8^iM^9&byHs zWy@{-80Awc4yl`^-7&3YFEyA`dF7+nitO99=0(mwuLicvd)y=pGN=5s`Nh0jzXwEA zytYz~r_Z|Dt_DXSzS3<;n5&vgy>fV7kMp<}p*8YWu&nNE`c^7@& zYB9jc^?HKZ)|ur83m@&M>*<;i(_+V(zDbGyb9ZXY^17vT?+%xyZlblYy4do~E=y!L zgKYkntA~QI-6LiG4pDYX*30b@&9K-2gQGJH_l-BoROLQ6ygy!d%k3|k0SWm9V+^oGRDWnHf=k&N>i*Jqd%DjiNabmPxyMbv2*v}{hPh<-6^en8DE@IN!g znHABQ;?{icpQh?kOXotB!-j|Kx5xG#8etZ5A?IUGJ&mV4<3QH56oYLaImp&}LV+J8 z=k{T;CqmaztYR~-n1A(Nabj~Bb(t_F<^1aY~lvlL^*KHpzetOo{Ww8Cdjd0mNpZaS`LYzgLJ%elom#J{LslgP2HNeYQqKYNo@XGeUE$9$%g%$SA7Lt11b5T>H!VxCzmMVF2+2M?yM~) zr!5$v&hfXhPoy2a-`l^0^QNlt^i8|I*F9sGFI>)B@_DLhZRhit0+$8ry;>tpLo7Bn zSZrknR(F%JZ-ZyL(a!z#X3n~2(?(S*r+Kc6;P$L-jeBgg(&zrWbwAp~{pFY}Vm~aK z>?}wZ&dWG#600{#FiG$DZ||cR?y<2ilU7`Bif%nM_b<$||{4tw)w4khLvfdvheJgFYp0xYvr4EDlfP5UO+_LM*X=k-=&x3() zCpg>{)c90dSVV{ox*nb}6}imbpAet@Ximzs-w$++jK3P^oYJ|xF;;zNac9S&y39{? z0UAd1nw00S+Ks=|mONN=RghnGzp1`zSK^mwrZ+!><+ShG8?VKq<3%c6PeWJwBtEWl zv=l`DD|!6YLQ3RAck*yq6w{0PA&C4xJ`A^oKuCXxDy%EgYLBMG4QN@nP~Bz z*4eFJ`^X{cvQGprW*X1D$ih*zH~II8Wrwy|7d6dvXB}&tziP+0%yGHr?mb;MyYkH4 z@wH{wdhe7OZ+sWhe{6PV+lE=09nQ8keV)zbey+vi97|f9##t7)TawG8y{*De)$jH( zY<914SlZmlQ&Fgyy3V!6{*Fhl3;WphjxT3*Dn>lDI38H~y2;G`fN#yU%5B?-A4PrE z-JS)1cqy*+c(sXHB1{~w|LT|Ss_VvkXYp=5`=zw0%ih5Qv)o9Sv)$@TTSO7}O`hPr1h zy)a#Ep;Crgcjk@jT8&$EOy`+S-SO9D^XAjb@7`OUUQ7Myrrw5UeG`7*8N@zsn=`A$ zOkw^rMOUSb`7bV4A4^U(P(8JAZZIq0Sh>=p;2_`fA1=My!`OBxD#g9>N+p@Jq~wnj zozO-3p7T|v@9kw(H+;7Fu*Lbdg6E412lkq5N`LH?Dq3R~c&GeX_`B3v8-=;npNZzm zxQf#19CQ9P|7RgZ$Mkafmx7ubdET8b55Gu0?e}2A8P|!sTOQn6EN@<4$h{2nm``br(R-9W_EpqBen(2mb;HQ+RRbj&n!Nt*NgmVGXZ~uF z*ttkJXYR-VQC;DxMu_B{opL(tj4%6y&Igvt+?l)g%=Ow$uh(WCv~$_HDkQc^;?{VF z*)q#zRotJaBl~o=>L$$8dR`-NY?0)Rdi7$AuRHvuy`a_7yU;fD?7dT)R@5#_cQG=2fBMc5L(Oa>buSaT;O=6Vzr&e~ zJy{putk+JTa1wDJ=|o!Y-f_S^(qxfi>&R?W%W7CfwsMM=awH|)t>p&&rhbC|2?vzrN#R0x&AJr8;(UD zr(0D{9aFa3X_9OZcwd}?FczFl9y6CChbYh@$0Yq zC=ybCoI>~N_SM}@E&87*ilv)M>q|SEP8cRANb_aBO;+Zf3Q9^8MGAd2DM_{#P~0T< ztgSTD(gj>TH$Ps$O-n_Yi7AQkS&2=A&2<&RZ(~!3(-U_|TRLCD&j@Tf%I8oe<1$<& z2QnN+`(-cSra4Z{P6h2m$IQfqjtf#!;L%mD;y?{Lg^>9AucJ@YZI0Y$sp{SJ?re?Z zW`-HLW&Vy;Xa_ql*c}vLO(K)Dw&vR zFh%fq`+D?{g6bKUpSu3EENoBtoUo!LVf3#(M^FGF$D$(d<_G?}&+P0E{a+x|5%zq%>JMAVgdJM{D< zS%hcLk5B!M#o7~gzrYq33Oy1hT$t(G^1!#zO1RM}CpwioEk29)9hKctE8nAsR8%e& zXVf{I@s-@s@la;8o|RN)8R|}DWfvnM1I_a_`{bAMC7@x&3{LUq{zH<>Pz?j`ai z(B)Rc`|N`g{MHxuoyjh1)sRpGdSvs{qaE0isxd)f>OZDUY&d`D&m)uW{se{y@&Z$n zxUh+^=-=G*)@`j#_@%Mv_kMwH$@!q|g>7+evwl&EO-qx$>Buzw+}kfgrUVLl-Wr$f z`8Kky+@t*5{waUk!Rw!fma+`j{29n9m`QBxyjWn@F6Ltu=SAsyCMrlF%u-bqHu4V0{h zlq?`riHxG4){TI-+pz?E-*LtXd=F7XS_H&3VHS8|w8@s)lGtn;1;xU~Jes5=yU$Z?a35y5_{z3=R$Q^#6HWyhat4N}997rW##v)H;ER95d zQmG>fR>rMZq6pX#(8Gi+iW(%irJ5*aESBz~*;0+MqWOcGVgpNDt|2Zm;y@(FQoN3- z3^BTJZJ3w~E-?{rgAyO)s|~aC`5mADRyCZS2%$enN+RBMKk@F6w4#3pLW9Ar+T zv+)v3PUIR|X;Mxho)sjryTqnK06+beum+^1IE58r zNc+VjT)|)8Y;>UEXaeF4h6H@Bg9Z}&JbhAGdeKkIOHVY#?Xjcru0WD966XeOQwAC= zyoe{QWx`~j5knndzcRLDN;|_t*g47%fm^t_Fm>^8*i|SV%D5K|@8Mp&p+eeCz_)H} zCdqe$byTC7ipT;V!eNzJOtxf1{>CZN;~-rVJ`0Tg=5~BNpnQ8sr1RqYV>%Hh2{;kp zBp>%}st5Lrq~WMAkvC3JVo+dcpscSBjzA!Ff`sofqz4V+dT}(^z*rObwKS3B75I_T zK~v43pHx4b#Ca+qWbMFYq5v8lqCEsMro(3lGewxZ9RcwoFM_Ut%xHOP$Q~ahJsMI| zpb^Lc%~C_I5N6T{W71*2Z8XscS}X%u;^|u9M4iTf^&^lGL280E0W>H}(t!}8Vx&KW zrpCrH;e#4{;e=3;FGbS4WQ=s60j5{OAX2YeknX*@BY8@^@k(;?{*_gnx7gPhgZgdz(Ftg`Up!V zxw1rGDFOm+L(_5mzfDJSec4F%8Q31FpQK-e9Pf&RMe37-1^DJ3D#b3!;27a^oGw!= z)x~vc>SoxbWb|;qGRkyaW86;J*b3iInxX<{e81T#0nrhW(tAipBp#BIdUCAvveOq; zTMu4tHKyR+$aL^>t2M*K94j+LdrYz9i0UJR+aVJpI>OY3B@#ALkOy&c3J00t_$i!B zU1W}v|Cxeg=^|@LNbFv^*wF_0AcZZ^g^LdoxchaHCr-xW#0w{KT|4127o5P&DLv^z z9Mm-vJ%n@rzZpb=hSXj;3*_j3Xb=w0`iZGb4P;E0XK*Mt|K)E%9h;yd7F%XQ|W{yA5uj*h6Lm#a=QS zDE1!QK(T+QD`-ZEBc%IB3U^bGD{(TGBfkf7D*$F#f}W*#9;_8FHV)6 zD}0c!7B4mb-c+Z;Tt~~!)fV4}FgGd+wqn}iZ&PrsC?Xqt2^rv(f~Y=>0uo2R;oBNQ Q__L+32>U%Jz#F0e0;zCj0ssI2 diff --git a/Client/Assets/Test/GameProto.dll.bytes b/Client/Assets/Test/GameProto.dll.bytes index ca8a9fe38eb1d157b73c2ab433109d80eb78ab4f..a4ce0859895ba5560ea461dfb352b554b217bb1d 100644 GIT binary patch delta 469 zcmZorX;7Ka!7@Ym%G8NHGK|+It_){voXp6m&N@e(fgxnFB9qSKNJe$WJChq3>jk%J zFo1yvkYr+DWmq#=kja_T5y)d?U=U=O9K&QS%&pD9uBF7J!NtJ9#h?X7n-?=BGx}d* zU}Lak0Ff)0t^vupVDc8zO@;skkO>nRt})#K8Z;NgV`!7`WMTvImVtQ_8ICYM1oBoQ zc#}g}oXy1;^%%Gro-*h$2s69`lF|&kjLr&*AMKu``fc7vjuz*Pjp}CopRi0U3MxWmPdRtM?u3a;Q<5O}LOt#=qVr64z5)_#n z%kh$lopG`Ur=O^F$%cyzjJ^R(K)qQ&`~etZA11Hm6laYBhEvq!lbp%|33AsKUAgtu zW6Q!58;`F(z&!a6rvtM~Qu<^YE-53Zq=pGp5@eu)bJ;nT`KwpYu@-*55*pkfw;cwt t6(%Z*F>akapG%va;lC<_0)xQji(E#GoB4QtF*Dt;*eodUo^hf9I{+xNa^wI2 delta 488 zcmZorX;7Ka!6JWBWY@$V8OBo+SB5i|O=e_NXPu(Xzz{N7kx6HAB%?axg~^SK^@6K3 z7{I^-NHQ_7GAx-a$mGmn1LQF>FbGbLWwPecl4H`~VqoCXV$)*VyqYPQ(f|&~nV1+R z2XXotGcX)|EqalG(Kmnzs5c#mUjReu1t-EZU|0a1#lQd*X7C4wnE&L9oXP?z%d=eE ztp0e;U3=Iz=S=tV$t+wB?s_SS=`rq!xv2p~`6c;!1u01k!5)rAre+LK;pe zJXSjI4*LyNS5*N&+j-Ea09m_Zavzs8 Ge0Bhwe{~xG diff --git a/Client/Assets/Test/GameProto.pdb.bytes b/Client/Assets/Test/GameProto.pdb.bytes index 7926108ec296221bb845e7a3b23568cdf11e0489..9ee22b5d42715e9c4c850918d259bce7152f56d6 100644 GIT binary patch delta 542 zcmdn8g7Lx%#tA0TcNiELlBT@M!y1@aXfVSDAiDr0?;h&u z0;Cm~7#IwKfPAN%{3IYhLGIe3E4RLSY*~0>4>T0$3N92rNF7KuBg6kdX0SX111p%X6vPgsIe?fG zh!q&v8LkAX1LZQ<)EU?qE(?VL%~E14n>?9Obn-IBB!Lw{@uf#6?sMI;Lt$#+)1bYZ zIhZop7&9jqam?DR$hpOJbGyGF^W=pl!joV4MNOU&WHvd(QDJhDzv|?3L3U1s3FiA4 z4lpuY^t0?+oVU)aDeb}jnrMSM_r%;(pUfn^qSQ3Kl$;!(L&HK&-eFk4z|iA+Kl4Ii zo8xqwAn%|a{oj-Qf+ZyCO8K8LJYZnx+@X+s=))h^-kXBXT)TMmCf5Z^O4uya`VEqN zyl|!PWx@T<8)CF7i&x*+IeC4sq$StQC(9Usfv4nPC-!Obe#eRGXCLz`MTZFhLx)j~ zlaY;uiNlV8k*|`OL5z_b7$S`PoWOu)Vwn6cSV89r;{k@i*I;1*h%k3(US>(9YhHS0 PUMd$*Hb@Mt1gH@JdqR(< delta 533 zcmcbxf^o|V#tA0TR~Q%=lBT@M!xETSXfVSHAUgph?;h&u z0;D;Z7#MVdfPAN%{3IYhWqFp1o7ErBxoZ#G=A7wXe)P5I#Qs!9)`?$L>u&@C6)-R} z+z(`7;0a=6U}9hdLJ+V4i?hM`AW;?uE)+gU9Y`FgCx{s=&%nS6=F11M18EK*<^*DO zplAl0Is+TS3!yNeDN2lGK$4YZ+T{6+{F65@CTvz<%4B1#o7}}QOC-ObBr`X&DzPLp zKaZg(H77N(ICZl!=T_IrF9UNY_XN3azTqdxJUJ}LZ1Tk*JExLI^CvPqU}RX!b@r** zk~*)IQ)9i_YP>ky6LV92GL!U*Qq%NOa&mxiR z`eR$4?eM#`Bs4Fxq|!AnJu@#=FVqvss_QpIXD|Q*v+eee5{d3(Zu1*Y#al%0V`pPz qU}I6|Wdnu@qX6e*mJkKCXN(6J0^fo~1Ub2pOymMe1POy>85jV-IFi5s diff --git a/Client/Assets/UITestMono.cs b/Client/Assets/UITestMono.cs deleted file mode 100644 index 1659bad..0000000 --- a/Client/Assets/UITestMono.cs +++ /dev/null @@ -1,15 +0,0 @@ -using System; -using Sirenix.OdinInspector; -using UnityEngine; -using UnityEngine.InputSystem; - -public class UITestMono : MonoBehaviour -{ - public UXButton button; - - [Button] - public void Select() - { - button.Selected = true; - } -} diff --git a/Client/Assets/UITestMono.cs.meta b/Client/Assets/UITestMono.cs.meta deleted file mode 100644 index 098b164..0000000 --- a/Client/Assets/UITestMono.cs.meta +++ /dev/null @@ -1,2 +0,0 @@ -fileFormatVersion: 2 -guid: 505f6b3030031c24f994c1d4b93fbe20 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.audio/Editor.meta b/Client/Packages/com.alicizax.unity.audio/Editor.meta deleted file mode 100644 index aa06115..0000000 --- a/Client/Packages/com.alicizax.unity.audio/Editor.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: a468f89f8775ad344b122add3a3df2a6 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.audio/Editor/AlicizaX.Audio.Editor.asmdef b/Client/Packages/com.alicizax.unity.audio/Editor/AlicizaX.Audio.Editor.asmdef deleted file mode 100644 index 8bf6348..0000000 --- a/Client/Packages/com.alicizax.unity.audio/Editor/AlicizaX.Audio.Editor.asmdef +++ /dev/null @@ -1,20 +0,0 @@ -{ - "name": "AlicizaX.Audio.Editor", - "rootNamespace": "AlicizaX.Audio.Editor", - "references": [ - "GUID:acfef7cabed3b0a42b25edb1cd4fa259", - "GUID:75b6f2078d190f14dbda4a5b747d709c", - "GUID:198eb6af143bbc4488e2779d96697e06" - ], - "includePlatforms": [ - "Editor" - ], - "excludePlatforms": [], - "allowUnsafeCode": true, - "overrideReferences": false, - "precompiledReferences": [], - "autoReferenced": true, - "defineConstraints": [], - "versionDefines": [], - "noEngineReferences": false -} \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.audio/Editor/AlicizaX.Audio.Editor.asmdef.meta b/Client/Packages/com.alicizax.unity.audio/Editor/AlicizaX.Audio.Editor.asmdef.meta deleted file mode 100644 index abb760b..0000000 --- a/Client/Packages/com.alicizax.unity.audio/Editor/AlicizaX.Audio.Editor.asmdef.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 354e73f64ed57094aa53292cb6a837af -AssemblyDefinitionImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.audio/Editor/AudioComponentInspector.cs b/Client/Packages/com.alicizax.unity.audio/Editor/AudioComponentInspector.cs deleted file mode 100644 index 89c2952..0000000 --- a/Client/Packages/com.alicizax.unity.audio/Editor/AudioComponentInspector.cs +++ /dev/null @@ -1,44 +0,0 @@ -using System; -using AlicizaX.Audio.Runtime; -using AlicizaX.Editor; -using UnityEditor; - -namespace AlicizaX.Audio.Editor -{ - [CustomEditor(typeof(AudioComponent))] - internal sealed class AudioComponentInspector : GameFrameworkInspector - { - private SerializedProperty m_InstanceRoot = null; - private SerializedProperty m_AudioMixer = null; - private SerializedProperty m_AudioGroupConfigs = null; - - public override void OnInspectorGUI() - { - base.OnInspectorGUI(); - - serializedObject.Update(); - - AudioComponent t = (AudioComponent)target; - - EditorGUI.BeginDisabledGroup(EditorApplication.isPlayingOrWillChangePlaymode); - { - EditorGUILayout.PropertyField(m_InstanceRoot); - EditorGUILayout.PropertyField(m_AudioMixer); - - EditorGUILayout.PropertyField(m_AudioGroupConfigs, true); - } - EditorGUI.EndDisabledGroup(); - - serializedObject.ApplyModifiedProperties(); - - Repaint(); - } - - private void OnEnable() - { - m_InstanceRoot = serializedObject.FindProperty("m_InstanceRoot"); - m_AudioMixer = serializedObject.FindProperty("m_AudioMixer"); - m_AudioGroupConfigs = serializedObject.FindProperty("m_AudioGroupConfigs"); - } - } -} diff --git a/Client/Packages/com.alicizax.unity.audio/Editor/AudioComponentInspector.cs.meta b/Client/Packages/com.alicizax.unity.audio/Editor/AudioComponentInspector.cs.meta deleted file mode 100644 index 12f8af5..0000000 --- a/Client/Packages/com.alicizax.unity.audio/Editor/AudioComponentInspector.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 886dba87f6324f2c8b9639a9d4947bff -timeCreated: 1737390298 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.audio/LICENSE.md b/Client/Packages/com.alicizax.unity.audio/LICENSE.md deleted file mode 100644 index 4e6513a..0000000 --- a/Client/Packages/com.alicizax.unity.audio/LICENSE.md +++ /dev/null @@ -1,201 +0,0 @@ - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - -TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - -1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - -2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - -3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - -4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - -5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - -6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - -7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - -8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - -9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - -END OF TERMS AND CONDITIONS - -APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - -Copyright [2023] [ALianBlank of copyright owner][alianblank@outlook.com][https://alianblank.com/] - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. diff --git a/Client/Packages/com.alicizax.unity.audio/LICENSE.md.meta b/Client/Packages/com.alicizax.unity.audio/LICENSE.md.meta deleted file mode 100644 index aaebd86..0000000 --- a/Client/Packages/com.alicizax.unity.audio/LICENSE.md.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 8dfeb44365f40c74bbe24547a7b24d57 -TextScriptImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.audio/Runtime.meta b/Client/Packages/com.alicizax.unity.audio/Runtime.meta deleted file mode 100644 index 6ce0540..0000000 --- a/Client/Packages/com.alicizax.unity.audio/Runtime.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 716ce0c831ca8a748b0054866f8519f2 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.audio/Runtime/AlicizaX.Audio.Runtime.asmdef b/Client/Packages/com.alicizax.unity.audio/Runtime/AlicizaX.Audio.Runtime.asmdef deleted file mode 100644 index b6edb8d..0000000 --- a/Client/Packages/com.alicizax.unity.audio/Runtime/AlicizaX.Audio.Runtime.asmdef +++ /dev/null @@ -1,19 +0,0 @@ -{ - "name": "AlicizaX.Audio.Runtime", - "rootNamespace": "AlicizaX.Audio.Runtime", - "references": [ - "GUID:75b6f2078d190f14dbda4a5b747d709c", - "GUID:f51ebe6a0ceec4240a699833d6309b23", - "GUID:be2f20a77f3232f44b9711ef43234aac", - "GUID:e34a5702dd353724aa315fb8011f08c3" - ], - "includePlatforms": [], - "excludePlatforms": [], - "allowUnsafeCode": true, - "overrideReferences": false, - "precompiledReferences": [], - "autoReferenced": true, - "defineConstraints": [], - "versionDefines": [], - "noEngineReferences": false -} \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.audio/Runtime/AlicizaX.Audio.Runtime.asmdef.meta b/Client/Packages/com.alicizax.unity.audio/Runtime/AlicizaX.Audio.Runtime.asmdef.meta deleted file mode 100644 index 2ea9d57..0000000 --- a/Client/Packages/com.alicizax.unity.audio/Runtime/AlicizaX.Audio.Runtime.asmdef.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 198eb6af143bbc4488e2779d96697e06 -AssemblyDefinitionImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio.meta b/Client/Packages/com.alicizax.unity.audio/Runtime/Audio.meta deleted file mode 100644 index bcc9947..0000000 --- a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 65ab69a3b3c64f22b899938b5234583f -timeCreated: 1737390310 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioAgent.cs b/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioAgent.cs deleted file mode 100644 index f53c018..0000000 --- a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioAgent.cs +++ /dev/null @@ -1,455 +0,0 @@ -using AlicizaX.Resource.Runtime; -using AlicizaX; -using UnityEngine; -using UnityEngine.Audio; -using YooAsset; - -namespace AlicizaX.Audio.Runtime -{ - /// - /// 音频代理辅助器。 - /// - public class AudioAgent - { - private int _instanceId; - private AudioSource _source; - private AudioData _audioData; - private IAudioModule _audioModule; - private IResourceModule _resourceModule; - private Transform _transform; - private float _volume = 1.0f; - private float _duration; - private float _fadeoutTimer; - private const float FADEOUT_DURATION = 0.2f; - private bool _inPool; - - /// - /// 音频代理辅助器运行时状态。 - /// - AudioAgentRuntimeState _audioAgentRuntimeState = AudioAgentRuntimeState.None; - - /// - /// 音频代理加载请求。 - /// - class LoadRequest - { - /// - /// 音频代理辅助器加载路径。 - /// - public string Path; - - /// - /// 是否异步。 - /// - public bool BAsync; - - /// - /// 是否池化。 - /// - public bool BInPool; - } - - /// - /// 音频代理加载请求。 - /// - LoadRequest _pendingLoad = null; - - /// - /// AudioSource实例化Id - /// - public int InstanceId => _instanceId; - - /// - /// 资源操作句柄。 - /// - public AudioData AudioData => _audioData; - - /// - /// 音频代理辅助器音频大小。 - /// - public float Volume - { - set - { - if (_source != null) - { - _volume = value; - _source.volume = _volume; - } - } - get => _volume; - } - - /// - /// 音频代理辅助器当前是否空闲。 - /// - public bool IsFree - { - get - { - if (_source != null) - { - return _audioAgentRuntimeState == AudioAgentRuntimeState.End; - } - else - { - return true; - } - } - } - - /// - /// 音频代理辅助器播放秒数。 - /// - public float Duration => _duration; - - /// - /// 音频代理辅助器当前音频长度。 - /// - public float Length - { - get - { - if (_source != null && _source.clip != null) - { - return _source.clip.length; - } - - return 0; - } - } - - /// - /// 音频代理辅助器实例位置。 - /// - public Vector3 Position - { - get => _transform.position; - set => _transform.position = value; - } - - /// - /// 音频代理辅助器是否循环。 - /// - public bool IsLoop - { - get - { - if (_source != null) - { - return _source.loop; - } - else - { - return false; - } - } - set - { - if (_source != null) - { - _source.loop = value; - } - } - } - - /// - /// 音频代理辅助器是否正在播放。 - /// - internal bool IsPlaying - { - get - { - if (_source != null && _source.isPlaying) - { - return true; - } - else - { - return false; - } - } - } - - /// - /// 音频代理辅助器获取当前声源。 - /// - /// - public AudioSource AudioResource() - { - return _source; - } - - /// - /// 创建音频代理辅助器。 - /// - /// 生效路径。 - /// 是否异步。 - /// 音频轨道(类别)。 - /// 是否池化。 - /// 音频代理辅助器。 - public static AudioAgent Create(string path, bool bAsync, AudioCategory audioCategory, bool bInPool = false) - { - AudioAgent audioAgent = new AudioAgent(); - audioAgent.Init(audioCategory); - audioAgent.Load(path, bAsync, bInPool); - return audioAgent; - } - - public static AudioAgent Create(AudioClip clip, AudioCategory audioCategory) - { - AudioAgent audioAgent = new AudioAgent(); - audioAgent.Init(audioCategory); - audioAgent.SetAudioClip(clip); - return audioAgent; - } - - public void SetAudioClip(AudioClip clip) - { - if (_source == null) - return; - - Stop(false); - - if (_audioData != null) - { - AudioData.DeAlloc(_audioData); - _audioData = null; - } - - _source.clip = clip; - if (clip != null) - { - _source.Play(); - _audioAgentRuntimeState = AudioAgentRuntimeState.Playing; - _duration = 0; - } - else - { - _audioAgentRuntimeState = AudioAgentRuntimeState.End; - } - } - - /// - /// 初始化音频代理辅助器。 - /// - /// 音频轨道(类别)。 - /// 音频代理辅助器编号。 - public void Init(AudioCategory audioCategory, int index = 0) - { - _audioModule = ModuleSystem.GetModule(); - _resourceModule = ModuleSystem.GetModule(); - GameObject host = new GameObject(Utility.Text.Format("Audio Agent Helper - {0} - {1}", audioCategory.AudioMixerGroup.name, index)); - host.transform.SetParent(audioCategory.InstanceRoot); - host.transform.localPosition = Vector3.zero; - _transform = host.transform; - _source = host.AddComponent(); - _source.playOnAwake = false; - AudioMixerGroup[] audioMixerGroups = - audioCategory.AudioMixer.FindMatchingGroups(Utility.Text.Format("Master/{0}/{1}", audioCategory.AudioMixerGroup.name, - $"{audioCategory.AudioMixerGroup.name} - {index}")); - _source.outputAudioMixerGroup = audioMixerGroups.Length > 0 ? audioMixerGroups[0] : audioCategory.AudioMixerGroup; - _source.rolloffMode = audioCategory.AudioGroupConfig.audioRolloffMode; - _source.minDistance = audioCategory.AudioGroupConfig.minDistance; - _source.maxDistance = audioCategory.AudioGroupConfig.maxDistance; - _instanceId = _source.GetInstanceID(); - } - - /// - /// 加载音频代理辅助器。 - /// - /// 资源路径。 - /// 是否异步。 - /// 是否池化。 - public void Load(string path, bool bAsync, bool bInPool = false) - { - _inPool = bInPool; - if (_audioAgentRuntimeState == AudioAgentRuntimeState.None || _audioAgentRuntimeState == AudioAgentRuntimeState.End) - { - _duration = 0; - if (!string.IsNullOrEmpty(path)) - { - if (bInPool && _audioModule.AudioClipPool.TryGetValue(path, out var operationHandle)) - { - OnAssetLoadComplete(operationHandle); - return; - } - - if (bAsync) - { - _audioAgentRuntimeState = AudioAgentRuntimeState.Loading; - AssetHandle handle = _resourceModule.LoadAssetAsyncHandle(path); - handle.Completed += OnAssetLoadComplete; - } - else - { - AssetHandle handle = _resourceModule.LoadAssetSyncHandle(path); - OnAssetLoadComplete(handle); - } - } - } - else - { - _pendingLoad = new LoadRequest { Path = path, BAsync = bAsync, BInPool = bInPool }; - - if (_audioAgentRuntimeState == AudioAgentRuntimeState.Playing) - { - Stop(true); - } - } - } - - /// - /// 停止播放音频代理辅助器。 - /// - /// 是否渐出。 - public void Stop(bool fadeout = false) - { - if (_source != null) - { - if (fadeout) - { - _fadeoutTimer = FADEOUT_DURATION; - _audioAgentRuntimeState = AudioAgentRuntimeState.FadingOut; - } - else - { - _source.Stop(); - _audioAgentRuntimeState = AudioAgentRuntimeState.End; - } - } - } - - /// - /// 暂停音频代理辅助器。 - /// - public void Pause() - { - if (_source != null) - { - _source.Pause(); - } - } - - /// - /// 取消暂停音频代理辅助器。 - /// - public void UnPause() - { - if (_source != null) - { - _source.UnPause(); - } - } - - /// - /// 资源加载完成。 - /// - /// 资源操作句柄。 - void OnAssetLoadComplete(AssetHandle handle) - { - if (handle != null) - { - if (_inPool) - { - _audioModule.AudioClipPool.TryAdd(handle.GetAssetInfo().Address, handle); - } - } - - if (_pendingLoad != null) - { - if (!_inPool && handle != null) - { - handle.Dispose(); - } - - _audioAgentRuntimeState = AudioAgentRuntimeState.End; - string path = _pendingLoad.Path; - bool bAsync = _pendingLoad.BAsync; - bool bInPool = _pendingLoad.BInPool; - _pendingLoad = null; - Load(path, bAsync, bInPool); - } - else if (handle != null) - { - if (_audioData != null) - { - AudioData.DeAlloc(_audioData); - _audioData = null; - } - - _audioData = AudioData.Alloc(handle, _inPool); - - _source.clip = handle.AssetObject as AudioClip; - if (_source.clip != null) - { - _source.Play(); - _audioAgentRuntimeState = AudioAgentRuntimeState.Playing; - } - else - { - _audioAgentRuntimeState = AudioAgentRuntimeState.End; - } - } - else - { - _audioAgentRuntimeState = AudioAgentRuntimeState.End; - } - } - - /// - /// 轮询音频代理辅助器。 - /// - /// 逻辑流逝时间,以秒为单位。 - public void Update(float elapseSeconds) - { - if (_audioAgentRuntimeState == AudioAgentRuntimeState.Playing) - { - if (!_source.isPlaying) - { - _audioAgentRuntimeState = AudioAgentRuntimeState.End; - } - } - else if (_audioAgentRuntimeState == AudioAgentRuntimeState.FadingOut) - { - if (_fadeoutTimer > 0f) - { - _fadeoutTimer -= elapseSeconds; - _source.volume = _volume * _fadeoutTimer / FADEOUT_DURATION; - } - else - { - Stop(); - if (_pendingLoad != null) - { - string path = _pendingLoad.Path; - bool bAsync = _pendingLoad.BAsync; - bool bInPool = _pendingLoad.BInPool; - _pendingLoad = null; - Load(path, bAsync, bInPool); - } - - _source.volume = _volume; - } - } - - _duration += elapseSeconds; - } - - /// - /// 销毁音频代理辅助器。 - /// - public void Destroy() - { - if (_transform != null) - { - Object.Destroy(_transform.gameObject); - } - - if (_audioData != null) - { - AudioData.DeAlloc(_audioData); - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioAgent.cs.meta b/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioAgent.cs.meta deleted file mode 100644 index 1b0c8d4..0000000 --- a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioAgent.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 6d4824a14181a0d4d921eb98fec100fe -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioAgentRuntimeState.cs b/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioAgentRuntimeState.cs deleted file mode 100644 index fe9d325..0000000 --- a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioAgentRuntimeState.cs +++ /dev/null @@ -1,33 +0,0 @@ -namespace AlicizaX.Audio.Runtime -{ - /// - /// 音频代理辅助器运行时状态枚举。 - /// - public enum AudioAgentRuntimeState - { - /// - /// 无状态。 - /// - None, - - /// - /// 加载中状态。 - /// - Loading, - - /// - /// 播放中状态。 - /// - Playing, - - /// - /// 渐渐消失状态。 - /// - FadingOut, - - /// - /// 结束状态。 - /// - End, - }; -} \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioAgentRuntimeState.cs.meta b/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioAgentRuntimeState.cs.meta deleted file mode 100644 index 59ab5a2..0000000 --- a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioAgentRuntimeState.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: f4ad4b8dc4cf4ecd813e58ec37406ba0 -timeCreated: 1694849619 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioCategory.cs b/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioCategory.cs deleted file mode 100644 index 1afede2..0000000 --- a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioCategory.cs +++ /dev/null @@ -1,239 +0,0 @@ -using System; -using System.Collections.Generic; -using UnityEngine; -using UnityEngine.Audio; - -namespace AlicizaX.Audio.Runtime -{ - /// - /// 音频轨道(类别)。 - /// - [Serializable] - public class AudioCategory - { - [SerializeField] private AudioMixer audioMixer = null; - - public List AudioAgents; - private readonly AudioMixerGroup _audioMixerGroup; - private AudioGroupConfig _audioGroupConfig; - private int _maxChannel; - private bool _bEnable = true; - - /// - /// 音频混响器。 - /// - public AudioMixer AudioMixer => audioMixer; - - /// - /// 音频混响器组。 - /// - public AudioMixerGroup AudioMixerGroup => _audioMixerGroup; - - /// - /// 音频组配置。 - /// - public AudioGroupConfig AudioGroupConfig => _audioGroupConfig; - - /// - /// 实例化根节点。 - /// - public Transform InstanceRoot { private set; get; } - - /// - /// 音频轨道是否启用。 - /// - public bool Enable - { - get => _bEnable; - set - { - if (_bEnable != value) - { - _bEnable = value; - if (!_bEnable) - { - foreach (var audioAgent in AudioAgents) - { - if (audioAgent != null) - { - audioAgent.Stop(); - } - } - } - } - } - } - - /// - /// 音频轨道构造函数。 - /// - /// 最大Channel。 - /// 音频混响器。 - /// 音频轨道组配置。 - public AudioCategory(int maxChannel, AudioMixer audioMixer, AudioGroupConfig audioGroupConfig) - { - var audioModule = ModuleSystem.GetModule(); - - this.audioMixer = audioMixer; - _maxChannel = maxChannel; - _audioGroupConfig = audioGroupConfig; - AudioMixerGroup[] audioMixerGroups = audioMixer.FindMatchingGroups(Utility.Text.Format("Master/{0}", audioGroupConfig.AudioType.ToString())); - if (audioMixerGroups.Length > 0) - { - _audioMixerGroup = audioMixerGroups[0]; - } - else - { - _audioMixerGroup = audioMixer.FindMatchingGroups("Master")[0]; - } - - AudioAgents = new List(32); - InstanceRoot = new GameObject(Utility.Text.Format("Audio Category - {0}", _audioMixerGroup.name)).transform; - InstanceRoot.SetParent(audioModule.InstanceRoot); - for (int index = 0; index < _maxChannel; index++) - { - AudioAgent audioAgent = new AudioAgent(); - audioAgent.Init(this, index); - AudioAgents.Add(audioAgent); - } - } - - /// - /// 增加音频。 - /// - /// - public void AddAudio(int num) - { - _maxChannel += num; - for (int i = 0; i < num; i++) - { - AudioAgents.Add(null); - } - } - - public AudioAgent Play(AudioClip clip) - { - if (!_bEnable) - { - return null; - } - - int freeChannel = -1; - float duration = -1; - - for (int i = 0; i < AudioAgents.Count; i++) - { - if (AudioAgents[i].IsFree) - { - freeChannel = i; - break; - } - else if (AudioAgents[i].Duration > duration) - { - duration = AudioAgents[i].Duration; - freeChannel = i; - } - } - - if (freeChannel >= 0) - { - if (AudioAgents[freeChannel] == null) - { - AudioAgents[freeChannel] = AudioAgent.Create(clip, this); - } - else - { - AudioAgents[freeChannel].SetAudioClip(clip); - } - - return AudioAgents[freeChannel]; - } - else - { - Log.Error($"Here is no channel to play audio clip"); - return null; - } - } - - /// - /// 播放音频。 - /// - /// - /// - /// - /// - public AudioAgent Play(string path, bool bAsync, bool bInPool = false) - { - if (!_bEnable) - { - return null; - } - - int freeChannel = -1; - float duration = -1; - - for (int i = 0; i < AudioAgents.Count; i++) - { - if (AudioAgents[i].AudioData?.AssetHandle == null || AudioAgents[i].IsFree) - { - freeChannel = i; - break; - } - else if (AudioAgents[i].Duration > duration) - { - duration = AudioAgents[i].Duration; - freeChannel = i; - } - } - - if (freeChannel >= 0) - { - if (AudioAgents[freeChannel] == null) - { - AudioAgents[freeChannel] = AudioAgent.Create(path, bAsync, this, bInPool); - } - else - { - AudioAgents[freeChannel].Load(path, bAsync, bInPool); - } - - return AudioAgents[freeChannel]; - } - else - { - Log.Error($"Here is no channel to play audio {path}"); - return null; - } - } - - /// - /// 暂停音频。 - /// - /// 是否渐出 - public void Stop(bool fadeout) - { - for (int i = 0; i < AudioAgents.Count; ++i) - { - if (AudioAgents[i] != null) - { - AudioAgents[i].Stop(fadeout); - } - } - } - - /// - /// 音频轨道轮询。 - /// - /// 逻辑流逝时间,以秒为单位。 - public void Update(float elapseSeconds) - { - for (int i = 0; i < AudioAgents.Count; ++i) - { - if (AudioAgents[i] != null) - { - AudioAgents[i].Update(elapseSeconds); - } - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioCategory.cs.meta b/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioCategory.cs.meta deleted file mode 100644 index 04711aa..0000000 --- a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioCategory.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 6aefbd5a06fe1784590d373a93d1cf8a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioComponent.cs b/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioComponent.cs deleted file mode 100644 index 3a42305..0000000 --- a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioComponent.cs +++ /dev/null @@ -1,48 +0,0 @@ -using AlicizaX; -using UnityEngine; -using UnityEngine.Audio; - -namespace AlicizaX.Audio.Runtime -{ - /// - /// 音效管理,为游戏提供统一的音效播放接口。 - /// - /// 场景3D音效挂到场景物件、技能3D音效挂到技能特效上,并在AudioSource的Output上设置对应分类的AudioMixerGroup - [DisallowMultipleComponent] - [AddComponentMenu("Game Framework/Audio")] - public sealed class AudioComponent : MonoBehaviour - { - [SerializeField] private AudioMixer m_AudioMixer; - - [SerializeField] private Transform m_InstanceRoot = null; - - [SerializeField] private AudioGroupConfig[] m_AudioGroupConfigs = null; - - private IAudioModule _audioModule; - - private void Awake() - { - _audioModule = ModuleSystem.RegisterModule(); - } - - /// - /// 初始化音频模块。 - /// - void Start() - { - if (m_InstanceRoot == null) - { - m_InstanceRoot = new GameObject("[AudioModule Instances]").transform; - m_InstanceRoot.SetParent(gameObject.transform); - m_InstanceRoot.localScale = Vector3.one; - } - - if (m_AudioMixer == null) - { - m_AudioMixer = Resources.Load("AudioMixer"); - } - - _audioModule.Initialize(m_AudioGroupConfigs, m_InstanceRoot, m_AudioMixer); - } - } -} diff --git a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioComponent.cs.meta b/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioComponent.cs.meta deleted file mode 100644 index 0ad9335..0000000 --- a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioComponent.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 7d0b3cff83fd3874394b1b456bb54dab -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioData.cs b/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioData.cs deleted file mode 100644 index ce5732d..0000000 --- a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioData.cs +++ /dev/null @@ -1,67 +0,0 @@ -using AlicizaX; -using YooAsset; - -namespace AlicizaX.Audio.Runtime -{ - /// - /// 音频数据。 - /// - public class AudioData : MemoryObject - { - /// - /// 资源句柄。 - /// - public AssetHandle AssetHandle { private set; get; } - - /// - /// 是否使用对象池。 - /// - public bool InPool { private set; get; } = false; - - public override void InitFromPool() - { - } - - /// - /// 回收到对象池。 - /// - public override void RecycleToPool() - { - if (!InPool) - { - AssetHandle.Dispose(); - } - - InPool = false; - AssetHandle = null; - } - - /// - /// 生成音频数据。 - /// - /// 资源操作句柄。 - /// 是否使用对象池。 - /// 音频数据。 - internal static AudioData Alloc(AssetHandle assetHandle, bool inPool) - { - AudioData ret = MemoryPool.Acquire(); - ret.AssetHandle = assetHandle; - ret.InPool = inPool; - ret.InitFromPool(); - return ret; - } - - /// - /// 回收音频数据。 - /// - /// - internal static void DeAlloc(AudioData audioData) - { - if (audioData != null) - { - MemoryPool.Release(audioData); - audioData.RecycleToPool(); - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioData.cs.meta b/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioData.cs.meta deleted file mode 100644 index 429452f..0000000 --- a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioData.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 036a1af4acb84666b73909ba28455cfa -timeCreated: 1742472335 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioGroupConfig.cs b/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioGroupConfig.cs deleted file mode 100644 index 469ae2e..0000000 --- a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioGroupConfig.cs +++ /dev/null @@ -1,48 +0,0 @@ -using System; -using UnityEngine; - -namespace AlicizaX.Audio.Runtime -{ - /// - /// 音频轨道组配置。 - /// - [Serializable] - public sealed class AudioGroupConfig - { - [SerializeField] private string m_Name = null; - - [SerializeField] private bool m_Mute = false; - - [SerializeField, Range(0f, 1f)] private float m_Volume = 1f; - - [SerializeField] private int m_AgentHelperCount = 1; - - public AudioType AudioType; - - public AudioRolloffMode audioRolloffMode = AudioRolloffMode.Logarithmic; - - public float minDistance = 1f; - - public float maxDistance = 500f; - - public string Name - { - get { return m_Name; } - } - - public bool Mute - { - get { return m_Mute; } - } - - public float Volume - { - get { return m_Volume; } - } - - public int AgentHelperCount - { - get { return m_AgentHelperCount; } - } - } -} \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioGroupConfig.cs.meta b/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioGroupConfig.cs.meta deleted file mode 100644 index 2a2bb7c..0000000 --- a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioGroupConfig.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 067935df275fd1340a935f81e7f3a768 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioModule.cs b/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioModule.cs deleted file mode 100644 index d5fdbad..0000000 --- a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioModule.cs +++ /dev/null @@ -1,593 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Reflection; -using AlicizaX.Resource.Runtime; -using AlicizaX; -using UnityEngine; -using UnityEngine.Audio; -using YooAsset; -using AudioType = AlicizaX.Audio.Runtime.AudioType; - - -namespace AlicizaX.Audio.Runtime -{ - internal class AudioModule : IAudioModule - { - public const string MUSIC_VOLUME_NAME = "MusicVolume"; - public const string UI_SOUND_VOLUME_NAME = "UISoundVolume"; - public const string VOICE_VOLUME_NAME = "VoiceVolume"; - - private AudioMixer _audioMixer; - private Transform _instanceRoot = null; - private AudioGroupConfig[] _audioGroupConfigs = null; - - private float _volume = 1f; - private bool _enable = true; - private readonly AudioCategory[] _audioCategories = new AudioCategory[(int)AudioType.Max]; - private readonly float[] _categoriesVolume = new float[(int)AudioType.Max]; - private bool _bUnityAudioDisabled = false; - - #region Public Propreties - - public Dictionary AudioClipPool { get; set; } = new Dictionary(); - - /// - /// 音频混响器。 - /// - public AudioMixer AudioMixer => _audioMixer; - - /// - /// 实例化根节点。 - /// - public Transform InstanceRoot => _instanceRoot; - - /// - /// 总音量控制。 - /// - public float Volume - { - get - { - if (_bUnityAudioDisabled) - { - return 0.0f; - } - - return _volume; - } - set - { - if (_bUnityAudioDisabled) - { - return; - } - - _volume = value; - AudioListener.volume = _volume; - } - } - - /// - /// 总开关。 - /// - public bool Enable - { - get - { - if (_bUnityAudioDisabled) - { - return false; - } - - return _enable; - } - set - { - if (_bUnityAudioDisabled) - { - return; - } - - _enable = value; - AudioListener.volume = _enable ? _volume : 0f; - } - } - - /// - /// 音乐音量。 - /// - public float MusicVolume - { - get - { - if (_bUnityAudioDisabled) - { - return 0.0f; - } - - return _categoriesVolume[(int)AudioType.Music]; - } - set - { - if (_bUnityAudioDisabled) - { - return; - } - - float volume = Mathf.Clamp(value, 0.0001f, 1.0f); - _categoriesVolume[(int)AudioType.Music] = volume; - _audioMixer.SetFloat(MUSIC_VOLUME_NAME, Mathf.Log10(volume) * 20f); - } - } - - /// - /// 音效音量。 - /// - public float SoundVolume - { - get - { - if (_bUnityAudioDisabled) - { - return 0.0f; - } - - return _categoriesVolume[(int)AudioType.Sound]; - } - set - { - if (_bUnityAudioDisabled) - { - return; - } - - float volume = Mathf.Clamp(value, 0.0001f, 1.0f); - _categoriesVolume[(int)AudioType.Sound] = volume; - _audioMixer.SetFloat("SoundVolume", Mathf.Log10(volume) * 20f); - } - } - - /// - /// UI音效音量。 - /// - public float UISoundVolume - { - get - { - if (_bUnityAudioDisabled) - { - return 0.0f; - } - - return _categoriesVolume[(int)AudioType.UISound]; - } - set - { - if (_bUnityAudioDisabled) - { - return; - } - - float volume = Mathf.Clamp(value, 0.0001f, 1.0f); - _categoriesVolume[(int)AudioType.UISound] = volume; - _audioMixer.SetFloat(UI_SOUND_VOLUME_NAME, Mathf.Log10(volume) * 20f); - } - } - - /// - /// 语音音量。 - /// - public float VoiceVolume - { - get - { - if (_bUnityAudioDisabled) - { - return 0.0f; - } - - return _categoriesVolume[(int)AudioType.Voice]; - } - set - { - if (_bUnityAudioDisabled) - { - return; - } - - float volume = Mathf.Clamp(value, 0.0001f, 1.0f); - _categoriesVolume[(int)AudioType.Voice] = volume; - _audioMixer.SetFloat(VOICE_VOLUME_NAME, Mathf.Log10(volume) * 20f); - } - } - - /// - /// 音乐开关 - /// - public bool MusicEnable - { - get - { - if (_bUnityAudioDisabled) - { - return false; - } - - if (_audioMixer.GetFloat(MUSIC_VOLUME_NAME, out var db)) - { - return db > -80f; - } - else - { - return false; - } - } - set - { - if (_bUnityAudioDisabled) - { - return; - } - - _audioCategories[(int)AudioType.Music].Enable = value; - - // 音乐采用0音量方式,避免恢复播放时的复杂逻辑 - if (value) - { - _audioMixer.SetFloat(MUSIC_VOLUME_NAME, Mathf.Log10(_categoriesVolume[(int)AudioType.Music]) * 20f); - } - else - { - _audioMixer.SetFloat(MUSIC_VOLUME_NAME, -80f); - } - } - } - - /// - /// 音效开关。 - /// - public bool SoundEnable - { - get - { - if (_bUnityAudioDisabled) - { - return false; - } - - return _audioCategories[(int)AudioType.Sound].Enable; - } - set - { - if (_bUnityAudioDisabled) - { - return; - } - - _audioCategories[(int)AudioType.Sound].Enable = value; - } - } - - /// - /// UI音效开关。 - /// - public bool UISoundEnable - { - get - { - if (_bUnityAudioDisabled) - { - return false; - } - - return _audioCategories[(int)AudioType.UISound].Enable; - } - set - { - if (_bUnityAudioDisabled) - { - return; - } - - _audioCategories[(int)AudioType.UISound].Enable = value; - } - } - - /// - /// 语音开关。 - /// - public bool VoiceEnable - { - get - { - if (_bUnityAudioDisabled) - { - return false; - } - - return _audioCategories[(int)AudioType.Voice].Enable; - } - set - { - if (_bUnityAudioDisabled) - { - return; - } - - _audioCategories[(int)AudioType.Voice].Enable = value; - } - } - - #endregion - - private IResourceModule _resourceModule; - - - void IModule.Dispose() - { - StopAll(fadeout: false); - CleanSoundPool(); - } - - /// - /// 初始化音频模块。 - /// - /// 音频轨道组配置。 - /// 实例化根节点。 - /// 音频混响器。 - /// - public void Initialize(AudioGroupConfig[] audioGroupConfigs, Transform instanceRoot = null, AudioMixer audioMixer = null) - { - _resourceModule = ModuleSystem.GetModule(); - if (_instanceRoot == null) - { - _instanceRoot = instanceRoot; - } - - if (audioGroupConfigs == null) - { - throw new GameFrameworkException("AudioGroupConfig[] is invalid."); - } - - _audioGroupConfigs = audioGroupConfigs; - - if (_instanceRoot == null) - { - _instanceRoot = new GameObject("[AudioModule Instances]").transform; - _instanceRoot.localScale = Vector3.one; - UnityEngine.Object.DontDestroyOnLoad(_instanceRoot); - } - -#if UNITY_EDITOR - try - { - TypeInfo typeInfo = typeof(AudioSettings).GetTypeInfo(); - PropertyInfo propertyInfo = typeInfo.GetDeclaredProperty("unityAudioDisabled"); - _bUnityAudioDisabled = (bool)propertyInfo.GetValue(null); - if (_bUnityAudioDisabled) - { - return; - } - } - catch (Exception e) - { - Log.Error(e.ToString()); - } -#endif - - if (audioMixer != null) - { - _audioMixer = audioMixer; - } - - if (_audioMixer == null) - { - _audioMixer = Resources.Load("AudioMixer"); - } - - for (int index = 0; index < (int)AudioType.Max; ++index) - { - AudioType audioType = (AudioType)index; - AudioGroupConfig audioGroupConfig = _audioGroupConfigs.First(t => t.AudioType == audioType); - _audioCategories[index] = new AudioCategory(audioGroupConfig.AgentHelperCount, _audioMixer, audioGroupConfig); - _categoriesVolume[index] = audioGroupConfig.Volume; - } - } - - /// - /// 重启音频模块。 - /// - public void Restart() - { - if (_bUnityAudioDisabled) - { - return; - } - - CleanSoundPool(); - - for (int i = 0; i < (int)AudioType.Max; ++i) - { - var audioCategory = _audioCategories[i]; - if (audioCategory != null) - { - for (int j = 0; j < audioCategory.AudioAgents.Count; ++j) - { - var audioAgent = audioCategory.AudioAgents[j]; - if (audioAgent != null) - { - audioAgent.Destroy(); - audioAgent = null; - } - } - } - - audioCategory = null; - } - - Initialize(_audioGroupConfigs); - } - - /// - /// 播放,如果超过最大发声数采用fadeout的方式复用最久播放的AudioSource。 - /// - /// 声音类型 - /// 声音文件路径 - /// 是否循环播放> - /// 音量(0-1.0) - /// 是否异步加载 - /// 是否支持资源池 - public AudioAgent Play(AudioType type, string path, bool bLoop = false, float volume = 1.0f, bool bAsync = false, bool bInPool = false) - { - if (_bUnityAudioDisabled) - { - return null; - } - - AudioAgent audioAgent = _audioCategories[(int)type].Play(path, bAsync, bInPool); - { - if (audioAgent != null) - { - audioAgent.IsLoop = bLoop; - audioAgent.Volume = volume; - } - - return audioAgent; - } - } - - public AudioAgent Play(AudioType type, AudioClip clip, bool bLoop = false, float volume = 1.0f) - { - if (_bUnityAudioDisabled) - { - return null; - } - - AudioAgent audioAgent = _audioCategories[(int)type].Play(clip); - { - if (audioAgent != null) - { - audioAgent.IsLoop = bLoop; - audioAgent.Volume = volume; - } - - return audioAgent; - } - } - - /// - /// 停止某类声音播放。 - /// - /// 声音类型。 - /// 是否渐消。 - public void Stop(AudioType type, bool fadeout) - { - if (_bUnityAudioDisabled) - { - return; - } - - _audioCategories[(int)type].Stop(fadeout); - } - - /// - /// 停止所有声音。 - /// - /// 是否渐消。 - public void StopAll(bool fadeout) - { - if (_bUnityAudioDisabled) - { - return; - } - - for (int i = 0; i < (int)AudioType.Max; ++i) - { - if (_audioCategories[i] != null) - { - _audioCategories[i].Stop(fadeout); - } - } - } - - /// - /// 预先加载AudioClip,并放入对象池。 - /// - /// AudioClip的AssetPath集合。 - public void PutInAudioPool(List list) - { - if (_bUnityAudioDisabled) - { - return; - } - - foreach (string path in list) - { - if (AudioClipPool != null && !AudioClipPool.ContainsKey(path)) - { - AssetHandle assetData = _resourceModule.LoadAssetAsyncHandle(path); - assetData.Completed += handle => { AudioClipPool?.Add(path, handle); }; - } - } - } - - /// - /// 将部分AudioClip从对象池移出。 - /// - /// AudioClip的AssetPath集合。 - public void RemoveClipFromPool(List list) - { - if (_bUnityAudioDisabled) - { - return; - } - - foreach (string path in list) - { - if (AudioClipPool.ContainsKey(path)) - { - AudioClipPool[path].Dispose(); - AudioClipPool.Remove(path); - } - } - } - - /// - /// 清空AudioClip的对象池。 - /// - public void CleanSoundPool() - { - if (_bUnityAudioDisabled) - { - return; - } - - foreach (var dic in AudioClipPool) - { - dic.Value.Dispose(); - } - - AudioClipPool.Clear(); - } - - /// - /// 音频模块轮询。 - /// - /// 逻辑流逝时间,以秒为单位。 - /// 真实流逝时间,以秒为单位。 - void IModuleUpdate.Update(float elapseSeconds, float realElapseSeconds) - { - foreach (var audioCategory in _audioCategories) - { - if (audioCategory != null) - { - audioCategory.Update(elapseSeconds); - } - } - } - - - public int Priority { get; } - } -} diff --git a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioModule.cs.meta b/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioModule.cs.meta deleted file mode 100644 index c67de97..0000000 --- a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioModule.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: c35bbf6a82844c72b71b9bbe44f44a1e -timeCreated: 1694847017 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioType.cs b/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioType.cs deleted file mode 100644 index 82f0014..0000000 --- a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioType.cs +++ /dev/null @@ -1,34 +0,0 @@ -namespace AlicizaX.Audio.Runtime -{ - /// - /// 音效分类,可分别关闭/开启对应分类音效。 - /// - /// 命名与AudioMixer中分类名保持一致。 - public enum AudioType - { - /// - /// 声音音效。 - /// - Sound, - - /// - /// UI声效。 - /// - UISound, - - /// - /// 背景音乐音效。 - /// - Music, - - /// - /// 人声音效。 - /// - Voice, - - /// - /// 最大。 - /// - Max - } -} \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioType.cs.meta b/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioType.cs.meta deleted file mode 100644 index 2353c7c..0000000 --- a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/AudioType.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b4b86f93180273b4996d4f8c428def09 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/IAudioModule.cs b/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/IAudioModule.cs deleted file mode 100644 index b46f74e..0000000 --- a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/IAudioModule.cs +++ /dev/null @@ -1,130 +0,0 @@ -using System.Collections.Generic; -using AlicizaX; -using UnityEngine; -using UnityEngine.Audio; -using YooAsset; - -namespace AlicizaX.Audio.Runtime -{ - public interface IAudioModule:IModule,IModuleUpdate - { - /// - /// 总音量控制。 - /// - public float Volume { get; set; } - - /// - /// 总开关。 - /// - public bool Enable { get; set; } - - /// - /// 音乐音量 - /// - public float MusicVolume { get; set; } - - /// - /// 音效音量。 - /// - public float SoundVolume { get; set; } - - /// - /// UI音效音量。 - /// - public float UISoundVolume { get; set; } - - /// - /// 语音音量。 - /// - public float VoiceVolume { get; set; } - - /// - /// 音乐开关。 - /// - public bool MusicEnable { get; set; } - - /// - /// 音效开关。 - /// - public bool SoundEnable { get; set; } - - /// - /// UI音效开关。 - /// - public bool UISoundEnable { get; set; } - - /// - /// 语音开关。 - /// - public bool VoiceEnable { get; set; } - - /// - /// 音频混响器。 - /// - public AudioMixer AudioMixer { get;} - - /// - /// 实例化根节点。 - /// - public Transform InstanceRoot { get;} - - public Dictionary AudioClipPool { get; set; } - - /// - /// 初始化音频模块。 - /// - /// 音频轨道组配置。 - /// 实例化根节点。 - /// 音频混响器。 - /// - public void Initialize(AudioGroupConfig[] audioGroupConfigs, Transform instanceRoot = null, AudioMixer audioMixer = null); - - /// - /// 重启音频模块。 - /// - public void Restart(); - - /// - /// 播放音频接口。 - /// - /// 如果超过最大发声数采用fadeout的方式复用最久播放的AudioSource。 - /// 声音类型。 - /// 声音文件路径。 - /// 是否循环播放。> - /// 音量(0-1.0)。 - /// 是否异步加载。 - /// 是否支持资源池。 - public AudioAgent Play(AudioType type, string path, bool bLoop = false, float volume = 1.0f, bool bAsync = false, bool bInPool = false); - - public AudioAgent Play(AudioType type,AudioClip clip,bool loop=false,float volume = 1.0f); - /// - /// 停止某类声音播放。 - /// - /// 声音类型。 - /// 是否渐消。 - public void Stop(AudioType type, bool fadeout); - - /// - /// 停止所有声音。 - /// - /// 是否渐消。 - public void StopAll(bool fadeout); - - /// - /// 预先加载AudioClip,并放入对象池。 - /// - /// AudioClip的AssetPath集合。 - public void PutInAudioPool(List list); - - /// - /// 将部分AudioClip从对象池移出。 - /// - /// AudioClip的AssetPath集合。 - public void RemoveClipFromPool(List list); - - /// - /// 清空AudioClip的对象池。 - /// - public void CleanSoundPool(); - } -} diff --git a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/IAudioModule.cs.meta b/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/IAudioModule.cs.meta deleted file mode 100644 index cd3170b..0000000 --- a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/IAudioModule.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: f2a332020228453d8546d5d74aa60f9c -timeCreated: 1694847151 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/Resources.meta b/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/Resources.meta deleted file mode 100644 index 270c429..0000000 --- a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/Resources.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 64a654fc0d761c24e9676a185ea4df8e -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/Resources/AudioMixer.mixer b/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/Resources/AudioMixer.mixer deleted file mode 100644 index 284455c..0000000 --- a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/Resources/AudioMixer.mixer +++ /dev/null @@ -1,708 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!244 &-8255999005317483048 -AudioMixerEffectController: - m_ObjectHideFlags: 3 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: - m_EffectID: 5256fbc85eb3f884eb780f730c8da825 - m_EffectName: Attenuation - m_MixLevel: 989fcb1cc28d4de4ea6e56c14101e674 - m_Parameters: [] - m_SendTarget: {fileID: 0} - m_EnableWetMix: 0 - m_Bypass: 0 ---- !u!244 &-8165904320333843496 -AudioMixerEffectController: - m_ObjectHideFlags: 3 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: - m_EffectID: 6b8ac75d99b7e57489701e084ea19b1f - m_EffectName: Attenuation - m_MixLevel: b19e64315aff6dc4a81ae36b22fc0492 - m_Parameters: [] - m_SendTarget: {fileID: 0} - m_EnableWetMix: 0 - m_Bypass: 0 ---- !u!244 &-7861682458482441818 -AudioMixerEffectController: - m_ObjectHideFlags: 3 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: - m_EffectID: dcc48474d251d554e9f6f95668853a39 - m_EffectName: Receive - m_MixLevel: e6248274fab455749bc046d72eace6de - m_Parameters: [] - m_SendTarget: {fileID: 0} - m_EnableWetMix: 0 - m_Bypass: 0 ---- !u!243 &-7758028812591520460 -AudioMixerGroupController: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: Sound - 2 - m_AudioMixer: {fileID: 24100000} - m_GroupID: 039cd795affa7134a8d5f5d43d3b659d - m_Children: [] - m_Volume: 2a8ce0f3383c3f0468a04fa3fc5e317d - m_Pitch: b47f0c73299cd9b4fba9896e70683903 - m_Send: 00000000000000000000000000000000 - m_Effects: - - {fileID: -3825599753161013374} - m_UserColorIndex: 2 - m_Mute: 0 - m_Solo: 0 - m_BypassEffects: 0 ---- !u!243 &-6280614258348125054 -AudioMixerGroupController: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: Sound - 1 - m_AudioMixer: {fileID: 24100000} - m_GroupID: c0d40106c2ffb1a44bd48f50b210ee20 - m_Children: [] - m_Volume: f62a8b3fe89df00409532af739ee4e02 - m_Pitch: 77212647508232a458ac7d48fb55d037 - m_Send: 00000000000000000000000000000000 - m_Effects: - - {fileID: -1890011256548497850} - m_UserColorIndex: 2 - m_Mute: 0 - m_Solo: 0 - m_BypassEffects: 0 ---- !u!244 &-4958177229083455073 -AudioMixerEffectController: - m_ObjectHideFlags: 3 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: - m_EffectID: 104113b95764fe344a5d25469377c800 - m_EffectName: Attenuation - m_MixLevel: 9ef29befaad178d4386e9d5ac022f964 - m_Parameters: [] - m_SendTarget: {fileID: 0} - m_EnableWetMix: 0 - m_Bypass: 0 ---- !u!243 &-4372808504093502661 -AudioMixerGroupController: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: Sound - 3 - m_AudioMixer: {fileID: 24100000} - m_GroupID: 5f20d1b8f9ac1914dac8beae718e7d40 - m_Children: [] - m_Volume: e54edf7c1bf7ee44297e65adce5b10b7 - m_Pitch: 8542b6bfd7b7bfc4d9b961ba97edf0d2 - m_Send: 00000000000000000000000000000000 - m_Effects: - - {fileID: 6637688299338053042} - m_UserColorIndex: 2 - m_Mute: 0 - m_Solo: 0 - m_BypassEffects: 0 ---- !u!243 &-4209890294574411305 -AudioMixerGroupController: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: Music - m_AudioMixer: {fileID: 24100000} - m_GroupID: efe8591c00084024187b9df78858c0af - m_Children: - - {fileID: 1543978434442340687} - m_Volume: 6d4c2b8bc0ef38d44b2fbff2b3298ab4 - m_Pitch: 862389c428a73854ab442dd043008729 - m_Send: 00000000000000000000000000000000 - m_Effects: - - {fileID: 246003612463095956} - m_UserColorIndex: 1 - m_Mute: 0 - m_Solo: 0 - m_BypassEffects: 0 ---- !u!244 &-3825599753161013374 -AudioMixerEffectController: - m_ObjectHideFlags: 3 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: - m_EffectID: d1bbcc7cbe0a53c459c9064925118e41 - m_EffectName: Attenuation - m_MixLevel: e43bb5de098a2ec49807913fa5fdd2f7 - m_Parameters: [] - m_SendTarget: {fileID: 0} - m_EnableWetMix: 0 - m_Bypass: 0 ---- !u!243 &-3720557753501792270 -AudioMixerGroupController: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: UISound - 1 - m_AudioMixer: {fileID: 24100000} - m_GroupID: e012b6d2e0501df43a88eb6beff8ae07 - m_Children: [] - m_Volume: 265eaf7c8910ab842a845c7bb5e570c4 - m_Pitch: bf3ca9b57c9a67b40944a59839b12f62 - m_Send: 00000000000000000000000000000000 - m_Effects: - - {fileID: 5734415080786067514} - m_UserColorIndex: 3 - m_Mute: 0 - m_Solo: 0 - m_BypassEffects: 0 ---- !u!243 &-3395020342500439107 -AudioMixerGroupController: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: Voice - m_AudioMixer: {fileID: 24100000} - m_GroupID: 5117f9b5a365ec049a9d5891c563b893 - m_Children: - - {fileID: -1649243360580130678} - m_Volume: fe15a1b40c14ea646a13dacb15b6a73b - m_Pitch: 3398197a464677a4186e0cecd66bb13c - m_Send: 00000000000000000000000000000000 - m_Effects: - - {fileID: -8165904320333843496} - m_UserColorIndex: 6 - m_Mute: 0 - m_Solo: 0 - m_BypassEffects: 0 ---- !u!243 &-2659745067392564156 -AudioMixerGroupController: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: Sound - 0 - m_AudioMixer: {fileID: 24100000} - m_GroupID: 71c50c6b966d1f548a63193919ebfbad - m_Children: [] - m_Volume: 7835f2c4248cb3e43a1a773bab1f8b9d - m_Pitch: 30975daa872456b41bc18e0277e301e6 - m_Send: 00000000000000000000000000000000 - m_Effects: - - {fileID: -284252157345190109} - m_UserColorIndex: 2 - m_Mute: 0 - m_Solo: 0 - m_BypassEffects: 0 ---- !u!244 &-1890011256548497850 -AudioMixerEffectController: - m_ObjectHideFlags: 3 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: - m_EffectID: 520975c71ea21c249b3cdf1f22032e57 - m_EffectName: Attenuation - m_MixLevel: 932e3e893621c5b46bff3c368017e689 - m_Parameters: [] - m_SendTarget: {fileID: 0} - m_EnableWetMix: 0 - m_Bypass: 0 ---- !u!243 &-1649243360580130678 -AudioMixerGroupController: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: Voice - 0 - m_AudioMixer: {fileID: 24100000} - m_GroupID: f46651e8ad3c6034b8764fd635dda3fd - m_Children: [] - m_Volume: 0bc64c1c6cebbeb40ba2f724fdcaa257 - m_Pitch: fff252bdd985513469f8607e016fc594 - m_Send: 00000000000000000000000000000000 - m_Effects: - - {fileID: -890847686165078200} - m_UserColorIndex: 6 - m_Mute: 0 - m_Solo: 0 - m_BypassEffects: 0 ---- !u!244 &-998299258853400712 -AudioMixerEffectController: - m_ObjectHideFlags: 3 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: - m_EffectID: d7d19927abbe5584080506164cb4e644 - m_EffectName: Attenuation - m_MixLevel: 0b4264524e3eafc49b2daba7fba2ce97 - m_Parameters: [] - m_SendTarget: {fileID: 0} - m_EnableWetMix: 0 - m_Bypass: 0 ---- !u!244 &-890847686165078200 -AudioMixerEffectController: - m_ObjectHideFlags: 3 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: - m_EffectID: 4b41d8aa7a7944041a8b9428add83eff - m_EffectName: Attenuation - m_MixLevel: 73b7a9825978be245a1962a1001b0212 - m_Parameters: [] - m_SendTarget: {fileID: 0} - m_EnableWetMix: 0 - m_Bypass: 0 ---- !u!244 &-284252157345190109 -AudioMixerEffectController: - m_ObjectHideFlags: 3 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: - m_EffectID: 15668b74147caee41a72f695c3a2de56 - m_EffectName: Attenuation - m_MixLevel: f71e84fb9a62ff24cad690a0a86cc47e - m_Parameters: [] - m_SendTarget: {fileID: 0} - m_EnableWetMix: 0 - m_Bypass: 0 ---- !u!244 &-21257493329335984 -AudioMixerEffectController: - m_ObjectHideFlags: 3 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: - m_EffectID: c9a6f7a9214534644bf2e6d83ff86569 - m_EffectName: Distortion - m_MixLevel: 3f356cddae5dba949a6e8f4d20564d3e - m_Parameters: - - m_ParameterName: Level - m_GUID: 080be1914d960974481df4bebe2a2d77 - m_SendTarget: {fileID: 0} - m_EnableWetMix: 0 - m_Bypass: 0 ---- !u!241 &24100000 -AudioMixerController: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: AudioMixer - m_OutputGroup: {fileID: 0} - m_MasterGroup: {fileID: 24300002} - m_Snapshots: - - {fileID: 24500006} - m_StartSnapshot: {fileID: 24500006} - m_SuspendThreshold: -80 - m_EnableSuspend: 1 - m_UpdateMode: 0 - m_ExposedParameters: - - guid: 7835f2c4248cb3e43a1a773bab1f8b9d - name: SoundVolume0 - - guid: 41591fd4a32f4034f880ecbc14ee69f1 - name: MusicVolume0 - - guid: 6e0d1a5935a802d41b27d9e2fad3ba2f - name: UISoundVolume0 - - guid: 0bc64c1c6cebbeb40ba2f724fdcaa257 - name: VoiceVolume0 - - guid: f62a8b3fe89df00409532af739ee4e02 - name: SoundVolume1 - - guid: 265eaf7c8910ab842a845c7bb5e570c4 - name: UISoundVolume1 - - guid: 2a8ce0f3383c3f0468a04fa3fc5e317d - name: SoundVolume2 - - guid: e83be6d6c4ae85142a51f584159c4ff6 - name: UISoundVolume2 - - guid: e54edf7c1bf7ee44297e65adce5b10b7 - name: SoundVolume3 - - guid: 2dd26f9dadf160f4bbd77f307c3f4f2e - name: UISoundVolume3 - - guid: ba83e724007d7e9459f157db3a54a741 - name: MasterVolume - - guid: 6d4c2b8bc0ef38d44b2fbff2b3298ab4 - name: MusicVolume - - guid: 3bbd22597ed32714eb271cf06b098c63 - name: SoundVolume - - guid: 7d1c7ed015f5dba4f934c33ef330c5eb - name: UISoundVolume - - guid: fe15a1b40c14ea646a13dacb15b6a73b - name: VoiceVolume - m_AudioMixerGroupViews: - - guids: - - 72c1e77b100e3274fbfb88ca2ca12c4d - - efe8591c00084024187b9df78858c0af - - 648e49a020cf83346a9220d606e4ff39 - - 5117f9b5a365ec049a9d5891c563b893 - - f46651e8ad3c6034b8764fd635dda3fd - - 1cf576bd46399874d9494863d6502d94 - - 71c50c6b966d1f548a63193919ebfbad - - df986418fa3e4ae448a1909ffbb633fb - - 29257697b1e6be546aa0558e342a15a6 - - c0d40106c2ffb1a44bd48f50b210ee20 - - 039cd795affa7134a8d5f5d43d3b659d - - 5f20d1b8f9ac1914dac8beae718e7d40 - - e012b6d2e0501df43a88eb6beff8ae07 - - e84c25a476798ea43a2f6de217af7dba - - 98657376d4096a947953ee04d82830c1 - name: View - m_CurrentViewIndex: 0 - m_TargetSnapshot: {fileID: 24500006} ---- !u!243 &24300002 -AudioMixerGroupController: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: Master - m_AudioMixer: {fileID: 24100000} - m_GroupID: 72c1e77b100e3274fbfb88ca2ca12c4d - m_Children: - - {fileID: -4209890294574411305} - - {fileID: 7235523536312936115} - - {fileID: 7185772616558441635} - - {fileID: -3395020342500439107} - m_Volume: ba83e724007d7e9459f157db3a54a741 - m_Pitch: a2d2b77391464bb4887f0bcd3835015b - m_Send: 00000000000000000000000000000000 - m_Effects: - - {fileID: 24400004} - m_UserColorIndex: 8 - m_Mute: 0 - m_Solo: 0 - m_BypassEffects: 0 ---- !u!244 &24400004 -AudioMixerEffectController: - m_ObjectHideFlags: 3 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: - m_EffectID: ce944d90cb57ee4418426132d391d900 - m_EffectName: Attenuation - m_MixLevel: 891c3ec10e0ae1b42a95c83727d411f1 - m_Parameters: [] - m_SendTarget: {fileID: 0} - m_EnableWetMix: 0 - m_Bypass: 0 ---- !u!245 &24500006 -AudioMixerSnapshotController: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: Snapshot - m_AudioMixer: {fileID: 24100000} - m_SnapshotID: 91dee90f8902c804c9da7728ea355157 - m_FloatValues: - b47f0c73299cd9b4fba9896e70683903: 1 - ba83e724007d7e9459f157db3a54a741: 0 - fe15a1b40c14ea646a13dacb15b6a73b: 0 - 77212647508232a458ac7d48fb55d037: 1 - 3bbd22597ed32714eb271cf06b098c63: 0 - 30975daa872456b41bc18e0277e301e6: 1 - 6d4c2b8bc0ef38d44b2fbff2b3298ab4: -0.03 - 8542b6bfd7b7bfc4d9b961ba97edf0d2: 1 - m_TransitionOverrides: {} ---- !u!244 &246003612463095956 -AudioMixerEffectController: - m_ObjectHideFlags: 3 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: - m_EffectID: 860c45ba06e3cbd4794061eaefe970a3 - m_EffectName: Attenuation - m_MixLevel: bb4c221c9e3208941b1a2107831692ab - m_Parameters: [] - m_SendTarget: {fileID: 0} - m_EnableWetMix: 0 - m_Bypass: 0 ---- !u!244 &281287199725387719 -AudioMixerEffectController: - m_ObjectHideFlags: 3 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: - m_EffectID: 812fbfe4555eb1641aeaeee69a13b4a6 - m_EffectName: Lowpass Simple - m_MixLevel: 391139084347578409e42387008bd110 - m_Parameters: - - m_ParameterName: Cutoff freq - m_GUID: b19756871f24b194d87c7d1fce3159e9 - m_SendTarget: {fileID: 0} - m_EnableWetMix: 0 - m_Bypass: 0 ---- !u!244 &1413273517213151576 -AudioMixerEffectController: - m_ObjectHideFlags: 3 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: - m_EffectID: ce0c93d89826c7349a19b232116484db - m_EffectName: Attenuation - m_MixLevel: 7625365898787684c9bce9298a96f044 - m_Parameters: [] - m_SendTarget: {fileID: 0} - m_EnableWetMix: 0 - m_Bypass: 0 ---- !u!243 &1543978434442340687 -AudioMixerGroupController: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: Music - 0 - m_AudioMixer: {fileID: 24100000} - m_GroupID: 1cf576bd46399874d9494863d6502d94 - m_Children: [] - m_Volume: 41591fd4a32f4034f880ecbc14ee69f1 - m_Pitch: 9ad7e859a0cd1f142b59ffc659be28a7 - m_Send: 00000000000000000000000000000000 - m_Effects: - - {fileID: -8255999005317483048} - m_UserColorIndex: 1 - m_Mute: 0 - m_Solo: 0 - m_BypassEffects: 0 ---- !u!243 &1601410790413250045 -AudioMixerGroupController: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: UISound - 3 - m_AudioMixer: {fileID: 24100000} - m_GroupID: 98657376d4096a947953ee04d82830c1 - m_Children: [] - m_Volume: 2dd26f9dadf160f4bbd77f307c3f4f2e - m_Pitch: 5627fa8b0176a344bbb4e59ac5e648d3 - m_Send: 00000000000000000000000000000000 - m_Effects: - - {fileID: 1413273517213151576} - m_UserColorIndex: 3 - m_Mute: 0 - m_Solo: 0 - m_BypassEffects: 0 ---- !u!244 &2567082640316932351 -AudioMixerEffectController: - m_ObjectHideFlags: 3 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: - m_EffectID: a7394d86e1e2a1e4389182f0aec98773 - m_EffectName: Attenuation - m_MixLevel: cb8b6dfd682072d4fb81143ba077bc3f - m_Parameters: [] - m_SendTarget: {fileID: 0} - m_EnableWetMix: 0 - m_Bypass: 0 ---- !u!243 &3865010338301366421 -AudioMixerGroupController: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: UISound - 2 - m_AudioMixer: {fileID: 24100000} - m_GroupID: e84c25a476798ea43a2f6de217af7dba - m_Children: [] - m_Volume: e83be6d6c4ae85142a51f584159c4ff6 - m_Pitch: c45439925e1cfd547894fd886160a11c - m_Send: 00000000000000000000000000000000 - m_Effects: - - {fileID: 7834155774142160187} - m_UserColorIndex: 3 - m_Mute: 0 - m_Solo: 0 - m_BypassEffects: 0 ---- !u!244 &5734415080786067514 -AudioMixerEffectController: - m_ObjectHideFlags: 3 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: - m_EffectID: 20eac414948135e49b2b54a89235f15e - m_EffectName: Attenuation - m_MixLevel: d087be8c429707c4db724a61186f67f6 - m_Parameters: [] - m_SendTarget: {fileID: 0} - m_EnableWetMix: 0 - m_Bypass: 0 ---- !u!244 &5954042604037024145 -AudioMixerEffectController: - m_ObjectHideFlags: 3 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: - m_EffectID: ba434c984ec3c4442bfe3a399c11572b - m_EffectName: Echo - m_MixLevel: 0323002ce01f29a4abebc242337ea816 - m_Parameters: - - m_ParameterName: Delay - m_GUID: f4cc548867353f843bc36a61722c6cbf - - m_ParameterName: Decay - m_GUID: e67c7b4426842f948a83f3dada794a99 - - m_ParameterName: Max channels - m_GUID: 75c7951a8373f4644a44979a8c5776ed - - m_ParameterName: Drymix - m_GUID: 4d26b3b7a84b31d499176a7879734ba1 - - m_ParameterName: Wetmix - m_GUID: 6efaeec45de20b045a4d560994684cba - m_SendTarget: {fileID: 0} - m_EnableWetMix: 0 - m_Bypass: 0 ---- !u!244 &6255340296135181231 -AudioMixerEffectController: - m_ObjectHideFlags: 3 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: - m_EffectID: 3a251f2e65751b349bb255f73f0caeaf - m_EffectName: Duck Volume - m_MixLevel: 58cfdd03ab24c874cbe074238d636208 - m_Parameters: - - m_ParameterName: Threshold - m_GUID: b1b5c57689fc533408e6195c0a9e26a9 - - m_ParameterName: Ratio - m_GUID: dc9c2c635bce58746bd68c7dffb99ca0 - - m_ParameterName: Attack Time - m_GUID: 078ff252301e4594c880cd5754b8a563 - - m_ParameterName: Release Time - m_GUID: b3918efd0a966ea4882714c0f9edd40b - - m_ParameterName: Make-up Gain - m_GUID: 3cf881ca64b7cdb46b35d3593ff2cbe9 - - m_ParameterName: Knee - m_GUID: 31ea47a78d927ab4abf12f854bd4c626 - - m_ParameterName: Sidechain Mix - m_GUID: 468d86503d3572541a33c33bb9693dfd - m_SendTarget: {fileID: 0} - m_EnableWetMix: 0 - m_Bypass: 0 ---- !u!244 &6554641470784401750 -AudioMixerEffectController: - m_ObjectHideFlags: 3 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: - m_EffectID: 4499c94d696ee5741a71370ed7431e12 - m_EffectName: Send - m_MixLevel: f01b57f2509f26f4b8f2772993c2b8c6 - m_Parameters: [] - m_SendTarget: {fileID: 0} - m_EnableWetMix: 0 - m_Bypass: 0 ---- !u!244 &6637688299338053042 -AudioMixerEffectController: - m_ObjectHideFlags: 3 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: - m_EffectID: e84926aaeedf4074698e7d7f7f36b78b - m_EffectName: Attenuation - m_MixLevel: 8141a348079ee934686d3569f4758582 - m_Parameters: [] - m_SendTarget: {fileID: 0} - m_EnableWetMix: 0 - m_Bypass: 0 ---- !u!243 &7040861873718444651 -AudioMixerGroupController: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: UISound - 0 - m_AudioMixer: {fileID: 24100000} - m_GroupID: 29257697b1e6be546aa0558e342a15a6 - m_Children: [] - m_Volume: 6e0d1a5935a802d41b27d9e2fad3ba2f - m_Pitch: 7d01f3677fe8c5b41a877b64cc509766 - m_Send: 00000000000000000000000000000000 - m_Effects: - - {fileID: -4958177229083455073} - m_UserColorIndex: 3 - m_Mute: 0 - m_Solo: 0 - m_BypassEffects: 0 ---- !u!243 &7185772616558441635 -AudioMixerGroupController: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: UISound - m_AudioMixer: {fileID: 24100000} - m_GroupID: df986418fa3e4ae448a1909ffbb633fb - m_Children: - - {fileID: 7040861873718444651} - - {fileID: -3720557753501792270} - - {fileID: 3865010338301366421} - - {fileID: 1601410790413250045} - m_Volume: 7d1c7ed015f5dba4f934c33ef330c5eb - m_Pitch: 611d9d89c8a65b548b591e852596c35d - m_Send: 00000000000000000000000000000000 - m_Effects: - - {fileID: -998299258853400712} - m_UserColorIndex: 3 - m_Mute: 0 - m_Solo: 0 - m_BypassEffects: 0 ---- !u!243 &7235523536312936115 -AudioMixerGroupController: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: Sound - m_AudioMixer: {fileID: 24100000} - m_GroupID: 648e49a020cf83346a9220d606e4ff39 - m_Children: - - {fileID: -2659745067392564156} - - {fileID: -6280614258348125054} - - {fileID: -7758028812591520460} - - {fileID: -4372808504093502661} - m_Volume: 3bbd22597ed32714eb271cf06b098c63 - m_Pitch: 7f8a6510dd472ff4db8b07c5079a2013 - m_Send: 00000000000000000000000000000000 - m_Effects: - - {fileID: 2567082640316932351} - m_UserColorIndex: 2 - m_Mute: 0 - m_Solo: 0 - m_BypassEffects: 0 ---- !u!244 &7834155774142160187 -AudioMixerEffectController: - m_ObjectHideFlags: 3 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: - m_EffectID: 09e809d6183106b4a804ff08ca8ff9ed - m_EffectName: Attenuation - m_MixLevel: 92339d91519b09543844a84cea03aed3 - m_Parameters: [] - m_SendTarget: {fileID: 0} - m_EnableWetMix: 0 - m_Bypass: 0 diff --git a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/Resources/AudioMixer.mixer.meta b/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/Resources/AudioMixer.mixer.meta deleted file mode 100644 index 68fada2..0000000 --- a/Client/Packages/com.alicizax.unity.audio/Runtime/Audio/Resources/AudioMixer.mixer.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 1af7a1b121ae17541a1967d430cef006 -NativeFormatImporter: - externalObjects: {} - mainObjectFileID: 0 - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.audio/Runtime/link.xml b/Client/Packages/com.alicizax.unity.audio/Runtime/link.xml deleted file mode 100644 index ccf3ebd..0000000 --- a/Client/Packages/com.alicizax.unity.audio/Runtime/link.xml +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.audio/Runtime/link.xml.meta b/Client/Packages/com.alicizax.unity.audio/Runtime/link.xml.meta deleted file mode 100644 index 695ab18..0000000 --- a/Client/Packages/com.alicizax.unity.audio/Runtime/link.xml.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 5a0977a29f89cd44e9833842d07fb4a3 -timeCreated: 1737098208 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.audio/package.json b/Client/Packages/com.alicizax.unity.audio/package.json deleted file mode 100644 index 83371b2..0000000 --- a/Client/Packages/com.alicizax.unity.audio/package.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "name": "com.alicizax.unity.audio", - "displayName": "Aliciza X Audio", - "category": "Aliciza X", - "description": "Aliciza X Audio Component", - "version": "1.0.1", - "unity": "2025.1", - "keywords": [ - "Game Framework X" - ], - "repository": { - "name": "com.alicizax.unity", - "url": "http://101.34.252.46:3000/AlicizaX/", - "type": "git" - }, - "author": { - "name": "Yuliuren", - "email": "yuliuren00@gmail.com" - } -} \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.audio/package.json.meta b/Client/Packages/com.alicizax.unity.audio/package.json.meta deleted file mode 100644 index 6b5cc06..0000000 --- a/Client/Packages/com.alicizax.unity.audio/package.json.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: bfcfd53ea0ab058419a338767c7c06bb -PackageManifestImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Editor.meta b/Client/Packages/com.alicizax.unity.debugger/Editor.meta deleted file mode 100644 index d63c281..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Editor.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 315dbc398e044d14980f37756acbd186 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Editor/AlicizaX.Debugger.Editor.asmdef b/Client/Packages/com.alicizax.unity.debugger/Editor/AlicizaX.Debugger.Editor.asmdef deleted file mode 100644 index 93d8084..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Editor/AlicizaX.Debugger.Editor.asmdef +++ /dev/null @@ -1,20 +0,0 @@ -{ - "name": "AlicizaX.Debugger.Editor", - "rootNamespace": "AlicizaX.Debugger.Editor", - "references": [ - "GUID:0d00816689626d846bd06cd779413413", - "GUID:acfef7cabed3b0a42b25edb1cd4fa259", - "GUID:75b6f2078d190f14dbda4a5b747d709c" - ], - "includePlatforms": [ - "Editor" - ], - "excludePlatforms": [], - "allowUnsafeCode": true, - "overrideReferences": false, - "precompiledReferences": [], - "autoReferenced": true, - "defineConstraints": [], - "versionDefines": [], - "noEngineReferences": false -} \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.debugger/Editor/AlicizaX.Debugger.Editor.asmdef.meta b/Client/Packages/com.alicizax.unity.debugger/Editor/AlicizaX.Debugger.Editor.asmdef.meta deleted file mode 100644 index 3708eb7..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Editor/AlicizaX.Debugger.Editor.asmdef.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 482599f49a43e5d41ab5b428028e5651 -AssemblyDefinitionImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Editor/Inspector.meta b/Client/Packages/com.alicizax.unity.debugger/Editor/Inspector.meta deleted file mode 100644 index b70a600..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Editor/Inspector.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: e98e73807718166469aac777a004bd7e -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Editor/Inspector/DebuggerComponentInspector.cs b/Client/Packages/com.alicizax.unity.debugger/Editor/Inspector/DebuggerComponentInspector.cs deleted file mode 100644 index 8540b0d..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Editor/Inspector/DebuggerComponentInspector.cs +++ /dev/null @@ -1,64 +0,0 @@ -using System; -using AlicizaX.Editor; -using UnityEditor; -using UnityEngine; -using AlicizaX.Debugger.Runtime; - -namespace AlicizaX.Debugger.Editor -{ - [CustomEditor(typeof(DebuggerComponent))] - internal sealed class DebuggerComponentInspector : GameFrameworkInspector - { - private SerializedProperty m_Skin = null; - private SerializedProperty m_ActiveWindow = null; - private SerializedProperty m_ShowFullWindow = null; - private SerializedProperty m_ConsoleWindow = null; - - public override void OnInspectorGUI() - { - base.OnInspectorGUI(); - - serializedObject.Update(); - - DebuggerComponent t = (DebuggerComponent)target; - - EditorGUILayout.PropertyField(m_Skin); - - if (EditorApplication.isPlaying && IsPrefabInHierarchy(t.gameObject)) - { - bool activeWindow = EditorGUILayout.Toggle("Active Window", t.ActiveWindow); - if (activeWindow != t.ActiveWindow) - { - t.ActiveWindow = activeWindow; - } - } - else - { - EditorGUILayout.PropertyField(m_ActiveWindow); - } - - EditorGUILayout.PropertyField(m_ShowFullWindow); - - if (EditorApplication.isPlaying) - { - if (GUILayout.Button("Reset Layout")) - { - t.ResetLayout(); - } - } - - EditorGUILayout.PropertyField(m_ConsoleWindow, true); - - serializedObject.ApplyModifiedProperties(); - } - - - private void OnEnable() - { - m_Skin = serializedObject.FindProperty("m_Skin"); - m_ActiveWindow = serializedObject.FindProperty("m_ActiveWindow"); - m_ShowFullWindow = serializedObject.FindProperty("m_ShowFullWindow"); - m_ConsoleWindow = serializedObject.FindProperty("m_ConsoleWindow"); - } - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Editor/Inspector/DebuggerComponentInspector.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Editor/Inspector/DebuggerComponentInspector.cs.meta deleted file mode 100644 index d584a44..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Editor/Inspector/DebuggerComponentInspector.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 346bd5fc6cf0d76478b39f7e69185a23 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Editor/Res.meta b/Client/Packages/com.alicizax.unity.debugger/Editor/Res.meta deleted file mode 100644 index 806e0ed..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Editor/Res.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: f52e94520a8d8544f84756063cf06d42 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Editor/Res/DebuggerSkin.guiskin b/Client/Packages/com.alicizax.unity.debugger/Editor/Res/DebuggerSkin.guiskin deleted file mode 100644 index 16bbd46..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Editor/Res/DebuggerSkin.guiskin +++ /dev/null @@ -1,1427 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!114 &11400000 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 1 - m_Script: {fileID: 12001, guid: 0000000000000000e000000000000000, type: 0} - m_Name: DebuggerSkin - m_EditorClassIdentifier: - m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} - m_box: - m_Name: box - m_Normal: - m_Background: {fileID: 11001, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0.79999995, g: 0.79999995, b: 0.79999995, a: 1} - m_Hover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Active: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Focused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnNormal: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnHover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnActive: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnFocused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Border: - m_Left: 6 - m_Right: 6 - m_Top: 6 - m_Bottom: 6 - m_Margin: - m_Left: 4 - m_Right: 4 - m_Top: 4 - m_Bottom: 4 - m_Padding: - m_Left: 4 - m_Right: 4 - m_Top: 4 - m_Bottom: 4 - m_Overflow: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Font: {fileID: 0} - m_FontSize: 0 - m_FontStyle: 0 - m_Alignment: 1 - m_WordWrap: 0 - m_RichText: 1 - m_TextClipping: 1 - m_ImagePosition: 0 - m_ContentOffset: {x: 0, y: 0} - m_FixedWidth: 0 - m_FixedHeight: 0 - m_StretchWidth: 1 - m_StretchHeight: 0 - m_button: - m_Name: button - m_Normal: - m_Background: {fileID: 11006, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0.9, g: 0.9, b: 0.9, a: 1} - m_Hover: - m_Background: {fileID: 11003, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 1, g: 1, b: 1, a: 1} - m_Active: - m_Background: {fileID: 11002, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0.9, g: 0.9, b: 0.9, a: 1} - m_Focused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 1, g: 1, b: 1, a: 1} - m_OnNormal: - m_Background: {fileID: 11005, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0.9019608, g: 0.9019608, b: 0.9019608, a: 1} - m_OnHover: - m_Background: {fileID: 11004, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 1, g: 1, b: 1, a: 1} - m_OnActive: - m_Background: {fileID: 11002, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0.9, g: 0.9, b: 0.9, a: 1} - m_OnFocused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Border: - m_Left: 6 - m_Right: 6 - m_Top: 6 - m_Bottom: 4 - m_Margin: - m_Left: 4 - m_Right: 4 - m_Top: 4 - m_Bottom: 4 - m_Padding: - m_Left: 6 - m_Right: 6 - m_Top: 3 - m_Bottom: 3 - m_Overflow: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Font: {fileID: 0} - m_FontSize: 0 - m_FontStyle: 0 - m_Alignment: 4 - m_WordWrap: 0 - m_RichText: 1 - m_TextClipping: 1 - m_ImagePosition: 0 - m_ContentOffset: {x: 0, y: 0} - m_FixedWidth: 0 - m_FixedHeight: 0 - m_StretchWidth: 1 - m_StretchHeight: 0 - m_toggle: - m_Name: toggle - m_Normal: - m_Background: {fileID: 11018, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0.89112896, g: 0.89112896, b: 0.89112896, a: 1} - m_Hover: - m_Background: {fileID: 11014, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 1, g: 1, b: 1, a: 1} - m_Active: - m_Background: {fileID: 11013, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 1, g: 1, b: 1, a: 1} - m_Focused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnNormal: - m_Background: {fileID: 11016, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0.8901961, g: 0.8901961, b: 0.8901961, a: 1} - m_OnHover: - m_Background: {fileID: 11015, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 1, g: 1, b: 1, a: 1} - m_OnActive: - m_Background: {fileID: 11017, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 1, g: 1, b: 1, a: 1} - m_OnFocused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Border: - m_Left: 14 - m_Right: 0 - m_Top: 14 - m_Bottom: 0 - m_Margin: - m_Left: 4 - m_Right: 4 - m_Top: 4 - m_Bottom: 4 - m_Padding: - m_Left: 15 - m_Right: 0 - m_Top: 3 - m_Bottom: 0 - m_Overflow: - m_Left: -1 - m_Right: 0 - m_Top: -4 - m_Bottom: 0 - m_Font: {fileID: 0} - m_FontSize: 0 - m_FontStyle: 0 - m_Alignment: 0 - m_WordWrap: 0 - m_RichText: 1 - m_TextClipping: 1 - m_ImagePosition: 0 - m_ContentOffset: {x: 0, y: 0} - m_FixedWidth: 0 - m_FixedHeight: 0 - m_StretchWidth: 1 - m_StretchHeight: 0 - m_label: - m_Name: label - m_Normal: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0.9, g: 0.9, b: 0.9, a: 1} - m_Hover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0.9, g: 0.9, b: 0.9, a: 1} - m_Active: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 1, g: 1, b: 1, a: 1} - m_Focused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnNormal: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnHover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnActive: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnFocused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Border: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Margin: - m_Left: 4 - m_Right: 4 - m_Top: 4 - m_Bottom: 4 - m_Padding: - m_Left: 0 - m_Right: 0 - m_Top: 3 - m_Bottom: 3 - m_Overflow: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Font: {fileID: 0} - m_FontSize: 0 - m_FontStyle: 0 - m_Alignment: 0 - m_WordWrap: 1 - m_RichText: 1 - m_TextClipping: 1 - m_ImagePosition: 0 - m_ContentOffset: {x: 0, y: 0} - m_FixedWidth: 0 - m_FixedHeight: 0 - m_StretchWidth: 1 - m_StretchHeight: 0 - m_textField: - m_Name: textfield - m_Normal: - m_Background: {fileID: 11024, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0.79999995, g: 0.79999995, b: 0.79999995, a: 1} - m_Hover: - m_Background: {fileID: 11026, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0.9, g: 0.9, b: 0.9, a: 1} - m_Active: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Focused: - m_Background: {fileID: 11026, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 1, g: 1, b: 1, a: 1} - m_OnNormal: - m_Background: {fileID: 11025, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 1, g: 1, b: 1, a: 1} - m_OnHover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnActive: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnFocused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Border: - m_Left: 4 - m_Right: 4 - m_Top: 4 - m_Bottom: 4 - m_Margin: - m_Left: 4 - m_Right: 4 - m_Top: 4 - m_Bottom: 4 - m_Padding: - m_Left: 3 - m_Right: 3 - m_Top: 3 - m_Bottom: 3 - m_Overflow: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Font: {fileID: 0} - m_FontSize: 0 - m_FontStyle: 0 - m_Alignment: 0 - m_WordWrap: 0 - m_RichText: 0 - m_TextClipping: 1 - m_ImagePosition: 3 - m_ContentOffset: {x: 0, y: 0} - m_FixedWidth: 0 - m_FixedHeight: 0 - m_StretchWidth: 1 - m_StretchHeight: 0 - m_textArea: - m_Name: textarea - m_Normal: - m_Background: {fileID: 11024, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0.9019608, g: 0.9019608, b: 0.9019608, a: 1} - m_Hover: - m_Background: {fileID: 11026, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0.79999995, g: 0.79999995, b: 0.79999995, a: 1} - m_Active: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Focused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnNormal: - m_Background: {fileID: 11025, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 1, g: 1, b: 1, a: 1} - m_OnHover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnActive: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnFocused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Border: - m_Left: 4 - m_Right: 4 - m_Top: 4 - m_Bottom: 4 - m_Margin: - m_Left: 4 - m_Right: 4 - m_Top: 4 - m_Bottom: 4 - m_Padding: - m_Left: 3 - m_Right: 3 - m_Top: 3 - m_Bottom: 3 - m_Overflow: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Font: {fileID: 0} - m_FontSize: 0 - m_FontStyle: 0 - m_Alignment: 0 - m_WordWrap: 1 - m_RichText: 0 - m_TextClipping: 1 - m_ImagePosition: 0 - m_ContentOffset: {x: 0, y: 0} - m_FixedWidth: 0 - m_FixedHeight: 0 - m_StretchWidth: 1 - m_StretchHeight: 0 - m_window: - m_Name: window - m_Normal: - m_Background: {fileID: 11023, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 1, g: 1, b: 1, a: 1} - m_Hover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Active: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Focused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnNormal: - m_Background: {fileID: 11022, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 1, g: 1, b: 1, a: 1} - m_OnHover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnActive: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnFocused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Border: - m_Left: 8 - m_Right: 8 - m_Top: 18 - m_Bottom: 8 - m_Margin: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Padding: - m_Left: 10 - m_Right: 10 - m_Top: 20 - m_Bottom: 10 - m_Overflow: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Font: {fileID: 0} - m_FontSize: 0 - m_FontStyle: 0 - m_Alignment: 1 - m_WordWrap: 0 - m_RichText: 1 - m_TextClipping: 1 - m_ImagePosition: 0 - m_ContentOffset: {x: 0, y: -18} - m_FixedWidth: 0 - m_FixedHeight: 0 - m_StretchWidth: 1 - m_StretchHeight: 0 - m_horizontalSlider: - m_Name: horizontalslider - m_Normal: - m_Background: {fileID: 11009, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Hover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Active: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Focused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnNormal: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnHover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnActive: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnFocused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Border: - m_Left: 3 - m_Right: 3 - m_Top: 0 - m_Bottom: 0 - m_Margin: - m_Left: 4 - m_Right: 4 - m_Top: 4 - m_Bottom: 4 - m_Padding: - m_Left: -1 - m_Right: -1 - m_Top: 0 - m_Bottom: 0 - m_Overflow: - m_Left: 0 - m_Right: 0 - m_Top: -2 - m_Bottom: -3 - m_Font: {fileID: 0} - m_FontSize: 0 - m_FontStyle: 0 - m_Alignment: 0 - m_WordWrap: 0 - m_RichText: 1 - m_TextClipping: 1 - m_ImagePosition: 2 - m_ContentOffset: {x: 0, y: 0} - m_FixedWidth: 0 - m_FixedHeight: 12 - m_StretchWidth: 1 - m_StretchHeight: 0 - m_horizontalSliderThumb: - m_Name: horizontalsliderthumb - m_Normal: - m_Background: {fileID: 11011, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Hover: - m_Background: {fileID: 11012, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Active: - m_Background: {fileID: 11010, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Focused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnNormal: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnHover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnActive: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnFocused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Border: - m_Left: 4 - m_Right: 4 - m_Top: 0 - m_Bottom: 0 - m_Margin: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Padding: - m_Left: 7 - m_Right: 7 - m_Top: 0 - m_Bottom: 0 - m_Overflow: - m_Left: -1 - m_Right: -1 - m_Top: 0 - m_Bottom: 0 - m_Font: {fileID: 0} - m_FontSize: 0 - m_FontStyle: 0 - m_Alignment: 0 - m_WordWrap: 0 - m_RichText: 1 - m_TextClipping: 1 - m_ImagePosition: 2 - m_ContentOffset: {x: 0, y: 0} - m_FixedWidth: 0 - m_FixedHeight: 12 - m_StretchWidth: 1 - m_StretchHeight: 0 - m_verticalSlider: - m_Name: verticalslider - m_Normal: - m_Background: {fileID: 11021, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Hover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Active: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Focused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnNormal: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnHover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnActive: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnFocused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Border: - m_Left: 0 - m_Right: 0 - m_Top: 3 - m_Bottom: 3 - m_Margin: - m_Left: 4 - m_Right: 4 - m_Top: 4 - m_Bottom: 4 - m_Padding: - m_Left: 0 - m_Right: 0 - m_Top: -1 - m_Bottom: -1 - m_Overflow: - m_Left: -2 - m_Right: -3 - m_Top: 0 - m_Bottom: 0 - m_Font: {fileID: 0} - m_FontSize: 0 - m_FontStyle: 0 - m_Alignment: 0 - m_WordWrap: 0 - m_RichText: 1 - m_TextClipping: 0 - m_ImagePosition: 0 - m_ContentOffset: {x: 0, y: 0} - m_FixedWidth: 12 - m_FixedHeight: 0 - m_StretchWidth: 0 - m_StretchHeight: 1 - m_verticalSliderThumb: - m_Name: verticalsliderthumb - m_Normal: - m_Background: {fileID: 11011, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Hover: - m_Background: {fileID: 11012, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Active: - m_Background: {fileID: 11010, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Focused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnNormal: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnHover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnActive: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnFocused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Border: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Margin: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Padding: - m_Left: 0 - m_Right: 0 - m_Top: 7 - m_Bottom: 7 - m_Overflow: - m_Left: 0 - m_Right: 0 - m_Top: -1 - m_Bottom: -1 - m_Font: {fileID: 0} - m_FontSize: 0 - m_FontStyle: 0 - m_Alignment: 0 - m_WordWrap: 0 - m_RichText: 1 - m_TextClipping: 1 - m_ImagePosition: 0 - m_ContentOffset: {x: 0, y: 0} - m_FixedWidth: 12 - m_FixedHeight: 0 - m_StretchWidth: 0 - m_StretchHeight: 1 - m_horizontalScrollbar: - m_Name: horizontalscrollbar - m_Normal: - m_Background: {fileID: 11008, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Hover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Active: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Focused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnNormal: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnHover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnActive: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnFocused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Border: - m_Left: 9 - m_Right: 9 - m_Top: 0 - m_Bottom: 0 - m_Margin: - m_Left: 4 - m_Right: 4 - m_Top: 1 - m_Bottom: 4 - m_Padding: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Overflow: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Font: {fileID: 0} - m_FontSize: 0 - m_FontStyle: 0 - m_Alignment: 0 - m_WordWrap: 0 - m_RichText: 1 - m_TextClipping: 1 - m_ImagePosition: 2 - m_ContentOffset: {x: 0, y: 0} - m_FixedWidth: 0 - m_FixedHeight: 15 - m_StretchWidth: 1 - m_StretchHeight: 0 - m_horizontalScrollbarThumb: - m_Name: horizontalscrollbarthumb - m_Normal: - m_Background: {fileID: 11007, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Hover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Active: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Focused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnNormal: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnHover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnActive: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnFocused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Border: - m_Left: 6 - m_Right: 6 - m_Top: 6 - m_Bottom: 6 - m_Margin: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Padding: - m_Left: 6 - m_Right: 6 - m_Top: 0 - m_Bottom: 0 - m_Overflow: - m_Left: 0 - m_Right: 0 - m_Top: -1 - m_Bottom: 1 - m_Font: {fileID: 0} - m_FontSize: 0 - m_FontStyle: 0 - m_Alignment: 0 - m_WordWrap: 0 - m_RichText: 1 - m_TextClipping: 1 - m_ImagePosition: 0 - m_ContentOffset: {x: 0, y: 0} - m_FixedWidth: 0 - m_FixedHeight: 13 - m_StretchWidth: 1 - m_StretchHeight: 0 - m_horizontalScrollbarLeftButton: - m_Name: horizontalscrollbarleftbutton - m_Normal: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Hover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Active: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Focused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnNormal: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnHover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnActive: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnFocused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Border: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Margin: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Padding: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Overflow: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Font: {fileID: 0} - m_FontSize: 0 - m_FontStyle: 0 - m_Alignment: 0 - m_WordWrap: 0 - m_RichText: 1 - m_TextClipping: 1 - m_ImagePosition: 0 - m_ContentOffset: {x: 0, y: 0} - m_FixedWidth: 0 - m_FixedHeight: 0 - m_StretchWidth: 1 - m_StretchHeight: 0 - m_horizontalScrollbarRightButton: - m_Name: horizontalscrollbarrightbutton - m_Normal: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Hover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Active: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Focused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnNormal: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnHover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnActive: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnFocused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Border: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Margin: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Padding: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Overflow: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Font: {fileID: 0} - m_FontSize: 0 - m_FontStyle: 0 - m_Alignment: 0 - m_WordWrap: 0 - m_RichText: 1 - m_TextClipping: 1 - m_ImagePosition: 0 - m_ContentOffset: {x: 0, y: 0} - m_FixedWidth: 0 - m_FixedHeight: 0 - m_StretchWidth: 1 - m_StretchHeight: 0 - m_verticalScrollbar: - m_Name: verticalscrollbar - m_Normal: - m_Background: {fileID: 11020, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Hover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Active: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Focused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnNormal: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnHover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnActive: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnFocused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Border: - m_Left: 0 - m_Right: 0 - m_Top: 9 - m_Bottom: 9 - m_Margin: - m_Left: 1 - m_Right: 4 - m_Top: 4 - m_Bottom: 4 - m_Padding: - m_Left: 0 - m_Right: 0 - m_Top: 1 - m_Bottom: 1 - m_Overflow: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Font: {fileID: 0} - m_FontSize: 0 - m_FontStyle: 0 - m_Alignment: 0 - m_WordWrap: 0 - m_RichText: 1 - m_TextClipping: 1 - m_ImagePosition: 0 - m_ContentOffset: {x: 0, y: 0} - m_FixedWidth: 15 - m_FixedHeight: 0 - m_StretchWidth: 1 - m_StretchHeight: 0 - m_verticalScrollbarThumb: - m_Name: verticalscrollbarthumb - m_Normal: - m_Background: {fileID: 11019, guid: 0000000000000000e000000000000000, type: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Hover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Active: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Focused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnNormal: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnHover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnActive: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnFocused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Border: - m_Left: 6 - m_Right: 6 - m_Top: 6 - m_Bottom: 6 - m_Margin: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Padding: - m_Left: 0 - m_Right: 0 - m_Top: 6 - m_Bottom: 6 - m_Overflow: - m_Left: -1 - m_Right: -1 - m_Top: 0 - m_Bottom: 0 - m_Font: {fileID: 0} - m_FontSize: 0 - m_FontStyle: 0 - m_Alignment: 0 - m_WordWrap: 0 - m_RichText: 1 - m_TextClipping: 1 - m_ImagePosition: 2 - m_ContentOffset: {x: 0, y: 0} - m_FixedWidth: 15 - m_FixedHeight: 0 - m_StretchWidth: 0 - m_StretchHeight: 1 - m_verticalScrollbarUpButton: - m_Name: verticalscrollbarupbutton - m_Normal: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Hover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Active: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Focused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnNormal: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnHover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnActive: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnFocused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Border: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Margin: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Padding: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Overflow: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Font: {fileID: 0} - m_FontSize: 0 - m_FontStyle: 0 - m_Alignment: 0 - m_WordWrap: 0 - m_RichText: 1 - m_TextClipping: 1 - m_ImagePosition: 0 - m_ContentOffset: {x: 0, y: 0} - m_FixedWidth: 0 - m_FixedHeight: 0 - m_StretchWidth: 1 - m_StretchHeight: 0 - m_verticalScrollbarDownButton: - m_Name: verticalscrollbardownbutton - m_Normal: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Hover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Active: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Focused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnNormal: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnHover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnActive: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnFocused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Border: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Margin: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Padding: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Overflow: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Font: {fileID: 0} - m_FontSize: 0 - m_FontStyle: 0 - m_Alignment: 0 - m_WordWrap: 0 - m_RichText: 1 - m_TextClipping: 1 - m_ImagePosition: 0 - m_ContentOffset: {x: 0, y: 0} - m_FixedWidth: 0 - m_FixedHeight: 0 - m_StretchWidth: 1 - m_StretchHeight: 0 - m_ScrollView: - m_Name: scrollview - m_Normal: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Hover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Active: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Focused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnNormal: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnHover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnActive: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnFocused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Border: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Margin: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Padding: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Overflow: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Font: {fileID: 0} - m_FontSize: 0 - m_FontStyle: 0 - m_Alignment: 0 - m_WordWrap: 0 - m_RichText: 1 - m_TextClipping: 1 - m_ImagePosition: 0 - m_ContentOffset: {x: 0, y: 0} - m_FixedWidth: 0 - m_FixedHeight: 0 - m_StretchWidth: 1 - m_StretchHeight: 0 - m_CustomStyles: - - m_Name: - m_Normal: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Hover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Active: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Focused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnNormal: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnHover: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnActive: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_OnFocused: - m_Background: {fileID: 0} - m_ScaledBackgrounds: [] - m_TextColor: {r: 0, g: 0, b: 0, a: 1} - m_Border: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Margin: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Padding: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Overflow: - m_Left: 0 - m_Right: 0 - m_Top: 0 - m_Bottom: 0 - m_Font: {fileID: 0} - m_FontSize: 0 - m_FontStyle: 0 - m_Alignment: 0 - m_WordWrap: 0 - m_RichText: 1 - m_TextClipping: 0 - m_ImagePosition: 0 - m_ContentOffset: {x: 0, y: 0} - m_FixedWidth: 0 - m_FixedHeight: 0 - m_StretchWidth: 1 - m_StretchHeight: 0 - m_Settings: - m_DoubleClickSelectsWord: 1 - m_TripleClickSelectsLine: 1 - m_CursorColor: {r: 1, g: 1, b: 1, a: 1} - m_CursorFlashSpeed: -1 - m_SelectionColor: {r: 1, g: 0.38403907, b: 0, a: 0.7} diff --git a/Client/Packages/com.alicizax.unity.debugger/Editor/Res/DebuggerSkin.guiskin.meta b/Client/Packages/com.alicizax.unity.debugger/Editor/Res/DebuggerSkin.guiskin.meta deleted file mode 100644 index 53d8507..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Editor/Res/DebuggerSkin.guiskin.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: dce698819fdb70b42b393d9b0b6d420e -NativeFormatImporter: - externalObjects: {} - mainObjectFileID: 0 - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/LICENSE.md b/Client/Packages/com.alicizax.unity.debugger/LICENSE.md deleted file mode 100644 index 4e6513a..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/LICENSE.md +++ /dev/null @@ -1,201 +0,0 @@ - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - -TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - -1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - -2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - -3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - -4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - -5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - -6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - -7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - -8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - -9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - -END OF TERMS AND CONDITIONS - -APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - -Copyright [2023] [ALianBlank of copyright owner][alianblank@outlook.com][https://alianblank.com/] - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. diff --git a/Client/Packages/com.alicizax.unity.debugger/LICENSE.md.meta b/Client/Packages/com.alicizax.unity.debugger/LICENSE.md.meta deleted file mode 100644 index 021befb..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/LICENSE.md.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 7d9b46c0f3807624fbb8c8225ae1e544 -TextScriptImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime.meta deleted file mode 100644 index 80ce1de..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: d1ca5c9d4643f6d479f66ca16100e559 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/AlicizaX.Debugger.Runtime.asmdef b/Client/Packages/com.alicizax.unity.debugger/Runtime/AlicizaX.Debugger.Runtime.asmdef deleted file mode 100644 index 70f0b14..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/AlicizaX.Debugger.Runtime.asmdef +++ /dev/null @@ -1,17 +0,0 @@ -{ - "name": "AlicizaX.Debugger.Runtime", - "rootNamespace": "AlicizaX.Debugger.Runtime", - "references": [ - "GUID:75b6f2078d190f14dbda4a5b747d709c", - "GUID:8b8e344bafed3e54eb291c1d5d2319b8" - ], - "includePlatforms": [], - "excludePlatforms": [], - "allowUnsafeCode": true, - "overrideReferences": false, - "precompiledReferences": [], - "autoReferenced": true, - "defineConstraints": [], - "versionDefines": [], - "noEngineReferences": false -} \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/AlicizaX.Debugger.Runtime.asmdef.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/AlicizaX.Debugger.Runtime.asmdef.meta deleted file mode 100644 index 1186c56..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/AlicizaX.Debugger.Runtime.asmdef.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 0d00816689626d846bd06cd779413413 -AssemblyDefinitionImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger.meta deleted file mode 100644 index cdb582f..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: c630b51c86a234242a84ff37c9342a82 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerActiveWindowType.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerActiveWindowType.cs deleted file mode 100644 index a4ccb3e..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerActiveWindowType.cs +++ /dev/null @@ -1,28 +0,0 @@ -namespace AlicizaX.Debugger.Runtime -{ - /// - /// 调试器激活窗口类型。 - /// - public enum DebuggerActiveWindowType : byte - { - /// - /// 总是打开。 - /// - AlwaysOpen = 0, - - /// - /// 仅在开发模式时打开。 - /// - OnlyOpenWhenDevelopment, - - /// - /// 仅在编辑器中打开。 - /// - OnlyOpenInEditor, - - /// - /// 总是关闭。 - /// - AlwaysClose, - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerActiveWindowType.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerActiveWindowType.cs.meta deleted file mode 100644 index b73d304..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerActiveWindowType.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d1baccfe5abb590428eb0322088bf4ce -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ConsoleWindow.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ConsoleWindow.cs deleted file mode 100644 index 972e435..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ConsoleWindow.cs +++ /dev/null @@ -1,420 +0,0 @@ - -using System; -using System.Collections.Generic; -using UnityEngine; - - -namespace AlicizaX.Debugger.Runtime -{ - public sealed partial class DebuggerComponent - { - [Serializable] - private sealed class ConsoleWindow : IDebuggerWindow - { - private readonly Queue m_LogNodes = new Queue(); - - private Vector2 m_LogScrollPosition = Vector2.zero; - private Vector2 m_StackScrollPosition = Vector2.zero; - private int m_InfoCount = 0; - private int m_WarningCount = 0; - private int m_ErrorCount = 0; - private int m_FatalCount = 0; - private LogNode m_SelectedNode = null; - private bool m_LastLockScroll = true; - private bool m_LastInfoFilter = true; - private bool m_LastWarningFilter = true; - private bool m_LastErrorFilter = true; - private bool m_LastFatalFilter = true; - - [SerializeField] private bool m_LockScroll = true; - - [SerializeField] private int m_MaxLine = 100; - - [SerializeField] private bool m_InfoFilter = true; - - [SerializeField] private bool m_WarningFilter = true; - - [SerializeField] private bool m_ErrorFilter = true; - - [SerializeField] private bool m_FatalFilter = true; - - [SerializeField] private Color32 m_InfoColor = Color.white; - - [SerializeField] private Color32 m_WarningColor = Color.yellow; - - [SerializeField] private Color32 m_ErrorColor = Color.red; - - [SerializeField] private Color32 m_FatalColor = new Color(0.7f, 0.2f, 0.2f); - - public bool LockScroll - { - get { return m_LockScroll; } - set { m_LockScroll = value; } - } - - public int MaxLine - { - get { return m_MaxLine; } - set { m_MaxLine = value; } - } - - public bool InfoFilter - { - get { return m_InfoFilter; } - set { m_InfoFilter = value; } - } - - public bool WarningFilter - { - get { return m_WarningFilter; } - set { m_WarningFilter = value; } - } - - public bool ErrorFilter - { - get { return m_ErrorFilter; } - set { m_ErrorFilter = value; } - } - - public bool FatalFilter - { - get { return m_FatalFilter; } - set { m_FatalFilter = value; } - } - - public int InfoCount - { - get { return m_InfoCount; } - } - - public int WarningCount - { - get { return m_WarningCount; } - } - - public int ErrorCount - { - get { return m_ErrorCount; } - } - - public int FatalCount - { - get { return m_FatalCount; } - } - - public Color32 InfoColor - { - get { return m_InfoColor; } - set { m_InfoColor = value; } - } - - public Color32 WarningColor - { - get { return m_WarningColor; } - set { m_WarningColor = value; } - } - - public Color32 ErrorColor - { - get { return m_ErrorColor; } - set { m_ErrorColor = value; } - } - - public Color32 FatalColor - { - get { return m_FatalColor; } - set { m_FatalColor = value; } - } - - public void Initialize(params object[] args) - { - - Application.logMessageReceived += OnLogMessageReceived; - m_LockScroll = m_LastLockScroll = Utility.PlayerPrefsX.GetBool("Debugger.Console.LockScroll", true); - m_InfoFilter = m_LastInfoFilter = Utility.PlayerPrefsX.GetBool("Debugger.Console.InfoFilter", true); - m_WarningFilter = m_LastWarningFilter = Utility.PlayerPrefsX.GetBool("Debugger.Console.WarningFilter", true); - m_ErrorFilter = m_LastErrorFilter = Utility.PlayerPrefsX.GetBool("Debugger.Console.ErrorFilter", true); - m_FatalFilter = m_LastFatalFilter = Utility.PlayerPrefsX.GetBool("Debugger.Console.FatalFilter", true); - } - - public void Shutdown() - { - Application.logMessageReceived -= OnLogMessageReceived; - Clear(); - } - - public void OnEnter() - { - } - - public void OnLeave() - { - } - - public void OnUpdate(float elapseSeconds, float realElapseSeconds) - { - if (m_LastLockScroll != m_LockScroll) - { - m_LastLockScroll = m_LockScroll; - Utility.PlayerPrefsX.SetBool("Debugger.Console.LockScroll", m_LockScroll); - } - - if (m_LastInfoFilter != m_InfoFilter) - { - m_LastInfoFilter = m_InfoFilter; - Utility.PlayerPrefsX.SetBool("Debugger.Console.InfoFilter", m_InfoFilter); - } - - if (m_LastWarningFilter != m_WarningFilter) - { - m_LastWarningFilter = m_WarningFilter; - Utility.PlayerPrefsX.SetBool("Debugger.Console.WarningFilter", m_WarningFilter); - } - - if (m_LastErrorFilter != m_ErrorFilter) - { - m_LastErrorFilter = m_ErrorFilter; - Utility.PlayerPrefsX.SetBool("Debugger.Console.ErrorFilter", m_ErrorFilter); - } - - if (m_LastFatalFilter != m_FatalFilter) - { - m_LastFatalFilter = m_FatalFilter; - Utility.PlayerPrefsX.SetBool("Debugger.Console.FatalFilter", m_FatalFilter); - } - } - - public void OnDraw() - { - RefreshCount(); - - GUILayout.BeginHorizontal(); - { - if (GUILayout.Button("Clear All", GUILayout.Width(100f))) - { - Clear(); - } - - m_LockScroll = GUILayout.Toggle(m_LockScroll, "Lock Scroll", GUILayout.Width(90f)); - GUILayout.FlexibleSpace(); - m_InfoFilter = GUILayout.Toggle(m_InfoFilter, Utility.Text.Format("Info ({0})", m_InfoCount), GUILayout.Width(90f)); - m_WarningFilter = GUILayout.Toggle(m_WarningFilter, Utility.Text.Format("Warning ({0})", m_WarningCount), GUILayout.Width(90f)); - m_ErrorFilter = GUILayout.Toggle(m_ErrorFilter, Utility.Text.Format("Error ({0})", m_ErrorCount), GUILayout.Width(90f)); - m_FatalFilter = GUILayout.Toggle(m_FatalFilter, Utility.Text.Format("Fatal ({0})", m_FatalCount), GUILayout.Width(90f)); - } - GUILayout.EndHorizontal(); - - GUILayout.BeginVertical("box"); - { - if (m_LockScroll) - { - m_LogScrollPosition.y = float.MaxValue; - } - - m_LogScrollPosition = GUILayout.BeginScrollView(m_LogScrollPosition); - { - bool selected = false; - foreach (LogNode logNode in m_LogNodes) - { - switch (logNode.LogType) - { - case LogType.Log: - if (!m_InfoFilter) - { - continue; - } - - break; - - case LogType.Warning: - if (!m_WarningFilter) - { - continue; - } - - break; - - case LogType.Error: - if (!m_ErrorFilter) - { - continue; - } - - break; - - case LogType.Exception: - if (!m_FatalFilter) - { - continue; - } - - break; - } - - if (GUILayout.Toggle(m_SelectedNode == logNode, GetLogString(logNode))) - { - selected = true; - if (m_SelectedNode != logNode) - { - m_SelectedNode = logNode; - m_StackScrollPosition = Vector2.zero; - } - } - } - - if (!selected) - { - m_SelectedNode = null; - } - } - GUILayout.EndScrollView(); - } - GUILayout.EndVertical(); - - GUILayout.BeginVertical("box"); - { - m_StackScrollPosition = GUILayout.BeginScrollView(m_StackScrollPosition, GUILayout.Height(100f)); - { - if (m_SelectedNode != null) - { - Color32 color = GetLogStringColor(m_SelectedNode.LogType); - if (GUILayout.Button(Utility.Text.Format("{4}{6}{6}{5}", color.r, color.g, color.b, color.a, m_SelectedNode.LogMessage, m_SelectedNode.StackTrack, Environment.NewLine), "label")) - { - CopyToClipboard(Utility.Text.Format("{0}{2}{2}{1}", m_SelectedNode.LogMessage, m_SelectedNode.StackTrack, Environment.NewLine)); - } - } - } - GUILayout.EndScrollView(); - } - GUILayout.EndVertical(); - } - - private void Clear() - { - m_LogNodes.Clear(); - } - - public void RefreshCount() - { - m_InfoCount = 0; - m_WarningCount = 0; - m_ErrorCount = 0; - m_FatalCount = 0; - foreach (LogNode logNode in m_LogNodes) - { - switch (logNode.LogType) - { - case LogType.Log: - m_InfoCount++; - break; - - case LogType.Warning: - m_WarningCount++; - break; - - case LogType.Error: - m_ErrorCount++; - break; - - case LogType.Exception: - m_FatalCount++; - break; - } - } - } - - public void GetRecentLogs(List results) - { - if (results == null) - { - Log.Error("Results is invalid."); - return; - } - - results.Clear(); - foreach (LogNode logNode in m_LogNodes) - { - results.Add(logNode); - } - } - - public void GetRecentLogs(List results, int count) - { - if (results == null) - { - Log.Error("Results is invalid."); - return; - } - - if (count <= 0) - { - Log.Error("Count is invalid."); - return; - } - - int position = m_LogNodes.Count - count; - if (position < 0) - { - position = 0; - } - - int index = 0; - results.Clear(); - foreach (LogNode logNode in m_LogNodes) - { - if (index++ < position) - { - continue; - } - - results.Add(logNode); - } - } - - private void OnLogMessageReceived(string logMessage, string stackTrace, LogType logType) - { - if (logType == LogType.Assert) - { - logType = LogType.Error; - } - - m_LogNodes.Enqueue(LogNode.Create(logType, logMessage, stackTrace)); - while (m_LogNodes.Count > m_MaxLine) - { - MemoryPool.Release(m_LogNodes.Dequeue()); - } - } - - private string GetLogString(LogNode logNode) - { - Color32 color = GetLogStringColor(logNode.LogType); - return Utility.Text.Format("[{4:HH:mm:ss.fff}][{5}] {6}", color.r, color.g, color.b, color.a, logNode.LogTime.ToLocalTime(), logNode.LogFrameCount, logNode.LogMessage); - } - - internal Color32 GetLogStringColor(LogType logType) - { - Color32 color = Color.white; - switch (logType) - { - case LogType.Log: - color = m_InfoColor; - break; - - case LogType.Warning: - color = m_WarningColor; - break; - - case LogType.Error: - color = m_ErrorColor; - break; - - case LogType.Exception: - color = m_FatalColor; - break; - } - - return color; - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ConsoleWindow.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ConsoleWindow.cs.meta deleted file mode 100644 index 8bfcbe3..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ConsoleWindow.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4a47e2730f999784eb1bbeefab72ef11 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.EnvironmentInformationWindow.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.EnvironmentInformationWindow.cs deleted file mode 100644 index c3c955b..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.EnvironmentInformationWindow.cs +++ /dev/null @@ -1,74 +0,0 @@ -using AlicizaX; -using UnityEngine; -#if UNITY_5_5_OR_NEWER -using UnityEngine.Rendering; -#endif - -namespace AlicizaX.Debugger.Runtime -{ - public sealed partial class DebuggerComponent - { - private sealed class EnvironmentInformationWindow : ScrollableDebuggerWindowBase - { - public override void Initialize(params object[] args) - { - - } - - protected override void OnDrawScrollableWindow() - { - GUILayout.Label("Environment Information"); - GUILayout.BeginVertical("box"); - { - DrawItem("Product Name", Application.productName); - DrawItem("Company Name", Application.companyName); -#if UNITY_5_6_OR_NEWER - DrawItem("Game Identifier", Application.identifier); -#else - DrawItem("Game Identifier", Application.bundleIdentifier); -#endif - DrawItem("Game Framework Version", AppVersion.GameFrameworkVersion); - DrawItem("Game Version", Utility.Text.Format("{0} ({1})", AppVersion.GameVersion, AppVersion.GameFrameworkVersion)); - // DrawItem("Resource Version", m_BaseComponent.EditorResourceMode ? "Unavailable in editor resource mode" : (string.IsNullOrEmpty(m_ResourceComponent.ApplicableGameVersion) ? "Unknown" : Utility.Text.Format("{0} ({1})", m_ResourceComponent.ApplicableGameVersion, m_ResourceComponent.InternalResourceVersion))); - DrawItem("Application Version", Application.version); - DrawItem("Unity Version", Application.unityVersion); - DrawItem("Platform", Application.platform.ToString()); - DrawItem("System Language", Application.systemLanguage.ToString()); - DrawItem("Cloud Project Id", Application.cloudProjectId); -#if UNITY_5_6_OR_NEWER - DrawItem("Build Guid", Application.buildGUID); -#endif - DrawItem("Target Frame Rate", Application.targetFrameRate.ToString()); - DrawItem("Internet Reachability", Application.internetReachability.ToString()); - DrawItem("Background Loading Priority", Application.backgroundLoadingPriority.ToString()); - DrawItem("Is Playing", Application.isPlaying.ToString()); -#if UNITY_5_5_OR_NEWER - DrawItem("Splash Screen Is Finished", SplashScreen.isFinished.ToString()); -#else - DrawItem("Is Showing Splash Screen", Application.isShowingSplashScreen.ToString()); -#endif - DrawItem("Run In Background", Application.runInBackground.ToString()); -#if UNITY_5_5_OR_NEWER - DrawItem("Install Name", Application.installerName); -#endif - DrawItem("Install Mode", Application.installMode.ToString()); - DrawItem("Sandbox Type", Application.sandboxType.ToString()); - DrawItem("Is Mobile Platform", Application.isMobilePlatform.ToString()); - DrawItem("Is Console Platform", Application.isConsolePlatform.ToString()); - DrawItem("Is Editor", Application.isEditor.ToString()); - DrawItem("Is Debug Build", Debug.isDebugBuild.ToString()); -#if UNITY_5_6_OR_NEWER - DrawItem("Is Focused", Application.isFocused.ToString()); -#endif -#if UNITY_2018_2_OR_NEWER - DrawItem("Is Batch Mode", Application.isBatchMode.ToString()); -#endif -#if UNITY_5_3 - DrawItem("Stack Trace Log Type", Application.stackTraceLogType.ToString()); -#endif - } - GUILayout.EndVertical(); - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.EnvironmentInformationWindow.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.EnvironmentInformationWindow.cs.meta deleted file mode 100644 index 6fea0ee..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.EnvironmentInformationWindow.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c52c8dc8849c5fb429c50b45975a599b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.FpsCounter.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.FpsCounter.cs deleted file mode 100644 index de2cd27..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.FpsCounter.cs +++ /dev/null @@ -1,77 +0,0 @@ - -namespace AlicizaX.Debugger.Runtime -{ - public sealed partial class DebuggerComponent - { - private sealed class FpsCounter - { - private float m_UpdateInterval; - private float m_CurrentFps; - private int m_Frames; - private float m_Accumulator; - private float m_TimeLeft; - - public FpsCounter(float updateInterval) - { - if (updateInterval <= 0f) - { - Log.Error("Update interval is invalid."); - return; - } - - m_UpdateInterval = updateInterval; - Reset(); - } - - public float UpdateInterval - { - get - { - return m_UpdateInterval; - } - set - { - if (value <= 0f) - { - Log.Error("Update interval is invalid."); - return; - } - - m_UpdateInterval = value; - Reset(); - } - } - - public float CurrentFps - { - get - { - return m_CurrentFps; - } - } - - public void Update(float elapseSeconds, float realElapseSeconds) - { - m_Frames++; - m_Accumulator += realElapseSeconds; - m_TimeLeft -= realElapseSeconds; - - if (m_TimeLeft <= 0f) - { - m_CurrentFps = m_Accumulator > 0f ? m_Frames / m_Accumulator : 0f; - m_Frames = 0; - m_Accumulator = 0f; - m_TimeLeft += m_UpdateInterval; - } - } - - private void Reset() - { - m_CurrentFps = 0f; - m_Frames = 0; - m_Accumulator = 0f; - m_TimeLeft = 0f; - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.FpsCounter.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.FpsCounter.cs.meta deleted file mode 100644 index 6c6467c..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.FpsCounter.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4f24c805ead515d4286d3c03cd50f750 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.GraphicsInformationWindow.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.GraphicsInformationWindow.cs deleted file mode 100644 index 536a9b9..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.GraphicsInformationWindow.cs +++ /dev/null @@ -1,163 +0,0 @@ -using AlicizaX; -using UnityEngine; - -namespace AlicizaX.Debugger.Runtime -{ - public sealed partial class DebuggerComponent - { - private sealed class GraphicsInformationWindow : ScrollableDebuggerWindowBase - { - protected override void OnDrawScrollableWindow() - { - GUILayout.Label("Graphics Information"); - GUILayout.BeginVertical("box"); - { - DrawItem("Device ID", SystemInfo.graphicsDeviceID.ToString()); - DrawItem("Device Name", SystemInfo.graphicsDeviceName); - DrawItem("Device Vendor ID", SystemInfo.graphicsDeviceVendorID.ToString()); - DrawItem("Device Vendor", SystemInfo.graphicsDeviceVendor); - DrawItem("Device Type", SystemInfo.graphicsDeviceType.ToString()); - DrawItem("Device Version", SystemInfo.graphicsDeviceVersion); - DrawItem("Memory Size", Utility.Text.Format("{0} MB", SystemInfo.graphicsMemorySize)); - DrawItem("Multi Threaded", SystemInfo.graphicsMultiThreaded.ToString()); -#if UNITY_2019_3_OR_NEWER - DrawItem("Rendering Threading Mode", SystemInfo.renderingThreadingMode.ToString()); -#endif -#if UNITY_2020_1_OR_NEWER - DrawItem("HRD Display Support Flags", SystemInfo.hdrDisplaySupportFlags.ToString()); -#endif - DrawItem("Shader Level", GetShaderLevelString(SystemInfo.graphicsShaderLevel)); - DrawItem("Global Maximum LOD", Shader.globalMaximumLOD.ToString()); -#if UNITY_5_6_OR_NEWER - DrawItem("Global Render Pipeline", Shader.globalRenderPipeline); -#endif -#if UNITY_2020_2_OR_NEWER - DrawItem("Min OpenGLES Version", Graphics.minOpenGLESVersion.ToString()); -#endif -#if UNITY_5_5_OR_NEWER - DrawItem("Active Tier", Graphics.activeTier.ToString()); -#endif -#if UNITY_2017_2_OR_NEWER - DrawItem("Active Color Gamut", Graphics.activeColorGamut.ToString()); -#endif -#if UNITY_2019_2_OR_NEWER - DrawItem("Preserve Frame Buffer Alpha", Graphics.preserveFramebufferAlpha.ToString()); -#endif - DrawItem("NPOT Support", SystemInfo.npotSupport.ToString()); - DrawItem("Max Texture Size", SystemInfo.maxTextureSize.ToString()); - DrawItem("Supported Render Target Count", SystemInfo.supportedRenderTargetCount.ToString()); -#if UNITY_2019_3_OR_NEWER - DrawItem("Supported Random Write Target Count", SystemInfo.supportedRandomWriteTargetCount.ToString()); -#endif -#if UNITY_5_4_OR_NEWER - DrawItem("Copy Texture Support", SystemInfo.copyTextureSupport.ToString()); -#endif -#if UNITY_5_5_OR_NEWER - DrawItem("Uses Reversed ZBuffer", SystemInfo.usesReversedZBuffer.ToString()); -#endif -#if UNITY_5_6_OR_NEWER - DrawItem("Max Cubemap Size", SystemInfo.maxCubemapSize.ToString()); - DrawItem("Graphics UV Starts At Top", SystemInfo.graphicsUVStartsAtTop.ToString()); -#endif -#if UNITY_2020_2_OR_NEWER - DrawItem("Constant Buffer Offset Alignment", SystemInfo.constantBufferOffsetAlignment.ToString()); -#elif UNITY_2019_1_OR_NEWER - DrawItem("Min Constant Buffer Offset Alignment", SystemInfo.minConstantBufferOffsetAlignment.ToString()); -#endif -#if UNITY_2018_3_OR_NEWER - DrawItem("Has Hidden Surface Removal On GPU", SystemInfo.hasHiddenSurfaceRemovalOnGPU.ToString()); - DrawItem("Has Dynamic Uniform Array Indexing In Fragment Shaders", SystemInfo.hasDynamicUniformArrayIndexingInFragmentShaders.ToString()); -#endif -#if UNITY_2019_2_OR_NEWER - DrawItem("Has Mip Max Level", SystemInfo.hasMipMaxLevel.ToString()); -#endif -#if UNITY_2019_3_OR_NEWER - DrawItem("Uses Load Store Actions", SystemInfo.usesLoadStoreActions.ToString()); - DrawItem("Max Compute Buffer Inputs Compute", SystemInfo.maxComputeBufferInputsCompute.ToString()); - DrawItem("Max Compute Buffer Inputs Domain", SystemInfo.maxComputeBufferInputsDomain.ToString()); - DrawItem("Max Compute Buffer Inputs Fragment", SystemInfo.maxComputeBufferInputsFragment.ToString()); - DrawItem("Max Compute Buffer Inputs Geometry", SystemInfo.maxComputeBufferInputsGeometry.ToString()); - DrawItem("Max Compute Buffer Inputs Hull", SystemInfo.maxComputeBufferInputsHull.ToString()); - DrawItem("Max Compute Buffer Inputs Vertex", SystemInfo.maxComputeBufferInputsVertex.ToString()); - DrawItem("Max Compute Work Group Size", SystemInfo.maxComputeWorkGroupSize.ToString()); - DrawItem("Max Compute Work Group Size X", SystemInfo.maxComputeWorkGroupSizeX.ToString()); - DrawItem("Max Compute Work Group Size Y", SystemInfo.maxComputeWorkGroupSizeY.ToString()); - DrawItem("Max Compute Work Group Size Z", SystemInfo.maxComputeWorkGroupSizeZ.ToString()); -#endif -#if UNITY_5_3 || UNITY_5_4 - DrawItem("Supports Stencil", SystemInfo.supportsStencil.ToString()); - DrawItem("Supports Render Textures", SystemInfo.supportsRenderTextures.ToString()); -#endif - DrawItem("Supports Sparse Textures", SystemInfo.supportsSparseTextures.ToString()); - DrawItem("Supports 3D Textures", SystemInfo.supports3DTextures.ToString()); - DrawItem("Supports Shadows", SystemInfo.supportsShadows.ToString()); - DrawItem("Supports Raw Shadow Depth Sampling", SystemInfo.supportsRawShadowDepthSampling.ToString()); -#if !UNITY_2019_1_OR_NEWER - DrawItem("Supports Render To Cubemap", SystemInfo.supportsRenderToCubemap.ToString()); - DrawItem("Supports Image Effects", SystemInfo.supportsImageEffects.ToString()); -#endif - DrawItem("Supports Compute Shader", SystemInfo.supportsComputeShaders.ToString()); - DrawItem("Supports Instancing", SystemInfo.supportsInstancing.ToString()); -#if UNITY_5_4_OR_NEWER - DrawItem("Supports 2D Array Textures", SystemInfo.supports2DArrayTextures.ToString()); - DrawItem("Supports Motion Vectors", SystemInfo.supportsMotionVectors.ToString()); -#endif -#if UNITY_5_5_OR_NEWER - DrawItem("Supports Cubemap Array Textures", SystemInfo.supportsCubemapArrayTextures.ToString()); -#endif -#if UNITY_5_6_OR_NEWER - DrawItem("Supports 3D Render Textures", SystemInfo.supports3DRenderTextures.ToString()); -#endif -#if UNITY_2017_2_OR_NEWER && !UNITY_2017_2_0 || UNITY_2017_1_4 - DrawItem("Supports Texture Wrap Mirror Once", SystemInfo.supportsTextureWrapMirrorOnce.ToString()); -#endif -#if UNITY_2019_1_OR_NEWER - DrawItem("Supports Graphics Fence", SystemInfo.supportsGraphicsFence.ToString()); -#elif UNITY_2017_3_OR_NEWER - DrawItem("Supports GPU Fence", SystemInfo.supportsGPUFence.ToString()); -#endif -#if UNITY_2017_3_OR_NEWER - DrawItem("Supports Async Compute", SystemInfo.supportsAsyncCompute.ToString()); - DrawItem("Supports Multi-sampled Textures", SystemInfo.supportsMultisampledTextures.ToString()); -#endif -#if UNITY_2018_1_OR_NEWER - DrawItem("Supports Async GPU Readback", SystemInfo.supportsAsyncGPUReadback.ToString()); - DrawItem("Supports 32bits Index Buffer", SystemInfo.supports32bitsIndexBuffer.ToString()); - DrawItem("Supports Hardware Quad Topology", SystemInfo.supportsHardwareQuadTopology.ToString()); -#endif -#if UNITY_2018_2_OR_NEWER - DrawItem("Supports Mip Streaming", SystemInfo.supportsMipStreaming.ToString()); - DrawItem("Supports Multi-sample Auto Resolve", SystemInfo.supportsMultisampleAutoResolve.ToString()); -#endif -#if UNITY_2018_3_OR_NEWER - DrawItem("Supports Separated Render Targets Blend", SystemInfo.supportsSeparatedRenderTargetsBlend.ToString()); -#endif -#if UNITY_2019_1_OR_NEWER - DrawItem("Supports Set Constant Buffer", SystemInfo.supportsSetConstantBuffer.ToString()); -#endif -#if UNITY_2019_3_OR_NEWER - DrawItem("Supports Geometry Shaders", SystemInfo.supportsGeometryShaders.ToString()); - DrawItem("Supports Ray Tracing", SystemInfo.supportsRayTracing.ToString()); - DrawItem("Supports Tessellation Shaders", SystemInfo.supportsTessellationShaders.ToString()); -#endif -#if UNITY_2020_1_OR_NEWER - DrawItem("Supports Compressed 3D Textures", SystemInfo.supportsCompressed3DTextures.ToString()); - DrawItem("Supports Conservative Raster", SystemInfo.supportsConservativeRaster.ToString()); - DrawItem("Supports GPU Recorder", SystemInfo.supportsGpuRecorder.ToString()); -#endif -#if UNITY_2020_2_OR_NEWER - DrawItem("Supports Multi-sampled 2D Array Textures", SystemInfo.supportsMultisampled2DArrayTextures.ToString()); - DrawItem("Supports Multiview", SystemInfo.supportsMultiview.ToString()); - DrawItem("Supports Render Target Array Index From Vertex Shader", SystemInfo.supportsRenderTargetArrayIndexFromVertexShader.ToString()); -#endif - } - GUILayout.EndVertical(); - } - - private string GetShaderLevelString(int shaderLevel) - { - return Utility.Text.Format("Shader Model {0}.{1}", shaderLevel / 10, shaderLevel % 10); - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.GraphicsInformationWindow.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.GraphicsInformationWindow.cs.meta deleted file mode 100644 index ffd1618..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.GraphicsInformationWindow.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a1342573add002c41b3bb1a8abb8ef3a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputAccelerationInformationWindow.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputAccelerationInformationWindow.cs deleted file mode 100644 index 543e29c..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputAccelerationInformationWindow.cs +++ /dev/null @@ -1,39 +0,0 @@ -using AlicizaX; -using UnityEngine; - -namespace AlicizaX.Debugger.Runtime -{ - public sealed partial class DebuggerComponent - { - private sealed class InputAccelerationInformationWindow : ScrollableDebuggerWindowBase - { - protected override void OnDrawScrollableWindow() - { - GUILayout.Label("Input Acceleration Information"); - GUILayout.BeginVertical("box"); - { - DrawItem("Acceleration", Input.acceleration.ToString()); - DrawItem("Acceleration Event Count", Input.accelerationEventCount.ToString()); - DrawItem("Acceleration Events", GetAccelerationEventsString(Input.accelerationEvents)); - } - GUILayout.EndVertical(); - } - - private string GetAccelerationEventString(AccelerationEvent accelerationEvent) - { - return Utility.Text.Format("{0}, {1}", accelerationEvent.acceleration, accelerationEvent.deltaTime); - } - - private string GetAccelerationEventsString(AccelerationEvent[] accelerationEvents) - { - string[] accelerationEventStrings = new string[accelerationEvents.Length]; - for (int i = 0; i < accelerationEvents.Length; i++) - { - accelerationEventStrings[i] = GetAccelerationEventString(accelerationEvents[i]); - } - - return string.Join("; ", accelerationEventStrings); - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputAccelerationInformationWindow.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputAccelerationInformationWindow.cs.meta deleted file mode 100644 index e74c151..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputAccelerationInformationWindow.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 99bd178c0d097a24d9e04fe1522bca60 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputCompassInformationWindow.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputCompassInformationWindow.cs deleted file mode 100644 index 28e8cb1..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputCompassInformationWindow.cs +++ /dev/null @@ -1,42 +0,0 @@ -using AlicizaX; -using UnityEngine; - -namespace AlicizaX.Debugger.Runtime -{ - public sealed partial class DebuggerComponent - { - private sealed class InputCompassInformationWindow : ScrollableDebuggerWindowBase - { - protected override void OnDrawScrollableWindow() - { - GUILayout.Label("Input Compass Information"); - GUILayout.BeginVertical("box"); - { - GUILayout.BeginHorizontal(); - { - if (GUILayout.Button("Enable", GUILayout.Height(30f))) - { - Input.compass.enabled = true; - } - if (GUILayout.Button("Disable", GUILayout.Height(30f))) - { - Input.compass.enabled = false; - } - } - GUILayout.EndHorizontal(); - - DrawItem("Enabled", Input.compass.enabled.ToString()); - if (Input.compass.enabled) - { - DrawItem("Heading Accuracy", Input.compass.headingAccuracy.ToString()); - DrawItem("Magnetic Heading", Input.compass.magneticHeading.ToString()); - DrawItem("Raw Vector", Input.compass.rawVector.ToString()); - DrawItem("Timestamp", Input.compass.timestamp.ToString()); - DrawItem("True Heading", Input.compass.trueHeading.ToString()); - } - } - GUILayout.EndVertical(); - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputCompassInformationWindow.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputCompassInformationWindow.cs.meta deleted file mode 100644 index 81d4090..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputCompassInformationWindow.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a8e33bb9948f7f54d988d80a6ae6a24a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputGyroscopeInformationWindow.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputGyroscopeInformationWindow.cs deleted file mode 100644 index a52e050..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputGyroscopeInformationWindow.cs +++ /dev/null @@ -1,43 +0,0 @@ -using AlicizaX; -using UnityEngine; - -namespace AlicizaX.Debugger.Runtime -{ - public sealed partial class DebuggerComponent - { - private sealed class InputGyroscopeInformationWindow : ScrollableDebuggerWindowBase - { - protected override void OnDrawScrollableWindow() - { - GUILayout.Label("Input Gyroscope Information"); - GUILayout.BeginVertical("box"); - { - GUILayout.BeginHorizontal(); - { - if (GUILayout.Button("Enable", GUILayout.Height(30f))) - { - Input.gyro.enabled = true; - } - if (GUILayout.Button("Disable", GUILayout.Height(30f))) - { - Input.gyro.enabled = false; - } - } - GUILayout.EndHorizontal(); - - DrawItem("Enabled", Input.gyro.enabled.ToString()); - if (Input.gyro.enabled) - { - DrawItem("Update Interval", Input.gyro.updateInterval.ToString()); - DrawItem("Attitude", Input.gyro.attitude.eulerAngles.ToString()); - DrawItem("Gravity", Input.gyro.gravity.ToString()); - DrawItem("Rotation Rate", Input.gyro.rotationRate.ToString()); - DrawItem("Rotation Rate Unbiased", Input.gyro.rotationRateUnbiased.ToString()); - DrawItem("User Acceleration", Input.gyro.userAcceleration.ToString()); - } - } - GUILayout.EndVertical(); - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputGyroscopeInformationWindow.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputGyroscopeInformationWindow.cs.meta deleted file mode 100644 index 613ca98..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputGyroscopeInformationWindow.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 709450f452a296b44b4aa939cf37f37c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputLocationInformationWindow.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputLocationInformationWindow.cs deleted file mode 100644 index dd692bd..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputLocationInformationWindow.cs +++ /dev/null @@ -1,44 +0,0 @@ -using AlicizaX; -using UnityEngine; - -namespace AlicizaX.Debugger.Runtime -{ - public sealed partial class DebuggerComponent - { - private sealed class InputLocationInformationWindow : ScrollableDebuggerWindowBase - { - protected override void OnDrawScrollableWindow() - { - GUILayout.Label("Input Location Information"); - GUILayout.BeginVertical("box"); - { - GUILayout.BeginHorizontal(); - { - if (GUILayout.Button("Enable", GUILayout.Height(30f))) - { - Input.location.Start(); - } - if (GUILayout.Button("Disable", GUILayout.Height(30f))) - { - Input.location.Stop(); - } - } - GUILayout.EndHorizontal(); - - DrawItem("Is Enabled By User", Input.location.isEnabledByUser.ToString()); - DrawItem("Status", Input.location.status.ToString()); - if (Input.location.status == LocationServiceStatus.Running) - { - DrawItem("Horizontal Accuracy", Input.location.lastData.horizontalAccuracy.ToString()); - DrawItem("Vertical Accuracy", Input.location.lastData.verticalAccuracy.ToString()); - DrawItem("Longitude", Input.location.lastData.longitude.ToString()); - DrawItem("Latitude", Input.location.lastData.latitude.ToString()); - DrawItem("Altitude", Input.location.lastData.altitude.ToString()); - DrawItem("Timestamp", Input.location.lastData.timestamp.ToString()); - } - } - GUILayout.EndVertical(); - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputLocationInformationWindow.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputLocationInformationWindow.cs.meta deleted file mode 100644 index 85e0c9f..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputLocationInformationWindow.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 74c5698b7ee786442b28b64003f564fc -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputSummaryInformationWindow.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputSummaryInformationWindow.cs deleted file mode 100644 index bf563ef..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputSummaryInformationWindow.cs +++ /dev/null @@ -1,33 +0,0 @@ -using AlicizaX; -using UnityEngine; - -namespace AlicizaX.Debugger.Runtime -{ - public sealed partial class DebuggerComponent - { - private sealed class InputSummaryInformationWindow : ScrollableDebuggerWindowBase - { - protected override void OnDrawScrollableWindow() - { - GUILayout.Label("Input Summary Information"); - GUILayout.BeginVertical("box"); - { - DrawItem("Back Button Leaves App", Input.backButtonLeavesApp.ToString()); - DrawItem("Device Orientation", Input.deviceOrientation.ToString()); - DrawItem("Mouse Present", Input.mousePresent.ToString()); - DrawItem("Mouse Position", Input.mousePosition.ToString()); - DrawItem("Mouse Scroll Delta", Input.mouseScrollDelta.ToString()); - DrawItem("Any Key", Input.anyKey.ToString()); - DrawItem("Any Key Down", Input.anyKeyDown.ToString()); - DrawItem("Input String", Input.inputString); - DrawItem("IME Is Selected", Input.imeIsSelected.ToString()); - DrawItem("IME Composition Mode", Input.imeCompositionMode.ToString()); - DrawItem("Compensate Sensors", Input.compensateSensors.ToString()); - DrawItem("Composition Cursor Position", Input.compositionCursorPos.ToString()); - DrawItem("Composition String", Input.compositionString); - } - GUILayout.EndVertical(); - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputSummaryInformationWindow.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputSummaryInformationWindow.cs.meta deleted file mode 100644 index 10a2fc3..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputSummaryInformationWindow.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a2756ce9647dc6a49a66c75437edef8b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputTouchInformationWindow.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputTouchInformationWindow.cs deleted file mode 100644 index 0fe8ffa..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputTouchInformationWindow.cs +++ /dev/null @@ -1,43 +0,0 @@ -using AlicizaX; -using UnityEngine; - -namespace AlicizaX.Debugger.Runtime -{ - public sealed partial class DebuggerComponent - { - private sealed class InputTouchInformationWindow : ScrollableDebuggerWindowBase - { - protected override void OnDrawScrollableWindow() - { - GUILayout.Label("Input Touch Information"); - GUILayout.BeginVertical("box"); - { - DrawItem("Touch Supported", Input.touchSupported.ToString()); - DrawItem("Touch Pressure Supported", Input.touchPressureSupported.ToString()); - DrawItem("Stylus Touch Supported", Input.stylusTouchSupported.ToString()); - DrawItem("Simulate Mouse With Touches", Input.simulateMouseWithTouches.ToString()); - DrawItem("Multi Touch Enabled", Input.multiTouchEnabled.ToString()); - DrawItem("Touch Count", Input.touchCount.ToString()); - DrawItem("Touches", GetTouchesString(Input.touches)); - } - GUILayout.EndVertical(); - } - - private string GetTouchString(Touch touch) - { - return Utility.Text.Format("{0}, {1}, {2}, {3}, {4}", touch.position, touch.deltaPosition, touch.rawPosition, touch.pressure, touch.phase); - } - - private string GetTouchesString(Touch[] touches) - { - string[] touchStrings = new string[touches.Length]; - for (int i = 0; i < touches.Length; i++) - { - touchStrings[i] = GetTouchString(touches[i]); - } - - return string.Join("; ", touchStrings); - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputTouchInformationWindow.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputTouchInformationWindow.cs.meta deleted file mode 100644 index 413d7ac..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.InputTouchInformationWindow.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 6a76aa41d893e994f9630028d5e3001d -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.LogNode.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.LogNode.cs deleted file mode 100644 index 4fe357a..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.LogNode.cs +++ /dev/null @@ -1,119 +0,0 @@ - -using System; -using AlicizaX; -using UnityEngine; - -namespace AlicizaX.Debugger.Runtime -{ - public sealed partial class DebuggerComponent - { - /// - /// 日志记录结点。 - /// - public sealed class LogNode : IMemory - { - private DateTime m_LogTime; - private int m_LogFrameCount; - private LogType m_LogType; - private string m_LogMessage; - private string m_StackTrack; - - /// - /// 初始化日志记录结点的新实例。 - /// - public LogNode() - { - m_LogTime = default(DateTime); - m_LogFrameCount = 0; - m_LogType = LogType.Error; - m_LogMessage = null; - m_StackTrack = null; - } - - /// - /// 获取日志时间。 - /// - public DateTime LogTime - { - get - { - return m_LogTime; - } - } - - /// - /// 获取日志帧计数。 - /// - public int LogFrameCount - { - get - { - return m_LogFrameCount; - } - } - - /// - /// 获取日志类型。 - /// - public LogType LogType - { - get - { - return m_LogType; - } - } - - /// - /// 获取日志内容。 - /// - public string LogMessage - { - get - { - return m_LogMessage; - } - } - - /// - /// 获取日志堆栈信息。 - /// - public string StackTrack - { - get - { - return m_StackTrack; - } - } - - /// - /// 创建日志记录结点。 - /// - /// 日志类型。 - /// 日志内容。 - /// 日志堆栈信息。 - /// 创建的日志记录结点。 - public static LogNode Create(LogType logType, string logMessage, string stackTrack) - { - LogNode logNode = MemoryPool.Acquire(); - logNode.m_LogTime = DateTime.UtcNow; - logNode.m_LogFrameCount = Time.frameCount; - logNode.m_LogType = logType; - logNode.m_LogMessage = logMessage; - logNode.m_StackTrack = stackTrack; - return logNode; - } - - /// - /// 清理日志记录结点。 - /// - public void Clear() - { - m_LogTime = default(DateTime); - m_LogFrameCount = 0; - m_LogType = LogType.Error; - m_LogMessage = null; - m_StackTrack = null; - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.LogNode.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.LogNode.cs.meta deleted file mode 100644 index a9cd9bb..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.LogNode.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 168b4dfdd72224e4bbc5fb606eec23dd -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ObjectPoolInformationWindow.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ObjectPoolInformationWindow.cs deleted file mode 100644 index 4345b9f..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ObjectPoolInformationWindow.cs +++ /dev/null @@ -1,87 +0,0 @@ -using AlicizaX.ObjectPool; -using UnityEngine; - -namespace AlicizaX.Debugger.Runtime -{ - public sealed partial class DebuggerComponent - { - private sealed class ObjectPoolInformationWindow : ScrollableDebuggerWindowBase - { - private IObjectPoolModule m_ObjectPoolComponent = null; - - public override void Initialize(params object[] args) - { - m_ObjectPoolComponent = ModuleSystem.GetModule(); - if (m_ObjectPoolComponent == null) - { - Log.Error("Object pool component is invalid."); - return; - } - } - - protected override void OnDrawScrollableWindow() - { - GUILayout.Label("Object Pool Information"); - GUILayout.BeginVertical("box"); - { - DrawItem("Object Pool Count", m_ObjectPoolComponent.Count.ToString()); - } - GUILayout.EndVertical(); - ObjectPoolBase[] objectPools = m_ObjectPoolComponent.GetAllObjectPools(true); - for (int i = 0; i < objectPools.Length; i++) - { - DrawObjectPool(objectPools[i]); - } - } - - private void DrawObjectPool(ObjectPoolBase objectPool) - { - GUILayout.Label(Utility.Text.Format("Object Pool: {0}", objectPool.FullName)); - GUILayout.BeginVertical("box"); - { - DrawItem("Name", objectPool.Name); - DrawItem("Type", objectPool.ObjectType.FullName); - DrawItem("Auto Release Interval", objectPool.AutoReleaseInterval.ToString()); - DrawItem("Capacity", objectPool.Capacity.ToString()); - DrawItem("Used Count", objectPool.Count.ToString()); - DrawItem("Can Release Count", objectPool.CanReleaseCount.ToString()); - DrawItem("Expire Time", objectPool.ExpireTime.ToString()); - DrawItem("Priority", objectPool.Priority.ToString()); - ObjectInfo[] objectInfos = objectPool.GetAllObjectInfos(); - GUILayout.BeginHorizontal(); - { - GUILayout.Label("Name"); - GUILayout.Label("Locked", GUILayout.Width(60f)); - GUILayout.Label(objectPool.AllowMultiSpawn ? "Count" : "In Use", GUILayout.Width(60f)); - GUILayout.Label("Flag", GUILayout.Width(60f)); - GUILayout.Label("Priority", GUILayout.Width(60f)); - GUILayout.Label("Last Use Time", GUILayout.Width(120f)); - } - GUILayout.EndHorizontal(); - - if (objectInfos.Length > 0) - { - for (int i = 0; i < objectInfos.Length; i++) - { - GUILayout.BeginHorizontal(); - { - GUILayout.Label(string.IsNullOrEmpty(objectInfos[i].Name) ? "" : objectInfos[i].Name); - GUILayout.Label(objectInfos[i].Locked.ToString(), GUILayout.Width(60f)); - GUILayout.Label(objectPool.AllowMultiSpawn ? objectInfos[i].SpawnCount.ToString() : objectInfos[i].IsInUse.ToString(), GUILayout.Width(60f)); - GUILayout.Label(objectInfos[i].CustomCanReleaseFlag.ToString(), GUILayout.Width(60f)); - GUILayout.Label(objectInfos[i].Priority.ToString(), GUILayout.Width(60f)); - GUILayout.Label(objectInfos[i].LastUseTime.ToLocalTime().ToString("yyyy-MM-dd HH:mm:ss"), GUILayout.Width(120f)); - } - GUILayout.EndHorizontal(); - } - } - else - { - GUILayout.Label("Object Pool is Empty ..."); - } - } - GUILayout.EndVertical(); - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ObjectPoolInformationWindow.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ObjectPoolInformationWindow.cs.meta deleted file mode 100644 index 03ba5f0..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ObjectPoolInformationWindow.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 5898a6ad35652924590c863ef4bc6341 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.OperationsWindow.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.OperationsWindow.cs deleted file mode 100644 index 8cfdf15..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.OperationsWindow.cs +++ /dev/null @@ -1,67 +0,0 @@ -// //------------------------------------------------------------ -// // Game Framework -// // Copyright © 2013-2021 Jiang Yin. All rights reserved. -// // Homepage: https://gameframework.cn/ -// // Feedback: mailto:ellan@gameframework.cn -// //------------------------------------------------------------ -// -// using GameFrameX.Runtime; -// using UnityEngine; -// -// namespace GameFrameX.Debugger.Runtime -// { -// public sealed partial class DebuggerComponent : GameFrameworkComponent -// { -// private sealed class OperationsWindow : ScrollableDebuggerWindowBase -// { -// protected override void OnDrawScrollableWindow() -// { -// GUILayout.Label("Operations"); -// GUILayout.BeginVertical("box"); -// { -// ObjectPoolComponent objectPoolComponent = GameEntry.GetComponent(); -// if (objectPoolComponent != null) -// { -// if (GUILayout.Button("Object Pool Release", GUILayout.Height(30f))) -// { -// objectPoolComponent.Release(); -// } -// -// if (GUILayout.Button("Object Pool Release All Unused", GUILayout.Height(30f))) -// { -// objectPoolComponent.ReleaseAllUnused(); -// } -// } -// -// ResourceComponent resourceCompoent = GameEntry.GetComponent(); -// if (resourceCompoent != null) -// { -// if (GUILayout.Button("Unload Unused Assets", GUILayout.Height(30f))) -// { -// resourceCompoent.ForceUnloadUnusedAssets(false); -// } -// -// if (GUILayout.Button("Unload Unused Assets and Garbage Collect", GUILayout.Height(30f))) -// { -// resourceCompoent.ForceUnloadUnusedAssets(true); -// } -// } -// -// if (GUILayout.Button("Shutdown Game Framework (None)", GUILayout.Height(30f))) -// { -// GameEntry.Shutdown(ShutdownType.None); -// } -// if (GUILayout.Button("Shutdown Game Framework (Restart)", GUILayout.Height(30f))) -// { -// GameEntry.Shutdown(ShutdownType.Restart); -// } -// if (GUILayout.Button("Shutdown Game Framework (Quit)", GUILayout.Height(30f))) -// { -// GameEntry.Shutdown(ShutdownType.Quit); -// } -// } -// GUILayout.EndVertical(); -// } -// } -// } -// } diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.OperationsWindow.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.OperationsWindow.cs.meta deleted file mode 100644 index ac4e910..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.OperationsWindow.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: a695dd87b92d7374fbe3790f5a25e9d5 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.PathInformationWindow.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.PathInformationWindow.cs deleted file mode 100644 index fd8643b..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.PathInformationWindow.cs +++ /dev/null @@ -1,29 +0,0 @@ -using System; -using AlicizaX; -using UnityEngine; - -namespace AlicizaX.Debugger.Runtime -{ - public sealed partial class DebuggerComponent - { - private sealed class PathInformationWindow : ScrollableDebuggerWindowBase - { - protected override void OnDrawScrollableWindow() - { - GUILayout.Label("Path Information"); - GUILayout.BeginVertical("box"); - { - DrawItem("Current Directory", Utility.Path.GetRegularPath(Environment.CurrentDirectory)); - DrawItem("Data Path", Utility.Path.GetRegularPath(Application.dataPath)); - DrawItem("Persistent Data Path", Utility.Path.GetRegularPath(Application.persistentDataPath)); - DrawItem("Streaming Assets Path", Utility.Path.GetRegularPath(Application.streamingAssetsPath)); - DrawItem("Temporary Cache Path", Utility.Path.GetRegularPath(Application.temporaryCachePath)); -#if UNITY_2018_3_OR_NEWER - DrawItem("Console Log Path", Utility.Path.GetRegularPath(Application.consoleLogPath)); -#endif - } - GUILayout.EndVertical(); - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.PathInformationWindow.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.PathInformationWindow.cs.meta deleted file mode 100644 index 1597ff4..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.PathInformationWindow.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e86b5be349fea7b46bf4c9cff62cf940 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ProfilerInformationWindow.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ProfilerInformationWindow.cs deleted file mode 100644 index 174f8cd..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ProfilerInformationWindow.cs +++ /dev/null @@ -1,61 +0,0 @@ - -using AlicizaX; -using UnityEngine; -#if UNITY_5_5_OR_NEWER -using UnityEngine.Profiling; -#endif - -namespace AlicizaX.Debugger.Runtime -{ - public sealed partial class DebuggerComponent - { - private sealed class ProfilerInformationWindow : ScrollableDebuggerWindowBase - { - protected override void OnDrawScrollableWindow() - { - GUILayout.Label("Profiler Information"); - GUILayout.BeginVertical("box"); - { - DrawItem("Supported", Profiler.supported.ToString()); - DrawItem("Enabled", Profiler.enabled.ToString()); - DrawItem("Enable Binary Log", Profiler.enableBinaryLog ? Utility.Text.Format("True, {0}", Profiler.logFile) : "False"); -#if UNITY_2019_3_OR_NEWER - DrawItem("Enable Allocation Callstacks", Profiler.enableAllocationCallstacks.ToString()); -#endif -#if UNITY_2018_3_OR_NEWER - DrawItem("Area Count", Profiler.areaCount.ToString()); -#endif -#if UNITY_5_3 || UNITY_5_4 - DrawItem("Max Samples Number Per Frame", Profiler.maxNumberOfSamplesPerFrame.ToString()); -#endif -#if UNITY_2018_3_OR_NEWER - DrawItem("Max Used Memory", GetByteLengthString(Profiler.maxUsedMemory)); -#endif -#if UNITY_5_6_OR_NEWER - DrawItem("Mono Used Size", GetByteLengthString(Profiler.GetMonoUsedSizeLong())); - DrawItem("Mono Heap Size", GetByteLengthString(Profiler.GetMonoHeapSizeLong())); - DrawItem("Used Heap Size", GetByteLengthString(Profiler.usedHeapSizeLong)); - DrawItem("Total Allocated Memory", GetByteLengthString(Profiler.GetTotalAllocatedMemoryLong())); - DrawItem("Total Reserved Memory", GetByteLengthString(Profiler.GetTotalReservedMemoryLong())); - DrawItem("Total Unused Reserved Memory", GetByteLengthString(Profiler.GetTotalUnusedReservedMemoryLong())); -#else - DrawItem("Mono Used Size", GetByteLengthString(Profiler.GetMonoUsedSize())); - DrawItem("Mono Heap Size", GetByteLengthString(Profiler.GetMonoHeapSize())); - DrawItem("Used Heap Size", GetByteLengthString(Profiler.usedHeapSize)); - DrawItem("Total Allocated Memory", GetByteLengthString(Profiler.GetTotalAllocatedMemory())); - DrawItem("Total Reserved Memory", GetByteLengthString(Profiler.GetTotalReservedMemory())); - DrawItem("Total Unused Reserved Memory", GetByteLengthString(Profiler.GetTotalUnusedReservedMemory())); -#endif -#if UNITY_2018_1_OR_NEWER - DrawItem("Allocated Memory For Graphics Driver", GetByteLengthString(Profiler.GetAllocatedMemoryForGraphicsDriver())); -#endif -#if UNITY_5_5_OR_NEWER - DrawItem("Temp Allocator Size", GetByteLengthString(Profiler.GetTempAllocatorSize())); -#endif - DrawItem("Marshal Cached HGlobal Size", GetByteLengthString(Utility.Marshal.CachedHGlobalSize)); - } - GUILayout.EndVertical(); - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ProfilerInformationWindow.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ProfilerInformationWindow.cs.meta deleted file mode 100644 index 0e72fe2..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ProfilerInformationWindow.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 73fd64cd790a9564d9e49d13ed0742c7 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.QualityInformationWindow.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.QualityInformationWindow.cs deleted file mode 100644 index a0fbafe..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.QualityInformationWindow.cs +++ /dev/null @@ -1,104 +0,0 @@ - -using AlicizaX; -using UnityEngine; - -namespace AlicizaX.Debugger.Runtime -{ - public sealed partial class DebuggerComponent - { - private sealed class QualityInformationWindow : ScrollableDebuggerWindowBase - { - private bool m_ApplyExpensiveChanges = false; - - protected override void OnDrawScrollableWindow() - { - GUILayout.Label("Quality Level"); - GUILayout.BeginVertical("box"); - { - int currentQualityLevel = QualitySettings.GetQualityLevel(); - - DrawItem("Current Quality Level", QualitySettings.names[currentQualityLevel]); - m_ApplyExpensiveChanges = GUILayout.Toggle(m_ApplyExpensiveChanges, "Apply expensive changes on quality level change."); - - int newQualityLevel = GUILayout.SelectionGrid(currentQualityLevel, QualitySettings.names, 3, "toggle"); - if (newQualityLevel != currentQualityLevel) - { - QualitySettings.SetQualityLevel(newQualityLevel, m_ApplyExpensiveChanges); - } - } - GUILayout.EndVertical(); - - GUILayout.Label("Rendering Information"); - GUILayout.BeginVertical("box"); - { - DrawItem("Active Color Space", QualitySettings.activeColorSpace.ToString()); - DrawItem("Desired Color Space", QualitySettings.desiredColorSpace.ToString()); - DrawItem("Max Queued Frames", QualitySettings.maxQueuedFrames.ToString()); - DrawItem("Pixel Light Count", QualitySettings.pixelLightCount.ToString()); - DrawItem("Master Texture Limit", QualitySettings.globalTextureMipmapLimit.ToString()); - DrawItem("Anisotropic Filtering", QualitySettings.anisotropicFiltering.ToString()); - DrawItem("Anti Aliasing", QualitySettings.antiAliasing.ToString()); -#if UNITY_5_5_OR_NEWER - DrawItem("Soft Particles", QualitySettings.softParticles.ToString()); -#endif - DrawItem("Soft Vegetation", QualitySettings.softVegetation.ToString()); - DrawItem("Realtime Reflection Probes", QualitySettings.realtimeReflectionProbes.ToString()); - DrawItem("Billboards Face Camera Position", QualitySettings.billboardsFaceCameraPosition.ToString()); -#if UNITY_2017_1_OR_NEWER - DrawItem("Resolution Scaling Fixed DPI Factor", QualitySettings.resolutionScalingFixedDPIFactor.ToString()); -#endif -#if UNITY_2018_2_OR_NEWER - DrawItem("Texture Streaming Enabled", QualitySettings.streamingMipmapsActive.ToString()); - DrawItem("Texture Streaming Add All Cameras", QualitySettings.streamingMipmapsAddAllCameras.ToString()); - DrawItem("Texture Streaming Memory Budget", QualitySettings.streamingMipmapsMemoryBudget.ToString()); - DrawItem("Texture Streaming Renderers Per Frame", QualitySettings.streamingMipmapsRenderersPerFrame.ToString()); - DrawItem("Texture Streaming Max Level Reduction", QualitySettings.streamingMipmapsMaxLevelReduction.ToString()); - DrawItem("Texture Streaming Max File IO Requests", QualitySettings.streamingMipmapsMaxFileIORequests.ToString()); -#endif - } - GUILayout.EndVertical(); - - GUILayout.Label("Shadows Information"); - GUILayout.BeginVertical("box"); - { -#if UNITY_2017_1_OR_NEWER - DrawItem("Shadowmask Mode", QualitySettings.shadowmaskMode.ToString()); -#endif -#if UNITY_5_5_OR_NEWER - DrawItem("Shadow Quality", QualitySettings.shadows.ToString()); -#endif -#if UNITY_5_4_OR_NEWER - DrawItem("Shadow Resolution", QualitySettings.shadowResolution.ToString()); -#endif - DrawItem("Shadow Projection", QualitySettings.shadowProjection.ToString()); - DrawItem("Shadow Distance", QualitySettings.shadowDistance.ToString()); - DrawItem("Shadow Near Plane Offset", QualitySettings.shadowNearPlaneOffset.ToString()); - DrawItem("Shadow Cascades", QualitySettings.shadowCascades.ToString()); - DrawItem("Shadow Cascade 2 Split", QualitySettings.shadowCascade2Split.ToString()); - DrawItem("Shadow Cascade 4 Split", QualitySettings.shadowCascade4Split.ToString()); - } - GUILayout.EndVertical(); - - GUILayout.Label("Other Information"); - GUILayout.BeginVertical("box"); - { -#if UNITY_2019_1_OR_NEWER - DrawItem("Skin Weights", QualitySettings.skinWeights.ToString()); -#else - DrawItem("Blend Weights", QualitySettings.blendWeights.ToString()); -#endif - DrawItem("VSync Count", QualitySettings.vSyncCount.ToString()); - DrawItem("LOD Bias", QualitySettings.lodBias.ToString()); - DrawItem("Maximum LOD Level", QualitySettings.maximumLODLevel.ToString()); - DrawItem("Particle Raycast Budget", QualitySettings.particleRaycastBudget.ToString()); - DrawItem("Async Upload Time Slice", Utility.Text.Format("{0} ms", QualitySettings.asyncUploadTimeSlice)); - DrawItem("Async Upload Buffer Size", Utility.Text.Format("{0} MB", QualitySettings.asyncUploadBufferSize)); -#if UNITY_2018_3_OR_NEWER - DrawItem("Async Upload Persistent Buffer", QualitySettings.asyncUploadPersistentBuffer.ToString()); -#endif - } - GUILayout.EndVertical(); - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.QualityInformationWindow.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.QualityInformationWindow.cs.meta deleted file mode 100644 index 64b22d8..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.QualityInformationWindow.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: dc21c02fdf159d840a5254513a44c065 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ReferencePoolInformationWindow.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ReferencePoolInformationWindow.cs deleted file mode 100644 index ca7bafa..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ReferencePoolInformationWindow.cs +++ /dev/null @@ -1,107 +0,0 @@ -using System; -using System.Collections.Generic; -using AlicizaX; -using UnityEngine; - -namespace AlicizaX.Debugger.Runtime -{ - public sealed partial class DebuggerComponent - { - private sealed class ReferencePoolInformationWindow : ScrollableDebuggerWindowBase - { - private readonly Dictionary> m_ReferencePoolInfos = new Dictionary>(StringComparer.Ordinal); - private readonly Comparison m_NormalClassNameComparer = NormalClassNameComparer; - private readonly Comparison m_FullClassNameComparer = FullClassNameComparer; - private bool m_ShowFullClassName = false; - - public override void Initialize(params object[] args) - { - } - - protected override void OnDrawScrollableWindow() - { - GUILayout.Label("Reference Pool Information"); - GUILayout.BeginVertical("box"); - { - DrawItem("Enable Strict Check", MemoryPool.EnableStrictCheck.ToString()); - DrawItem("Reference Pool Count", MemoryPool.Count.ToString()); - } - GUILayout.EndVertical(); - - m_ShowFullClassName = GUILayout.Toggle(m_ShowFullClassName, "Show Full Class Name"); - m_ReferencePoolInfos.Clear(); - MemoryPoolInfo[] referencePoolInfos = MemoryPool.GetAllMemoryPoolInfos(); - foreach (MemoryPoolInfo referencePoolInfo in referencePoolInfos) - { - string assemblyName = referencePoolInfo.Type.Assembly.GetName().Name; - List results = null; - if (!m_ReferencePoolInfos.TryGetValue(assemblyName, out results)) - { - results = new List(); - m_ReferencePoolInfos.Add(assemblyName, results); - } - - results.Add(referencePoolInfo); - } - - foreach (KeyValuePair> assemblyReferencePoolInfo in m_ReferencePoolInfos) - { - GUILayout.Label(Utility.Text.Format("Assembly: {0}", assemblyReferencePoolInfo.Key)); - GUILayout.BeginVertical("box"); - { - GUILayout.BeginHorizontal(); - { - GUILayout.Label(m_ShowFullClassName ? "Full Class Name" : "Class Name"); - GUILayout.Label("Unused", GUILayout.Width(60f)); - GUILayout.Label("Using", GUILayout.Width(60f)); - GUILayout.Label("Acquire", GUILayout.Width(60f)); - GUILayout.Label("Release", GUILayout.Width(60f)); - GUILayout.Label("Add", GUILayout.Width(60f)); - GUILayout.Label("Remove", GUILayout.Width(60f)); - } - GUILayout.EndHorizontal(); - - if (assemblyReferencePoolInfo.Value.Count > 0) - { - assemblyReferencePoolInfo.Value.Sort(m_ShowFullClassName ? m_FullClassNameComparer : m_NormalClassNameComparer); - foreach (MemoryPoolInfo referencePoolInfo in assemblyReferencePoolInfo.Value) - { - DrawReferencePoolInfo(referencePoolInfo); - } - } - else - { - GUILayout.Label("Reference Pool is Empty ..."); - } - } - GUILayout.EndVertical(); - } - } - - private void DrawReferencePoolInfo(MemoryPoolInfo referencePoolInfo) - { - GUILayout.BeginHorizontal(); - { - GUILayout.Label(m_ShowFullClassName ? referencePoolInfo.Type.FullName : referencePoolInfo.Type.Name); - GUILayout.Label(referencePoolInfo.UnusedMemoryCount.ToString(), GUILayout.Width(60f)); - GUILayout.Label(referencePoolInfo.UsingMemoryCount.ToString(), GUILayout.Width(60f)); - GUILayout.Label(referencePoolInfo.AcquireMemoryCount.ToString(), GUILayout.Width(60f)); - GUILayout.Label(referencePoolInfo.ReleaseMemoryCount.ToString(), GUILayout.Width(60f)); - GUILayout.Label(referencePoolInfo.AddMemoryCount.ToString(), GUILayout.Width(60f)); - GUILayout.Label(referencePoolInfo.RemoveMemoryCount.ToString(), GUILayout.Width(60f)); - } - GUILayout.EndHorizontal(); - } - - private static int NormalClassNameComparer(MemoryPoolInfo a, MemoryPoolInfo b) - { - return a.Type.Name.CompareTo(b.Type.Name); - } - - private static int FullClassNameComparer(MemoryPoolInfo a, MemoryPoolInfo b) - { - return a.Type.FullName.CompareTo(b.Type.FullName); - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ReferencePoolInformationWindow.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ReferencePoolInformationWindow.cs.meta deleted file mode 100644 index 9f4f2a1..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ReferencePoolInformationWindow.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 33068d0a27ec5684e994545a7995a17c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.RuntimeMemoryInformationWindow.Sample.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.RuntimeMemoryInformationWindow.Sample.cs deleted file mode 100644 index 554cbce..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.RuntimeMemoryInformationWindow.Sample.cs +++ /dev/null @@ -1,62 +0,0 @@ -using AlicizaX; - -namespace AlicizaX.Debugger.Runtime -{ - public sealed partial class DebuggerComponent - { - private sealed partial class RuntimeMemoryInformationWindow : ScrollableDebuggerWindowBase where T : UnityEngine.Object - { - private sealed class Sample - { - private readonly string m_Name; - private readonly string m_Type; - private readonly long m_Size; - private bool m_Highlight; - - public Sample(string name, string type, long size) - { - m_Name = name; - m_Type = type; - m_Size = size; - m_Highlight = false; - } - - public string Name - { - get - { - return m_Name; - } - } - - public string Type - { - get - { - return m_Type; - } - } - - public long Size - { - get - { - return m_Size; - } - } - - public bool Highlight - { - get - { - return m_Highlight; - } - set - { - m_Highlight = value; - } - } - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.RuntimeMemoryInformationWindow.Sample.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.RuntimeMemoryInformationWindow.Sample.cs.meta deleted file mode 100644 index 3bc4594..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.RuntimeMemoryInformationWindow.Sample.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0da72213ab82f43458578c3ce477a57c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.RuntimeMemoryInformationWindow.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.RuntimeMemoryInformationWindow.cs deleted file mode 100644 index 6afb210..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.RuntimeMemoryInformationWindow.cs +++ /dev/null @@ -1,136 +0,0 @@ - -using System; -using System.Collections.Generic; -using AlicizaX; -using UnityEngine; -#if UNITY_5_5_OR_NEWER -using UnityEngine.Profiling; -#endif - -namespace AlicizaX.Debugger.Runtime -{ - public sealed partial class DebuggerComponent - { - private sealed partial class RuntimeMemoryInformationWindow : ScrollableDebuggerWindowBase where T : UnityEngine.Object - { - private const int ShowSampleCount = 300; - - private readonly List m_Samples = new List(); - private readonly Comparison m_SampleComparer = SampleComparer; - private DateTime m_SampleTime = DateTime.MinValue; - private long m_SampleSize = 0L; - private long m_DuplicateSampleSize = 0L; - private int m_DuplicateSimpleCount = 0; - - protected override void OnDrawScrollableWindow() - { - string typeName = typeof(T).Name; - GUILayout.Label(Utility.Text.Format("{0} Runtime Memory Information", typeName)); - GUILayout.BeginVertical("box"); - { - if (GUILayout.Button(Utility.Text.Format("Take Sample for {0}", typeName), GUILayout.Height(30f))) - { - TakeSample(); - } - - if (m_SampleTime <= DateTime.MinValue) - { - GUILayout.Label(Utility.Text.Format("Please take sample for {0} first.", typeName)); - } - else - { - if (m_DuplicateSimpleCount > 0) - { - GUILayout.Label(Utility.Text.Format("{0} {1}s ({2}) obtained at {3:yyyy-MM-dd HH:mm:ss}, while {4} {1}s ({5}) might be duplicated.", m_Samples.Count, typeName, GetByteLengthString(m_SampleSize), m_SampleTime.ToLocalTime(), m_DuplicateSimpleCount, GetByteLengthString(m_DuplicateSampleSize))); - } - else - { - GUILayout.Label(Utility.Text.Format("{0} {1}s ({2}) obtained at {3:yyyy-MM-dd HH:mm:ss}.", m_Samples.Count, typeName, GetByteLengthString(m_SampleSize), m_SampleTime.ToLocalTime())); - } - - if (m_Samples.Count > 0) - { - GUILayout.BeginHorizontal(); - { - GUILayout.Label(Utility.Text.Format("{0} Name", typeName)); - GUILayout.Label("Type", GUILayout.Width(240f)); - GUILayout.Label("Size", GUILayout.Width(80f)); - } - GUILayout.EndHorizontal(); - } - - int count = 0; - for (int i = 0; i < m_Samples.Count; i++) - { - GUILayout.BeginHorizontal(); - { - GUILayout.Label(m_Samples[i].Highlight ? Utility.Text.Format("{0}", m_Samples[i].Name) : m_Samples[i].Name); - GUILayout.Label(m_Samples[i].Highlight ? Utility.Text.Format("{0}", m_Samples[i].Type) : m_Samples[i].Type, GUILayout.Width(240f)); - GUILayout.Label(m_Samples[i].Highlight ? Utility.Text.Format("{0}", GetByteLengthString(m_Samples[i].Size)) : GetByteLengthString(m_Samples[i].Size), GUILayout.Width(80f)); - } - GUILayout.EndHorizontal(); - - count++; - if (count >= ShowSampleCount) - { - break; - } - } - } - } - GUILayout.EndVertical(); - } - - private void TakeSample() - { - m_SampleTime = DateTime.UtcNow; - m_SampleSize = 0L; - m_DuplicateSampleSize = 0L; - m_DuplicateSimpleCount = 0; - m_Samples.Clear(); - - T[] samples = Resources.FindObjectsOfTypeAll(); - for (int i = 0; i < samples.Length; i++) - { - long sampleSize = 0L; -#if UNITY_5_6_OR_NEWER - sampleSize = Profiler.GetRuntimeMemorySizeLong(samples[i]); -#else - sampleSize = Profiler.GetRuntimeMemorySize(samples[i]); -#endif - m_SampleSize += sampleSize; - m_Samples.Add(new Sample(samples[i].name, samples[i].GetType().Name, sampleSize)); - } - - m_Samples.Sort(m_SampleComparer); - - for (int i = 1; i < m_Samples.Count; i++) - { - if (m_Samples[i].Name == m_Samples[i - 1].Name && m_Samples[i].Type == m_Samples[i - 1].Type && m_Samples[i].Size == m_Samples[i - 1].Size) - { - m_Samples[i].Highlight = true; - m_DuplicateSampleSize += m_Samples[i].Size; - m_DuplicateSimpleCount++; - } - } - } - - private static int SampleComparer(Sample a, Sample b) - { - int result = b.Size.CompareTo(a.Size); - if (result != 0) - { - return result; - } - - result = a.Type.CompareTo(b.Type); - if (result != 0) - { - return result; - } - - return a.Name.CompareTo(b.Name); - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.RuntimeMemoryInformationWindow.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.RuntimeMemoryInformationWindow.cs.meta deleted file mode 100644 index a8bb068..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.RuntimeMemoryInformationWindow.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 21007b3290d97754ea3ab4d9f46900e6 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.RuntimeMemorySummaryWindow.Record.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.RuntimeMemorySummaryWindow.Record.cs deleted file mode 100644 index 25ed557..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.RuntimeMemorySummaryWindow.Record.cs +++ /dev/null @@ -1,56 +0,0 @@ -using AlicizaX; - -namespace AlicizaX.Debugger.Runtime -{ - public sealed partial class DebuggerComponent - { - private sealed partial class RuntimeMemorySummaryWindow : ScrollableDebuggerWindowBase - { - private sealed class Record - { - private readonly string m_Name; - private int m_Count; - private long m_Size; - - public Record(string name) - { - m_Name = name; - m_Count = 0; - m_Size = 0L; - } - - public string Name - { - get - { - return m_Name; - } - } - - public int Count - { - get - { - return m_Count; - } - set - { - m_Count = value; - } - } - - public long Size - { - get - { - return m_Size; - } - set - { - m_Size = value; - } - } - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.RuntimeMemorySummaryWindow.Record.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.RuntimeMemorySummaryWindow.Record.cs.meta deleted file mode 100644 index 6fc6cfb..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.RuntimeMemorySummaryWindow.Record.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 468bbdd114a04de429a6bd97b202c891 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.RuntimeMemorySummaryWindow.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.RuntimeMemorySummaryWindow.cs deleted file mode 100644 index aeb6e20..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.RuntimeMemorySummaryWindow.cs +++ /dev/null @@ -1,124 +0,0 @@ - -using System; -using System.Collections.Generic; -using AlicizaX; -using UnityEngine; -#if UNITY_5_5_OR_NEWER -using UnityEngine.Profiling; -#endif - -namespace AlicizaX.Debugger.Runtime -{ - public sealed partial class DebuggerComponent - { - private sealed partial class RuntimeMemorySummaryWindow : ScrollableDebuggerWindowBase - { - private readonly List m_Records = new List(); - private readonly Comparison m_RecordComparer = RecordComparer; - private DateTime m_SampleTime = DateTime.MinValue; - private int m_SampleCount = 0; - private long m_SampleSize = 0L; - - protected override void OnDrawScrollableWindow() - { - GUILayout.Label("Runtime Memory Summary"); - GUILayout.BeginVertical("box"); - { - if (GUILayout.Button("Take Sample", GUILayout.Height(30f))) - { - TakeSample(); - } - - if (m_SampleTime <= DateTime.MinValue) - { - GUILayout.Label("Please take sample first."); - } - else - { - GUILayout.Label(Utility.Text.Format("{0} Objects ({1}) obtained at {2:yyyy-MM-dd HH:mm:ss}.", m_SampleCount, GetByteLengthString(m_SampleSize), m_SampleTime.ToLocalTime())); - - GUILayout.BeginHorizontal(); - { - GUILayout.Label("Type"); - GUILayout.Label("Count", GUILayout.Width(120f)); - GUILayout.Label("Size", GUILayout.Width(120f)); - } - GUILayout.EndHorizontal(); - - for (int i = 0; i < m_Records.Count; i++) - { - GUILayout.BeginHorizontal(); - { - GUILayout.Label(m_Records[i].Name); - GUILayout.Label(m_Records[i].Count.ToString(), GUILayout.Width(120f)); - GUILayout.Label(GetByteLengthString(m_Records[i].Size), GUILayout.Width(120f)); - } - GUILayout.EndHorizontal(); - } - } - } - GUILayout.EndVertical(); - } - - private void TakeSample() - { - m_Records.Clear(); - m_SampleTime = DateTime.UtcNow; - m_SampleCount = 0; - m_SampleSize = 0L; - - UnityEngine.Object[] samples = Resources.FindObjectsOfTypeAll(); - for (int i = 0; i < samples.Length; i++) - { - long sampleSize = 0L; -#if UNITY_5_6_OR_NEWER - sampleSize = Profiler.GetRuntimeMemorySizeLong(samples[i]); -#else - sampleSize = Profiler.GetRuntimeMemorySize(samples[i]); -#endif - string name = samples[i].GetType().Name; - m_SampleCount++; - m_SampleSize += sampleSize; - - Record record = null; - foreach (Record r in m_Records) - { - if (r.Name == name) - { - record = r; - break; - } - } - - if (record == null) - { - record = new Record(name); - m_Records.Add(record); - } - - record.Count++; - record.Size += sampleSize; - } - - m_Records.Sort(m_RecordComparer); - } - - private static int RecordComparer(Record a, Record b) - { - int result = b.Size.CompareTo(a.Size); - if (result != 0) - { - return result; - } - - result = a.Count.CompareTo(b.Count); - if (result != 0) - { - return result; - } - - return a.Name.CompareTo(b.Name); - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.RuntimeMemorySummaryWindow.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.RuntimeMemorySummaryWindow.cs.meta deleted file mode 100644 index df2dac1..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.RuntimeMemorySummaryWindow.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 45a9f76b48e192d44b0de0eac60975b2 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.SceneInformationWindow.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.SceneInformationWindow.cs deleted file mode 100644 index 71c255f..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.SceneInformationWindow.cs +++ /dev/null @@ -1,38 +0,0 @@ -using AlicizaX; -using UnityEngine; -using UnityEngine.SceneManagement; - -namespace AlicizaX.Debugger.Runtime -{ - public sealed partial class DebuggerComponent - { - private sealed class SceneInformationWindow : ScrollableDebuggerWindowBase - { - protected override void OnDrawScrollableWindow() - { - GUILayout.Label("Scene Information"); - GUILayout.BeginVertical("box"); - { - DrawItem("Scene Count", SceneManager.sceneCount.ToString()); - DrawItem("Scene Count In Build Settings", SceneManager.sceneCountInBuildSettings.ToString()); - - Scene activeScene = SceneManager.GetActiveScene(); -#if UNITY_2018_3_OR_NEWER - DrawItem("Active Scene Handle", activeScene.handle.ToString()); -#endif - DrawItem("Active Scene Name", activeScene.name); - DrawItem("Active Scene Path", activeScene.path); - DrawItem("Active Scene Build Index", activeScene.buildIndex.ToString()); - DrawItem("Active Scene Is Dirty", activeScene.isDirty.ToString()); - DrawItem("Active Scene Is Loaded", activeScene.isLoaded.ToString()); - DrawItem("Active Scene Is Valid", activeScene.IsValid().ToString()); - DrawItem("Active Scene Root Count", activeScene.rootCount.ToString()); -#if UNITY_2019_1_OR_NEWER - DrawItem("Active Scene Is Sub Scene", activeScene.isSubScene.ToString()); -#endif - } - GUILayout.EndVertical(); - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.SceneInformationWindow.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.SceneInformationWindow.cs.meta deleted file mode 100644 index 9a51a2d..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.SceneInformationWindow.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0c5471e8b14eef444a96f1e1cb4b6987 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ScreenInformationWindow.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ScreenInformationWindow.cs deleted file mode 100644 index 44cff7e..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ScreenInformationWindow.cs +++ /dev/null @@ -1,92 +0,0 @@ -using AlicizaX; -using UnityEngine; - -namespace AlicizaX.Debugger.Runtime -{ - public sealed partial class DebuggerComponent - { - private sealed class ScreenInformationWindow : ScrollableDebuggerWindowBase - { - protected override void OnDrawScrollableWindow() - { - GUILayout.Label("Screen Information"); - GUILayout.BeginVertical("box"); - { - DrawItem("Current Resolution", GetResolutionString(Screen.currentResolution)); - DrawItem("Screen Width", Utility.Text.Format("{0} px / {1:F2} in / {2:F2} cm", Screen.width, Utility.Converter.GetInchesFromPixels(Screen.width), Utility.Converter.GetCentimetersFromPixels(Screen.width))); - DrawItem("Screen Height", Utility.Text.Format("{0} px / {1:F2} in / {2:F2} cm", Screen.height, Utility.Converter.GetInchesFromPixels(Screen.height), Utility.Converter.GetCentimetersFromPixels(Screen.height))); - DrawItem("Screen DPI", Screen.dpi.ToString("F2")); - DrawItem("Screen Orientation", Screen.orientation.ToString()); - DrawItem("Is Full Screen", Screen.fullScreen.ToString()); -#if UNITY_2018_1_OR_NEWER - DrawItem("Full Screen Mode", Screen.fullScreenMode.ToString()); -#endif - DrawItem("Sleep Timeout", GetSleepTimeoutDescription(Screen.sleepTimeout)); -#if UNITY_2019_2_OR_NEWER - DrawItem("Brightness", Screen.brightness.ToString("F2")); -#endif - DrawItem("Cursor Visible", Cursor.visible.ToString()); - DrawItem("Cursor Lock State", Cursor.lockState.ToString()); - DrawItem("Auto Landscape Left", Screen.autorotateToLandscapeLeft.ToString()); - DrawItem("Auto Landscape Right", Screen.autorotateToLandscapeRight.ToString()); - DrawItem("Auto Portrait", Screen.autorotateToPortrait.ToString()); - DrawItem("Auto Portrait Upside Down", Screen.autorotateToPortraitUpsideDown.ToString()); -#if UNITY_2017_2_OR_NEWER && !UNITY_2017_2_0 - DrawItem("Safe Area", Screen.safeArea.ToString()); -#endif -#if UNITY_2019_2_OR_NEWER - DrawItem("Cutouts", GetCutoutsString(Screen.cutouts)); -#endif - DrawItem("Support Resolutions", GetResolutionsString(Screen.resolutions)); - } - GUILayout.EndVertical(); - } - - private string GetSleepTimeoutDescription(int sleepTimeout) - { - if (sleepTimeout == SleepTimeout.NeverSleep) - { - return "Never Sleep"; - } - - if (sleepTimeout == SleepTimeout.SystemSetting) - { - return "System Setting"; - } - - return sleepTimeout.ToString(); - } - - private string GetResolutionString(Resolution resolution) - { -#if UNITY_6000_0_OR_NEWER - return Utility.Text.Format("{0} x {1} @ {2}Hz", resolution.width, resolution.height, resolution.refreshRateRatio); -#else - return Utility.Text.Format("{0} x {1} @ {2}Hz", resolution.width, resolution.height, resolution.refreshRate); -#endif - } - - private string GetCutoutsString(Rect[] cutouts) - { - string[] cutoutStrings = new string[cutouts.Length]; - for (int i = 0; i < cutouts.Length; i++) - { - cutoutStrings[i] = cutouts[i].ToString(); - } - - return string.Join("; ", cutoutStrings); - } - - private string GetResolutionsString(Resolution[] resolutions) - { - string[] resolutionStrings = new string[resolutions.Length]; - for (int i = 0; i < resolutions.Length; i++) - { - resolutionStrings[i] = GetResolutionString(resolutions[i]); - } - - return string.Join("; ", resolutionStrings); - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ScreenInformationWindow.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ScreenInformationWindow.cs.meta deleted file mode 100644 index d8bcd4e..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ScreenInformationWindow.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: dc352756f31513048a46e56ad2900db7 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ScrollableDebuggerWindowBase.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ScrollableDebuggerWindowBase.cs deleted file mode 100644 index b85c9f7..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ScrollableDebuggerWindowBase.cs +++ /dev/null @@ -1,95 +0,0 @@ - -using AlicizaX; -using UnityEngine; - - -namespace AlicizaX.Debugger.Runtime -{ - public sealed partial class DebuggerComponent - { - private abstract class ScrollableDebuggerWindowBase : IDebuggerWindow - { - private const float TitleWidth = 240f; - private Vector2 m_ScrollPosition = Vector2.zero; - - public virtual void Initialize(params object[] args) - { - } - - public virtual void Shutdown() - { - } - - public virtual void OnEnter() - { - } - - public virtual void OnLeave() - { - } - - public virtual void OnUpdate(float elapseSeconds, float realElapseSeconds) - { - } - - public void OnDraw() - { - m_ScrollPosition = GUILayout.BeginScrollView(m_ScrollPosition); - { - OnDrawScrollableWindow(); - } - GUILayout.EndScrollView(); - } - - protected abstract void OnDrawScrollableWindow(); - - protected static void DrawItem(string title, string content) - { - GUILayout.BeginHorizontal(); - { - GUILayout.Label(title, GUILayout.Width(TitleWidth)); - if (GUILayout.Button(content, "label")) - { - CopyToClipboard(content); - } - } - GUILayout.EndHorizontal(); - } - - protected static string GetByteLengthString(long byteLength) - { - if (byteLength < 1024L) // 2 ^ 10 - { - return Utility.Text.Format("{0} Bytes", byteLength); - } - - if (byteLength < 1048576L) // 2 ^ 20 - { - return Utility.Text.Format("{0:F2} KB", byteLength / 1024f); - } - - if (byteLength < 1073741824L) // 2 ^ 30 - { - return Utility.Text.Format("{0:F2} MB", byteLength / 1048576f); - } - - if (byteLength < 1099511627776L) // 2 ^ 40 - { - return Utility.Text.Format("{0:F2} GB", byteLength / 1073741824f); - } - - if (byteLength < 1125899906842624L) // 2 ^ 50 - { - return Utility.Text.Format("{0:F2} TB", byteLength / 1099511627776f); - } - - if (byteLength < 1152921504606846976L) // 2 ^ 60 - { - return Utility.Text.Format("{0:F2} PB", byteLength / 1125899906842624f); - } - - return Utility.Text.Format("{0:F2} EB", byteLength / 1152921504606846976f); - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ScrollableDebuggerWindowBase.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ScrollableDebuggerWindowBase.cs.meta deleted file mode 100644 index c00e15b..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.ScrollableDebuggerWindowBase.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 1af7b258c93df0341a163adfdd378f8a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.SettingsWindow.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.SettingsWindow.cs deleted file mode 100644 index 677abb1..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.SettingsWindow.cs +++ /dev/null @@ -1,219 +0,0 @@ -using UnityEngine; - - -namespace AlicizaX.Debugger.Runtime -{ - public sealed partial class DebuggerComponent - { - private sealed class SettingsWindow : ScrollableDebuggerWindowBase - { - private DebuggerComponent m_DebuggerComponent = null; - private float m_LastIconX = 0f; - private float m_LastIconY = 0f; - private float m_LastWindowX = 0f; - private float m_LastWindowY = 0f; - private float m_LastWindowWidth = 0f; - private float m_LastWindowHeight = 0f; - private float m_LastWindowScale = 0f; - - public override void Initialize(params object[] args) - { - m_DebuggerComponent = DebuggerComponent.Instance; - if (m_DebuggerComponent == null) - { - Log.Error("Debugger component is invalid."); - return; - } - - - m_LastIconX = Utility.PlayerPrefsX.GetFloat("Debugger.Icon.X", DefaultIconRect.x); - m_LastIconY = Utility.PlayerPrefsX.GetFloat("Debugger.Icon.Y", DefaultIconRect.y); - m_LastWindowX = Utility.PlayerPrefsX.GetFloat("Debugger.Window.X", DefaultWindowRect.x); - m_LastWindowY = Utility.PlayerPrefsX.GetFloat("Debugger.Window.Y", DefaultWindowRect.y); - m_LastWindowWidth = Utility.PlayerPrefsX.GetFloat("Debugger.Window.Width", DefaultWindowRect.width); - m_LastWindowHeight = Utility.PlayerPrefsX.GetFloat("Debugger.Window.Height", DefaultWindowRect.height); - m_DebuggerComponent.WindowScale = m_LastWindowScale = Utility.PlayerPrefsX.GetFloat("Debugger.Window.Scale", DefaultWindowScale); - m_DebuggerComponent.IconRect = new Rect(m_LastIconX, m_LastIconY, DefaultIconRect.width, DefaultIconRect.height); - m_DebuggerComponent.WindowRect = new Rect(m_LastWindowX, m_LastWindowY, m_LastWindowWidth, m_LastWindowHeight); - } - - public override void OnUpdate(float elapseSeconds, float realElapseSeconds) - { - if (m_LastIconX != m_DebuggerComponent.IconRect.x) - { - m_LastIconX = m_DebuggerComponent.IconRect.x; - Utility.PlayerPrefsX.SetFloat("Debugger.Icon.X", m_DebuggerComponent.IconRect.x); - } - - if (m_LastIconY != m_DebuggerComponent.IconRect.y) - { - m_LastIconY = m_DebuggerComponent.IconRect.y; - Utility.PlayerPrefsX.SetFloat("Debugger.Icon.Y", m_DebuggerComponent.IconRect.y); - } - - if (m_LastWindowX != m_DebuggerComponent.WindowRect.x) - { - m_LastWindowX = m_DebuggerComponent.WindowRect.x; - Utility.PlayerPrefsX.SetFloat("Debugger.Window.X", m_DebuggerComponent.WindowRect.x); - } - - if (m_LastWindowY != m_DebuggerComponent.WindowRect.y) - { - m_LastWindowY = m_DebuggerComponent.WindowRect.y; - Utility.PlayerPrefsX.SetFloat("Debugger.Window.Y", m_DebuggerComponent.WindowRect.y); - } - - if (m_LastWindowWidth != m_DebuggerComponent.WindowRect.width) - { - m_LastWindowWidth = m_DebuggerComponent.WindowRect.width; - Utility.PlayerPrefsX.SetFloat("Debugger.Window.Width", m_DebuggerComponent.WindowRect.width); - } - - if (m_LastWindowHeight != m_DebuggerComponent.WindowRect.height) - { - m_LastWindowHeight = m_DebuggerComponent.WindowRect.height; - Utility.PlayerPrefsX.SetFloat("Debugger.Window.Height", m_DebuggerComponent.WindowRect.height); - } - - if (m_LastWindowScale != m_DebuggerComponent.WindowScale) - { - m_LastWindowScale = m_DebuggerComponent.WindowScale; - Utility.PlayerPrefsX.SetFloat("Debugger.Window.Scale", m_DebuggerComponent.WindowScale); - } - } - - protected override void OnDrawScrollableWindow() - { - GUILayout.Label("Window Settings"); - GUILayout.BeginVertical("box"); - { - GUILayout.BeginHorizontal(); - { - GUILayout.Label("Position:", GUILayout.Width(60f)); - GUILayout.Label("Drag window caption to move position."); - } - GUILayout.EndHorizontal(); - - GUILayout.BeginHorizontal(); - { - float width = m_DebuggerComponent.WindowRect.width; - GUILayout.Label("Width:", GUILayout.Width(60f)); - if (GUILayout.RepeatButton("-", GUILayout.Width(30f))) - { - width--; - } - - width = GUILayout.HorizontalSlider(width, 100f, Screen.width - 20f); - if (GUILayout.RepeatButton("+", GUILayout.Width(30f))) - { - width++; - } - - width = Mathf.Clamp(width, 100f, Screen.width - 20f); - if (width != m_DebuggerComponent.WindowRect.width) - { - m_DebuggerComponent.WindowRect = new Rect(m_DebuggerComponent.WindowRect.x, m_DebuggerComponent.WindowRect.y, width, m_DebuggerComponent.WindowRect.height); - } - } - GUILayout.EndHorizontal(); - - GUILayout.BeginHorizontal(); - { - float height = m_DebuggerComponent.WindowRect.height; - GUILayout.Label("Height:", GUILayout.Width(60f)); - if (GUILayout.RepeatButton("-", GUILayout.Width(30f))) - { - height--; - } - - height = GUILayout.HorizontalSlider(height, 100f, Screen.height - 20f); - if (GUILayout.RepeatButton("+", GUILayout.Width(30f))) - { - height++; - } - - height = Mathf.Clamp(height, 100f, Screen.height - 20f); - if (height != m_DebuggerComponent.WindowRect.height) - { - m_DebuggerComponent.WindowRect = new Rect(m_DebuggerComponent.WindowRect.x, m_DebuggerComponent.WindowRect.y, m_DebuggerComponent.WindowRect.width, height); - } - } - GUILayout.EndHorizontal(); - - GUILayout.BeginHorizontal(); - { - float scale = m_DebuggerComponent.WindowScale; - GUILayout.Label("Scale:", GUILayout.Width(60f)); - if (GUILayout.RepeatButton("-", GUILayout.Width(30f))) - { - scale -= 0.01f; - } - - scale = GUILayout.HorizontalSlider(scale, 0.5f, 4f); - if (GUILayout.RepeatButton("+", GUILayout.Width(30f))) - { - scale += 0.01f; - } - - scale = Mathf.Clamp(scale, 0.5f, 4f); - if (scale != m_DebuggerComponent.WindowScale) - { - m_DebuggerComponent.WindowScale = scale; - } - } - GUILayout.EndHorizontal(); - - GUILayout.BeginHorizontal(); - { - if (GUILayout.Button("0.5x", GUILayout.Height(60f))) - { - m_DebuggerComponent.WindowScale = 0.5f; - } - - if (GUILayout.Button("1.0x", GUILayout.Height(60f))) - { - m_DebuggerComponent.WindowScale = 1f; - } - - if (GUILayout.Button("1.5x", GUILayout.Height(60f))) - { - m_DebuggerComponent.WindowScale = 1.5f; - } - - if (GUILayout.Button("2.0x", GUILayout.Height(60f))) - { - m_DebuggerComponent.WindowScale = 2f; - } - - if (GUILayout.Button("2.5x", GUILayout.Height(60f))) - { - m_DebuggerComponent.WindowScale = 2.5f; - } - - if (GUILayout.Button("3.0x", GUILayout.Height(60f))) - { - m_DebuggerComponent.WindowScale = 3f; - } - - if (GUILayout.Button("3.5x", GUILayout.Height(60f))) - { - m_DebuggerComponent.WindowScale = 3.5f; - } - - if (GUILayout.Button("4.0x", GUILayout.Height(60f))) - { - m_DebuggerComponent.WindowScale = 4f; - } - } - GUILayout.EndHorizontal(); - - if (GUILayout.Button("Reset Layout", GUILayout.Height(30f))) - { - m_DebuggerComponent.ResetLayout(); - } - } - GUILayout.EndVertical(); - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.SettingsWindow.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.SettingsWindow.cs.meta deleted file mode 100644 index e73c3d9..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.SettingsWindow.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b4a36d102b4e1a648810a983c2101967 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.SystemInformationWindow.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.SystemInformationWindow.cs deleted file mode 100644 index 1dbaea2..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.SystemInformationWindow.cs +++ /dev/null @@ -1,56 +0,0 @@ - -using AlicizaX; -using UnityEngine; - -namespace AlicizaX.Debugger.Runtime -{ - public sealed partial class DebuggerComponent - { - private sealed class SystemInformationWindow : ScrollableDebuggerWindowBase - { - protected override void OnDrawScrollableWindow() - { - GUILayout.Label("System Information"); - GUILayout.BeginVertical("box"); - { - DrawItem("Device Unique ID", SystemInfo.deviceUniqueIdentifier); - DrawItem("Device Name", SystemInfo.deviceName); - DrawItem("Device Type", SystemInfo.deviceType.ToString()); - DrawItem("Device Model", SystemInfo.deviceModel); - DrawItem("Processor Type", SystemInfo.processorType); - DrawItem("Processor Count", SystemInfo.processorCount.ToString()); - DrawItem("Processor Frequency", Utility.Text.Format("{0} MHz", SystemInfo.processorFrequency)); - DrawItem("System Memory Size", Utility.Text.Format("{0} MB", SystemInfo.systemMemorySize)); -#if UNITY_5_5_OR_NEWER - DrawItem("Operating System Family", SystemInfo.operatingSystemFamily.ToString()); -#endif - DrawItem("Operating System", SystemInfo.operatingSystem); -#if UNITY_5_6_OR_NEWER - DrawItem("Battery Status", SystemInfo.batteryStatus.ToString()); - DrawItem("Battery Level", GetBatteryLevelString(SystemInfo.batteryLevel)); -#endif -#if UNITY_5_4_OR_NEWER - DrawItem("Supports Audio", SystemInfo.supportsAudio.ToString()); -#endif - DrawItem("Supports Location Service", SystemInfo.supportsLocationService.ToString()); - DrawItem("Supports Accelerometer", SystemInfo.supportsAccelerometer.ToString()); - DrawItem("Supports Gyroscope", SystemInfo.supportsGyroscope.ToString()); - DrawItem("Supports Vibration", SystemInfo.supportsVibration.ToString()); - DrawItem("Genuine", Application.genuine.ToString()); - DrawItem("Genuine Check Available", Application.genuineCheckAvailable.ToString()); - } - GUILayout.EndVertical(); - } - - private string GetBatteryLevelString(float batteryLevel) - { - if (batteryLevel < 0f) - { - return "Unavailable"; - } - - return batteryLevel.ToString("P0"); - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.SystemInformationWindow.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.SystemInformationWindow.cs.meta deleted file mode 100644 index b8505c5..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.SystemInformationWindow.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 788d38477d0fde741b8939db86e6a083 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.TimeInformationWindow.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.TimeInformationWindow.cs deleted file mode 100644 index 491ad83..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.TimeInformationWindow.cs +++ /dev/null @@ -1,70 +0,0 @@ - -using AlicizaX; -using UnityEngine; - -namespace AlicizaX.Debugger.Runtime -{ - public sealed partial class DebuggerComponent - { - private sealed class TimeInformationWindow : ScrollableDebuggerWindowBase - { - protected override void OnDrawScrollableWindow() - { - GUILayout.Label("Time Information"); - GUILayout.BeginVertical("box"); - { - DrawItem("Time Scale", Utility.Text.Format("{0} [{1}]", Time.timeScale, GetTimeScaleDescription(Time.timeScale))); - DrawItem("Realtime Since Startup", Time.realtimeSinceStartup.ToString()); - DrawItem("Time Since Level Load", Time.timeSinceLevelLoad.ToString()); - DrawItem("Time", Time.time.ToString()); - DrawItem("Fixed Time", Time.fixedTime.ToString()); - DrawItem("Unscaled Time", Time.unscaledTime.ToString()); -#if UNITY_5_6_OR_NEWER - DrawItem("Fixed Unscaled Time", Time.fixedUnscaledTime.ToString()); -#endif - DrawItem("Delta Time", Time.deltaTime.ToString()); - DrawItem("Fixed Delta Time", Time.fixedDeltaTime.ToString()); - DrawItem("Unscaled Delta Time", Time.unscaledDeltaTime.ToString()); -#if UNITY_5_6_OR_NEWER - DrawItem("Fixed Unscaled Delta Time", Time.fixedUnscaledDeltaTime.ToString()); -#endif - DrawItem("Smooth Delta Time", Time.smoothDeltaTime.ToString()); - DrawItem("Maximum Delta Time", Time.maximumDeltaTime.ToString()); -#if UNITY_5_5_OR_NEWER - DrawItem("Maximum Particle Delta Time", Time.maximumParticleDeltaTime.ToString()); -#endif - DrawItem("Frame Count", Time.frameCount.ToString()); - DrawItem("Rendered Frame Count", Time.renderedFrameCount.ToString()); - DrawItem("Capture Framerate", Time.captureFramerate.ToString()); -#if UNITY_2019_2_OR_NEWER - DrawItem("Capture Delta Time", Time.captureDeltaTime.ToString()); -#endif -#if UNITY_5_6_OR_NEWER - DrawItem("In Fixed Time Step", Time.inFixedTimeStep.ToString()); -#endif - } - GUILayout.EndVertical(); - } - - private string GetTimeScaleDescription(float timeScale) - { - if (timeScale <= 0f) - { - return "Pause"; - } - - if (timeScale < 1f) - { - return "Slower"; - } - - if (timeScale > 1f) - { - return "Faster"; - } - - return "Normal"; - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.TimeInformationWindow.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.TimeInformationWindow.cs.meta deleted file mode 100644 index fd67ff3..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.TimeInformationWindow.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e8bdf40da7ffdc94ab9e39ba8daeaa3a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.WebPlayerInformationWindow.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.WebPlayerInformationWindow.cs deleted file mode 100644 index 851d9bb..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.WebPlayerInformationWindow.cs +++ /dev/null @@ -1,34 +0,0 @@ -using AlicizaX; -using UnityEngine; - -namespace AlicizaX.Debugger.Runtime -{ - public sealed partial class DebuggerComponent - { - private sealed class WebPlayerInformationWindow : ScrollableDebuggerWindowBase - { - protected override void OnDrawScrollableWindow() - { - GUILayout.Label("Web Player Information"); - GUILayout.BeginVertical("box"); - { -#if !UNITY_2017_2_OR_NEWER - DrawItem("Is Web Player", Application.isWebPlayer.ToString()); -#endif - DrawItem("Absolute URL", Application.absoluteURL); -#if !UNITY_2017_2_OR_NEWER - DrawItem("Source Value", Application.srcValue); -#endif -#if !UNITY_2018_2_OR_NEWER - DrawItem("Streamed Bytes", Application.streamedBytes.ToString()); -#endif -#if UNITY_5_3 || UNITY_5_4 - DrawItem("Web Security Enabled", Application.webSecurityEnabled.ToString()); - DrawItem("Web Security Host URL", Application.webSecurityHostUrl.ToString()); -#endif - } - GUILayout.EndVertical(); - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.WebPlayerInformationWindow.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.WebPlayerInformationWindow.cs.meta deleted file mode 100644 index a194fac..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.WebPlayerInformationWindow.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: eea52d2ddd7a8804f956d4b9a2d67e8f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.cs deleted file mode 100644 index b9ba013..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.cs +++ /dev/null @@ -1,418 +0,0 @@ -using System; -using System.Collections.Generic; -using UnityEngine; -using Object = UnityEngine.Object; - -namespace AlicizaX.Debugger.Runtime -{ - /// - /// 调试器组件。 - /// - [DisallowMultipleComponent] - [AddComponentMenu("Game Framework/Debugger")] - public sealed partial class DebuggerComponent : MonoBehaviour - { - private static DebuggerComponent _instance; - - public static DebuggerComponent Instance - { - get - { - if (_instance == null) - { - _instance = FindObjectOfType(); - } - - return _instance; - } - } - - /// - /// 默认调试器漂浮框大小。 - /// - internal static readonly Rect DefaultIconRect = new Rect(10f, 10f, 60f, 60f); - - /// - /// 默认调试器窗口大小。 - /// - internal static readonly Rect DefaultWindowRect = new Rect(10f, 10f, 640f, 480f); - - /// - /// 默认调试器窗口缩放比例。 - /// - internal static readonly float DefaultWindowScale = 1f; - - // private static readonly TextEditor s_TextEditor = new TextEditor(); - private IDebuggerModule _mDebuggerModule = null; - private Rect m_DragRect = new Rect(0f, 0f, float.MaxValue, 25f); - private Rect m_IconRect = DefaultIconRect; - private Rect m_WindowRect = DefaultWindowRect; - private float m_WindowScale = DefaultWindowScale; - - [SerializeField] private GUISkin m_Skin = null; - - [SerializeField] private DebuggerActiveWindowType m_ActiveWindow = DebuggerActiveWindowType.AlwaysOpen; - - [SerializeField] private bool m_ShowFullWindow = false; - - [SerializeField] private ConsoleWindow m_ConsoleWindow = new ConsoleWindow(); - - private SystemInformationWindow m_SystemInformationWindow = new SystemInformationWindow(); - private EnvironmentInformationWindow m_EnvironmentInformationWindow = new EnvironmentInformationWindow(); - private ScreenInformationWindow m_ScreenInformationWindow = new ScreenInformationWindow(); - private GraphicsInformationWindow m_GraphicsInformationWindow = new GraphicsInformationWindow(); - private InputSummaryInformationWindow m_InputSummaryInformationWindow = new InputSummaryInformationWindow(); - private InputTouchInformationWindow m_InputTouchInformationWindow = new InputTouchInformationWindow(); - private InputLocationInformationWindow m_InputLocationInformationWindow = new InputLocationInformationWindow(); - private InputAccelerationInformationWindow m_InputAccelerationInformationWindow = new InputAccelerationInformationWindow(); - private InputGyroscopeInformationWindow m_InputGyroscopeInformationWindow = new InputGyroscopeInformationWindow(); - private InputCompassInformationWindow m_InputCompassInformationWindow = new InputCompassInformationWindow(); - private PathInformationWindow m_PathInformationWindow = new PathInformationWindow(); - private SceneInformationWindow m_SceneInformationWindow = new SceneInformationWindow(); - private TimeInformationWindow m_TimeInformationWindow = new TimeInformationWindow(); - private QualityInformationWindow m_QualityInformationWindow = new QualityInformationWindow(); - private ProfilerInformationWindow m_ProfilerInformationWindow = new ProfilerInformationWindow(); - private WebPlayerInformationWindow m_WebPlayerInformationWindow = new WebPlayerInformationWindow(); - private RuntimeMemorySummaryWindow m_RuntimeMemorySummaryWindow = new RuntimeMemorySummaryWindow(); - private RuntimeMemoryInformationWindow m_RuntimeMemoryAllInformationWindow = new RuntimeMemoryInformationWindow(); - private RuntimeMemoryInformationWindow m_RuntimeMemoryTextureInformationWindow = new RuntimeMemoryInformationWindow(); - private RuntimeMemoryInformationWindow m_RuntimeMemoryMeshInformationWindow = new RuntimeMemoryInformationWindow(); - private RuntimeMemoryInformationWindow m_RuntimeMemoryMaterialInformationWindow = new RuntimeMemoryInformationWindow(); - private RuntimeMemoryInformationWindow m_RuntimeMemoryShaderInformationWindow = new RuntimeMemoryInformationWindow(); - private RuntimeMemoryInformationWindow m_RuntimeMemoryAnimationClipInformationWindow = new RuntimeMemoryInformationWindow(); - private RuntimeMemoryInformationWindow m_RuntimeMemoryAudioClipInformationWindow = new RuntimeMemoryInformationWindow(); - private RuntimeMemoryInformationWindow m_RuntimeMemoryFontInformationWindow = new RuntimeMemoryInformationWindow(); - private RuntimeMemoryInformationWindow m_RuntimeMemoryTextAssetInformationWindow = new RuntimeMemoryInformationWindow(); - private RuntimeMemoryInformationWindow m_RuntimeMemoryScriptableObjectInformationWindow = new RuntimeMemoryInformationWindow(); - private ObjectPoolInformationWindow m_ObjectPoolInformationWindow = new ObjectPoolInformationWindow(); - - private ReferencePoolInformationWindow m_ReferencePoolInformationWindow = new ReferencePoolInformationWindow(); - - //private NetworkInformationWindow m_NetworkInformationWindow = new NetworkInformationWindow(); - private SettingsWindow m_SettingsWindow = new SettingsWindow(); - //private OperationsWindow m_OperationsWindow = new OperationsWindow(); - - private FpsCounter m_FpsCounter = null; - - /// - /// 获取或设置调试器窗口是否激活。 - /// - public bool ActiveWindow - { - get { return _mDebuggerModule.ActiveWindow; } - set - { - _mDebuggerModule.ActiveWindow = value; - enabled = value; - } - } - - /// - /// 获取或设置是否显示完整调试器界面。 - /// - public bool ShowFullWindow - { - get { return m_ShowFullWindow; } - set { m_ShowFullWindow = value; } - } - - /// - /// 获取或设置调试器漂浮框大小。 - /// - public Rect IconRect - { - get { return m_IconRect; } - set { m_IconRect = value; } - } - - /// - /// 获取或设置调试器窗口大小。 - /// - public Rect WindowRect - { - get { return m_WindowRect; } - set { m_WindowRect = value; } - } - - /// - /// 获取或设置调试器窗口缩放比例。 - /// - public float WindowScale - { - get { return m_WindowScale; } - set { m_WindowScale = value; } - } - - /// - /// 游戏框架组件初始化。 - /// - private void Awake() - { - _instance = this; - _mDebuggerModule = ModuleSystem.RegisterModule(); - if (_mDebuggerModule == null) - { - Log.Error("Debugger manager is invalid."); - return; - } - - m_FpsCounter = new FpsCounter(0.5f); - } - - private void Start() - { - if (m_Skin == null) - { - Debug.LogWarning("DebugComponent GUI SKin Is Null!"); - } - - RegisterDebuggerWindow("Console", m_ConsoleWindow); - RegisterDebuggerWindow("Information/System", m_SystemInformationWindow); - RegisterDebuggerWindow("Information/Environment", m_EnvironmentInformationWindow); - RegisterDebuggerWindow("Information/Screen", m_ScreenInformationWindow); - RegisterDebuggerWindow("Information/Graphics", m_GraphicsInformationWindow); - RegisterDebuggerWindow("Information/Input/Summary", m_InputSummaryInformationWindow); - RegisterDebuggerWindow("Information/Input/Touch", m_InputTouchInformationWindow); - RegisterDebuggerWindow("Information/Input/Location", m_InputLocationInformationWindow); - RegisterDebuggerWindow("Information/Input/Acceleration", m_InputAccelerationInformationWindow); - RegisterDebuggerWindow("Information/Input/Gyroscope", m_InputGyroscopeInformationWindow); - RegisterDebuggerWindow("Information/Input/Compass", m_InputCompassInformationWindow); - RegisterDebuggerWindow("Information/Other/Scene", m_SceneInformationWindow); - RegisterDebuggerWindow("Information/Other/Path", m_PathInformationWindow); - RegisterDebuggerWindow("Information/Other/Time", m_TimeInformationWindow); - RegisterDebuggerWindow("Information/Other/Quality", m_QualityInformationWindow); - RegisterDebuggerWindow("Information/Other/Web Player", m_WebPlayerInformationWindow); - RegisterDebuggerWindow("Profiler/Summary", m_ProfilerInformationWindow); - RegisterDebuggerWindow("Profiler/Memory/Summary", m_RuntimeMemorySummaryWindow); - RegisterDebuggerWindow("Profiler/Memory/All", m_RuntimeMemoryAllInformationWindow); - RegisterDebuggerWindow("Profiler/Memory/Texture", m_RuntimeMemoryTextureInformationWindow); - RegisterDebuggerWindow("Profiler/Memory/Mesh", m_RuntimeMemoryMeshInformationWindow); - RegisterDebuggerWindow("Profiler/Memory/Material", m_RuntimeMemoryMaterialInformationWindow); - RegisterDebuggerWindow("Profiler/Memory/Shader", m_RuntimeMemoryShaderInformationWindow); - RegisterDebuggerWindow("Profiler/Memory/AnimationClip", m_RuntimeMemoryAnimationClipInformationWindow); - RegisterDebuggerWindow("Profiler/Memory/AudioClip", m_RuntimeMemoryAudioClipInformationWindow); - RegisterDebuggerWindow("Profiler/Memory/Font", m_RuntimeMemoryFontInformationWindow); - RegisterDebuggerWindow("Profiler/Memory/TextAsset", m_RuntimeMemoryTextAssetInformationWindow); - RegisterDebuggerWindow("Profiler/Memory/ScriptableObject", m_RuntimeMemoryScriptableObjectInformationWindow); - RegisterDebuggerWindow("Profiler/Object Pool", m_ObjectPoolInformationWindow); - RegisterDebuggerWindow("Profiler/Reference Pool", m_ReferencePoolInformationWindow); - //RegisterDebuggerWindow("Profiler/Network", m_NetworkInformationWindow); - RegisterDebuggerWindow("Other/Settings", m_SettingsWindow); - //RegisterDebuggerWindow("Other/Operations", m_OperationsWindow); - - switch (m_ActiveWindow) - { - case DebuggerActiveWindowType.AlwaysOpen: - ActiveWindow = true; - break; - - case DebuggerActiveWindowType.OnlyOpenWhenDevelopment: - ActiveWindow = Debug.isDebugBuild; - break; - - case DebuggerActiveWindowType.OnlyOpenInEditor: - ActiveWindow = Application.isEditor; - break; - - default: - ActiveWindow = false; - break; - } -#if !UNITY_EDITOR - ActiveWindow = AppBuilderSetting.Instance.DebugMode; -#endif - } - - private void Update() - { - m_FpsCounter.Update(Time.deltaTime, Time.unscaledDeltaTime); - } - - private void OnGUI() - { - if (_mDebuggerModule == null || !_mDebuggerModule.ActiveWindow) - { - return; - } - - GUISkin cachedGuiSkin = GUI.skin; - Matrix4x4 cachedMatrix = GUI.matrix; - - GUI.skin = m_Skin; - GUI.matrix = Matrix4x4.Scale(new Vector3(m_WindowScale, m_WindowScale, 1f)); - - if (m_ShowFullWindow) - { - m_WindowRect = GUILayout.Window(0, m_WindowRect, DrawWindow, "GAME FRAMEWORK DEBUGGER"); - } - else - { - m_IconRect = GUILayout.Window(0, m_IconRect, DrawDebuggerWindowIcon, "DEBUGGER"); - } - - GUI.matrix = cachedMatrix; - GUI.skin = cachedGuiSkin; - } - - /// - /// 注册调试器窗口。 - /// - /// 调试器窗口路径。 - /// 要注册的调试器窗口。 - /// 初始化调试器窗口参数。 - public void RegisterDebuggerWindow(string path, IDebuggerWindow debuggerWindow, params object[] args) - { - _mDebuggerModule.RegisterDebuggerWindow(path, debuggerWindow, args); - } - - /// - /// 解除注册调试器窗口。 - /// - /// 调试器窗口路径。 - /// 是否解除注册调试器窗口成功。 - public bool UnregisterDebuggerWindow(string path) - { - return _mDebuggerModule.UnregisterDebuggerWindow(path); - } - - /// - /// 获取调试器窗口。 - /// - /// 调试器窗口路径。 - /// 要获取的调试器窗口。 - public IDebuggerWindow GetDebuggerWindow(string path) - { - return _mDebuggerModule.GetDebuggerWindow(path); - } - - /// - /// 选中调试器窗口。 - /// - /// 调试器窗口路径。 - /// 是否成功选中调试器窗口。 - public bool SelectDebuggerWindow(string path) - { - return _mDebuggerModule.SelectDebuggerWindow(path); - } - - /// - /// 还原调试器窗口布局。 - /// - public void ResetLayout() - { - IconRect = DefaultIconRect; - WindowRect = DefaultWindowRect; - WindowScale = DefaultWindowScale; - } - - /// - /// 获取记录的所有日志。 - /// - /// 要获取的日志。 - public void GetRecentLogs(List results) - { - m_ConsoleWindow.GetRecentLogs(results); - } - - /// - /// 获取记录的最近日志。 - /// - /// 要获取的日志。 - /// 要获取最近日志的数量。 - public void GetRecentLogs(List results, int count) - { - m_ConsoleWindow.GetRecentLogs(results, count); - } - - private void DrawWindow(int windowId) - { - GUI.DragWindow(m_DragRect); - DrawDebuggerWindowGroup(_mDebuggerModule.DebuggerWindowRoot); - } - - private void DrawDebuggerWindowGroup(IDebuggerWindowGroup debuggerWindowGroup) - { - if (debuggerWindowGroup == null) - { - return; - } - - List names = new List(); - string[] debuggerWindowNames = debuggerWindowGroup.GetDebuggerWindowNames(); - for (int i = 0; i < debuggerWindowNames.Length; i++) - { - names.Add(Utility.Text.Format("{0}", debuggerWindowNames[i])); - } - - if (debuggerWindowGroup == _mDebuggerModule.DebuggerWindowRoot) - { - names.Add("Close"); - } - - int toolbarIndex = GUILayout.Toolbar(debuggerWindowGroup.SelectedIndex, names.ToArray(), GUILayout.Height(30f), GUILayout.MaxWidth(Screen.width)); - if (toolbarIndex >= debuggerWindowGroup.DebuggerWindowCount) - { - m_ShowFullWindow = false; - return; - } - - if (debuggerWindowGroup.SelectedWindow == null) - { - return; - } - - if (debuggerWindowGroup.SelectedIndex != toolbarIndex) - { - debuggerWindowGroup.SelectedWindow.OnLeave(); - debuggerWindowGroup.SelectedIndex = toolbarIndex; - debuggerWindowGroup.SelectedWindow.OnEnter(); - } - - IDebuggerWindowGroup subDebuggerWindowGroup = debuggerWindowGroup.SelectedWindow as IDebuggerWindowGroup; - if (subDebuggerWindowGroup != null) - { - DrawDebuggerWindowGroup(subDebuggerWindowGroup); - } - - debuggerWindowGroup.SelectedWindow.OnDraw(); - } - - private void DrawDebuggerWindowIcon(int windowId) - { - GUI.DragWindow(m_DragRect); - GUILayout.Space(5); - Color32 color = Color.white; - m_ConsoleWindow.RefreshCount(); - if (m_ConsoleWindow.FatalCount > 0) - { - color = m_ConsoleWindow.GetLogStringColor(LogType.Exception); - } - else if (m_ConsoleWindow.ErrorCount > 0) - { - color = m_ConsoleWindow.GetLogStringColor(LogType.Error); - } - else if (m_ConsoleWindow.WarningCount > 0) - { - color = m_ConsoleWindow.GetLogStringColor(LogType.Warning); - } - else - { - color = m_ConsoleWindow.GetLogStringColor(LogType.Log); - } - - string title = Utility.Text.Format("FPS: {4:F2}", color.r, color.g, color.b, color.a, m_FpsCounter.CurrentFps); - if (GUILayout.Button(title, GUILayout.Width(100f), GUILayout.Height(40f))) - { - m_ShowFullWindow = true; - } - } - - private static void CopyToClipboard(string content) - { - // s_TextEditor.text = content; - // s_TextEditor.OnFocus(); - // s_TextEditor.Copy(); - // s_TextEditor.text = string.Empty; - } - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.cs.meta deleted file mode 100644 index 6288f5d..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerComponent.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f05eaceeebe870a4595e51f998ed518b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerManager.DebuggerWindowGroup.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerManager.DebuggerWindowGroup.cs deleted file mode 100644 index 673a1bc..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerManager.DebuggerWindowGroup.cs +++ /dev/null @@ -1,301 +0,0 @@ -using System.Collections.Generic; -using AlicizaX; - -namespace AlicizaX.Debugger.Runtime -{ - internal sealed partial class DebuggerModule : IDebuggerModule - { - /// - /// 调试器窗口组。 - /// - private sealed class DebuggerWindowGroup : IDebuggerWindowGroup - { - private readonly List> m_DebuggerWindows; - private int m_SelectedIndex; - private string[] m_DebuggerWindowNames; - - public DebuggerWindowGroup() - { - m_DebuggerWindows = new List>(); - m_SelectedIndex = 0; - m_DebuggerWindowNames = null; - } - - /// - /// 获取调试器窗口数量。 - /// - public int DebuggerWindowCount - { - get - { - return m_DebuggerWindows.Count; - } - } - - /// - /// 获取或设置当前选中的调试器窗口索引。 - /// - public int SelectedIndex - { - get - { - return m_SelectedIndex; - } - set - { - m_SelectedIndex = value; - } - } - - /// - /// 获取当前选中的调试器窗口。 - /// - public IDebuggerWindow SelectedWindow - { - get - { - if (m_SelectedIndex >= m_DebuggerWindows.Count) - { - return null; - } - - return m_DebuggerWindows[m_SelectedIndex].Value; - } - } - - /// - /// 初始化调试组。 - /// - /// 初始化调试组参数。 - public void Initialize(params object[] args) - { - } - - /// - /// 关闭调试组。 - /// - public void Shutdown() - { - foreach (KeyValuePair debuggerWindow in m_DebuggerWindows) - { - debuggerWindow.Value.Shutdown(); - } - - m_DebuggerWindows.Clear(); - } - - /// - /// 进入调试器窗口。 - /// - public void OnEnter() - { - SelectedWindow.OnEnter(); - } - - /// - /// 离开调试器窗口。 - /// - public void OnLeave() - { - SelectedWindow.OnLeave(); - } - - /// - /// 调试组轮询。 - /// - /// 逻辑流逝时间,以秒为单位。 - /// 真实流逝时间,以秒为单位。 - public void OnUpdate(float elapseSeconds, float realElapseSeconds) - { - SelectedWindow.OnUpdate(elapseSeconds, realElapseSeconds); - } - - /// - /// 调试器窗口绘制。 - /// - public void OnDraw() - { - } - - private void RefreshDebuggerWindowNames() - { - int index = 0; - m_DebuggerWindowNames = new string[m_DebuggerWindows.Count]; - foreach (KeyValuePair debuggerWindow in m_DebuggerWindows) - { - m_DebuggerWindowNames[index++] = debuggerWindow.Key; - } - } - - /// - /// 获取调试组的调试器窗口名称集合。 - /// - public string[] GetDebuggerWindowNames() - { - return m_DebuggerWindowNames; - } - - /// - /// 获取调试器窗口。 - /// - /// 调试器窗口路径。 - /// 要获取的调试器窗口。 - public IDebuggerWindow GetDebuggerWindow(string path) - { - if (string.IsNullOrEmpty(path)) - { - return null; - } - - int pos = path.IndexOf('/'); - if (pos < 0 || pos >= path.Length - 1) - { - return InternalGetDebuggerWindow(path); - } - - string debuggerWindowGroupName = path.Substring(0, pos); - string leftPath = path.Substring(pos + 1); - DebuggerWindowGroup debuggerWindowGroup = (DebuggerWindowGroup)InternalGetDebuggerWindow(debuggerWindowGroupName); - if (debuggerWindowGroup == null) - { - return null; - } - - return debuggerWindowGroup.GetDebuggerWindow(leftPath); - } - - /// - /// 选中调试器窗口。 - /// - /// 调试器窗口路径。 - /// 是否成功选中调试器窗口。 - public bool SelectDebuggerWindow(string path) - { - if (string.IsNullOrEmpty(path)) - { - return false; - } - - int pos = path.IndexOf('/'); - if (pos < 0 || pos >= path.Length - 1) - { - return InternalSelectDebuggerWindow(path); - } - - string debuggerWindowGroupName = path.Substring(0, pos); - string leftPath = path.Substring(pos + 1); - DebuggerWindowGroup debuggerWindowGroup = (DebuggerWindowGroup)InternalGetDebuggerWindow(debuggerWindowGroupName); - if (debuggerWindowGroup == null || !InternalSelectDebuggerWindow(debuggerWindowGroupName)) - { - return false; - } - - return debuggerWindowGroup.SelectDebuggerWindow(leftPath); - } - - /// - /// 注册调试器窗口。 - /// - /// 调试器窗口路径。 - /// 要注册的调试器窗口。 - public void RegisterDebuggerWindow(string path, IDebuggerWindow debuggerWindow) - { - if (string.IsNullOrEmpty(path)) - { - throw new GameFrameworkException("Path is invalid."); - } - - int pos = path.IndexOf('/'); - if (pos < 0 || pos >= path.Length - 1) - { - if (InternalGetDebuggerWindow(path) != null) - { - throw new GameFrameworkException("Debugger window has been registered."); - } - - m_DebuggerWindows.Add(new KeyValuePair(path, debuggerWindow)); - RefreshDebuggerWindowNames(); - } - else - { - string debuggerWindowGroupName = path.Substring(0, pos); - string leftPath = path.Substring(pos + 1); - DebuggerWindowGroup debuggerWindowGroup = (DebuggerWindowGroup)InternalGetDebuggerWindow(debuggerWindowGroupName); - if (debuggerWindowGroup == null) - { - if (InternalGetDebuggerWindow(debuggerWindowGroupName) != null) - { - throw new GameFrameworkException("Debugger window has been registered, can not create debugger window group."); - } - - debuggerWindowGroup = new DebuggerWindowGroup(); - m_DebuggerWindows.Add(new KeyValuePair(debuggerWindowGroupName, debuggerWindowGroup)); - RefreshDebuggerWindowNames(); - } - - debuggerWindowGroup.RegisterDebuggerWindow(leftPath, debuggerWindow); - } - } - - /// - /// 解除注册调试器窗口。 - /// - /// 调试器窗口路径。 - /// 是否解除注册调试器窗口成功。 - public bool UnregisterDebuggerWindow(string path) - { - if (string.IsNullOrEmpty(path)) - { - return false; - } - - int pos = path.IndexOf('/'); - if (pos < 0 || pos >= path.Length - 1) - { - IDebuggerWindow debuggerWindow = InternalGetDebuggerWindow(path); - bool result = m_DebuggerWindows.Remove(new KeyValuePair(path, debuggerWindow)); - debuggerWindow.Shutdown(); - RefreshDebuggerWindowNames(); - return result; - } - - string debuggerWindowGroupName = path.Substring(0, pos); - string leftPath = path.Substring(pos + 1); - DebuggerWindowGroup debuggerWindowGroup = (DebuggerWindowGroup)InternalGetDebuggerWindow(debuggerWindowGroupName); - if (debuggerWindowGroup == null) - { - return false; - } - - return debuggerWindowGroup.UnregisterDebuggerWindow(leftPath); - } - - private IDebuggerWindow InternalGetDebuggerWindow(string name) - { - foreach (KeyValuePair debuggerWindow in m_DebuggerWindows) - { - if (debuggerWindow.Key == name) - { - return debuggerWindow.Value; - } - } - - return null; - } - - private bool InternalSelectDebuggerWindow(string name) - { - for (int i = 0; i < m_DebuggerWindows.Count; i++) - { - if (m_DebuggerWindows[i].Key == name) - { - m_SelectedIndex = i; - return true; - } - } - - return false; - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerManager.DebuggerWindowGroup.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerManager.DebuggerWindowGroup.cs.meta deleted file mode 100644 index 8db814d..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerManager.DebuggerWindowGroup.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9d7f466f8a97daa4ebcd3c7858fc8d43 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerModule.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerModule.cs deleted file mode 100644 index 2c1a94f..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerModule.cs +++ /dev/null @@ -1,123 +0,0 @@ -using AlicizaX; - -namespace AlicizaX.Debugger.Runtime -{ - /// - /// 调试器管理器。 - /// - [UnityEngine.Scripting.Preserve] - internal sealed partial class DebuggerModule : IDebuggerModule - { - private readonly DebuggerWindowGroup m_DebuggerWindowRoot; - private bool m_ActiveWindow; - - /// - /// 初始化调试器管理器的新实例。 - /// - [UnityEngine.Scripting.Preserve] - public DebuggerModule() - { - m_DebuggerWindowRoot = new DebuggerWindowGroup(); - m_ActiveWindow = false; - } - - public int Priority - { - get => -1; - } - - /// - /// 获取或设置调试器窗口是否激活。 - /// - public bool ActiveWindow - { - get { return m_ActiveWindow; } - set { m_ActiveWindow = value; } - } - - /// - /// 调试器窗口根结点。 - /// - public IDebuggerWindowGroup DebuggerWindowRoot - { - get { return m_DebuggerWindowRoot; } - } - - /// - /// 调试器管理器轮询。 - /// - /// 逻辑流逝时间,以秒为单位。 - /// 真实流逝时间,以秒为单位。 - void IModuleUpdate.Update(float elapseSeconds, float realElapseSeconds) - { - if (!m_ActiveWindow) - { - return; - } - - m_DebuggerWindowRoot.OnUpdate(elapseSeconds, realElapseSeconds); - } - - /// - /// 关闭并清理调试器管理器。 - /// - void IModule.Dispose() - { - m_ActiveWindow = false; - m_DebuggerWindowRoot.Shutdown(); - } - - - /// - /// 注册调试器窗口。 - /// - /// 调试器窗口路径。 - /// 要注册的调试器窗口。 - /// 初始化调试器窗口参数。 - public void RegisterDebuggerWindow(string path, IDebuggerWindow debuggerWindow, params object[] args) - { - if (string.IsNullOrEmpty(path)) - { - throw new GameFrameworkException("Path is invalid."); - } - - if (debuggerWindow == null) - { - throw new GameFrameworkException("Debugger window is invalid."); - } - - m_DebuggerWindowRoot.RegisterDebuggerWindow(path, debuggerWindow); - debuggerWindow.Initialize(args); - } - - /// - /// 解除注册调试器窗口。 - /// - /// 调试器窗口路径。 - /// 是否解除注册调试器窗口成功。 - public bool UnregisterDebuggerWindow(string path) - { - return m_DebuggerWindowRoot.UnregisterDebuggerWindow(path); - } - - /// - /// 获取调试器窗口。 - /// - /// 调试器窗口路径。 - /// 要获取的调试器窗口。 - public IDebuggerWindow GetDebuggerWindow(string path) - { - return m_DebuggerWindowRoot.GetDebuggerWindow(path); - } - - /// - /// 选中调试器窗口。 - /// - /// 调试器窗口路径。 - /// 是否成功选中调试器窗口。 - public bool SelectDebuggerWindow(string path) - { - return m_DebuggerWindowRoot.SelectDebuggerWindow(path); - } - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerModule.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerModule.cs.meta deleted file mode 100644 index 4698d6b..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/DebuggerModule.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 85d1d66f64f96534f93aa063e04902cd -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/IDebuggerModule.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/IDebuggerModule.cs deleted file mode 100644 index 9852d47..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/IDebuggerModule.cs +++ /dev/null @@ -1,38 +0,0 @@ - - - -using AlicizaX; - -namespace AlicizaX.Debugger.Runtime -{ - /// 调试器管理器接口。 - public interface IDebuggerModule:IModule,IModuleUpdate - { - /// 获取或设置调试器窗口是否激活。 - bool ActiveWindow { get; set; } - - /// 调试器窗口根结点。 - IDebuggerWindowGroup DebuggerWindowRoot { get; } - - /// 注册调试器窗口。 - /// 调试器窗口路径。 - /// 要注册的调试器窗口。 - /// 初始化调试器窗口参数。 - void RegisterDebuggerWindow(string path, IDebuggerWindow debuggerWindow, params object[] args); - - /// 解除注册调试器窗口。 - /// 调试器窗口路径。 - /// 是否解除注册调试器窗口成功。 - bool UnregisterDebuggerWindow(string path); - - /// 获取调试器窗口。 - /// 调试器窗口路径。 - /// 要获取的调试器窗口。 - IDebuggerWindow GetDebuggerWindow(string path); - - /// 选中调试器窗口。 - /// 调试器窗口路径。 - /// 是否成功选中调试器窗口。 - bool SelectDebuggerWindow(string path); - } -} diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/IDebuggerModule.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/IDebuggerModule.cs.meta deleted file mode 100644 index da9869c..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/IDebuggerModule.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 08bcc79e3a7a4c848e9f3fe85220de0f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/IDebuggerWindow.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/IDebuggerWindow.cs deleted file mode 100644 index bb8825c..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/IDebuggerWindow.cs +++ /dev/null @@ -1,29 +0,0 @@ - - -namespace AlicizaX.Debugger.Runtime -{ - /// 调试器窗口接口。 - public interface IDebuggerWindow - { - /// 初始化调试器窗口。 - /// 初始化调试器窗口参数。 - void Initialize(params object[] args); - - /// 关闭调试器窗口。 - void Shutdown(); - - /// 进入调试器窗口。 - void OnEnter(); - - /// 离开调试器窗口。 - void OnLeave(); - - /// 调试器窗口轮询。 - /// 逻辑流逝时间,以秒为单位。 - /// 真实流逝时间,以秒为单位。 - void OnUpdate(float elapseSeconds, float realElapseSeconds); - - /// 调试器窗口绘制。 - void OnDraw(); - } -} \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/IDebuggerWindow.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/IDebuggerWindow.cs.meta deleted file mode 100644 index 3014fbd..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/IDebuggerWindow.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d31f64ecd68a44589ca5648355f82962 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/IDebuggerWindowGroup.cs b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/IDebuggerWindowGroup.cs deleted file mode 100644 index 6b54d06..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/IDebuggerWindowGroup.cs +++ /dev/null @@ -1,31 +0,0 @@ - - - -namespace AlicizaX.Debugger.Runtime -{ - /// 调试器窗口组接口。 - public interface IDebuggerWindowGroup : IDebuggerWindow - { - /// 获取调试器窗口数量。 - int DebuggerWindowCount { get; } - - /// 获取或设置当前选中的调试器窗口索引。 - int SelectedIndex { get; set; } - - /// 获取当前选中的调试器窗口。 - IDebuggerWindow SelectedWindow { get; } - - /// 获取调试组的调试器窗口名称集合。 - string[] GetDebuggerWindowNames(); - - /// 获取调试器窗口。 - /// 调试器窗口路径。 - /// 要获取的调试器窗口。 - IDebuggerWindow GetDebuggerWindow(string path); - - /// 注册调试器窗口。 - /// 调试器窗口路径。 - /// 要注册的调试器窗口。 - void RegisterDebuggerWindow(string path, IDebuggerWindow debuggerWindow); - } -} \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/IDebuggerWindowGroup.cs.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/IDebuggerWindowGroup.cs.meta deleted file mode 100644 index d51022f..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/Debugger/IDebuggerWindowGroup.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 27ec3e3ea31c49789b9d9d6277f05c56 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/link.xml b/Client/Packages/com.alicizax.unity.debugger/Runtime/link.xml deleted file mode 100644 index e9781e6..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/link.xml +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.debugger/Runtime/link.xml.meta b/Client/Packages/com.alicizax.unity.debugger/Runtime/link.xml.meta deleted file mode 100644 index b52c666..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/Runtime/link.xml.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: a05d37a236e0be847bd0d6bf3ff8053c -timeCreated: 1737098192 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.debugger/package.json b/Client/Packages/com.alicizax.unity.debugger/package.json deleted file mode 100644 index dcfd6f0..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/package.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "name": "com.alicizax.unity.debugger", - "displayName": "Aliciza X Debugger", - "category": "Aliciza X", - "description": "Aliciza X Debugger Component", - "version": "1.0.1", - "unity": "2025.1", - "keywords": [ - "Game Framework X" - ], - "repository": { - "name": "com.alicizax.unity", - "url": "http://101.34.252.46:3000/AlicizaX/", - "type": "git" - }, - "author": { - "name": "Yuliuren", - "email": "yuliuren00@gmail.com" - } -} \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.debugger/package.json.meta b/Client/Packages/com.alicizax.unity.debugger/package.json.meta deleted file mode 100644 index a04d384..0000000 --- a/Client/Packages/com.alicizax.unity.debugger/package.json.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 6d267783e4a34204687c2fbd9b73522a -PackageManifestImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.editor.extension b/Client/Packages/com.alicizax.unity.editor.extension index 1c0cbb3..0c5aa1a 160000 --- a/Client/Packages/com.alicizax.unity.editor.extension +++ b/Client/Packages/com.alicizax.unity.editor.extension @@ -1 +1 @@ -Subproject commit 1c0cbb362cddc7622fffb879f13f35b064be6769 +Subproject commit 0c5aa1a69ccdf9b1ba593ef1dca21aa2a7c4d752 diff --git a/Client/Packages/com.alicizax.unity.entry/Runtime/AlicizaX.Entry.Runtime.asmdef b/Client/Packages/com.alicizax.unity.entry/Runtime/AlicizaX.Entry.Runtime.asmdef index 241c780..c4558cf 100644 --- a/Client/Packages/com.alicizax.unity.entry/Runtime/AlicizaX.Entry.Runtime.asmdef +++ b/Client/Packages/com.alicizax.unity.entry/Runtime/AlicizaX.Entry.Runtime.asmdef @@ -3,15 +3,8 @@ "rootNamespace": "", "references": [ "GUID:75b6f2078d190f14dbda4a5b747d709c", - "GUID:f318a940a77af754eb1172da9dc1b400", - "GUID:be2f20a77f3232f44b9711ef43234aac", - "GUID:56115dc8e38144842823f4ee0dcad88b", - "GUID:000cc1eaf688c5246be5328cb0cf16c8", - "GUID:0d00816689626d846bd06cd779413413", - "GUID:198eb6af143bbc4488e2779d96697e06", - "GUID:a19b414bea3b97240a91aeab9a8eab36", - "GUID:e9c35c8938f782649bb7e670099ca425", - "GUID:3d13889895c726f458c6fea2413408f3" + "GUID:3d13889895c726f458c6fea2413408f3", + "GUID:1619e00706139ce488ff80c0daeea8e7" ], "includePlatforms": [], "excludePlatforms": [], @@ -24,47 +17,7 @@ { "name": "com.alicizax.unity.network", "expression": "", - "define": "ALICIZAX_NETWORK" - }, - { - "name": "com.alicizax.unity.event", - "expression": "", - "define": "ALICIZAX_EVENT_SUPPORT" - }, - { - "name": "com.alicizax.unity.audio", - "expression": "", - "define": "ALICIZAX_AUDIO_SUPPORT" - }, - { - "name": "com.alicizax.unity.fsm", - "expression": "", - "define": "ALICIZAX_FSM_SUPPORT" - }, - { - "name": "com.alicizax.unity.localization", - "expression": "", - "define": "ALICIZAX_LOCALIZATION_SUPPORT" - }, - { - "name": "com.alicizax.unity.resource", - "expression": "", - "define": "ALICIZAX_RESOURCE_SUPPORT" - }, - { - "name": "com.alicizax.unity.scene", - "expression": "", - "define": "ALICIZAX_SCENE_SUPPORT" - }, - { - "name": "com.alicizax.unity.timer", - "expression": "", - "define": "ALICIZAX_TIMER_SUPPORT" - }, - { - "name": "com.alicizax.unity.ui", - "expression": "", - "define": "ALICIZAX_UI_SUPPORT" + "define": "ALICIZAX_NETWORK_SUPPORT" } ], "noEngineReferences": false diff --git a/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Audio.cs b/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Audio.cs index c9a410e..5489a6a 100644 --- a/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Audio.cs +++ b/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Audio.cs @@ -1,5 +1,4 @@ -#if ALICIZAX_AUDIO_SUPPORT -using AlicizaX; +using AlicizaX; using AlicizaX.Audio.Runtime; public static partial class GameApp @@ -22,5 +21,3 @@ public static partial class GameApp internal static IAudioModule _audio; } - -#endif diff --git a/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Event.cs b/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Event.cs deleted file mode 100644 index 4dfdbc5..0000000 --- a/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Event.cs +++ /dev/null @@ -1,26 +0,0 @@ -#if ALICIZAX_EVENT_SUPPORT -using AlicizaX.Event.Runtime; -using AlicizaX; - -public static partial class GameApp -{ - /// - /// 获取事件组件。 - /// - public static IEventModule Event - { - get - { - if (_event == null) - { - _event = ModuleSystem.GetModule(); - } - - return _event; - } - } - - internal static IEventModule _event; -} - -#endif diff --git a/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Event.cs.meta b/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Event.cs.meta deleted file mode 100644 index d4affb3..0000000 --- a/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Event.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 2e0999688b78457eae4e60d1615d5ddc -timeCreated: 1737440423 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Fsm.cs b/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Fsm.cs index 590acb8..b18194d 100644 --- a/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Fsm.cs +++ b/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Fsm.cs @@ -1,7 +1,4 @@ - #if ALICIZAX_FSM_SUPPORT - - -using AlicizaX; +using AlicizaX; using AlicizaX.Fsm.Runtime; public static partial class GameApp @@ -24,4 +21,3 @@ public static partial class GameApp internal static IFsmModule _fsm; } -#endif diff --git a/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Localization.cs b/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Localization.cs index d9c83fc..f21866b 100644 --- a/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Localization.cs +++ b/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Localization.cs @@ -1,5 +1,4 @@ -#if ALICIZAX_LOCALIZATION_SUPPORT -using AlicizaX.Localization.Runtime; +using AlicizaX.Localization.Runtime; using AlicizaX; public static partial class GameApp @@ -22,4 +21,3 @@ public static partial class GameApp internal static ILocalizationModule _localization; } -#endif diff --git a/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Network.cs b/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Network.cs index 5252304..58027b8 100644 --- a/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Network.cs +++ b/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Network.cs @@ -1,4 +1,4 @@ -#if ALICIZAX_NETWORK +#if ALICIZAX_NETWORK_SUPPORT using AlicizaX.Network.Runtime; using AlicizaX; diff --git a/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Resource.cs b/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Resource.cs index dac2b84..938f40e 100644 --- a/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Resource.cs +++ b/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Resource.cs @@ -1,6 +1,4 @@ -#if ALICIZAX_RESOURCE_SUPPORT - -using AlicizaX.Resource.Runtime; +using AlicizaX.Resource.Runtime; using AlicizaX; public static partial class GameApp @@ -23,5 +21,3 @@ public static partial class GameApp internal static IResourceModule _resource; } - -#endif diff --git a/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Scene.cs b/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Scene.cs index 1ec7a0f..f577b1c 100644 --- a/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Scene.cs +++ b/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Scene.cs @@ -1,5 +1,4 @@ -#if ALICIZAX_SCENE_SUPPORT -using AlicizaX; +using AlicizaX; using AlicizaX.Scene.Runtime; public static partial class GameApp @@ -21,7 +20,4 @@ public static partial class GameApp } internal static ISceneModule _scene; - } - -#endif diff --git a/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Timer.cs b/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Timer.cs index f584403..256fbdf 100644 --- a/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Timer.cs +++ b/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Timer.cs @@ -1,5 +1,4 @@ -#if ALICIZAX_TIMER_SUPPORT -using AlicizaX; +using AlicizaX; using AlicizaX.Timer.Runtime; public static partial class GameApp @@ -22,5 +21,3 @@ public static partial class GameApp internal static ITimerModule _timer; } - -#endif diff --git a/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.UI.cs b/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.UI.cs index c1cdb58..f051607 100644 --- a/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.UI.cs +++ b/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.UI.cs @@ -1,5 +1,4 @@ -#if ALICIZAX_UI_SUPPORT -using AlicizaX; +using AlicizaX; using AlicizaX.UI.Runtime; public static partial class GameApp @@ -22,5 +21,3 @@ public static partial class GameApp internal static IUIModule _ui; } - -#endif diff --git a/Client/Packages/com.alicizax.unity.focus-creative-games.luban b/Client/Packages/com.alicizax.unity.focus-creative-games.luban index efdd088..b8c725f 160000 --- a/Client/Packages/com.alicizax.unity.focus-creative-games.luban +++ b/Client/Packages/com.alicizax.unity.focus-creative-games.luban @@ -1 +1 @@ -Subproject commit efdd0887b2dd4be36f837200461ee4a5c5ae4503 +Subproject commit b8c725fa2a0098b6efb6f30e834d28120b307a87 diff --git a/Client/Packages/com.alicizax.unity.fsm/Editor.meta b/Client/Packages/com.alicizax.unity.fsm/Editor.meta deleted file mode 100644 index 69379cc..0000000 --- a/Client/Packages/com.alicizax.unity.fsm/Editor.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 85d82a6042ffa804e93a8eeaf3762694 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.fsm/Editor/AlicizaX.Fsm.Editor.asmdef b/Client/Packages/com.alicizax.unity.fsm/Editor/AlicizaX.Fsm.Editor.asmdef deleted file mode 100644 index a9500f3..0000000 --- a/Client/Packages/com.alicizax.unity.fsm/Editor/AlicizaX.Fsm.Editor.asmdef +++ /dev/null @@ -1,20 +0,0 @@ -{ - "name": "AlicizaX.Fsm.Editor", - "rootNamespace": "", - "references": [ - "GUID:f318a940a77af754eb1172da9dc1b400", - "GUID:acfef7cabed3b0a42b25edb1cd4fa259", - "GUID:75b6f2078d190f14dbda4a5b747d709c" - ], - "includePlatforms": [ - "Editor" - ], - "excludePlatforms": [], - "allowUnsafeCode": true, - "overrideReferences": false, - "precompiledReferences": [], - "autoReferenced": true, - "defineConstraints": [], - "versionDefines": [], - "noEngineReferences": false -} \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.fsm/Editor/AlicizaX.Fsm.Editor.asmdef.meta b/Client/Packages/com.alicizax.unity.fsm/Editor/AlicizaX.Fsm.Editor.asmdef.meta deleted file mode 100644 index 943f186..0000000 --- a/Client/Packages/com.alicizax.unity.fsm/Editor/AlicizaX.Fsm.Editor.asmdef.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 60e59d1202fac55429516c658121540e -AssemblyDefinitionImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.fsm/Editor/FsmComponentInspector.cs b/Client/Packages/com.alicizax.unity.fsm/Editor/FsmComponentInspector.cs deleted file mode 100644 index a822af8..0000000 --- a/Client/Packages/com.alicizax.unity.fsm/Editor/FsmComponentInspector.cs +++ /dev/null @@ -1,41 +0,0 @@ -using System.Collections.Generic; -using AlicizaX.Editor; -using AlicizaX.Fsm.Runtime; -using UnityEditor; -using UnityEngine; - -namespace AlicizaX.Fsm.Editor -{ - [CustomEditor(typeof(FsmComponent))] - public class FsmModuleInspector : GameFrameworkInspector - { - public override void OnInspectorGUI() - { - base.OnInspectorGUI(); - serializedObject.Update(); - FsmComponent t = (FsmComponent)target; - if (!EditorApplication.isPlaying) - { - EditorGUILayout.HelpBox("Available during runtime only.", MessageType.Info); - return; - } - List debugInfos = t.GetAllFsmList(); - EditorGUILayout.BeginVertical("box"); - { - GUIStyle boldWhiteStyle = new GUIStyle(EditorStyles.label) - { - fontStyle = FontStyle.Bold, - normal = { textColor = Color.white } - }; - EditorGUILayout.LabelField("\tID\tFsmName\tStateName", boldWhiteStyle); - int index = 1; - foreach (var info in debugInfos) - { - EditorGUILayout.LabelField($"\t{index}\t{info.FsmName}\t{info.CurrentStateName}"); - index++; - } - } - EditorGUILayout.EndVertical(); - } - } -} diff --git a/Client/Packages/com.alicizax.unity.fsm/Editor/FsmComponentInspector.cs.meta b/Client/Packages/com.alicizax.unity.fsm/Editor/FsmComponentInspector.cs.meta deleted file mode 100644 index 4d6c854..0000000 --- a/Client/Packages/com.alicizax.unity.fsm/Editor/FsmComponentInspector.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: b7e760f8a07d441dba01f9a5bf8fff62 -timeCreated: 1745562869 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.fsm/LICENSE.md b/Client/Packages/com.alicizax.unity.fsm/LICENSE.md deleted file mode 100644 index 4e6513a..0000000 --- a/Client/Packages/com.alicizax.unity.fsm/LICENSE.md +++ /dev/null @@ -1,201 +0,0 @@ - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - -TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - -1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - -2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - -3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - -4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - -5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - -6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - -7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - -8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - -9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - -END OF TERMS AND CONDITIONS - -APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - -Copyright [2023] [ALianBlank of copyright owner][alianblank@outlook.com][https://alianblank.com/] - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. diff --git a/Client/Packages/com.alicizax.unity.fsm/LICENSE.md.meta b/Client/Packages/com.alicizax.unity.fsm/LICENSE.md.meta deleted file mode 100644 index da90227..0000000 --- a/Client/Packages/com.alicizax.unity.fsm/LICENSE.md.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 2d7b324e27d071a4dbc018b68ecf7fa8 -TextScriptImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.fsm/Runtime.meta b/Client/Packages/com.alicizax.unity.fsm/Runtime.meta deleted file mode 100644 index 13813a0..0000000 --- a/Client/Packages/com.alicizax.unity.fsm/Runtime.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 5efdc2ffb5c15e3418cedda6314b7606 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.fsm/Runtime/AlicizaX.Fsm.Runtime.asmdef b/Client/Packages/com.alicizax.unity.fsm/Runtime/AlicizaX.Fsm.Runtime.asmdef deleted file mode 100644 index db0f99a..0000000 --- a/Client/Packages/com.alicizax.unity.fsm/Runtime/AlicizaX.Fsm.Runtime.asmdef +++ /dev/null @@ -1,17 +0,0 @@ -{ - "name": "AlicizaX.Fsm.Runtime", - "rootNamespace": "", - "references": [ - "GUID:75b6f2078d190f14dbda4a5b747d709c", - "GUID:d8b63aba1907145bea998dd612889d6b" - ], - "includePlatforms": [], - "excludePlatforms": [], - "allowUnsafeCode": true, - "overrideReferences": false, - "precompiledReferences": [], - "autoReferenced": true, - "defineConstraints": [], - "versionDefines": [], - "noEngineReferences": false -} \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.fsm/Runtime/AlicizaX.Fsm.Runtime.asmdef.meta b/Client/Packages/com.alicizax.unity.fsm/Runtime/AlicizaX.Fsm.Runtime.asmdef.meta deleted file mode 100644 index ef601d4..0000000 --- a/Client/Packages/com.alicizax.unity.fsm/Runtime/AlicizaX.Fsm.Runtime.asmdef.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: f318a940a77af754eb1172da9dc1b400 -AssemblyDefinitionImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm.meta b/Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm.meta deleted file mode 100644 index e240d7d..0000000 --- a/Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 80f155ed15474ec3903f3f712568cc6b -timeCreated: 1737353240 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm/Fsm.cs b/Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm/Fsm.cs deleted file mode 100644 index b7c82ca..0000000 --- a/Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm/Fsm.cs +++ /dev/null @@ -1,274 +0,0 @@ -using System; -using System.Runtime.CompilerServices; -using AlicizaX; - - -static class StateFactory where T : class, IMemory, new() -{ - public static T CreateState(bool fromPool = true) - { - if (fromPool) - { - return MemoryPool.Acquire(); - } - - return new T(); - } -} - -public interface IState : IMemory -{ - bool fromPool { get; set; } - IUltraFSM Fsm { get; set; } - bool IsRegistered { get; set; } - void Init(); - void Enter(); - void Exit(); - void Update(float deltaTime); - void Destroy(); -} - -public abstract class StateBase : IState where TState : Enum -{ - public void Clear() - { - IsRegistered = false; - Fsm = null; - } - - public bool fromPool { get; set; } - public IUltraFSM Fsm { get; set; } - public bool IsRegistered { get; set; } - - protected virtual void OnInit() - { - } - - protected virtual void OnEnter() - { - } - - protected virtual void OnExit() - { - } - - protected virtual void OnUpdate(float deltaTime) - { - } - - protected virtual void OnDestroy() - { - } - - void IState.Init() - { - OnInit(); - } - - void IState.Enter() - { - OnEnter(); - } - - void IState.Exit() - { - OnExit(); - } - - void IState.Update(float deltaTime) - { - OnUpdate(deltaTime); - } - - void IState.Destroy() - { - IsRegistered = false; - OnDestroy(); - } - - protected void SwitchState(TState newStateId) - { - (Fsm as UltraFSM).SwitchState(newStateId); - } -} - - -public interface IUltraFSM -{ - string Name { get; } - string StateName { get; } - void Update(float deltaTime); - void Dispose(); -} - -public sealed class UltraFSM : IUltraFSM where TState : Enum -{ - private IState[] _states; - private string _name; - private int _currentIndex = -1; - private int _registeredCount; - private TState _currentState; - - public string Name - { - get => _name; - } - - - public string StateName - { - get - { - if (_currentIndex == -1) - { - return "None"; - } - - return CurrentState.ToString(); - } - } - - - public TState CurrentState - { - get - { - if (_currentIndex == -1) - throw new InvalidOperationException("No current state."); - return _currentState; - } - } - - - internal int Capacity => _states?.Length ?? 0; - - [MethodImpl(MethodImplOptions.AggressiveInlining)] - internal static int CalculateCapacity(int requested) - { - if (requested < 16) return 16; - requested--; - requested |= requested >> 1; - requested |= requested >> 2; - requested |= requested >> 4; - requested |= requested >> 8; - requested |= requested >> 16; - return requested + 1; - } - - internal void Initialize(string name, int minCapacity) - { - _name = name; - int newCapacity = CalculateCapacity(minCapacity); - _states ??= new IState[newCapacity]; - } - - private void Resize(int minCapacity) - { - int newCapacity = CalculateCapacity(minCapacity); - if (_states != null && _states.Length >= newCapacity) return; - Array.Resize(ref _states, newCapacity); - } - - [MethodImpl(MethodImplOptions.AggressiveInlining)] - public void Register(TState stateId, bool formPool = true) where T : class, IMemory, IState, new() - { - int stateIdValue = Convert.ToInt32(stateId); - if (stateIdValue < 0) - throw new ArgumentException("State ID must be non-negative."); - - if (stateIdValue >= _states.Length) - Resize(stateIdValue + 1); - - // 检查当前状态是否已注册,若存在则先释放 - var existingState = _states[stateIdValue]; - if (existingState != null && existingState.IsRegistered) - { - existingState.Destroy(); - MemoryPool.Release(existingState); - _registeredCount--; - } - - IState state = default; - state = StateFactory.CreateState(formPool); - state.fromPool = formPool; - - _states[stateIdValue] = state; - - if (!state.IsRegistered) - { - state.Fsm = this; - state.Init(); - state.IsRegistered = true; - _registeredCount++; - } - } - - [MethodImpl(MethodImplOptions.AggressiveInlining)] - public void SwitchState(TState newStateId) - { - int newStateIdValue = Convert.ToInt32(newStateId); - if (newStateIdValue < 0 || newStateIdValue >= _states.Length) - throw new ArgumentOutOfRangeException(nameof(newStateId), "State ID is out of range."); - int prevIndex = _currentIndex; - int newIndex = newStateIdValue; - - if (prevIndex == newIndex) return; - - ExitState(prevIndex); - EnterState(newIndex); - _currentIndex = newIndex; - _currentState = newStateId; - } - - [MethodImpl(MethodImplOptions.AggressiveInlining)] - void IUltraFSM.Update(float deltaTime) - { - if ((uint)_currentIndex < (uint)_states.Length) - _states[_currentIndex]?.Update(deltaTime); - } - - - [MethodImpl(MethodImplOptions.AggressiveInlining)] - private void ExitState(int index) - { - if ((uint)index < (uint)_states.Length) - _states[index]?.Exit(); - } - - [MethodImpl(MethodImplOptions.AggressiveInlining)] - private void EnterState(int index) - { - if ((uint)index < (uint)_states.Length) - { - IState state = _states[index]; - if (state.IsRegistered) - state.Enter(); - } - } - - - public void Dispose() - { - if (_states == null) return; - - for (int i = 0; i < _states.Length; i++) - { - IState state = _states[i]; - if (state != null && state.IsRegistered) - { - state.Destroy(); - if (state.fromPool) - { - MemoryPool.Release(state); - } - } - } - - // 清空数组引用,帮助 GC 回收内存 - Array.Clear(_states, 0, _states.Length); - _states = null; - - _currentIndex = -1; - _registeredCount = 0; - } -} diff --git a/Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm/Fsm.cs.meta b/Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm/Fsm.cs.meta deleted file mode 100644 index 066ea86..0000000 --- a/Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm/Fsm.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 0e40b7705a0b45a3b1e46ad7e89a5ebd -timeCreated: 1745547602 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm/FsmComponent.cs b/Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm/FsmComponent.cs deleted file mode 100644 index 88c5065..0000000 --- a/Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm/FsmComponent.cs +++ /dev/null @@ -1,33 +0,0 @@ -using AlicizaX; -using AlicizaX.Fsm; -using System; -using System.Collections.Generic; -using UnityEngine; - -namespace AlicizaX.Fsm.Runtime -{ - /// - /// 有限状态机组件。 - /// - [DisallowMultipleComponent] - [AddComponentMenu("Game Framework/FSM")] - public sealed class FsmComponent : MonoBehaviour - { - private IFsmModule _mFsmModule = null; - - private void Awake() - { - _mFsmModule = ModuleSystem.RegisterModule(); - if (_mFsmModule == null) - { - Log.Error("FSM manager is invalid."); - return; - } - } - - public List GetAllFsmList() - { - return _mFsmModule.GetDebugInfo(); - } - } -} diff --git a/Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm/FsmComponent.cs.meta b/Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm/FsmComponent.cs.meta deleted file mode 100644 index f60b609..0000000 --- a/Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm/FsmComponent.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: a69e41ab65d84e83a0468f1a2cc3926f -timeCreated: 1712641057 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm/FsmModule.cs b/Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm/FsmModule.cs deleted file mode 100644 index dc5f711..0000000 --- a/Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm/FsmModule.cs +++ /dev/null @@ -1,125 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Runtime.CompilerServices; -using UnityEngine.Scripting; - -namespace AlicizaX.Fsm.Runtime -{ - // 新增非泛型接口 - - public struct FsmDebugInfo - { - public string FsmName; - public string CurrentStateName; - public int RegisteredStates; - } - - [Preserve] - public sealed class FsmModule : IFsmModule - { - private const int DefaultPoolSize = 64; - private const int MaxPoolSize = 2048; - - // 按类型分组的对象池和活动实例 - private Dictionary> _fsmPools; - private Dictionary> _activeFsms; - - public UltraFSM Create(string name, int initialCapacity = 8) where TState : struct, Enum - { - var stateType = typeof(TState); - // 初始化存储结构 - if (!_fsmPools.ContainsKey(stateType)) - { - _fsmPools.Add(stateType, new Stack(DefaultPoolSize)); - _activeFsms.Add(stateType, new List(DefaultPoolSize)); - } - - // 从池中获取或新建实例 - var fsm = _fsmPools[stateType].Count > 0 - ? (UltraFSM)_fsmPools[stateType].Pop() - : new UltraFSM(); - - fsm.Initialize(name, initialCapacity); - _activeFsms[stateType].Add(fsm); - return fsm; - } - - public void Destroy(UltraFSM fsm) where TState : Enum - { - var stateType = typeof(TState); - if (!_activeFsms.TryGetValue(stateType, out var activeList)) return; - - fsm?.Dispose(); - - // 回收实例到池 - if (_fsmPools[stateType].Count < MaxPoolSize) - { - _fsmPools[stateType].Push(fsm); - } - - // 从活动列表移除 - activeList.Remove(fsm); - } - - public List GetDebugInfo() - { - var list = new List(); - foreach (var kvp in _activeFsms) - { - foreach (var fsm in kvp.Value) - { - list.Add(new FsmDebugInfo - { - FsmName = fsm.Name, - CurrentStateName = fsm.StateName, - }); - } - } - - return list; - } - - void IModuleUpdate.Update(float elapseSeconds, float realElapseSeconds) - { - foreach (var kvp in _activeFsms) - { - foreach (var fsm in kvp.Value) - { - fsm.Update(elapseSeconds); - } - } - } - - void IModule.Dispose() - { - foreach (var pool in _fsmPools.Values) - { - while (pool.Count > 0) - { - pool.Pop().Dispose(); - } - } - - foreach (var activeList in _activeFsms.Values) - { - foreach (var fsm in activeList) - { - fsm?.Dispose(); - } - - activeList.Clear(); - } - - _fsmPools.Clear(); - _activeFsms.Clear(); - } - - public int Priority => 0; - - void IModuleAwake.Awake() - { - _fsmPools = new(); - _activeFsms = new(); - } - } -} diff --git a/Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm/FsmModule.cs.meta b/Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm/FsmModule.cs.meta deleted file mode 100644 index dcc1530..0000000 --- a/Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm/FsmModule.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 9eb47e20b70b4505bc1ac91a2669c2db -timeCreated: 1745559879 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm/IFsmModule.cs b/Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm/IFsmModule.cs deleted file mode 100644 index fda30c4..0000000 --- a/Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm/IFsmModule.cs +++ /dev/null @@ -1,13 +0,0 @@ -using System; -using System.Collections.Generic; - -namespace AlicizaX.Fsm.Runtime -{ - public interface IFsmModule : IModule, IModuleUpdate,IModuleAwake - { - UltraFSM Create(string name, int initialCapacity = 16) where TState : struct, Enum; - - void Destroy(UltraFSM fsm) where TState : Enum; - List GetDebugInfo(); - } -} diff --git a/Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm/IFsmModule.cs.meta b/Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm/IFsmModule.cs.meta deleted file mode 100644 index 9106f0e..0000000 --- a/Client/Packages/com.alicizax.unity.fsm/Runtime/Fsm/IFsmModule.cs.meta +++ /dev/null @@ -1,2 +0,0 @@ -fileFormatVersion: 2 -guid: 5710f02ccd444b9c9c5d02d8bb2c3368 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.fsm/Runtime/link.xml b/Client/Packages/com.alicizax.unity.fsm/Runtime/link.xml deleted file mode 100644 index 40c558e..0000000 --- a/Client/Packages/com.alicizax.unity.fsm/Runtime/link.xml +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.fsm/Runtime/link.xml.meta b/Client/Packages/com.alicizax.unity.fsm/Runtime/link.xml.meta deleted file mode 100644 index 97476a8..0000000 --- a/Client/Packages/com.alicizax.unity.fsm/Runtime/link.xml.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 473d5de13fe24a769f96368bb961dd26 -timeCreated: 1737098163 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.fsm/package.json b/Client/Packages/com.alicizax.unity.fsm/package.json deleted file mode 100644 index 1a54873..0000000 --- a/Client/Packages/com.alicizax.unity.fsm/package.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "name": "com.alicizax.unity.fsm", - "displayName": "Aliciza X FSM", - "category": "Aliciza X", - "description": "Aliciza X FSM Component", - "version": "1.0.1", - "unity": "2025.1", - "keywords": [ - "Game Framework X" - ], - "repository": { - "name": "com.alicizax.unity", - "url": "http://101.34.252.46:3000/AlicizaX/", - "type": "git" - }, - "author": { - "name": "Yuliuren", - "email": "yuliuren00@gmail.com" - } -} \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.fsm/package.json.meta b/Client/Packages/com.alicizax.unity.fsm/package.json.meta deleted file mode 100644 index 003d107..0000000 --- a/Client/Packages/com.alicizax.unity.fsm/package.json.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: ed16b8e176ddcc94ba5b34c50d938e3a -PackageManifestImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.localization/Editor.meta b/Client/Packages/com.alicizax.unity.localization/Editor.meta deleted file mode 100644 index 19d5569..0000000 --- a/Client/Packages/com.alicizax.unity.localization/Editor.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 3136df8c4e628314693a11a6cca168a3 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.localization/Editor/AlicizaX.Localization.Editor.asmdef b/Client/Packages/com.alicizax.unity.localization/Editor/AlicizaX.Localization.Editor.asmdef deleted file mode 100644 index 4a2edcd..0000000 --- a/Client/Packages/com.alicizax.unity.localization/Editor/AlicizaX.Localization.Editor.asmdef +++ /dev/null @@ -1,16 +0,0 @@ -{ - "name": "AlicizaX.Localization.Editor", - "rootNamespace": "AlicizaX.Localization.Editor", - "references": [], - "includePlatforms": [ - "Editor" - ], - "excludePlatforms": [], - "allowUnsafeCode": true, - "overrideReferences": false, - "precompiledReferences": [], - "autoReferenced": true, - "defineConstraints": [], - "versionDefines": [], - "noEngineReferences": false -} \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.localization/Editor/AlicizaX.Localization.Editor.asmdef.meta b/Client/Packages/com.alicizax.unity.localization/Editor/AlicizaX.Localization.Editor.asmdef.meta deleted file mode 100644 index d21085a..0000000 --- a/Client/Packages/com.alicizax.unity.localization/Editor/AlicizaX.Localization.Editor.asmdef.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 83a193b118cfbef48a344187e07f53bb -AssemblyDefinitionImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.localization/Editor/LocalizationEditor.cs b/Client/Packages/com.alicizax.unity.localization/Editor/LocalizationEditor.cs deleted file mode 100644 index 0be75e8..0000000 --- a/Client/Packages/com.alicizax.unity.localization/Editor/LocalizationEditor.cs +++ /dev/null @@ -1,7 +0,0 @@ -namespace AlicizaX.Localization.Editor.Editor -{ - public class LocalizationEditor - { - - } -} diff --git a/Client/Packages/com.alicizax.unity.localization/Editor/LocalizationEditor.cs.meta b/Client/Packages/com.alicizax.unity.localization/Editor/LocalizationEditor.cs.meta deleted file mode 100644 index e6d8083..0000000 --- a/Client/Packages/com.alicizax.unity.localization/Editor/LocalizationEditor.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 019b2b61e4894bdcb1c7c12a28d31460 -timeCreated: 1754047909 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.localization/LICENSE.md b/Client/Packages/com.alicizax.unity.localization/LICENSE.md deleted file mode 100644 index 4e6513a..0000000 --- a/Client/Packages/com.alicizax.unity.localization/LICENSE.md +++ /dev/null @@ -1,201 +0,0 @@ - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - -TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - -1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - -2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - -3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - -4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - -5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - -6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - -7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - -8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - -9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - -END OF TERMS AND CONDITIONS - -APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - -Copyright [2023] [ALianBlank of copyright owner][alianblank@outlook.com][https://alianblank.com/] - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. diff --git a/Client/Packages/com.alicizax.unity.localization/LICENSE.md.meta b/Client/Packages/com.alicizax.unity.localization/LICENSE.md.meta deleted file mode 100644 index 3f9d59e..0000000 --- a/Client/Packages/com.alicizax.unity.localization/LICENSE.md.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 3b2396d51d3f999458718ae44daa4963 -TextScriptImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.localization/Runtime.meta b/Client/Packages/com.alicizax.unity.localization/Runtime.meta deleted file mode 100644 index e865809..0000000 --- a/Client/Packages/com.alicizax.unity.localization/Runtime.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 644aa08fb6fc1a6449a54eb7c84c5862 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.localization/Runtime/AlicizaX.Localization.Runtime.asmdef b/Client/Packages/com.alicizax.unity.localization/Runtime/AlicizaX.Localization.Runtime.asmdef deleted file mode 100644 index 8bdd6aa..0000000 --- a/Client/Packages/com.alicizax.unity.localization/Runtime/AlicizaX.Localization.Runtime.asmdef +++ /dev/null @@ -1,17 +0,0 @@ -{ - "name": "AlicizaX.Localization.Runtime", - "rootNamespace": "AlicizaX.Localization.Runtime", - "references": [ - "GUID:75b6f2078d190f14dbda4a5b747d709c", - "GUID:2393d135922de5c4ab12e74f1e397920" - ], - "includePlatforms": [], - "excludePlatforms": [], - "allowUnsafeCode": false, - "overrideReferences": false, - "precompiledReferences": [], - "autoReferenced": true, - "defineConstraints": [], - "versionDefines": [], - "noEngineReferences": false -} \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.localization/Runtime/AlicizaX.Localization.Runtime.asmdef.meta b/Client/Packages/com.alicizax.unity.localization/Runtime/AlicizaX.Localization.Runtime.asmdef.meta deleted file mode 100644 index 07dcc58..0000000 --- a/Client/Packages/com.alicizax.unity.localization/Runtime/AlicizaX.Localization.Runtime.asmdef.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: a19b414bea3b97240a91aeab9a8eab36 -AssemblyDefinitionImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.localization/Runtime/Localization.meta b/Client/Packages/com.alicizax.unity.localization/Runtime/Localization.meta deleted file mode 100644 index b79aae1..0000000 --- a/Client/Packages/com.alicizax.unity.localization/Runtime/Localization.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 505ab8f34e8e464b9548e39f10952911 -timeCreated: 1737618593 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Event.meta b/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Event.meta deleted file mode 100644 index e9ce001..0000000 --- a/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Event.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: b7d3c4d80753429da508a3ec547fe296 -timeCreated: 1754033363 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Event/LocalizationChangeEvent.cs b/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Event/LocalizationChangeEvent.cs deleted file mode 100644 index 1c7c5ed..0000000 --- a/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Event/LocalizationChangeEvent.cs +++ /dev/null @@ -1,20 +0,0 @@ -using AlicizaX.Localization.Runtime.Event.Generated; - -namespace AlicizaX.Localization -{ - [Prewarm(4)] - public readonly struct LocalizationChangeEvent : IEventArgs - { - public readonly Language ChangedLanguage; - - public LocalizationChangeEvent(Language language) - { - ChangedLanguage = language; - } - - public static void Publisher(Language language) - { - EventPublisher.Publish(new LocalizationChangeEvent(language)); - } - } -} diff --git a/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Event/LocalizationChangeEvent.cs.meta b/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Event/LocalizationChangeEvent.cs.meta deleted file mode 100644 index 9cda66a..0000000 --- a/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Event/LocalizationChangeEvent.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 5cce7e849bfa4e21b16e9250b8def923 -timeCreated: 1754033406 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/LocalizationComponent.cs b/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/LocalizationComponent.cs deleted file mode 100644 index 655210e..0000000 --- a/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/LocalizationComponent.cs +++ /dev/null @@ -1,25 +0,0 @@ -using UnityEngine; - -namespace AlicizaX.Localization.Runtime -{ - /// - /// 本地化组件。 - /// - [DisallowMultipleComponent] - [AddComponentMenu("Game Framework/Localization")] - public sealed class LocalizationComponent : MonoBehaviour - { - private ILocalizationModule _mLocalizationModule = null; - - public static string PrefsKey = Application.dataPath.GetHashCode() + "Language"; - - private void Awake() - { - _mLocalizationModule = ModuleSystem.RegisterModule(); - if (_mLocalizationModule == null) - { - Log.Info("Localization manager is invalid."); - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/LocalizationComponent.cs.meta b/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/LocalizationComponent.cs.meta deleted file mode 100644 index 968e3fd..0000000 --- a/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/LocalizationComponent.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 577f4666bd05453d9b779ce3050b9ec2 -timeCreated: 1712727478 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Manager.meta b/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Manager.meta deleted file mode 100644 index d635f4a..0000000 --- a/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Manager.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: f21bf0d39b424adaa2b9de2cd1e7797b -timeCreated: 1712727478 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Manager/ILocalizationModule.cs b/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Manager/ILocalizationModule.cs deleted file mode 100644 index a5c4268..0000000 --- a/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Manager/ILocalizationModule.cs +++ /dev/null @@ -1,426 +0,0 @@ -using System.Collections.Generic; -using AlicizaX; - -namespace AlicizaX.Localization.Runtime -{ - /// - /// 本地化管理器接口。 - /// - public interface ILocalizationModule : IModule, IModuleAwake - { - public Language Language { get; } - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典主键。 - /// 要获取的字典内容字符串。 - string GetString(string key); - - void ChangedLanguage(Language language); - - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数的类型。 - /// 字典主键。 - /// 字典参数列表。 - /// 要获取的字典内容字符串。 - string GetString(string key, params object[] args); - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数的类型。 - /// 字典主键。 - /// 字典参数。 - /// 要获取的字典内容字符串。 - string GetString(string key, T arg); - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数 1 的类型。 - /// 字典参数 2 的类型。 - /// 字典主键。 - /// 字典参数 1。 - /// 字典参数 2。 - /// 要获取的字典内容字符串。 - string GetString(string key, T1 arg1, T2 arg2); - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数 1 的类型。 - /// 字典参数 2 的类型。 - /// 字典参数 3 的类型。 - /// 字典主键。 - /// 字典参数 1。 - /// 字典参数 2。 - /// 字典参数 3。 - /// 要获取的字典内容字符串。 - string GetString(string key, T1 arg1, T2 arg2, T3 arg3); - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数 1 的类型。 - /// 字典参数 2 的类型。 - /// 字典参数 3 的类型。 - /// 字典参数 4 的类型。 - /// 字典主键。 - /// 字典参数 1。 - /// 字典参数 2。 - /// 字典参数 3。 - /// 字典参数 4。 - /// 要获取的字典内容字符串。 - string GetString(string key, T1 arg1, T2 arg2, T3 arg3, T4 arg4); - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数 1 的类型。 - /// 字典参数 2 的类型。 - /// 字典参数 3 的类型。 - /// 字典参数 4 的类型。 - /// 字典参数 5 的类型。 - /// 字典主键。 - /// 字典参数 1。 - /// 字典参数 2。 - /// 字典参数 3。 - /// 字典参数 4。 - /// 字典参数 5。 - /// 要获取的字典内容字符串。 - string GetString(string key, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5); - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数 1 的类型。 - /// 字典参数 2 的类型。 - /// 字典参数 3 的类型。 - /// 字典参数 4 的类型。 - /// 字典参数 5 的类型。 - /// 字典参数 6 的类型。 - /// 字典主键。 - /// 字典参数 1。 - /// 字典参数 2。 - /// 字典参数 3。 - /// 字典参数 4。 - /// 字典参数 5。 - /// 字典参数 6。 - /// 要获取的字典内容字符串。 - string GetString(string key, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6); - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数 1 的类型。 - /// 字典参数 2 的类型。 - /// 字典参数 3 的类型。 - /// 字典参数 4 的类型。 - /// 字典参数 5 的类型。 - /// 字典参数 6 的类型。 - /// 字典参数 7 的类型。 - /// 字典主键。 - /// 字典参数 1。 - /// 字典参数 2。 - /// 字典参数 3。 - /// 字典参数 4。 - /// 字典参数 5。 - /// 字典参数 6。 - /// 字典参数 7。 - /// 要获取的字典内容字符串。 - string GetString(string key, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7); - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数 1 的类型。 - /// 字典参数 2 的类型。 - /// 字典参数 3 的类型。 - /// 字典参数 4 的类型。 - /// 字典参数 5 的类型。 - /// 字典参数 6 的类型。 - /// 字典参数 7 的类型。 - /// 字典参数 8 的类型。 - /// 字典主键。 - /// 字典参数 1。 - /// 字典参数 2。 - /// 字典参数 3。 - /// 字典参数 4。 - /// 字典参数 5。 - /// 字典参数 6。 - /// 字典参数 7。 - /// 字典参数 8。 - /// 要获取的字典内容字符串。 - string GetString(string key, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8); - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数 1 的类型。 - /// 字典参数 2 的类型。 - /// 字典参数 3 的类型。 - /// 字典参数 4 的类型。 - /// 字典参数 5 的类型。 - /// 字典参数 6 的类型。 - /// 字典参数 7 的类型。 - /// 字典参数 8 的类型。 - /// 字典参数 9 的类型。 - /// 字典主键。 - /// 字典参数 1。 - /// 字典参数 2。 - /// 字典参数 3。 - /// 字典参数 4。 - /// 字典参数 5。 - /// 字典参数 6。 - /// 字典参数 7。 - /// 字典参数 8。 - /// 字典参数 9。 - /// 要获取的字典内容字符串。 - string GetString(string key, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9); - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数 1 的类型。 - /// 字典参数 2 的类型。 - /// 字典参数 3 的类型。 - /// 字典参数 4 的类型。 - /// 字典参数 5 的类型。 - /// 字典参数 6 的类型。 - /// 字典参数 7 的类型。 - /// 字典参数 8 的类型。 - /// 字典参数 9 的类型。 - /// 字典参数 10 的类型。 - /// 字典主键。 - /// 字典参数 1。 - /// 字典参数 2。 - /// 字典参数 3。 - /// 字典参数 4。 - /// 字典参数 5。 - /// 字典参数 6。 - /// 字典参数 7。 - /// 字典参数 8。 - /// 字典参数 9。 - /// 字典参数 10。 - /// 要获取的字典内容字符串。 - string GetString(string key, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10); - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数 1 的类型。 - /// 字典参数 2 的类型。 - /// 字典参数 3 的类型。 - /// 字典参数 4 的类型。 - /// 字典参数 5 的类型。 - /// 字典参数 6 的类型。 - /// 字典参数 7 的类型。 - /// 字典参数 8 的类型。 - /// 字典参数 9 的类型。 - /// 字典参数 10 的类型。 - /// 字典参数 11 的类型。 - /// 字典主键。 - /// 字典参数 1。 - /// 字典参数 2。 - /// 字典参数 3。 - /// 字典参数 4。 - /// 字典参数 5。 - /// 字典参数 6。 - /// 字典参数 7。 - /// 字典参数 8。 - /// 字典参数 9。 - /// 字典参数 10。 - /// 字典参数 11。 - /// 要获取的字典内容字符串。 - string GetString(string key, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11); - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数 1 的类型。 - /// 字典参数 2 的类型。 - /// 字典参数 3 的类型。 - /// 字典参数 4 的类型。 - /// 字典参数 5 的类型。 - /// 字典参数 6 的类型。 - /// 字典参数 7 的类型。 - /// 字典参数 8 的类型。 - /// 字典参数 9 的类型。 - /// 字典参数 10 的类型。 - /// 字典参数 11 的类型。 - /// 字典参数 12 的类型。 - /// 字典主键。 - /// 字典参数 1。 - /// 字典参数 2。 - /// 字典参数 3。 - /// 字典参数 4。 - /// 字典参数 5。 - /// 字典参数 6。 - /// 字典参数 7。 - /// 字典参数 8。 - /// 字典参数 9。 - /// 字典参数 10。 - /// 字典参数 11。 - /// 字典参数 12。 - /// 要获取的字典内容字符串。 - string GetString(string key, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11, T12 arg12); - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数 1 的类型。 - /// 字典参数 2 的类型。 - /// 字典参数 3 的类型。 - /// 字典参数 4 的类型。 - /// 字典参数 5 的类型。 - /// 字典参数 6 的类型。 - /// 字典参数 7 的类型。 - /// 字典参数 8 的类型。 - /// 字典参数 9 的类型。 - /// 字典参数 10 的类型。 - /// 字典参数 11 的类型。 - /// 字典参数 12 的类型。 - /// 字典参数 13 的类型。 - /// 字典主键。 - /// 字典参数 1。 - /// 字典参数 2。 - /// 字典参数 3。 - /// 字典参数 4。 - /// 字典参数 5。 - /// 字典参数 6。 - /// 字典参数 7。 - /// 字典参数 8。 - /// 字典参数 9。 - /// 字典参数 10。 - /// 字典参数 11。 - /// 字典参数 12。 - /// 字典参数 13。 - /// 要获取的字典内容字符串。 - string GetString(string key, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11, T12 arg12, T13 arg13); - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数 1 的类型。 - /// 字典参数 2 的类型。 - /// 字典参数 3 的类型。 - /// 字典参数 4 的类型。 - /// 字典参数 5 的类型。 - /// 字典参数 6 的类型。 - /// 字典参数 7 的类型。 - /// 字典参数 8 的类型。 - /// 字典参数 9 的类型。 - /// 字典参数 10 的类型。 - /// 字典参数 11 的类型。 - /// 字典参数 12 的类型。 - /// 字典参数 13 的类型。 - /// 字典参数 14 的类型。 - /// 字典主键。 - /// 字典参数 1。 - /// 字典参数 2。 - /// 字典参数 3。 - /// 字典参数 4。 - /// 字典参数 5。 - /// 字典参数 6。 - /// 字典参数 7。 - /// 字典参数 8。 - /// 字典参数 9。 - /// 字典参数 10。 - /// 字典参数 11。 - /// 字典参数 12。 - /// 字典参数 13。 - /// 字典参数 14。 - /// 要获取的字典内容字符串。 - string GetString(string key, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11, T12 arg12, T13 arg13, T14 arg14); - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数 1 的类型。 - /// 字典参数 2 的类型。 - /// 字典参数 3 的类型。 - /// 字典参数 4 的类型。 - /// 字典参数 5 的类型。 - /// 字典参数 6 的类型。 - /// 字典参数 7 的类型。 - /// 字典参数 8 的类型。 - /// 字典参数 9 的类型。 - /// 字典参数 10 的类型。 - /// 字典参数 11 的类型。 - /// 字典参数 12 的类型。 - /// 字典参数 13 的类型。 - /// 字典参数 14 的类型。 - /// 字典参数 15 的类型。 - /// 字典主键。 - /// 字典参数 1。 - /// 字典参数 2。 - /// 字典参数 3。 - /// 字典参数 4。 - /// 字典参数 5。 - /// 字典参数 6。 - /// 字典参数 7。 - /// 字典参数 8。 - /// 字典参数 9。 - /// 字典参数 10。 - /// 字典参数 11。 - /// 字典参数 12。 - /// 字典参数 13。 - /// 字典参数 14。 - /// 字典参数 15。 - /// 要获取的字典内容字符串。 - string GetString(string key, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11, T12 arg12, T13 arg13, T14 arg14, T15 arg15); - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数 1 的类型。 - /// 字典参数 2 的类型。 - /// 字典参数 3 的类型。 - /// 字典参数 4 的类型。 - /// 字典参数 5 的类型。 - /// 字典参数 6 的类型。 - /// 字典参数 7 的类型。 - /// 字典参数 8 的类型。 - /// 字典参数 9 的类型。 - /// 字典参数 10 的类型。 - /// 字典参数 11 的类型。 - /// 字典参数 12 的类型。 - /// 字典参数 13 的类型。 - /// 字典参数 14 的类型。 - /// 字典参数 15 的类型。 - /// 字典参数 16 的类型。 - /// 字典主键。 - /// 字典参数 1。 - /// 字典参数 2。 - /// 字典参数 3。 - /// 字典参数 4。 - /// 字典参数 5。 - /// 字典参数 6。 - /// 字典参数 7。 - /// 字典参数 8。 - /// 字典参数 9。 - /// 字典参数 10。 - /// 字典参数 11。 - /// 字典参数 12。 - /// 字典参数 13。 - /// 字典参数 14。 - /// 字典参数 15。 - /// 字典参数 16。 - /// 要获取的字典内容字符串。 - string GetString(string key, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11, T12 arg12, T13 arg13, T14 arg14, T15 arg15, T16 arg16); - - - /// - /// 根据字典主键获取字典值。 - /// - /// 字典主键。 - /// 字典值。 - string GetRawString(string key); - - void AddLocalizationConfig(Dictionary config); - } -} diff --git a/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Manager/ILocalizationModule.cs.meta b/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Manager/ILocalizationModule.cs.meta deleted file mode 100644 index 9517c66..0000000 --- a/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Manager/ILocalizationModule.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 05600158150d4b108b0173acad47e0fe -timeCreated: 1712727478 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Manager/LocalizationModule.cs b/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Manager/LocalizationModule.cs deleted file mode 100644 index 0219be0..0000000 --- a/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Manager/LocalizationModule.cs +++ /dev/null @@ -1,738 +0,0 @@ -using System; -using System.Collections.Generic; -using AlicizaX; -using AlicizaX.Localization.Runtime.Event; - -namespace AlicizaX.Localization.Runtime -{ - /// - /// 本地化管理器。 - /// - [UnityEngine.Scripting.Preserve] - public sealed partial class LocalizationModule : ILocalizationModule - { - private readonly Dictionary Dic = new(); - private Language _language; - - public Language Language - { - get => _language; - } - - public void ChangedLanguage(Language language) - { - if (_language == language) return; - _language = language; - LocalizationChangeEvent.Publisher(_language); - } - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典主键。 - /// 要获取的字典内容字符串。 - public string GetString(string key) - { - var value = GetRawString(key); - if (value == null) - { - return Utility.Text.Format("{0}", key); - } - - return value; - } - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典主键。 - /// 参数列表. - /// 要获取的字典内容字符串。 - public string GetString(string key, params object[] args) - { - var value = GetRawString(key); - if (value == null) - { - return Utility.Text.Format("{0}", key); - } - - return Utility.Text.Format(value, args); - } - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数的类型。 - /// 字典主键。 - /// 字典参数。 - /// 要获取的字典内容字符串。 - public string GetString(string key, T arg) - { - var value = GetRawString(key); - if (value == null) - { - return Utility.Text.Format("{0}", key); - } - - try - { - return Utility.Text.Format(value, arg); - } - catch (Exception exception) - { - return Utility.Text.Format("{0},{1},{2},{3}", key, value, arg, exception); - } - } - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数 1 的类型。 - /// 字典参数 2 的类型。 - /// 字典主键。 - /// 字典参数 1。 - /// 字典参数 2。 - /// 要获取的字典内容字符串。 - public string GetString(string key, T1 arg1, T2 arg2) - { - var value = GetRawString(key); - if (value == null) - { - return Utility.Text.Format("{0}", key); - } - - try - { - return Utility.Text.Format(value, arg1, arg2); - } - catch (Exception exception) - { - return Utility.Text.Format("{0},{1},{2},{3},{4}", key, value, arg1, arg2, exception); - } - } - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数 1 的类型。 - /// 字典参数 2 的类型。 - /// 字典参数 3 的类型。 - /// 字典主键。 - /// 字典参数 1。 - /// 字典参数 2。 - /// 字典参数 3。 - /// 要获取的字典内容字符串。 - public string GetString(string key, T1 arg1, T2 arg2, T3 arg3) - { - var value = GetRawString(key); - if (value == null) - { - return Utility.Text.Format("{0}", key); - } - - try - { - return Utility.Text.Format(value, arg1, arg2, arg3); - } - catch (Exception exception) - { - return Utility.Text.Format("{0},{1},{2},{3},{4},{5}", key, value, arg1, arg2, arg3, exception); - } - } - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数 1 的类型。 - /// 字典参数 2 的类型。 - /// 字典参数 3 的类型。 - /// 字典参数 4 的类型。 - /// 字典主键。 - /// 字典参数 1。 - /// 字典参数 2。 - /// 字典参数 3。 - /// 字典参数 4。 - /// 要获取的字典内容字符串。 - public string GetString(string key, T1 arg1, T2 arg2, T3 arg3, T4 arg4) - { - var value = GetRawString(key); - if (value == null) - { - return Utility.Text.Format("{0}", key); - } - - try - { - return Utility.Text.Format(value, arg1, arg2, arg3, arg4); - } - catch (Exception exception) - { - return Utility.Text.Format("{0},{1},{2},{3},{4},{5},{6}", key, value, arg1, arg2, arg3, arg4, exception); - } - } - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数 1 的类型。 - /// 字典参数 2 的类型。 - /// 字典参数 3 的类型。 - /// 字典参数 4 的类型。 - /// 字典参数 5 的类型。 - /// 字典主键。 - /// 字典参数 1。 - /// 字典参数 2。 - /// 字典参数 3。 - /// 字典参数 4。 - /// 字典参数 5。 - /// 要获取的字典内容字符串。 - public string GetString(string key, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5) - { - var value = GetRawString(key); - if (value == null) - { - return Utility.Text.Format("{0}", key); - } - - try - { - return Utility.Text.Format(value, arg1, arg2, arg3, arg4, arg5); - } - catch (Exception exception) - { - return Utility.Text.Format("{0},{1},{2},{3},{4},{5},{6},{7}", key, value, arg1, arg2, arg3, arg4, arg5, exception); - } - } - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数 1 的类型。 - /// 字典参数 2 的类型。 - /// 字典参数 3 的类型。 - /// 字典参数 4 的类型。 - /// 字典参数 5 的类型。 - /// 字典参数 6 的类型。 - /// 字典主键。 - /// 字典参数 1。 - /// 字典参数 2。 - /// 字典参数 3。 - /// 字典参数 4。 - /// 字典参数 5。 - /// 字典参数 6。 - /// 要获取的字典内容字符串。 - public string GetString(string key, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6) - { - var value = GetRawString(key); - if (value == null) - { - return Utility.Text.Format("{0}", key); - } - - try - { - return Utility.Text.Format(value, arg1, arg2, arg3, arg4, arg5, arg6); - } - catch (Exception exception) - { - return Utility.Text.Format("{0},{1},{2},{3},{4},{5},{6},{7},{8}", key, value, arg1, arg2, arg3, arg4, arg5, arg6, exception); - } - } - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数 1 的类型。 - /// 字典参数 2 的类型。 - /// 字典参数 3 的类型。 - /// 字典参数 4 的类型。 - /// 字典参数 5 的类型。 - /// 字典参数 6 的类型。 - /// 字典参数 7 的类型。 - /// 字典主键。 - /// 字典参数 1。 - /// 字典参数 2。 - /// 字典参数 3。 - /// 字典参数 4。 - /// 字典参数 5。 - /// 字典参数 6。 - /// 字典参数 7。 - /// 要获取的字典内容字符串。 - public string GetString(string key, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7) - { - var value = GetRawString(key); - if (value == null) - { - return Utility.Text.Format("{0}", key); - } - - try - { - return Utility.Text.Format(value, arg1, arg2, arg3, arg4, arg5, arg6, arg7); - } - catch (Exception exception) - { - return Utility.Text.Format("{0},{1},{2},{3},{4},{5},{6},{7},{8},{9}", key, value, arg1, arg2, arg3, arg4, arg5, arg6, arg7, exception); - } - } - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数 1 的类型。 - /// 字典参数 2 的类型。 - /// 字典参数 3 的类型。 - /// 字典参数 4 的类型。 - /// 字典参数 5 的类型。 - /// 字典参数 6 的类型。 - /// 字典参数 7 的类型。 - /// 字典参数 8 的类型。 - /// 字典主键。 - /// 字典参数 1。 - /// 字典参数 2。 - /// 字典参数 3。 - /// 字典参数 4。 - /// 字典参数 5。 - /// 字典参数 6。 - /// 字典参数 7。 - /// 字典参数 8。 - /// 要获取的字典内容字符串。 - public string GetString(string key, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8) - { - var value = GetRawString(key); - if (value == null) - { - return Utility.Text.Format("{0}", key); - } - - try - { - return Utility.Text.Format(value, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8); - } - catch (Exception exception) - { - return Utility.Text.Format("{0},{1},{2},{3},{4},{5},{6},{7},{8},{9},{10}", key, value, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, exception); - } - } - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数 1 的类型。 - /// 字典参数 2 的类型。 - /// 字典参数 3 的类型。 - /// 字典参数 4 的类型。 - /// 字典参数 5 的类型。 - /// 字典参数 6 的类型。 - /// 字典参数 7 的类型。 - /// 字典参数 8 的类型。 - /// 字典参数 9 的类型。 - /// 字典主键。 - /// 字典参数 1。 - /// 字典参数 2。 - /// 字典参数 3。 - /// 字典参数 4。 - /// 字典参数 5。 - /// 字典参数 6。 - /// 字典参数 7。 - /// 字典参数 8。 - /// 字典参数 9。 - /// 要获取的字典内容字符串。 - public string GetString(string key, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9) - { - var value = GetRawString(key); - if (value == null) - { - return Utility.Text.Format("{0}", key); - } - - try - { - return Utility.Text.Format(value, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9); - } - catch (Exception exception) - { - return Utility.Text.Format("{0},{1},{2},{3},{4},{5},{6},{7},{8},{9},{10},{11}", key, value, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, exception); - } - } - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数 1 的类型。 - /// 字典参数 2 的类型。 - /// 字典参数 3 的类型。 - /// 字典参数 4 的类型。 - /// 字典参数 5 的类型。 - /// 字典参数 6 的类型。 - /// 字典参数 7 的类型。 - /// 字典参数 8 的类型。 - /// 字典参数 9 的类型。 - /// 字典参数 10 的类型。 - /// 字典主键。 - /// 字典参数 1。 - /// 字典参数 2。 - /// 字典参数 3。 - /// 字典参数 4。 - /// 字典参数 5。 - /// 字典参数 6。 - /// 字典参数 7。 - /// 字典参数 8。 - /// 字典参数 9。 - /// 字典参数 10。 - /// 要获取的字典内容字符串。 - public string GetString(string key, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10) - { - var value = GetRawString(key); - if (value == null) - { - return Utility.Text.Format("{0}", key); - } - - try - { - return Utility.Text.Format(value, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10); - } - catch (Exception exception) - { - return Utility.Text.Format("{0},{1},{2},{3},{4},{5},{6},{7},{8},{9},{10},{11},{12}", key, value, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, exception); - } - } - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数 1 的类型。 - /// 字典参数 2 的类型。 - /// 字典参数 3 的类型。 - /// 字典参数 4 的类型。 - /// 字典参数 5 的类型。 - /// 字典参数 6 的类型。 - /// 字典参数 7 的类型。 - /// 字典参数 8 的类型。 - /// 字典参数 9 的类型。 - /// 字典参数 10 的类型。 - /// 字典参数 11 的类型。 - /// 字典主键。 - /// 字典参数 1。 - /// 字典参数 2。 - /// 字典参数 3。 - /// 字典参数 4。 - /// 字典参数 5。 - /// 字典参数 6。 - /// 字典参数 7。 - /// 字典参数 8。 - /// 字典参数 9。 - /// 字典参数 10。 - /// 字典参数 11。 - /// 要获取的字典内容字符串。 - public string GetString(string key, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11) - { - var value = GetRawString(key); - if (value == null) - { - return Utility.Text.Format("{0}", key); - } - - try - { - return Utility.Text.Format(value, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11); - } - catch (Exception exception) - { - return Utility.Text.Format("{0},{1},{2},{3},{4},{5},{6},{7},{8},{9},{10},{11},{12},{13}", key, value, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11, exception); - } - } - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数 1 的类型。 - /// 字典参数 2 的类型。 - /// 字典参数 3 的类型。 - /// 字典参数 4 的类型。 - /// 字典参数 5 的类型。 - /// 字典参数 6 的类型。 - /// 字典参数 7 的类型。 - /// 字典参数 8 的类型。 - /// 字典参数 9 的类型。 - /// 字典参数 10 的类型。 - /// 字典参数 11 的类型。 - /// 字典参数 12 的类型。 - /// 字典主键。 - /// 字典参数 1。 - /// 字典参数 2。 - /// 字典参数 3。 - /// 字典参数 4。 - /// 字典参数 5。 - /// 字典参数 6。 - /// 字典参数 7。 - /// 字典参数 8。 - /// 字典参数 9。 - /// 字典参数 10。 - /// 字典参数 11。 - /// 字典参数 12。 - /// 要获取的字典内容字符串。 - public string GetString(string key, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11, T12 arg12) - { - var value = GetRawString(key); - if (value == null) - { - return Utility.Text.Format("{0}", key); - } - - try - { - return Utility.Text.Format(value, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11, arg12); - } - catch (Exception exception) - { - return Utility.Text.Format("{0},{1},{2},{3},{4},{5},{6},{7},{8},{9},{10},{11},{12},{13},{14}", key, value, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11, arg12, exception); - } - } - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数 1 的类型。 - /// 字典参数 2 的类型。 - /// 字典参数 3 的类型。 - /// 字典参数 4 的类型。 - /// 字典参数 5 的类型。 - /// 字典参数 6 的类型。 - /// 字典参数 7 的类型。 - /// 字典参数 8 的类型。 - /// 字典参数 9 的类型。 - /// 字典参数 10 的类型。 - /// 字典参数 11 的类型。 - /// 字典参数 12 的类型。 - /// 字典参数 13 的类型。 - /// 字典主键。 - /// 字典参数 1。 - /// 字典参数 2。 - /// 字典参数 3。 - /// 字典参数 4。 - /// 字典参数 5。 - /// 字典参数 6。 - /// 字典参数 7。 - /// 字典参数 8。 - /// 字典参数 9。 - /// 字典参数 10。 - /// 字典参数 11。 - /// 字典参数 12。 - /// 字典参数 13。 - /// 要获取的字典内容字符串。 - public string GetString(string key, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11, T12 arg12, T13 arg13) - { - var value = GetRawString(key); - if (value == null) - { - return Utility.Text.Format("{0}", key); - } - - try - { - return Utility.Text.Format(value, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11, arg12, arg13); - } - catch (Exception exception) - { - return Utility.Text.Format("{0},{1},{2},{3},{4},{5},{6},{7},{8},{9},{10},{11},{12},{13},{14},{15}", key, value, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11, arg12, arg13, exception); - } - } - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数 1 的类型。 - /// 字典参数 2 的类型。 - /// 字典参数 3 的类型。 - /// 字典参数 4 的类型。 - /// 字典参数 5 的类型。 - /// 字典参数 6 的类型。 - /// 字典参数 7 的类型。 - /// 字典参数 8 的类型。 - /// 字典参数 9 的类型。 - /// 字典参数 10 的类型。 - /// 字典参数 11 的类型。 - /// 字典参数 12 的类型。 - /// 字典参数 13 的类型。 - /// 字典参数 14 的类型。 - /// 字典主键。 - /// 字典参数 1。 - /// 字典参数 2。 - /// 字典参数 3。 - /// 字典参数 4。 - /// 字典参数 5。 - /// 字典参数 6。 - /// 字典参数 7。 - /// 字典参数 8。 - /// 字典参数 9。 - /// 字典参数 10。 - /// 字典参数 11。 - /// 字典参数 12。 - /// 字典参数 13。 - /// 字典参数 14。 - /// 要获取的字典内容字符串。 - public string GetString(string key, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11, T12 arg12, T13 arg13, T14 arg14) - { - var value = GetRawString(key); - if (value == null) - { - return Utility.Text.Format("{0}", key); - } - - try - { - return Utility.Text.Format(value, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11, arg12, arg13, arg14); - } - catch (Exception exception) - { - var args = Utility.Text.Format("{0},{1},{2},{3},{4},{5},{6},{7},{8},{9},{10},{11},{12},{13}", arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11, arg12, arg13, arg14); - return Utility.Text.Format("{0},{1},{2},{3}", key, value, args, exception); - } - } - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数 1 的类型。 - /// 字典参数 2 的类型。 - /// 字典参数 3 的类型。 - /// 字典参数 4 的类型。 - /// 字典参数 5 的类型。 - /// 字典参数 6 的类型。 - /// 字典参数 7 的类型。 - /// 字典参数 8 的类型。 - /// 字典参数 9 的类型。 - /// 字典参数 10 的类型。 - /// 字典参数 11 的类型。 - /// 字典参数 12 的类型。 - /// 字典参数 13 的类型。 - /// 字典参数 14 的类型。 - /// 字典参数 15 的类型。 - /// 字典主键。 - /// 字典参数 1。 - /// 字典参数 2。 - /// 字典参数 3。 - /// 字典参数 4。 - /// 字典参数 5。 - /// 字典参数 6。 - /// 字典参数 7。 - /// 字典参数 8。 - /// 字典参数 9。 - /// 字典参数 10。 - /// 字典参数 11。 - /// 字典参数 12。 - /// 字典参数 13。 - /// 字典参数 14。 - /// 字典参数 15。 - /// 要获取的字典内容字符串。 - public string GetString(string key, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11, T12 arg12, T13 arg13, T14 arg14, T15 arg15) - { - var value = GetRawString(key); - if (value == null) - { - return Utility.Text.Format("{0}", key); - } - - try - { - return Utility.Text.Format(value, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11, arg12, arg13, arg14, arg15); - } - catch (Exception exception) - { - var args = Utility.Text.Format("{0},{1},{2},{3},{4},{5},{6},{7},{8},{9},{10},{11},{12},{13},{14}", arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11, arg12, arg13, arg14, arg15); - return Utility.Text.Format("{0},{1},{2},{3}", key, value, args, exception); - } - } - - /// - /// 根据字典主键获取字典内容字符串。 - /// - /// 字典参数 1 的类型。 - /// 字典参数 2 的类型。 - /// 字典参数 3 的类型。 - /// 字典参数 4 的类型。 - /// 字典参数 5 的类型。 - /// 字典参数 6 的类型。 - /// 字典参数 7 的类型。 - /// 字典参数 8 的类型。 - /// 字典参数 9 的类型。 - /// 字典参数 10 的类型。 - /// 字典参数 11 的类型。 - /// 字典参数 12 的类型。 - /// 字典参数 13 的类型。 - /// 字典参数 14 的类型。 - /// 字典参数 15 的类型。 - /// 字典参数 16 的类型。 - /// 字典主键。 - /// 字典参数 1。 - /// 字典参数 2。 - /// 字典参数 3。 - /// 字典参数 4。 - /// 字典参数 5。 - /// 字典参数 6。 - /// 字典参数 7。 - /// 字典参数 8。 - /// 字典参数 9。 - /// 字典参数 10。 - /// 字典参数 11。 - /// 字典参数 12。 - /// 字典参数 13。 - /// 字典参数 14。 - /// 字典参数 15。 - /// 字典参数 16。 - /// 要获取的字典内容字符串。 - public string GetString(string key, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11, T12 arg12, T13 arg13, T14 arg14, - T15 arg15, T16 arg16) - { - var value = GetRawString(key); - if (value == null) - { - return Utility.Text.Format("{0}", key); - } - - try - { - return Utility.Text.Format(value, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11, arg12, arg13, arg14, arg15, arg16); - } - catch (Exception exception) - { - var args = Utility.Text.Format("{0},{1},{2},{3},{4},{5},{6},{7},{8},{9},{10},{11},{12},{13},{14},{15}", arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11, arg12, arg13, arg14, arg15, arg16); - return Utility.Text.Format("{0},{1},{2},{3}", key, value, args, exception); - } - } - - public string GetRawString(string key) - { - if (Dic.TryGetValue(key, out string value)) - { - return value; - } - - return key; - } - - public void AddLocalizationConfig(Dictionary config) - { - foreach (var item in config) - { - Dic.TryAdd(item.Key, item.Value); - } - } - - void IModule.Dispose() - { - Dic.Clear(); - } - - void IModuleAwake.Awake() - { -#if UNITY_EDITOR - _language = (Language)UnityEditor.EditorPrefs.GetInt(LocalizationComponent.PrefsKey, 1); -#else - _language = AppBuilderSetting.Instance.Language; -#endif - } - } -} diff --git a/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Manager/LocalizationModule.cs.meta b/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Manager/LocalizationModule.cs.meta deleted file mode 100644 index cc0d6d4..0000000 --- a/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Manager/LocalizationModule.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: f881828389644d9ab16b6d084931ab49 -timeCreated: 1712727478 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.localization/Runtime/link.xml b/Client/Packages/com.alicizax.unity.localization/Runtime/link.xml deleted file mode 100644 index 606684e..0000000 --- a/Client/Packages/com.alicizax.unity.localization/Runtime/link.xml +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.localization/Runtime/link.xml.meta b/Client/Packages/com.alicizax.unity.localization/Runtime/link.xml.meta deleted file mode 100644 index 86fc26e..0000000 --- a/Client/Packages/com.alicizax.unity.localization/Runtime/link.xml.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: d490e394f5e78a04b8dc8cf5ee9a0e06 -timeCreated: 1737098208 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.localization/package.json b/Client/Packages/com.alicizax.unity.localization/package.json deleted file mode 100644 index cc60817..0000000 --- a/Client/Packages/com.alicizax.unity.localization/package.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "name": "com.alicizax.unity.localization", - "displayName": "Aliciza X Localization", - "category": "Aliciza X", - "description": "Aliciza X Localization Component", - "version": "1.0.1", - "unity": "2025.1", - "keywords": [ - "Aliciza X" - ], - "repository": { - "name": "com.alicizax.unity", - "url": "http://101.34.252.46:3000/AlicizaX/", - "type": "git" - }, - "author": { - "name": "Yuliuren", - "email": "yuliuren00@gmail.com" - }, - "dependencies": { - "com.unity.serialization": "3.1.2" - } -} \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.localization/package.json.meta b/Client/Packages/com.alicizax.unity.localization/package.json.meta deleted file mode 100644 index cfbae99..0000000 --- a/Client/Packages/com.alicizax.unity.localization/package.json.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: d92708ac62618eb4d87ab4453c349a29 -PackageManifestImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.network b/Client/Packages/com.alicizax.unity.network index 9fce987..eb94e70 160000 --- a/Client/Packages/com.alicizax.unity.network +++ b/Client/Packages/com.alicizax.unity.network @@ -1 +1 @@ -Subproject commit 9fce9870849cd0d6ec65775b7783aab2c442c69d +Subproject commit eb94e706dfa6732041c6dda7edb3897dc946a0ab diff --git a/Client/Packages/com.alicizax.unity.resource/Editor.meta b/Client/Packages/com.alicizax.unity.resource/Editor.meta deleted file mode 100644 index 0c91618..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Editor.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 79c32905ef6c8bb459e72f1399a84961 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.resource/Editor/AlicizaX.Resource.Editor.asmdef b/Client/Packages/com.alicizax.unity.resource/Editor/AlicizaX.Resource.Editor.asmdef deleted file mode 100644 index 4a9c488..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Editor/AlicizaX.Resource.Editor.asmdef +++ /dev/null @@ -1,23 +0,0 @@ -{ - "name": "AlicizaX.Resource.Editor", - "rootNamespace": "", - "references": [ - "GUID:acfef7cabed3b0a42b25edb1cd4fa259", - "GUID:75b6f2078d190f14dbda4a5b747d709c", - "GUID:be2f20a77f3232f44b9711ef43234aac", - "GUID:4d1926c9df5b052469a1c63448b7609a", - "GUID:e34a5702dd353724aa315fb8011f08c3", - "GUID:99a2a63c2a1143c4ba448165a98a5108" - ], - "includePlatforms": [ - "Editor" - ], - "excludePlatforms": [], - "allowUnsafeCode": true, - "overrideReferences": false, - "precompiledReferences": [], - "autoReferenced": true, - "defineConstraints": [], - "versionDefines": [], - "noEngineReferences": false -} \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Editor/AlicizaX.Resource.Editor.asmdef.meta b/Client/Packages/com.alicizax.unity.resource/Editor/AlicizaX.Resource.Editor.asmdef.meta deleted file mode 100644 index 897cc62..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Editor/AlicizaX.Resource.Editor.asmdef.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: c5cf5a1a2306b83488067f0c7acf3443 -AssemblyDefinitionImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.resource/Editor/Encryption.meta b/Client/Packages/com.alicizax.unity.resource/Editor/Encryption.meta deleted file mode 100644 index 4a78927..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Editor/Encryption.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 1ad0cb4b2fbda55409ca1d4a66e6d4f0 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.resource/Editor/Encryption/DefaultEncryption.cs b/Client/Packages/com.alicizax.unity.resource/Editor/Encryption/DefaultEncryption.cs deleted file mode 100644 index 246d0dc..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Editor/Encryption/DefaultEncryption.cs +++ /dev/null @@ -1,50 +0,0 @@ -using AlicizaX.Resource.Runtime; - -namespace AlicizaX.Resource.Editor -{ - using System; - using System.IO; - using YooAsset; - - /// - /// 文件偏移加密方式 - /// - public class FileOffsetEncryption : IEncryptionServices - { - public EncryptResult Encrypt(EncryptFileInfo fileInfo) - { - int offset = 32; - byte[] fileData = File.ReadAllBytes(fileInfo.FileLoadPath); - var encryptedData = new byte[fileData.Length + offset]; - Buffer.BlockCopy(fileData, 0, encryptedData, offset, fileData.Length); - - EncryptResult result = new EncryptResult(); - result.Encrypted = true; - result.EncryptedData = encryptedData; - return result; - } - } - - - /// - /// 文件流加密方式 - /// - public class FileStreamEncryption : IEncryptionServices - { - public const byte KEY = 64; - - public EncryptResult Encrypt(EncryptFileInfo fileInfo) - { - var fileData = File.ReadAllBytes(fileInfo.FileLoadPath); - for (int i = 0; i < fileData.Length; i++) - { - fileData[i] ^= BundleStream.KEY; - } - - EncryptResult result = new EncryptResult(); - result.Encrypted = true; - result.EncryptedData = fileData; - return result; - } - } -} diff --git a/Client/Packages/com.alicizax.unity.resource/Editor/Encryption/DefaultEncryption.cs.meta b/Client/Packages/com.alicizax.unity.resource/Editor/Encryption/DefaultEncryption.cs.meta deleted file mode 100644 index 7233121..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Editor/Encryption/DefaultEncryption.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 39b42829cd724f10999caec280e260f7 -timeCreated: 1737867622 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Editor/Inspector.meta b/Client/Packages/com.alicizax.unity.resource/Editor/Inspector.meta deleted file mode 100644 index b6f3339..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Editor/Inspector.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: b27fb2c235a240e8a3d034a23c0c5323 -timeCreated: 1737441909 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Editor/Inspector/ResourceComponentInspector.cs b/Client/Packages/com.alicizax.unity.resource/Editor/Inspector/ResourceComponentInspector.cs deleted file mode 100644 index fb50c9c..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Editor/Inspector/ResourceComponentInspector.cs +++ /dev/null @@ -1,264 +0,0 @@ -using System; -using System.Collections.Generic; -using AlicizaX.Editor; -using AlicizaX.Resource.Runtime; -using UnityEditor; -using YooAsset; -using YooAsset.Editor; - -namespace AlicizaX.Resource.Editor -{ - [CustomEditor(typeof(ResourceComponent))] - internal sealed class ResourceComponentInspector : GameFrameworkInspector - { - private SerializedProperty _milliseconds = null; - private SerializedProperty _minUnloadUnusedAssetsInterval = null; - private SerializedProperty _maxUnloadUnusedAssetsInterval = null; - private SerializedProperty _useSystemUnloadUnusedAssets = null; - private SerializedProperty _assetAutoReleaseInterval = null; - private SerializedProperty _assetCapacity = null; - private SerializedProperty _assetExpireTime = null; - private SerializedProperty _assetPriority = null; - private SerializedProperty _downloadingMaxNum = null; - private SerializedProperty _failedTryAgain = null; - private SerializedProperty _packageName = null; - private SerializedProperty _decryptionServices = null; - - private int _packageNameIndex = 0; - private string[] _packageNames; - - private List m_DecryptionServicesTypeName = new(); - private int m_DecryptionSelectIndex; - - public override void OnInspectorGUI() - { - base.OnInspectorGUI(); - - serializedObject.Update(); - - ResourceComponent t = (ResourceComponent)target; - - m_DecryptionSelectIndex = EditorGUILayout.Popup("解密服务", m_DecryptionSelectIndex, m_DecryptionServicesTypeName.ToArray()); - string selectService = m_DecryptionServicesTypeName[m_DecryptionSelectIndex]; - if (_decryptionServices.stringValue != selectService) - { - string serviceName = selectService.Equals(NoneOptionName) ? string.Empty : selectService; - _decryptionServices.stringValue = serviceName; - } - - - _packageNames = GetBuildPackageNames().ToArray(); - _packageNameIndex = Array.IndexOf(_packageNames, _packageName.stringValue); - if (_packageNameIndex < 0) - { - _packageNameIndex = 0; - } - - _packageNameIndex = EditorGUILayout.Popup("Package Name", _packageNameIndex, _packageNames); - if (_packageName.stringValue != _packageNames[_packageNameIndex]) - { - _packageName.stringValue = _packageNames[_packageNameIndex]; - } - - int milliseconds = EditorGUILayout.DelayedIntField("Milliseconds", _milliseconds.intValue); - if (milliseconds != _milliseconds.intValue) - { - if (EditorApplication.isPlaying) - { - t.milliseconds = milliseconds; - } - else - { - _milliseconds.longValue = milliseconds; - } - } - - EditorGUILayout.PropertyField(_useSystemUnloadUnusedAssets); - - float minUnloadUnusedAssetsInterval = - EditorGUILayout.Slider("Min Unload Unused Assets Interval", _minUnloadUnusedAssetsInterval.floatValue, 0f, 3600f); - if (Math.Abs(minUnloadUnusedAssetsInterval - _minUnloadUnusedAssetsInterval.floatValue) > 0.01f) - { - if (EditorApplication.isPlaying) - { - t.MinUnloadUnusedAssetsInterval = minUnloadUnusedAssetsInterval; - } - else - { - _minUnloadUnusedAssetsInterval.floatValue = minUnloadUnusedAssetsInterval; - } - } - - float maxUnloadUnusedAssetsInterval = - EditorGUILayout.Slider("Max Unload Unused Assets Interval", _maxUnloadUnusedAssetsInterval.floatValue, 0f, 3600f); - if (Math.Abs(maxUnloadUnusedAssetsInterval - _maxUnloadUnusedAssetsInterval.floatValue) > 0.01f) - { - if (EditorApplication.isPlaying) - { - t.MaxUnloadUnusedAssetsInterval = maxUnloadUnusedAssetsInterval; - } - else - { - _maxUnloadUnusedAssetsInterval.floatValue = maxUnloadUnusedAssetsInterval; - } - } - - float downloadingMaxNum = EditorGUILayout.Slider("Max Downloading Num", _downloadingMaxNum.intValue, 1f, 48f); - if (Math.Abs(downloadingMaxNum - _downloadingMaxNum.intValue) > 0.001f) - { - if (EditorApplication.isPlaying) - { - t.DownloadingMaxNum = (int)downloadingMaxNum; - } - else - { - _downloadingMaxNum.intValue = (int)downloadingMaxNum; - } - } - - float failedTryAgain = EditorGUILayout.Slider("Max FailedTryAgain Count", _failedTryAgain.intValue, 1f, 48f); - if (Math.Abs(failedTryAgain - _failedTryAgain.intValue) > 0.001f) - { - if (EditorApplication.isPlaying) - { - t.FailedTryAgain = (int)failedTryAgain; - } - else - { - _failedTryAgain.intValue = (int)failedTryAgain; - } - } - - EditorGUI.BeginDisabledGroup(EditorApplication.isPlaying); - { - float assetAutoReleaseInterval = EditorGUILayout.DelayedFloatField("Asset Auto Release Interval", _assetAutoReleaseInterval.floatValue); - if (Math.Abs(assetAutoReleaseInterval - _assetAutoReleaseInterval.floatValue) > 0.01f) - { - if (EditorApplication.isPlaying) - { - t.AssetAutoReleaseInterval = assetAutoReleaseInterval; - } - else - { - _assetAutoReleaseInterval.floatValue = assetAutoReleaseInterval; - } - } - - int assetCapacity = EditorGUILayout.DelayedIntField("Asset Capacity", _assetCapacity.intValue); - if (assetCapacity != _assetCapacity.intValue) - { - if (EditorApplication.isPlaying) - { - t.AssetCapacity = assetCapacity; - } - else - { - _assetCapacity.intValue = assetCapacity; - } - } - - float assetExpireTime = EditorGUILayout.DelayedFloatField("Asset Expire Time", _assetExpireTime.floatValue); - if (Math.Abs(assetExpireTime - _assetExpireTime.floatValue) > 0.01f) - { - if (EditorApplication.isPlaying) - { - t.AssetExpireTime = assetExpireTime; - } - else - { - _assetExpireTime.floatValue = assetExpireTime; - } - } - - int assetPriority = EditorGUILayout.DelayedIntField("Asset Priority", _assetPriority.intValue); - if (assetPriority != _assetPriority.intValue) - { - if (EditorApplication.isPlaying) - { - t.AssetPriority = assetPriority; - } - else - { - _assetPriority.intValue = assetPriority; - } - } - } - EditorGUI.EndDisabledGroup(); - - if (EditorApplication.isPlaying && IsPrefabInHierarchy(t.gameObject)) - { - EditorGUILayout.LabelField("Unload Unused Assets", - AlicizaX.Utility.Text.Format("{0:F2} / {1:F2}", t.LastUnloadUnusedAssetsOperationElapseSeconds, t.MaxUnloadUnusedAssetsInterval)); - EditorGUILayout.LabelField("Applicable Game Version", t.ApplicableGameVersion ?? ""); - } - - serializedObject.ApplyModifiedProperties(); - - Repaint(); - } - - protected override void OnCompileComplete() - { - base.OnCompileComplete(); - - RefreshTypeNames(); - } - - private void OnEnable() - { - - _milliseconds = serializedObject.FindProperty("milliseconds"); - _minUnloadUnusedAssetsInterval = serializedObject.FindProperty("minUnloadUnusedAssetsInterval"); - _maxUnloadUnusedAssetsInterval = serializedObject.FindProperty("maxUnloadUnusedAssetsInterval"); - _useSystemUnloadUnusedAssets = serializedObject.FindProperty("useSystemUnloadUnusedAssets"); - _assetAutoReleaseInterval = serializedObject.FindProperty("assetAutoReleaseInterval"); - _assetCapacity = serializedObject.FindProperty("assetCapacity"); - _assetExpireTime = serializedObject.FindProperty("assetExpireTime"); - _assetPriority = serializedObject.FindProperty("assetPriority"); - _downloadingMaxNum = serializedObject.FindProperty("downloadingMaxNum"); - _failedTryAgain = serializedObject.FindProperty("failedTryAgain"); - _packageName = serializedObject.FindProperty("packageName"); - _decryptionServices = serializedObject.FindProperty("_decryptionServices"); - RefreshDecryptionServices(); - RefreshTypeNames(); - } - - - private void RefreshDecryptionServices() - { - m_DecryptionServicesTypeName = new List - { - NoneOptionName - }; - - m_DecryptionServicesTypeName.AddRange(AlicizaX.Utility.Assembly.GetRuntimeTypeNames(typeof(IDecryptionServices))); - - m_DecryptionSelectIndex = m_DecryptionServicesTypeName.IndexOf(_decryptionServices.stringValue); - if (m_DecryptionSelectIndex < 0) - { - m_DecryptionSelectIndex = 0; - } - } - - - private void RefreshTypeNames() - { - serializedObject.ApplyModifiedProperties(); - } - - /// - /// 获取构建包名称列表,用于下拉可选择 - /// - /// - private List GetBuildPackageNames() - { - List result = new List(); - foreach (var package in AssetBundleCollectorSettingData.Setting.Packages) - { - result.Add(package.PackageName); - } - - return result; - } - } -} diff --git a/Client/Packages/com.alicizax.unity.resource/Editor/Inspector/ResourceComponentInspector.cs.meta b/Client/Packages/com.alicizax.unity.resource/Editor/Inspector/ResourceComponentInspector.cs.meta deleted file mode 100644 index 1db3b5a..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Editor/Inspector/ResourceComponentInspector.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: dfe8d0fdb8d74e33a9b051644dd94676 -timeCreated: 1737458008 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Editor/Inspector/ResourceExtComponentInspector.cs b/Client/Packages/com.alicizax.unity.resource/Editor/Inspector/ResourceExtComponentInspector.cs deleted file mode 100644 index d1cb7b1..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Editor/Inspector/ResourceExtComponentInspector.cs +++ /dev/null @@ -1,59 +0,0 @@ -// using System; -// using AlicizaX.Editor; -// using AlicizaX.Resource.Runtime; -// using UnityEditor; -// using UnityEngine; -// -// namespace AlicizaX.Resource.Editor -// { -// [CustomEditor(typeof(ResourceExtComponent))] -// internal sealed class ResourceExtComponentInspector : GameFrameworkInspector -// { -// private SerializedProperty m_CheckCanReleaseInterval = null; -// private SerializedProperty m_AutoReleaseInterval = null; -// -// public override void OnInspectorGUI() -// { -// base.OnInspectorGUI(); -// serializedObject.Update(); -// -// ResourceExtComponent t = (ResourceExtComponent)target; -// -// EditorGUI.BeginDisabledGroup(EditorApplication.isPlayingOrWillChangePlaymode); -// { -// EditorGUILayout.BeginVertical("box"); -// { -// float checkCanReleaseInterval = EditorGUILayout.Slider("检查释放间隔", m_CheckCanReleaseInterval.floatValue, 30, 460); -// if (m_CheckCanReleaseInterval.floatValue != checkCanReleaseInterval) -// { -// m_CheckCanReleaseInterval.floatValue = checkCanReleaseInterval; -// } -// -// -// float autoReleaseInterval = EditorGUILayout.Slider("对象池释放间隔", m_AutoReleaseInterval.floatValue, 60, 1800); -// if (m_AutoReleaseInterval.floatValue != autoReleaseInterval) -// { -// m_AutoReleaseInterval.floatValue = autoReleaseInterval; -// } -// } -// -// if (GUILayout.Button("ReleaseUnused")) -// { -// t.ReleaseUnused(); -// } -// -// -// EditorGUILayout.EndVertical(); -// } -// EditorGUI.EndDisabledGroup(); -// -// serializedObject.ApplyModifiedProperties(); -// } -// -// private void OnEnable() -// { -// m_CheckCanReleaseInterval = serializedObject.FindProperty("m_CheckCanReleaseInterval"); -// m_AutoReleaseInterval = serializedObject.FindProperty("m_AutoReleaseInterval"); -// } -// } -// } \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Editor/Inspector/ResourceExtComponentInspector.cs.meta b/Client/Packages/com.alicizax.unity.resource/Editor/Inspector/ResourceExtComponentInspector.cs.meta deleted file mode 100644 index a5c815d..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Editor/Inspector/ResourceExtComponentInspector.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: f9278b79811545c38cc9edf00d666bee -timeCreated: 1737441939 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/LICENSE.md b/Client/Packages/com.alicizax.unity.resource/LICENSE.md deleted file mode 100644 index 4e6513a..0000000 --- a/Client/Packages/com.alicizax.unity.resource/LICENSE.md +++ /dev/null @@ -1,201 +0,0 @@ - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - -TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - -1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - -2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - -3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - -4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - -5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - -6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - -7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - -8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - -9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - -END OF TERMS AND CONDITIONS - -APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - -Copyright [2023] [ALianBlank of copyright owner][alianblank@outlook.com][https://alianblank.com/] - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. diff --git a/Client/Packages/com.alicizax.unity.resource/LICENSE.md.meta b/Client/Packages/com.alicizax.unity.resource/LICENSE.md.meta deleted file mode 100644 index f4c9bd0..0000000 --- a/Client/Packages/com.alicizax.unity.resource/LICENSE.md.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: f4ab6ec899a7f504bb30915abdc2f3d6 -TextScriptImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime.meta b/Client/Packages/com.alicizax.unity.resource/Runtime.meta deleted file mode 100644 index ff4e175..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: ca19c2c00fe728845922a19ab37579b3 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/AlicizaX.Resource.Runtime.asmdef b/Client/Packages/com.alicizax.unity.resource/Runtime/AlicizaX.Resource.Runtime.asmdef deleted file mode 100644 index 883f8a7..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/AlicizaX.Resource.Runtime.asmdef +++ /dev/null @@ -1,19 +0,0 @@ -{ - "name": "AlicizaX.Resource.Runtime", - "rootNamespace": "", - "references": [ - "GUID:75b6f2078d190f14dbda4a5b747d709c", - "GUID:f51ebe6a0ceec4240a699833d6309b23", - "GUID:e34a5702dd353724aa315fb8011f08c3", - "GUID:b4c00b967a932af48b2e067403eecbe2" - ], - "includePlatforms": [], - "excludePlatforms": [], - "allowUnsafeCode": true, - "overrideReferences": false, - "precompiledReferences": [], - "autoReferenced": true, - "defineConstraints": [], - "versionDefines": [], - "noEngineReferences": false -} \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/AlicizaX.Resource.Runtime.asmdef.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/AlicizaX.Resource.Runtime.asmdef.meta deleted file mode 100644 index 72abdf7..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/AlicizaX.Resource.Runtime.asmdef.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: be2f20a77f3232f44b9711ef43234aac -AssemblyDefinitionImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/EventArgs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/EventArgs.meta deleted file mode 100644 index 3f98f96..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/EventArgs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 71638f92e5a94e70904d8cb30bd6073a -timeCreated: 1724175353 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/EventArgs/AssetDownloadProgressUpdateEventArgs.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/EventArgs/AssetDownloadProgressUpdateEventArgs.cs deleted file mode 100644 index dde68b4..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/EventArgs/AssetDownloadProgressUpdateEventArgs.cs +++ /dev/null @@ -1,55 +0,0 @@ -namespace AlicizaX.Resource.Runtime -{ - [Prewarm(2)] - public readonly struct AssetDownloadProgressUpdateEventArgs : IEventArgs - { - /// - /// 包名称 - /// - public readonly string PackageName; - - /// - /// 总下载数量 - /// - public readonly int TotalDownloadCount; - - /// - /// 当前下载数量 - /// - public readonly int CurrentDownloadCount; - - /// - /// 总下载大小 - /// - public readonly long TotalDownloadSizeBytes; - - /// - /// 当前下载大小 - /// - public readonly long CurrentDownloadSizeBytes; - - - public AssetDownloadProgressUpdateEventArgs(string packageName, int totalDownloadCount, int currentDownloadCount, long totalDownloadSizeBytes, long currentDownloadSizeBytes) - { - PackageName = packageName; - TotalDownloadCount = totalDownloadCount; - CurrentDownloadCount = currentDownloadCount; - TotalDownloadSizeBytes = totalDownloadSizeBytes; - CurrentDownloadSizeBytes = currentDownloadSizeBytes; - } - - /// - /// 创建下载进度更新 - /// - /// 包名称 - /// 总下载数量 - /// 当前下载数量 - /// 总下载大小 - /// 当前下载大小 - /// - public static AssetDownloadProgressUpdateEventArgs Create(string packageName, int totalDownloadCount, int currentDownloadCount, long totalDownloadSizeBytes, long currentDownloadSizeBytes) - { - return new AssetDownloadProgressUpdateEventArgs(packageName, totalDownloadCount, currentDownloadCount, totalDownloadSizeBytes, currentDownloadSizeBytes); - } - } -} diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/EventArgs/AssetDownloadProgressUpdateEventArgs.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/EventArgs/AssetDownloadProgressUpdateEventArgs.cs.meta deleted file mode 100644 index a155d1b..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/EventArgs/AssetDownloadProgressUpdateEventArgs.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 11de0907958a4c8fb9212ccf4ac00608 -timeCreated: 1722395043 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource.meta deleted file mode 100644 index 3078c2e..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: d36eae39b96a4dabb4af2c34dc87995b -timeCreated: 1737098863 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback.meta deleted file mode 100644 index 6723f38..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 72b9d244a6457e144a16439aa475321f -timeCreated: 1679316822 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadAssetCallbacks.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadAssetCallbacks.cs deleted file mode 100644 index c5c1907..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadAssetCallbacks.cs +++ /dev/null @@ -1,94 +0,0 @@ -using AlicizaX; - -namespace AlicizaX.Resource.Runtime -{ - /// - /// 加载资源回调函数集。 - /// - public sealed class LoadAssetCallbacks - { - private readonly LoadAssetSuccessCallback m_LoadAssetSuccessCallback; - private readonly LoadAssetFailureCallback m_LoadAssetFailureCallback; - private readonly LoadAssetUpdateCallback m_LoadAssetUpdateCallback; - - /// - /// 初始化加载资源回调函数集的新实例。 - /// - /// 加载资源成功回调函数。 - public LoadAssetCallbacks(LoadAssetSuccessCallback loadAssetSuccessCallback) - : this(loadAssetSuccessCallback, null, null) - { - } - - /// - /// 初始化加载资源回调函数集的新实例。 - /// - /// 加载资源成功回调函数。 - /// 加载资源失败回调函数。 - public LoadAssetCallbacks(LoadAssetSuccessCallback loadAssetSuccessCallback, LoadAssetFailureCallback loadAssetFailureCallback) - : this(loadAssetSuccessCallback, loadAssetFailureCallback, null) - { - } - - /// - /// 初始化加载资源回调函数集的新实例。 - /// - /// 加载资源成功回调函数。 - /// 加载资源更新回调函数。 - public LoadAssetCallbacks(LoadAssetSuccessCallback loadAssetSuccessCallback, LoadAssetUpdateCallback loadAssetUpdateCallback) - : this(loadAssetSuccessCallback, null, loadAssetUpdateCallback) - { - } - - /// - /// 初始化加载资源回调函数集的新实例。 - /// - /// 加载资源成功回调函数。 - /// 加载资源失败回调函数。 - /// 加载资源更新回调函数。 - public LoadAssetCallbacks(LoadAssetSuccessCallback loadAssetSuccessCallback, LoadAssetFailureCallback loadAssetFailureCallback, LoadAssetUpdateCallback loadAssetUpdateCallback) - { - if (loadAssetSuccessCallback == null) - { - throw new GameFrameworkException("Load asset success callback is invalid."); - } - - m_LoadAssetSuccessCallback = loadAssetSuccessCallback; - m_LoadAssetFailureCallback = loadAssetFailureCallback; - m_LoadAssetUpdateCallback = loadAssetUpdateCallback; - } - - /// - /// 获取加载资源成功回调函数。 - /// - public LoadAssetSuccessCallback LoadAssetSuccessCallback - { - get - { - return m_LoadAssetSuccessCallback; - } - } - - /// - /// 获取加载资源失败回调函数。 - /// - public LoadAssetFailureCallback LoadAssetFailureCallback - { - get - { - return m_LoadAssetFailureCallback; - } - } - - /// - /// 获取加载资源更新回调函数。 - /// - public LoadAssetUpdateCallback LoadAssetUpdateCallback - { - get - { - return m_LoadAssetUpdateCallback; - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadAssetCallbacks.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadAssetCallbacks.cs.meta deleted file mode 100644 index a2ea794..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadAssetCallbacks.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: befc5188f1e39ed47b5bfe03f7bb2bde -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadAssetFailureCallback.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadAssetFailureCallback.cs deleted file mode 100644 index 0ef8a6c..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadAssetFailureCallback.cs +++ /dev/null @@ -1,11 +0,0 @@ -namespace AlicizaX.Resource.Runtime -{ - /// - /// 加载资源失败回调函数。 - /// - /// 要加载的资源名称。 - /// 加载资源状态。 - /// 错误信息。 - /// 用户自定义数据。 - public delegate void LoadAssetFailureCallback(string assetName, LoadResourceStatus status, string errorMessage, object userData); -} diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadAssetFailureCallback.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadAssetFailureCallback.cs.meta deleted file mode 100644 index 1495ade..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadAssetFailureCallback.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 6785caaf731920345b1a4b0fac0b7bcf -timeCreated: 1679305076 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadAssetSuccessCallback.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadAssetSuccessCallback.cs deleted file mode 100644 index e895742..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadAssetSuccessCallback.cs +++ /dev/null @@ -1,11 +0,0 @@ -namespace AlicizaX.Resource.Runtime -{ - /// - /// 加载资源成功回调函数。 - /// - /// 要加载的资源名称。 - /// 已加载的资源。 - /// 加载持续时间。 - /// 用户自定义数据。 - public delegate void LoadAssetSuccessCallback(string assetName, object asset, float duration, object userData); -} diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadAssetSuccessCallback.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadAssetSuccessCallback.cs.meta deleted file mode 100644 index 3c7ee9f..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadAssetSuccessCallback.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: d1f31fa2ca0d660499363a6b2e018e72 -timeCreated: 1679305063 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadAssetUpdateCallback.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadAssetUpdateCallback.cs deleted file mode 100644 index 27f509b..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadAssetUpdateCallback.cs +++ /dev/null @@ -1,10 +0,0 @@ -namespace AlicizaX.Resource.Runtime -{ - /// - /// 加载资源更新回调函数。 - /// - /// 要加载的资源名称。 - /// 加载资源进度。 - /// 用户自定义数据。 - public delegate void LoadAssetUpdateCallback(string assetName, float progress, object userData); -} diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadAssetUpdateCallback.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadAssetUpdateCallback.cs.meta deleted file mode 100644 index 0197362..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadAssetUpdateCallback.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 4a65bba89c2ae1d49a0cc964823f997a -timeCreated: 1679305085 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadResourceStatus.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadResourceStatus.cs deleted file mode 100644 index abe354d..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadResourceStatus.cs +++ /dev/null @@ -1,38 +0,0 @@ -namespace AlicizaX.Resource.Runtime -{ - /// - /// 加载资源状态。 - /// - public enum LoadResourceStatus : byte - { - /// - /// 加载资源完成。 - /// - Success = 0, - - /// - /// 资源不存在。 - /// - NotExist, - - /// - /// 资源尚未准备完毕。 - /// - NotReady, - - /// - /// 依赖资源错误。 - /// - DependencyError, - - /// - /// 资源类型错误。 - /// - TypeError, - - /// - /// 加载资源错误。 - /// - AssetError - } -} diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadResourceStatus.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadResourceStatus.cs.meta deleted file mode 100644 index bc7dd5d..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadResourceStatus.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: f7b7ca23cc63576438527a69ccd6f803 -timeCreated: 1679305107 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadSceneCallbacks.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadSceneCallbacks.cs deleted file mode 100644 index 01bf141..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadSceneCallbacks.cs +++ /dev/null @@ -1,94 +0,0 @@ -using AlicizaX; - -namespace AlicizaX.Resource.Runtime -{ - /// - /// 加载场景回调函数集。 - /// - public sealed class LoadSceneCallbacks - { - private readonly LoadSceneSuccessCallback m_LoadSceneSuccessCallback; - private readonly LoadSceneFailureCallback m_LoadSceneFailureCallback; - private readonly LoadSceneUpdateCallback m_LoadSceneUpdateCallback; - - /// - /// 初始化加载场景回调函数集的新实例。 - /// - /// 加载场景成功回调函数。 - public LoadSceneCallbacks(LoadSceneSuccessCallback loadSceneSuccessCallback) - : this(loadSceneSuccessCallback, null, null) - { - } - - /// - /// 初始化加载场景回调函数集的新实例。 - /// - /// 加载场景成功回调函数。 - /// 加载场景失败回调函数。 - public LoadSceneCallbacks(LoadSceneSuccessCallback loadSceneSuccessCallback, LoadSceneFailureCallback loadSceneFailureCallback) - : this(loadSceneSuccessCallback, loadSceneFailureCallback, null) - { - } - - /// - /// 初始化加载场景回调函数集的新实例。 - /// - /// 加载场景成功回调函数。 - /// 加载场景更新回调函数。 - public LoadSceneCallbacks(LoadSceneSuccessCallback loadSceneSuccessCallback, LoadSceneUpdateCallback loadSceneUpdateCallback) - : this(loadSceneSuccessCallback, null, loadSceneUpdateCallback) - { - } - - /// - /// 初始化加载场景回调函数集的新实例。 - /// - /// 加载场景成功回调函数。 - /// 加载场景失败回调函数。 - /// 加载场景更新回调函数。 - public LoadSceneCallbacks(LoadSceneSuccessCallback loadSceneSuccessCallback, LoadSceneFailureCallback loadSceneFailureCallback, LoadSceneUpdateCallback loadSceneUpdateCallback) - { - if (loadSceneSuccessCallback == null) - { - throw new GameFrameworkException("Load scene success callback is invalid."); - } - - m_LoadSceneSuccessCallback = loadSceneSuccessCallback; - m_LoadSceneFailureCallback = loadSceneFailureCallback; - m_LoadSceneUpdateCallback = loadSceneUpdateCallback; - } - - /// - /// 获取加载场景成功回调函数。 - /// - public LoadSceneSuccessCallback LoadSceneSuccessCallback - { - get - { - return m_LoadSceneSuccessCallback; - } - } - - /// - /// 获取加载场景失败回调函数。 - /// - public LoadSceneFailureCallback LoadSceneFailureCallback - { - get - { - return m_LoadSceneFailureCallback; - } - } - - /// - /// 获取加载场景更新回调函数。 - /// - public LoadSceneUpdateCallback LoadSceneUpdateCallback - { - get - { - return m_LoadSceneUpdateCallback; - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadSceneCallbacks.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadSceneCallbacks.cs.meta deleted file mode 100644 index 149b56c..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadSceneCallbacks.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: d0973e9b5e0881745b165ebbb076c0de -timeCreated: 1679316813 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadSceneFailureCallback.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadSceneFailureCallback.cs deleted file mode 100644 index ff89fea..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadSceneFailureCallback.cs +++ /dev/null @@ -1,11 +0,0 @@ -namespace AlicizaX.Resource.Runtime -{ - /// - /// 加载场景失败回调函数。 - /// - /// 要加载的场景资源名称。 - /// 加载场景状态。 - /// 错误信息。 - /// 用户自定义数据。 - public delegate void LoadSceneFailureCallback(string sceneAssetName, LoadResourceStatus status, string errorMessage, object userData); -} diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadSceneFailureCallback.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadSceneFailureCallback.cs.meta deleted file mode 100644 index ec8a351..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadSceneFailureCallback.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 9f8f6071c75cc4341a784bab6e1771cc -timeCreated: 1679316813 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadSceneSuccessCallback.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadSceneSuccessCallback.cs deleted file mode 100644 index a952539..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadSceneSuccessCallback.cs +++ /dev/null @@ -1,11 +0,0 @@ -namespace AlicizaX.Resource.Runtime -{ - /// - /// 加载场景成功回调函数。 - /// - /// 要加载的场景资源名称。 - /// 场景对象。 - /// 加载持续时间。 - /// 用户自定义数据。 - public delegate void LoadSceneSuccessCallback(string sceneAssetName,UnityEngine.SceneManagement.Scene scene, float duration, object userData); -} diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadSceneSuccessCallback.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadSceneSuccessCallback.cs.meta deleted file mode 100644 index 4693ab3..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadSceneSuccessCallback.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: e325b66b297a77840ad71342a6b10d44 -timeCreated: 1679316813 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadSceneUpdateCallback.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadSceneUpdateCallback.cs deleted file mode 100644 index 90c479f..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadSceneUpdateCallback.cs +++ /dev/null @@ -1,10 +0,0 @@ -namespace AlicizaX.Resource.Runtime -{ - /// - /// 加载场景更新回调函数。 - /// - /// 要加载的场景资源名称。 - /// 加载场景进度。 - /// 用户自定义数据。 - public delegate void LoadSceneUpdateCallback(string sceneAssetName, float progress, object userData); -} diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadSceneUpdateCallback.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadSceneUpdateCallback.cs.meta deleted file mode 100644 index 179f27c..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/LoadSceneUpdateCallback.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 19c0eceaedcd88a408f3dd8f508aab8a -timeCreated: 1679316813 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/UnloadSceneCallbacks.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/UnloadSceneCallbacks.cs deleted file mode 100644 index 1314912..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/UnloadSceneCallbacks.cs +++ /dev/null @@ -1,60 +0,0 @@ -using AlicizaX; - -namespace AlicizaX.Resource.Runtime -{ - /// - /// 卸载场景回调函数集。 - /// - public sealed class UnloadSceneCallbacks - { - private readonly UnloadSceneSuccessCallback m_UnloadSceneSuccessCallback; - private readonly UnloadSceneFailureCallback m_UnloadSceneFailureCallback; - - /// - /// 初始化卸载场景回调函数集的新实例。 - /// - /// 卸载场景成功回调函数。 - public UnloadSceneCallbacks(UnloadSceneSuccessCallback unloadSceneSuccessCallback) - : this(unloadSceneSuccessCallback, null) - { - } - - /// - /// 初始化卸载场景回调函数集的新实例。 - /// - /// 卸载场景成功回调函数。 - /// 卸载场景失败回调函数。 - public UnloadSceneCallbacks(UnloadSceneSuccessCallback unloadSceneSuccessCallback, UnloadSceneFailureCallback unloadSceneFailureCallback) - { - if (unloadSceneSuccessCallback == null) - { - throw new GameFrameworkException("Unload scene success callback is invalid."); - } - - m_UnloadSceneSuccessCallback = unloadSceneSuccessCallback; - m_UnloadSceneFailureCallback = unloadSceneFailureCallback; - } - - /// - /// 获取卸载场景成功回调函数。 - /// - public UnloadSceneSuccessCallback UnloadSceneSuccessCallback - { - get - { - return m_UnloadSceneSuccessCallback; - } - } - - /// - /// 获取卸载场景失败回调函数。 - /// - public UnloadSceneFailureCallback UnloadSceneFailureCallback - { - get - { - return m_UnloadSceneFailureCallback; - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/UnloadSceneCallbacks.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/UnloadSceneCallbacks.cs.meta deleted file mode 100644 index 21765de..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/UnloadSceneCallbacks.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 1e5f0e0bc23d4ef41a66f85b776b647c -timeCreated: 1679316871 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/UnloadSceneFailureCallback.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/UnloadSceneFailureCallback.cs deleted file mode 100644 index 9f2f112..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/UnloadSceneFailureCallback.cs +++ /dev/null @@ -1,9 +0,0 @@ -namespace AlicizaX.Resource.Runtime -{ - /// - /// 卸载场景失败回调函数。 - /// - /// 要卸载的场景资源名称。 - /// 用户自定义数据。 - public delegate void UnloadSceneFailureCallback(string sceneAssetName, object userData); -} diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/UnloadSceneFailureCallback.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/UnloadSceneFailureCallback.cs.meta deleted file mode 100644 index 6ea62e0..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/UnloadSceneFailureCallback.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: fe58952bc4299ac40b1e160ee8a02d59 -timeCreated: 1679316871 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/UnloadSceneSuccessCallback.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/UnloadSceneSuccessCallback.cs deleted file mode 100644 index e0dc89a..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/UnloadSceneSuccessCallback.cs +++ /dev/null @@ -1,9 +0,0 @@ -namespace AlicizaX.Resource.Runtime -{ - /// - /// 卸载场景成功回调函数。 - /// - /// 要卸载的场景资源名称。 - /// 用户自定义数据。 - public delegate void UnloadSceneSuccessCallback(string sceneAssetName, object userData); -} diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/UnloadSceneSuccessCallback.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/UnloadSceneSuccessCallback.cs.meta deleted file mode 100644 index c367419..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Callback/UnloadSceneSuccessCallback.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 0643f4d56f17c204bbbdeda6b5178238 -timeCreated: 1679316871 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension.meta deleted file mode 100644 index 81c1f53..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 0af334ee4abd3e340a57593c366861aa -timeCreated: 1710733578 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/AssetItemObject.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/AssetItemObject.cs deleted file mode 100644 index 8cb2104..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/AssetItemObject.cs +++ /dev/null @@ -1,26 +0,0 @@ -using System.Buffers; -using AlicizaX.ObjectPool; -using AlicizaX; - -namespace AlicizaX.Resource.Runtime -{ - public class AssetItemObject : ObjectBase - { - public static AssetItemObject Create(string location, UnityEngine.Object target) - { - AssetItemObject item = MemoryPool.Acquire(); - item.Initialize(location, target); - return item; - } - - protected override void Release(bool isShutdown) - { - if (Target == null) - { - return; - } - - ModuleSystem.GetModule().UnloadAsset(Target); - } - } -} diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/AssetItemObject.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/AssetItemObject.cs.meta deleted file mode 100644 index 6fbb36f..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/AssetItemObject.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: fc6a5d28fbd449c4eb71ea36749609c9 -timeCreated: 1710733596 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/ISetAssetObject.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/ISetAssetObject.cs deleted file mode 100644 index 6ab7267..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/ISetAssetObject.cs +++ /dev/null @@ -1,23 +0,0 @@ - -using AlicizaX; - -namespace AlicizaX.Resource.Runtime -{ - public interface ISetAssetObject : IMemory - { - /// - /// 资源定位地址。 - /// - string Location { get; } - - /// - /// 设置资源。 - /// - void SetAsset(UnityEngine.Object asset); - - /// - /// 是否可以回收。 - /// - bool IsCanRelease(); - } -} diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/ISetAssetObject.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/ISetAssetObject.cs.meta deleted file mode 100644 index f9f4916..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/ISetAssetObject.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 81b39df61eb7eef4792db847b42ca929 -timeCreated: 1710733596 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/Implement.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/Implement.meta deleted file mode 100644 index 9f9882b..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/Implement.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 96ecdbffc485c5a448bdbc05fcd13128 -timeCreated: 1710733596 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/Implement/SetSpriteExtensions.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/Implement/SetSpriteExtensions.cs deleted file mode 100644 index bc0ebf7..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/Implement/SetSpriteExtensions.cs +++ /dev/null @@ -1,56 +0,0 @@ -using System.Threading; -using AlicizaX.Resource.Runtime; -using Cysharp.Threading.Tasks; -using UnityEngine; -using UnityEngine.UI; - -public static class SetSpriteExtensions -{ - /// - /// 设置图片。 - /// - /// UI/Image。 - /// 资源定位地址。 - /// 是否使用原始分辨率。 - /// 取消设置资源的Token。 - public static void SetSprite(this Image image, string location, bool setNativeSize = false, CancellationToken cancellationToken = default) - { - ResourceExtComponent.Instance.SetAssetByResources(SetSpriteObject.Create(image, location, setNativeSize, cancellationToken)).Forget(); - } - - /// - /// 设置图片。 - /// - /// 2D/SpriteRender。 - /// 资源定位地址。 - /// 取消设置资源的Token。 - public static void SetSprite(this SpriteRenderer spriteRenderer, string location, CancellationToken cancellationToken = default) - { - ResourceExtComponent.Instance.SetAssetByResources(SetSpriteObject.Create(spriteRenderer, location, cancellationToken)).Forget(); - } - - /// - /// 设置子图片。 - /// - /// UI/Image。 - /// 资源定位地址。 - /// 子图片名称。 - /// 是否使用原始分辨率。 - /// 取消设置资源的Token。 - public static void SetSubSprite(this Image image, string location, string spriteName, bool setNativeSize = false, CancellationToken cancellationToken = default) - { - ResourceExtComponent.Instance.SetSubSprite(image, location, spriteName, setNativeSize, cancellationToken).Forget(); - } - - /// - /// 设置子图片。 - /// - /// 2D/SpriteRender。 - /// 资源定位地址。 - /// 子图片名称。 - /// 取消设置资源的Token。 - public static void SetSubSprite(this SpriteRenderer spriteRenderer, string location, string spriteName, CancellationToken cancellationToken = default) - { - ResourceExtComponent.Instance.SetSubSprite(spriteRenderer, location, spriteName, cancellationToken).Forget(); - } -} diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/Implement/SetSpriteExtensions.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/Implement/SetSpriteExtensions.cs.meta deleted file mode 100644 index 67b6815..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/Implement/SetSpriteExtensions.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 2f5d4515f2285b948a326ba5e8e88dd4 -timeCreated: 1709017662 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/Implement/SetSpriteObject.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/Implement/SetSpriteObject.cs deleted file mode 100644 index f9aea6b..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/Implement/SetSpriteObject.cs +++ /dev/null @@ -1,116 +0,0 @@ -using System; -using System.Threading; -using AlicizaX; -using UnityEngine; -using UnityEngine.UI; -using Object = UnityEngine.Object; -#if ODIN_INSPECTOR -using Sirenix.OdinInspector; -#endif - -namespace AlicizaX.Resource.Runtime -{ - [Serializable] - public class SetSpriteObject : ISetAssetObject - { - enum SetType - { - None, - Image, - SpriteRender, - } -#if ODIN_INSPECTOR - [ShowInInspector] -#endif - private SetType _setType; - -#if ODIN_INSPECTOR - [ShowInInspector] -#endif - private Image _image; - -#if ODIN_INSPECTOR - [ShowInInspector] -#endif - private SpriteRenderer _spriteRenderer; - -#if ODIN_INSPECTOR - [ShowInInspector] -#endif - private Sprite _sprite; - - public string Location { get; private set; } - - private bool _setNativeSize = false; - - private CancellationToken _cancellationToken; - - public void SetAsset(Object asset) - { - _sprite = (Sprite)asset; - - if (_cancellationToken.IsCancellationRequested) - return; - - if (_image != null) - { - _image.sprite = _sprite; - if (_setNativeSize) - { - _image.SetNativeSize(); - } - } - else if (_spriteRenderer != null) - { - _spriteRenderer.sprite = _sprite; - } - } - - public bool IsCanRelease() - { - if (_setType == SetType.Image) - { - return _image == null || _image.sprite == null || - (_sprite != null && _image.sprite != _sprite); - } - else if (_setType == SetType.SpriteRender) - { - return _spriteRenderer == null || _spriteRenderer.sprite == null || - (_sprite != null && _spriteRenderer.sprite != _sprite); - } - - return true; - } - - public void Clear() - { - _spriteRenderer = null; - _image = null; - Location = null; - _sprite = null; - _setType = SetType.None; - _setNativeSize = false; - } - - public static SetSpriteObject Create(Image image, string location, bool setNativeSize = false, CancellationToken cancellationToken = default) - { - SetSpriteObject item = MemoryPool.Acquire(); - item._image = image; - item._setNativeSize = setNativeSize; - item.Location = location; - item._cancellationToken = cancellationToken; - item._setType = SetType.Image; - return item; - } - - public static SetSpriteObject Create(SpriteRenderer spriteRenderer, string location, CancellationToken cancellationToken = default) - { - SetSpriteObject item = MemoryPool.Acquire(); - item._spriteRenderer = spriteRenderer; - item.Location = location; - item._cancellationToken = cancellationToken; - item._setType = SetType.SpriteRender; - return item; - } - } -} diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/Implement/SetSpriteObject.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/Implement/SetSpriteObject.cs.meta deleted file mode 100644 index b87fc0e..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/Implement/SetSpriteObject.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: c68b2196a3c2b8f4fba42c4df2f70e11 -timeCreated: 1709016956 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/LoadAssetObject.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/LoadAssetObject.cs deleted file mode 100644 index 1e72099..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/LoadAssetObject.cs +++ /dev/null @@ -1,28 +0,0 @@ -using System; -#if ODIN_INSPECTOR -using Sirenix.OdinInspector; -#endif - -namespace AlicizaX.Resource.Runtime -{ - [Serializable] - public class LoadAssetObject - { -#if ODIN_INSPECTOR - [ShowInInspector] -#endif - public ISetAssetObject AssetObject { get; } -#if ODIN_INSPECTOR - [ShowInInspector] -#endif - public UnityEngine.Object AssetTarget { get; } -#if UNITY_EDITOR - public bool IsSelect { get; set; } -#endif - public LoadAssetObject(ISetAssetObject obj, UnityEngine.Object assetTarget) - { - AssetObject = obj; - AssetTarget = assetTarget; - } - } -} \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/LoadAssetObject.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/LoadAssetObject.cs.meta deleted file mode 100644 index c834831..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/LoadAssetObject.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: b25c6b1f257bf3445b8e2651e169e314 -timeCreated: 1710733596 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/ResourceExtComponent.Resource.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/ResourceExtComponent.Resource.cs deleted file mode 100644 index 3fb4d4e..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/ResourceExtComponent.Resource.cs +++ /dev/null @@ -1,63 +0,0 @@ -using AlicizaX; -using Cysharp.Threading.Tasks; - -namespace AlicizaX.Resource.Runtime -{ - public partial class ResourceExtComponent - { - /// - /// 资源组件。 - /// - private IResourceModule m_ResourceModule; - - private LoadAssetCallbacks m_LoadAssetCallbacks; - - private void InitializedResources() - { - m_ResourceModule = ModuleSystem.GetModule(); - m_LoadAssetCallbacks = new LoadAssetCallbacks(OnLoadAssetSuccess, OnLoadAssetFailure); - } - - private void OnLoadAssetFailure(string assetName, LoadResourceStatus status, string errormessage, object userdata) - { - _assetLoadingList.Remove(assetName); - Log.Error("Can not load asset from '{0}' with error message '{1}'.", assetName, errormessage); - } - - private void OnLoadAssetSuccess(string assetName, object asset, float duration, object userdata) - { - _assetLoadingList.Remove(assetName); - ISetAssetObject setAssetObject = (ISetAssetObject)userdata; - UnityEngine.Object assetObject = asset as UnityEngine.Object; - if (assetObject != null) - { - m_AssetItemPool.Register(AssetItemObject.Create(setAssetObject.Location, assetObject), true); - SetAsset(setAssetObject, assetObject); - } - else - { - Log.Error($"Load failure asset type is {asset.GetType()}."); - } - } - - /// - /// 通过资源系统设置资源。 - /// - /// 需要设置的对象。 - public async UniTaskVoid SetAssetByResources(ISetAssetObject setAssetObject) where T : UnityEngine.Object - { - await TryWaitingLoading(setAssetObject.Location); - - if (m_AssetItemPool.CanSpawn(setAssetObject.Location)) - { - var assetObject = (T)m_AssetItemPool.Spawn(setAssetObject.Location).Target; - SetAsset(setAssetObject, assetObject); - } - else - { - _assetLoadingList.Add(setAssetObject.Location); - m_ResourceModule.LoadAssetAsync(setAssetObject.Location, typeof(T), 0, m_LoadAssetCallbacks, setAssetObject); - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/ResourceExtComponent.Resource.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/ResourceExtComponent.Resource.cs.meta deleted file mode 100644 index a98c9bc..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/ResourceExtComponent.Resource.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: da9ba664426df254f876fa9e2a424e8c -timeCreated: 1710733596 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/ResourceExtComponent.SubSprite.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/ResourceExtComponent.SubSprite.cs deleted file mode 100644 index eb19e39..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/ResourceExtComponent.SubSprite.cs +++ /dev/null @@ -1,130 +0,0 @@ -using System.Collections.Generic; -using System.Threading; -using Cysharp.Threading.Tasks; -using UnityEngine; -using UnityEngine.UI; -using YooAsset; - -namespace AlicizaX.Resource.Runtime -{ - /// - /// 资源组件拓展。 - /// - public partial class ResourceExtComponent - { - private readonly Dictionary _subAssetsHandles = new Dictionary(); - private readonly Dictionary _subSpriteReferences = new Dictionary(); - - public async UniTask SetSubSprite(Image image, string location, string spriteName, bool setNativeSize = false, CancellationToken cancellationToken = default) - { - var subSprite = await GetSubSpriteImp(location, spriteName, cancellationToken); - - if (image == null) - { - Log.Warning($"SetSubAssets Image is null"); - return; - } - - image.sprite = subSprite; - if (setNativeSize) - { - image.SetNativeSize(); - } - - AddReference(image.gameObject, location); - } - - public async UniTask SetSubSprite(SpriteRenderer spriteRenderer, string location, string spriteName, CancellationToken cancellationToken = default) - { - var subSprite = await GetSubSpriteImp(location, spriteName, cancellationToken); - - if (spriteRenderer == null) - { - Log.Warning($"SetSubAssets Image is null"); - return; - } - - spriteRenderer.sprite = subSprite; - AddReference(spriteRenderer.gameObject, location); - } - - private async UniTask GetSubSpriteImp(string location, string spriteName, CancellationToken cancellationToken = default) - { - var assetInfo = YooAssets.GetAssetInfo(location); - if (assetInfo.IsInvalid) - { - throw new GameFrameworkException($"Invalid location: {location}"); - } - - await TryWaitingLoading(location); - - if (!_subAssetsHandles.TryGetValue(location, out var subAssetsHandle)) - { - subAssetsHandle = YooAssets.LoadSubAssetsAsync(location); - await subAssetsHandle.ToUniTask(cancellationToken: cancellationToken); - _subAssetsHandles[location] = subAssetsHandle; - } - - var subSprite = subAssetsHandle.GetSubAssetObject(spriteName); - if (subSprite == null) - { - throw new GameFrameworkException($"Invalid sprite name: {spriteName}"); - } - - return subSprite; - } - - private void AddReference(GameObject target, string location) - { - var subSpriteReference = target.GetComponent(); - if (subSpriteReference == null) - { - subSpriteReference = target.AddComponent(); - } - - _subSpriteReferences[location] = _subSpriteReferences.TryGetValue(location, out var count) ? count + 1 : 1; - subSpriteReference.Reference(location); - } - - internal void DeleteReference(string location) - { - if (string.IsNullOrEmpty(location)) - { - return; - } - - _subSpriteReferences[location] = _subSpriteReferences.TryGetValue(location, out var count) ? count - 1 : 0; - if (_subSpriteReferences[location] <= 0) - { - var subAssetsHandle = _subAssetsHandles[location]; - subAssetsHandle.Dispose(); - _subAssetsHandles.Remove(location); - _subSpriteReferences.Remove(location); - } - } - } - - [DisallowMultipleComponent] - public class SubSpriteReference : MonoBehaviour - { - private string _location; - - public void Reference(string location) - { - if (_location != null && _location != location) - { - ResourceExtComponent.Instance?.DeleteReference(_location); - } - - _location = location; - } - - private void OnDestroy() - { - if (_location != null) - { - ResourceExtComponent.Instance?.DeleteReference(_location); - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/ResourceExtComponent.SubSprite.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/ResourceExtComponent.SubSprite.cs.meta deleted file mode 100644 index 8993f6c..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/ResourceExtComponent.SubSprite.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 3dfab359cdc74dc285864a0032cd06f6 -timeCreated: 1747103563 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/ResourceExtComponent.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/ResourceExtComponent.cs deleted file mode 100644 index dcab63a..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/ResourceExtComponent.cs +++ /dev/null @@ -1,150 +0,0 @@ -using System; -using System.Buffers; -using System.Collections; -using System.Collections.Generic; -using AlicizaX.ObjectPool; -using AlicizaX.Resource.Runtime; -using AlicizaX; -using Cysharp.Threading.Tasks; -using UnityEngine; -using Object = UnityEngine.Object; -#if ODIN_INSPECTOR -using Sirenix.OdinInspector; -#endif - -namespace AlicizaX.Resource.Runtime -{ - public partial class ResourceExtComponent : MonoBehaviour - { - public static ResourceExtComponent Instance { private set; get; } - private readonly TimeoutController _timeoutController = new TimeoutController(); - - /// - /// 正在加载的资源列表。 - /// - private readonly HashSet _assetLoadingList = new HashSet(); - - /// - /// 检查是否可以释放间隔 - /// - [SerializeField] private float m_CheckCanReleaseInterval = 30f; - - private float m_CheckCanReleaseTime = 0.0f; - - /// - /// 对象池自动释放时间间隔 - /// - [SerializeField] private float m_AutoReleaseInterval = 60f; - - /// - /// 保存加载的图片对象 - /// -#if ODIN_INSPECTOR - [ShowInInspector] -#endif - private LinkedList m_LoadAssetObjectsLinkedList; - - /// - /// 散图集合对象池 - /// - private IObjectPool m_AssetItemPool; - - -#if UNITY_EDITOR - public LinkedList LoadAssetObjectsLinkedList - { - get => m_LoadAssetObjectsLinkedList; - set => m_LoadAssetObjectsLinkedList = value; - } -#endif - private void Awake() - { - Instance = this; - } - - private IEnumerator Start() - { - yield return new WaitForEndOfFrame(); - IObjectPoolModule objectPoolComponent = ModuleSystem.GetModule(); - m_AssetItemPool = objectPoolComponent.CreateMultiSpawnObjectPool( - "SetAssetPool", - m_AutoReleaseInterval, 16, 60, 0); - m_LoadAssetObjectsLinkedList = new LinkedList(); - - InitializedResources(); - } - - private void Update() - { - m_CheckCanReleaseTime += Time.unscaledDeltaTime; - if (m_CheckCanReleaseTime < (double)m_CheckCanReleaseInterval) - { - return; - } - - ReleaseUnused(); - } - - - /// - /// 回收无引用的缓存资产。 - /// -#if ODIN_INSPECTOR - [Button("Release Unused")] -#endif - public void ReleaseUnused() - { - if (m_LoadAssetObjectsLinkedList == null) - { - return; - } - - LinkedListNode current = m_LoadAssetObjectsLinkedList.First; - while (current != null) - { - var next = current.Next; - if (current.Value.AssetObject.IsCanRelease()) - { - m_AssetItemPool.Unspawn(current.Value.AssetTarget); - MemoryPool.Release(current.Value.AssetObject); - m_LoadAssetObjectsLinkedList.Remove(current); - } - - current = next; - } - - m_CheckCanReleaseTime = 0f; - } - - private void SetAsset(ISetAssetObject setAssetObject, Object assetObject) - { - m_LoadAssetObjectsLinkedList.AddLast(new LoadAssetObject(setAssetObject, assetObject)); - setAssetObject.SetAsset(assetObject); - } - - private async UniTask TryWaitingLoading(string assetObjectKey) - { - if (_assetLoadingList.Contains(assetObjectKey)) - { - try - { - await UniTask.WaitUntil( - () => !_assetLoadingList.Contains(assetObjectKey)) -#if UNITY_EDITOR - .AttachExternalCancellation(_timeoutController.Timeout(TimeSpan.FromSeconds(60))); - _timeoutController.Reset(); -#else - ; -#endif - } - catch (OperationCanceledException ex) - { - if (_timeoutController.IsTimeout()) - { - Log.Error($"LoadAssetAsync Waiting {assetObjectKey} timeout. reason:{ex.Message}"); - } - } - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/ResourceExtComponent.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/ResourceExtComponent.cs.meta deleted file mode 100644 index da5c654..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Extension/ResourceExtComponent.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: e3adf1e69b12944448c9fe6ae10983cb -timeCreated: 1710733596 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/HasAssetResult.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/HasAssetResult.cs deleted file mode 100644 index 9fd35b2..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/HasAssetResult.cs +++ /dev/null @@ -1,43 +0,0 @@ -namespace AlicizaX.Resource.Runtime -{ - /// - /// 检查资源是否存在的结果。 - /// - public enum HasAssetResult : byte - { - /// - /// 资源不存在。 - /// - NotExist = 0, - - /// - /// 资源需要从远端更新下载。 - /// - AssetOnline, - - /// - /// 存在资源且存储在磁盘上。 - /// - AssetOnDisk, - - /// - /// 存在资源且存储在文件系统里。 - /// - AssetOnFileSystem, - - /// - /// 存在二进制资源且存储在磁盘上。 - /// - BinaryOnDisk, - - /// - /// 存在二进制资源且存储在文件系统里。 - /// - BinaryOnFileSystem, - - /// - /// 资源定位地址无效。 - /// - Valid, - } -} \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/HasAssetResult.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/HasAssetResult.cs.meta deleted file mode 100644 index e7abe3d..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/HasAssetResult.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 70385e0a8397ff64fae0cca1cca67db4 -timeCreated: 1679316902 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/IResourceModule.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/IResourceModule.cs deleted file mode 100644 index 2c2e5e5..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/IResourceModule.cs +++ /dev/null @@ -1,290 +0,0 @@ -using System; -using System.Threading; -using AlicizaX; -using Cysharp.Threading.Tasks; -using UnityEngine; -using YooAsset; - -namespace AlicizaX.Resource.Runtime -{ - /// - /// 资源管理器接口。 - /// - public interface IResourceModule:IModule - { - /// - /// 获取当前资源适用的游戏版本号。 - /// - string ApplicableGameVersion { get; } - - /// - /// 获取当前内部资源版本号。 - /// - int InternalResourceVersion { get; } - - /// - /// 获取或设置运行模式。 - /// - EPlayMode PlayMode { get; set; } - - string DecryptionServices { get; set; } - - - /// - /// 同时下载的最大数目。 - /// - int DownloadingMaxNum { get; set; } - - /// - /// 失败重试最大数目。 - /// - int FailedTryAgain { get; set; } - - /// - /// 初始化接口。 - /// - void Initialize(); - - - UniTask InitPackageAsync(string packageName="", string hostServerURL = "", string fallbackHostServerURL = ""); - - /// - /// 默认资源包名称。 - /// - string DefaultPackageName { get; set; } - - /// - /// 获取或设置异步系统参数,每帧执行消耗的最大时间切片(单位:毫秒)。 - /// - long Milliseconds { get; set; } - - /// - /// 获取或设置资源对象池自动释放可释放对象的间隔秒数。 - /// - float AssetAutoReleaseInterval { get; set; } - - /// - /// 获取或设置资源对象池的容量。 - /// - int AssetCapacity { get; set; } - - /// - /// 获取或设置资源对象池对象过期秒数。 - /// - float AssetExpireTime { get; set; } - - /// - /// 获取或设置资源对象池的优先级。 - /// - int AssetPriority { get; set; } - - /// - /// 卸载资源。 - /// - /// 要卸载的资源。 - void UnloadAsset(object asset); - - /// - /// 资源回收(卸载引用计数为零的资源) - /// - void UnloadUnusedAssets(); - - /// - /// 强制回收所有资源 - /// - void ForceUnloadAllAssets(); - - /// - /// 强制执行释放未被使用的资源。 - /// - /// 是否使用垃圾回收。 - void ForceUnloadUnusedAssets(bool performGCCollect); - - /// - /// 检查资源是否存在。 - /// - /// 资源定位地址。 - /// 资源包名称。 - /// 检查资源是否存在的结果。 - public HasAssetResult HasAsset(string location, string packageName = ""); - - /// - /// 检查资源定位地址是否有效。 - /// - /// 资源的定位地址 - /// 指定资源包的名称。不传使用默认资源包 - bool CheckLocationValid(string location, string packageName = ""); - - /// - /// 获取资源信息列表。 - /// - /// 资源标签。 - /// 指定资源包的名称。不传使用默认资源包 - /// 资源信息列表。 - AssetInfo[] GetAssetInfos(string resTag, string packageName = ""); - - /// - /// 获取资源信息列表。 - /// - /// 资源标签列表。 - /// 指定资源包的名称。不传使用默认资源包 - /// 资源信息列表。 - AssetInfo[] GetAssetInfos(string[] tags, string packageName = ""); - - /// - /// 获取资源信息。 - /// - /// 资源的定位地址。 - /// 指定资源包的名称。不传使用默认资源包 - /// 资源信息。 - AssetInfo GetAssetInfo(string location, string packageName = ""); - - /// - /// 异步加载资源。 - /// - /// 资源的定位地址。 - /// 加载资源的优先级。 - /// 加载资源回调函数集。 - /// 用户自定义数据。 - /// 指定资源包的名称。不传使用默认资源包。 - void LoadAssetAsync(string location, int priority, LoadAssetCallbacks loadAssetCallbacks, object userData, string packageName = ""); - - /// - /// 异步加载资源。 - /// - /// 资源的定位地址。 - /// 要加载的资源类型。 - /// 加载资源的优先级。 - /// 加载资源回调函数集。 - /// 用户自定义数据。 - /// 指定资源包的名称。不传使用默认资源包。 - void LoadAssetAsync(string location, Type assetType, int priority, LoadAssetCallbacks loadAssetCallbacks, object userData, string packageName = ""); - - /// - /// 同步加载资源。 - /// - /// 资源的定位地址。 - /// 指定资源包的名称。不传使用默认资源包 - /// 要加载资源的类型。 - /// 资源实例。 - T LoadAsset(string location, string packageName = "") where T : UnityEngine.Object; - - /// - /// 同步加载游戏物体并实例化。 - /// - /// 资源的定位地址。 - /// 资源实例父节点。 - /// 指定资源包的名称。不传使用默认资源包 - /// 资源实例。 - /// 会实例化资源到场景,无需主动UnloadAsset,Destroy时自动UnloadAsset。 - GameObject LoadGameObject(string location, Transform parent = null, string packageName = ""); - - /// - /// 异步加载资源。 - /// - /// 资源的定位地址。 - /// 回调函数。 - /// 指定资源包的名称。不传使用默认资源包 - /// 要加载资源的类型。 - UniTaskVoid LoadAsset(string location, Action callback, string packageName = "") where T : UnityEngine.Object; - - /// - /// 异步加载资源。 - /// - /// 资源定位地址。 - /// 取消操作Token。 - /// 指定资源包的名称。不传使用默认资源包 - /// 要加载资源的类型。 - /// 异步资源实例。 - UniTask LoadAssetAsync(string location, CancellationToken cancellationToken = default, string packageName = "") where T : UnityEngine.Object; - - /// - /// 异步加载游戏物体并实例化。 - /// - /// 资源定位地址。 - /// 资源实例父节点。 - /// 取消操作Token。 - /// 指定资源包的名称。不传使用默认资源包 - /// 异步游戏物体实例。 - /// 会实例化资源到场景,无需主动UnloadAsset,Destroy时自动UnloadAsset。 - UniTask LoadGameObjectAsync(string location, Transform parent = null, CancellationToken cancellationToken = default, string packageName = ""); - - /// - /// 获取同步加载的资源操作句柄。 - /// - /// 资源定位地址。 - /// 资源包名称。 - /// 资源类型。 - /// 资源操作句柄。 - AssetHandle LoadAssetSyncHandle(string location, string packageName = "") where T : UnityEngine.Object; - - /// - /// 获取异步加载的资源操作句柄。 - /// - /// 资源定位地址。 - /// 资源包名称。 - /// 资源类型。 - /// 资源操作句柄。 - AssetHandle LoadAssetAsyncHandle(string location, string packageName = "") where T : UnityEngine.Object; - - /// - /// 清理包裹未使用的缓存文件。 - /// - /// 文件清理方式。 - /// 指定资源包的名称。不传使用默认资源包 - ClearCacheFilesOperation ClearCacheFilesAsync( - EFileClearMode clearMode = EFileClearMode.ClearUnusedBundleFiles, string customPackageName = ""); - - /// - /// 清理沙盒路径。 - /// - /// 指定资源包的名称。不传使用默认资源包 - void ClearAllBundleFiles(string customPackageName = ""); - - /// - /// 创建资源下载器,用于下载当前资源版本所有的资源包文件。 - /// - /// 指定资源包的名称。不传使用默认资源包 - ResourceDownloaderOperation CreateResourceDownloader(string customPackageName = ""); - - /// - /// 当前最新的包裹版本。 - /// - string PackageVersion { set; get; } - - /// - /// 获取当前资源包版本。 - /// - /// 指定资源包的名称。不传使用默认资源包 - /// 资源包版本。 - string GetPackageVersion(string customPackageName = ""); - - /// - /// 异步更新最新包的版本。 - /// - /// 请求URL是否需要带时间戳。 - /// 超时时间。 - /// 指定资源包的名称。不传使用默认资源包 - /// 请求远端包裹的最新版本操作句柄。 - RequestPackageVersionOperation RequestPackageVersionAsync(bool appendTimeTicks = false, int timeout = 60, string customPackageName = ""); - - /// - /// 向网络端请求并更新清单 - /// - /// 更新的包裹版本 - /// 超时时间(默认值:60秒) - /// 指定资源包的名称。不传使用默认资源包 - UpdatePackageManifestOperation UpdatePackageManifestAsync(string packageVersion, int timeout = 60, string customPackageName = ""); - - /// - /// 低内存行为。 - /// - void OnLowMemory(); - - /// - /// 低内存回调保护。 - /// - /// 低内存行为。 - void SetForceUnloadUnusedAssetsAction(Action action); - } -} diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/IResourceModule.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/IResourceModule.cs.meta deleted file mode 100644 index 2ee6e93..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/IResourceModule.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 8f04be71778469a44825233ee76bfc78 -timeCreated: 1706852080 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ReadWritePathType.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ReadWritePathType.cs deleted file mode 100644 index 3101445..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ReadWritePathType.cs +++ /dev/null @@ -1,23 +0,0 @@ -namespace AlicizaX.Resource.Runtime -{ - /// - /// 读写区路径类型。 - /// - public enum ReadWritePathType : byte - { - /// - /// 未指定。 - /// - Unspecified = 0, - - /// - /// 临时缓存。 - /// - TemporaryCache, - - /// - /// 持久化数据。 - /// - PersistentData, - } -} diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ReadWritePathType.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ReadWritePathType.cs.meta deleted file mode 100644 index d4fc584..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ReadWritePathType.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: aa0694b21b1a2fd44840f72598d43624 -timeCreated: 1679327686 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Reference.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Reference.meta deleted file mode 100644 index 39a0a18..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Reference.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 81e7808fc22aadb4e983bd5ee639a65d -timeCreated: 1708489036 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Reference/AssetsReference.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Reference/AssetsReference.cs deleted file mode 100644 index 310765b..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Reference/AssetsReference.cs +++ /dev/null @@ -1,194 +0,0 @@ -using System; -using System.Collections.Generic; -using UnityEngine; -using Object = UnityEngine.Object; - -namespace AlicizaX.Resource.Runtime -{ - [Serializable] - public struct AssetsRefInfo - { - public int instanceId; - - public Object refAsset; - - public AssetsRefInfo(Object refAsset) - { - this.refAsset = refAsset; - instanceId = this.refAsset.GetInstanceID(); - } - } - - [DisallowMultipleComponent] - public sealed class AssetsReference : MonoBehaviour - { - [SerializeField] - private GameObject sourceGameObject; - - [SerializeField] - private List refAssetInfoList; - - private static IResourceModule _resourceModule; - - private static Dictionary _originalRefs = new(); - - - private void CheckInit() - { - if (_resourceModule != null) - { - return; - } - else - { - _resourceModule = ModuleSystem.GetModule(); - } - - if (_resourceModule == null) - { - throw new GameFrameworkException($"resourceModule is null."); - } - } - - private void CheckRelease() - { - if (sourceGameObject != null) - { - _resourceModule.UnloadAsset(sourceGameObject); - } - else - { - Log.Warning($"sourceGameObject is not invalid."); - } - } - - - private void Awake() - { - // If it is a clone, clear the reference records before cloning - if (!IsOriginalInstance()) - { - ClearCloneReferences(); - } - } - - private bool IsOriginalInstance() - { - return _originalRefs.TryGetValue(gameObject, out var originalComponent) && - originalComponent == this; - } - - private void ClearCloneReferences() - { - sourceGameObject = null; - refAssetInfoList?.Clear(); - } - - private void OnDestroy() - { - CheckInit(); - if (sourceGameObject != null) - { - CheckRelease(); - } - - ReleaseRefAssetInfoList(); - } - - private void ReleaseRefAssetInfoList() - { - if (refAssetInfoList != null) - { - foreach (var refInfo in refAssetInfoList) - { - _resourceModule.UnloadAsset(refInfo.refAsset); - } - - refAssetInfoList.Clear(); - } - } - - public AssetsReference Ref(GameObject source, IResourceModule resourceModule = null) - { - if (source == null) - { - throw new GameFrameworkException($"Source gameObject is null."); - } - - if (source.scene.name != null) - { - throw new GameFrameworkException($"Source gameObject is in scene."); - } - - _resourceModule = resourceModule; - sourceGameObject = source; - - if (!_originalRefs.ContainsKey(gameObject)) - { - _originalRefs.Add(gameObject, this); - } - - return this; - } - - public AssetsReference Ref(T source, IResourceModule resourceModule = null) where T : Object - { - if (source == null) - { - throw new GameFrameworkException($"Source gameObject is null."); - } - - _resourceModule = resourceModule; - if (refAssetInfoList == null) - { - refAssetInfoList = new List(); - } - - refAssetInfoList.Add(new AssetsRefInfo(source)); - return this; - } - - internal static AssetsReference Instantiate(GameObject source, Transform parent = null, IResourceModule resourceModule = null) - { - if (source == null) - { - throw new GameFrameworkException($"Source gameObject is null."); - } - - if (source.scene.name != null) - { - throw new GameFrameworkException($"Source gameObject is in scene."); - } - - GameObject instance = Object.Instantiate(source, parent); - return instance.AddComponent().Ref(source, resourceModule); - } - - public static AssetsReference Ref(GameObject source, GameObject instance, IResourceModule resourceModule = null) - { - if (source == null) - { - throw new GameFrameworkException($"Source gameObject is null."); - } - - if (source.scene.name != null) - { - throw new GameFrameworkException($"Source gameObject is in scene."); - } - - var comp = instance.GetComponent(); - return comp ? comp.Ref(source, resourceModule) : instance.AddComponent().Ref(source, resourceModule); - } - - public static AssetsReference Ref(T source, GameObject instance, IResourceModule resourceModule = null) where T : Object - { - if (source == null) - { - throw new GameFrameworkException($"Source gameObject is null."); - } - - var comp = instance.GetComponent(); - return comp ? comp.Ref(source, resourceModule) : instance.AddComponent().Ref(source, resourceModule); - } - } -} diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Reference/AssetsReference.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Reference/AssetsReference.cs.meta deleted file mode 100644 index 1e2c9ba..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Reference/AssetsReference.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: a6f29400f419efb48a8fad058094dead -timeCreated: 1708487319 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Reference/AssetsSetHelper.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Reference/AssetsSetHelper.cs deleted file mode 100644 index 0e798c2..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Reference/AssetsSetHelper.cs +++ /dev/null @@ -1,151 +0,0 @@ -using AlicizaX; -using UnityEngine; -using UnityEngine.UI; - -namespace AlicizaX.Resource.Runtime -{ - public static class AssetsSetHelper - { - private static IResourceModule _resourceModule; - - private static void CheckResourceManager() - { - if (_resourceModule == null) - { - _resourceModule = ModuleSystem.GetModule(); - } - } - - #region SetMaterial - - public static void SetMaterial(this Image image, string location, bool isAsync = false, string packageName = "") - { - if (image == null) - { - throw new GameFrameworkException($"SetSprite failed. Because image is null."); - } - - CheckResourceManager(); - - if (!isAsync) - { - Material material = _resourceModule.LoadAsset(location, packageName); - image.material = material; - AssetsReference.Ref(material, image.gameObject); - } - else - { - _resourceModule.LoadAsset(location, material => - { - if (image == null || image.gameObject == null) - { - _resourceModule.UnloadAsset(material); - material = null; - return; - } - - image.material = material; - AssetsReference.Ref(material, image.gameObject); - }, packageName); - } - } - - public static void SetMaterial(this SpriteRenderer spriteRenderer, string location, bool isAsync = false, string packageName = "") - { - if (spriteRenderer == null) - { - throw new GameFrameworkException($"SetSprite failed. Because image is null."); - } - - CheckResourceManager(); - - if (!isAsync) - { - Material material = _resourceModule.LoadAsset(location, packageName); - spriteRenderer.material = material; - AssetsReference.Ref(material, spriteRenderer.gameObject); - } - else - { - _resourceModule.LoadAsset(location, material => - { - if (spriteRenderer == null || spriteRenderer.gameObject == null) - { - _resourceModule.UnloadAsset(material); - material = null; - return; - } - - spriteRenderer.material = material; - AssetsReference.Ref(material, spriteRenderer.gameObject); - }, packageName); - } - } - - public static void SetMaterial(this MeshRenderer meshRenderer, string location, bool needInstance = true, bool isAsync = false, string packageName = "") - { - if (meshRenderer == null) - { - throw new GameFrameworkException($"SetSprite failed. Because image is null."); - } - - CheckResourceManager(); - - if (!isAsync) - { - Material material = _resourceModule.LoadAsset(location, packageName); - meshRenderer.material = needInstance ? Object.Instantiate(material) : material; - AssetsReference.Ref(material, meshRenderer.gameObject); - } - else - { - _resourceModule.LoadAsset(location, material => - { - if (meshRenderer == null || meshRenderer.gameObject == null) - { - _resourceModule.UnloadAsset(material); - material = null; - return; - } - - meshRenderer.material = needInstance ? Object.Instantiate(material) : material; - AssetsReference.Ref(material, meshRenderer.gameObject); - }, packageName); - } - } - - public static void SetSharedMaterial(this MeshRenderer meshRenderer, string location, bool isAsync = false, string packageName = "") - { - if (meshRenderer == null) - { - throw new GameFrameworkException($"SetSprite failed. Because image is null."); - } - - CheckResourceManager(); - - if (!isAsync) - { - Material material = _resourceModule.LoadAsset(location, packageName); - meshRenderer.sharedMaterial = material; - AssetsReference.Ref(material, meshRenderer.gameObject); - } - else - { - _resourceModule.LoadAsset(location, material => - { - if (meshRenderer == null || meshRenderer.gameObject == null) - { - _resourceModule.UnloadAsset(material); - material = null; - return; - } - - meshRenderer.sharedMaterial = material; - AssetsReference.Ref(material, meshRenderer.gameObject); - }, packageName); - } - } - - #endregion - } -} diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Reference/AssetsSetHelper.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Reference/AssetsSetHelper.cs.meta deleted file mode 100644 index 8ba320a..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/Reference/AssetsSetHelper.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 370ab69f738b11b429fbcc1d9e7a2fb1 -timeCreated: 1708490345 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceComponent.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceComponent.cs deleted file mode 100644 index 532e2d3..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceComponent.cs +++ /dev/null @@ -1,269 +0,0 @@ -using System; -using AlicizaX; -using UnityEngine; -using UnityEngine.Serialization; -using YooAsset; - -namespace AlicizaX.Resource.Runtime -{ - /// - /// 资源组件。 - /// - [DisallowMultipleComponent] - public class ResourceComponent : MonoBehaviour - { - #region Propreties - - private const int DEFAULT_PRIORITY = 0; - - private IResourceModule _resourceModule; - - private bool _forceUnloadUnusedAssets = false; - - private bool _preorderUnloadUnusedAssets = false; - - private bool _performGCCollect = false; - - private AsyncOperation _asyncOperation = null; - - private float _lastUnloadUnusedAssetsOperationElapseSeconds = 0f; - - [SerializeField] private float minUnloadUnusedAssetsInterval = 60f; - - [SerializeField] private float maxUnloadUnusedAssetsInterval = 300f; - - [SerializeField] private bool useSystemUnloadUnusedAssets = true; - - [SerializeField] private string _decryptionServices = ""; - - /// - /// 当前最新的包裹版本。 - /// - public string PackageVersion { set; get; } - - /// - /// 资源包名称。 - /// - [SerializeField] private string packageName = "DefaultPackage"; - - /// - /// 资源包名称。 - /// - public string PackageName - { - get => packageName; - set => packageName = value; - } - - - /// - /// 设置异步系统参数,每帧执行消耗的最大时间切片(单位:毫秒) - /// - [SerializeField] public long milliseconds = 30; - - public int downloadingMaxNum = 10; - - /// - /// 获取或设置同时最大下载数目。 - /// - public int DownloadingMaxNum - { - get => downloadingMaxNum; - set => downloadingMaxNum = value; - } - - [SerializeField] public int failedTryAgain = 3; - - public int FailedTryAgain - { - get => failedTryAgain; - set => failedTryAgain = value; - } - - /// - /// 获取当前资源适用的游戏版本号。 - /// - public string ApplicableGameVersion => _resourceModule.ApplicableGameVersion; - - /// - /// 获取当前内部资源版本号。 - /// - public int InternalResourceVersion => _resourceModule.InternalResourceVersion; - - /// - /// 获取或设置无用资源释放的最小间隔时间,以秒为单位。 - /// - public float MinUnloadUnusedAssetsInterval - { - get => minUnloadUnusedAssetsInterval; - set => minUnloadUnusedAssetsInterval = value; - } - - /// - /// 获取或设置无用资源释放的最大间隔时间,以秒为单位。 - /// - public float MaxUnloadUnusedAssetsInterval - { - get => maxUnloadUnusedAssetsInterval; - set => maxUnloadUnusedAssetsInterval = value; - } - - /// - /// 使用系统释放无用资源策略。 - /// - public bool UseSystemUnloadUnusedAssets - { - get => useSystemUnloadUnusedAssets; - set => useSystemUnloadUnusedAssets = value; - } - - /// - /// 获取无用资源释放的等待时长,以秒为单位。 - /// - public float LastUnloadUnusedAssetsOperationElapseSeconds => _lastUnloadUnusedAssetsOperationElapseSeconds; - - [SerializeField] private float assetAutoReleaseInterval = 60f; - - [SerializeField] private int assetCapacity = 64; - - [SerializeField] private float assetExpireTime = 60f; - - [SerializeField] private int assetPriority = 0; - - /// - /// 获取或设置资源对象池自动释放可释放对象的间隔秒数。 - /// - public float AssetAutoReleaseInterval - { - get => _resourceModule.AssetAutoReleaseInterval; - set => _resourceModule.AssetAutoReleaseInterval = assetAutoReleaseInterval = value; - } - - /// - /// 获取或设置资源对象池的容量。 - /// - public int AssetCapacity - { - get => _resourceModule.AssetCapacity; - set => _resourceModule.AssetCapacity = assetCapacity = value; - } - - /// - /// 获取或设置资源对象池对象过期秒数。 - /// - public float AssetExpireTime - { - get => _resourceModule.AssetExpireTime; - set => _resourceModule.AssetExpireTime = assetExpireTime = value; - } - - /// - /// 获取或设置资源对象池的优先级。 - /// - public int AssetPriority - { - get => _resourceModule.AssetPriority; - set => _resourceModule.AssetPriority = assetPriority = value; - } - - #endregion - - private void Awake() - { - _resourceModule = ModuleSystem.RegisterModule(); - if (_resourceModule == null) - { - Log.Error("Resource module is invalid."); - return; - } - - Application.lowMemory += OnLowMemory; - } - - public static string PrefsKey = Application.dataPath.GetHashCode() + "GamePlayMode"; - - private void Start() - { - EPlayMode playMode = EPlayMode.EditorSimulateMode; -#if UNITY_EDITOR - playMode = (EPlayMode)UnityEditor.EditorPrefs.GetInt(PrefsKey, 0); -#else - playMode = (EPlayMode)AppBuilderSetting.Instance.ResMode; -#endif - _resourceModule.DefaultPackageName = PackageName; - _resourceModule.DecryptionServices = _decryptionServices; - _resourceModule.PlayMode = playMode; - _resourceModule.Milliseconds = milliseconds; - _resourceModule.DownloadingMaxNum = DownloadingMaxNum; - _resourceModule.FailedTryAgain = FailedTryAgain; - _resourceModule.Initialize(); - _resourceModule.AssetAutoReleaseInterval = assetAutoReleaseInterval; - _resourceModule.AssetCapacity = assetCapacity; - _resourceModule.AssetExpireTime = assetExpireTime; - _resourceModule.AssetPriority = assetPriority; - _resourceModule.SetForceUnloadUnusedAssetsAction(ForceUnloadUnusedAssets); - Log.Info($"ResourceModule Run Mode:{playMode}"); - } - - private void OnApplicationQuit() - { - Application.lowMemory -= OnLowMemory; - } - - #region 释放资源 - - /// - /// 强制执行释放未被使用的资源。 - /// - /// 是否使用垃圾回收。 - public void ForceUnloadUnusedAssets(bool performGCCollect) - { - _forceUnloadUnusedAssets = true; - if (performGCCollect) - { - _performGCCollect = true; - } - } - - - private void Update() - { - _lastUnloadUnusedAssetsOperationElapseSeconds += Time.unscaledDeltaTime; - if (_asyncOperation == null && (_forceUnloadUnusedAssets || _lastUnloadUnusedAssetsOperationElapseSeconds >= maxUnloadUnusedAssetsInterval || - _preorderUnloadUnusedAssets && _lastUnloadUnusedAssetsOperationElapseSeconds >= minUnloadUnusedAssetsInterval)) - { - Log.Info("Unload unused assets..."); - _forceUnloadUnusedAssets = false; - _preorderUnloadUnusedAssets = false; - _lastUnloadUnusedAssetsOperationElapseSeconds = 0f; - _asyncOperation = Resources.UnloadUnusedAssets(); - if (useSystemUnloadUnusedAssets) - { - _resourceModule.UnloadUnusedAssets(); - } - } - - if (_asyncOperation is { isDone: true }) - { - _asyncOperation = null; - if (_performGCCollect) - { - Log.Info("GC.Collect..."); - _performGCCollect = false; - GC.Collect(); - } - } - } - - private void OnLowMemory() - { - Log.Warning("Low memory reported..."); - if (_resourceModule != null) - { - _resourceModule.OnLowMemory(); - } - } - - #endregion - } -} diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceComponent.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceComponent.cs.meta deleted file mode 100644 index c324ddb..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceComponent.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 91e581bb79676824f8c04687f21ed727 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceLogger.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceLogger.cs deleted file mode 100644 index c9a9f08..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceLogger.cs +++ /dev/null @@ -1,27 +0,0 @@ -using System; - -namespace AlicizaX.Resource.Runtime -{ - public class ResourceLogger : YooAsset.ILogger - { - public void Log(string message) - { - AlicizaX.Log.Info(message); - } - - public void Warning(string message) - { - AlicizaX.Log.Warning(message); - } - - public void Error(string message) - { - AlicizaX.Log.Error(message); - } - - public void Exception(Exception exception) - { - AlicizaX.Log.Exception(exception); - } - } -} diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceLogger.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceLogger.cs.meta deleted file mode 100644 index 82d7d5c..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceLogger.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 63d2c4d96713460f85fbcc70fbf5e8e7 -timeCreated: 1737534595 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.AssetObject.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.AssetObject.cs deleted file mode 100644 index 243454a..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.AssetObject.cs +++ /dev/null @@ -1,69 +0,0 @@ -using System.Buffers; -using System.Collections.Generic; -using AlicizaX.ObjectPool; -using AlicizaX; -using YooAsset; - -namespace AlicizaX.Resource.Runtime -{ - internal partial class ResourceModule - { - /// - /// 资源对象。 - /// - private sealed class AssetObject : ObjectBase - { - private AssetHandle m_AssetHandle; - private ResourceModule _mResourceModule; - - - public AssetObject() - { - m_AssetHandle = null; - } - - public static AssetObject Create(string name, object target, object assetHandle, ResourceModule resourceModule) - { - if (assetHandle == null) - { - throw new GameFrameworkException("Resource is invalid."); - } - - if (resourceModule == null) - { - throw new GameFrameworkException("Resource Manager is invalid."); - } - - AssetObject assetObject = MemoryPool.Acquire(); - assetObject.Initialize(name, target); - assetObject.m_AssetHandle = (AssetHandle)assetHandle; - assetObject._mResourceModule = resourceModule; - return assetObject; - } - - public override void Clear() - { - base.Clear(); - m_AssetHandle = null; - } - - protected override void OnUnspawn() - { - base.OnUnspawn(); - } - - protected override void Release(bool isShutdown) - { - if (!isShutdown) - { - AssetHandle handle = m_AssetHandle; - if (handle is { IsValid: true }) - { - handle.Dispose(); - } - handle = null; - } - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.AssetObject.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.AssetObject.cs.meta deleted file mode 100644 index 22e4996..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.AssetObject.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 9d617a91ca3eacc41863c3950aa38f0e -timeCreated: 1706867174 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.Initialization.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.Initialization.cs deleted file mode 100644 index 9d6d4ab..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.Initialization.cs +++ /dev/null @@ -1,123 +0,0 @@ -using System; -using UnityEngine; -using YooAsset; - -namespace AlicizaX.Resource.Runtime -{ - internal partial class ResourceModule - { - /// - /// 根据运行模式创建初始化操作数据 - /// - /// - private InitializationOperation CreateInitializationOperationHandler(ResourcePackage resourcePackage, string hostServerURL, string fallbackHostServerURL, string decryptionServicesName) - { - IDecryptionServices decryptionServices = CreateDecryptionServices(decryptionServicesName); - switch (PlayMode) - { - case EPlayMode.EditorSimulateMode: - { - // 编辑器下的模拟模式 - return InitializeYooAssetEditorSimulateMode(resourcePackage, DefaultPackageName); - } - case EPlayMode.OfflinePlayMode: - { - // 单机运行模式 - return InitializeYooAssetOfflinePlayMode(resourcePackage, decryptionServices); - } - case EPlayMode.HostPlayMode: - { - // 联机运行模式 - return InitializeYooAssetHostPlayMode(resourcePackage, hostServerURL, fallbackHostServerURL, decryptionServices); - } - case EPlayMode.WebPlayMode: - { - // WebGL运行模式 - return InitializeYooAssetWebPlayMode(resourcePackage, hostServerURL, fallbackHostServerURL); - } - default: - { - return null; - } - } - } - - private IDecryptionServices CreateDecryptionServices(string decryptionServicesName) - { - IDecryptionServices decryptionServices = null; - if (!string.IsNullOrEmpty(decryptionServicesName)) - { - var decryptionServicesType = AlicizaX.Utility.Assembly.GetType(decryptionServicesName); - decryptionServices = (IDecryptionServices)Activator.CreateInstance(decryptionServicesType); - } - - return decryptionServices; - } - - private InitializationOperation InitializeYooAssetEditorSimulateMode(ResourcePackage resourcePackage, string packageName) - { - var buildResult = EditorSimulateModeHelper.SimulateBuild(packageName); - var packageRoot = buildResult.PackageRootDirectory; - var createParameters = new EditorSimulateModeParameters(); - createParameters.EditorFileSystemParameters = FileSystemParameters.CreateDefaultEditorFileSystemParameters(packageRoot); - // createParameters.EditorFileSystemParameters.AddParameter(FileSystemParametersDefine.DECRYPTION_SERVICES,new FileOffsetEncryption()); - return resourcePackage.InitializeAsync(createParameters); - } - - private InitializationOperation InitializeYooAssetOfflinePlayMode(ResourcePackage resourcePackage, IDecryptionServices decryptionServices = null) - { - var buildinFileSystem = FileSystemParameters.CreateDefaultBuildinFileSystemParameters(decryptionServices); - var initParameters = new OfflinePlayModeParameters(); - initParameters.BuildinFileSystemParameters = buildinFileSystem; - return resourcePackage.InitializeAsync(initParameters); - } - - private InitializationOperation InitializeYooAssetWebPlayMode(ResourcePackage resourcePackage, string hostServerURL, string fallbackHostServerURL) - { - var initParameters = new WebPlayModeParameters(); - FileSystemParameters webFileSystem = null; -#if UNITY_WEBGL -#if ENABLE_DOUYIN_MINI_GAME - // 创建字节小游戏文件系统 - if (hostServerURL.IsNullOrWhiteSpace()) - { - webFileSystem = ByteGameFileSystemCreater.CreateByteGameFileSystemParameters(); - } - else - { - webFileSystem = ByteGameFileSystemCreater.CreateByteGameFileSystemParameters(hostServerURL); - } -#elif ENABLE_WECHAT_MINI_GAME - WeChatWASM.WXBase.PreloadConcurrent(10); - // 创建微信小游戏文件系统 - if (hostServerURL.IsNullOrWhiteSpace()) - { - webFileSystem = WechatFileSystemCreater.CreateWechatFileSystemParameters(); - } - else - { - webFileSystem = WechatFileSystemCreater.CreateWechatPathFileSystemParameters(hostServerURL); - } -#else - // 创建默认WebGL文件系统 - webFileSystem = FileSystemParameters.CreateDefaultWebFileSystemParameters(); -#endif -#else - webFileSystem = FileSystemParameters.CreateDefaultWebServerFileSystemParameters(); -#endif - initParameters.WebServerFileSystemParameters = webFileSystem; - return resourcePackage.InitializeAsync(initParameters); - } - - private InitializationOperation InitializeYooAssetHostPlayMode(ResourcePackage resourcePackage, string hostServerURL, string fallbackHostServerURL, IDecryptionServices decryptionServices = null) - { - IRemoteServices remoteServices = new RemoteServices(hostServerURL, fallbackHostServerURL); - var cacheFileSystem = FileSystemParameters.CreateDefaultCacheFileSystemParameters(remoteServices); - var buildinFileSystem = FileSystemParameters.CreateDefaultBuildinFileSystemParameters(decryptionServices); - var initParameters = new HostPlayModeParameters(); - initParameters.BuildinFileSystemParameters = buildinFileSystem; - initParameters.CacheFileSystemParameters = cacheFileSystem; - return resourcePackage.InitializeAsync(initParameters); - } - } -} diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.Initialization.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.Initialization.cs.meta deleted file mode 100644 index 01b852d..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.Initialization.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 27ac1161024349ffb2be580dffce0510 -timeCreated: 1737343028 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.Pool.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.Pool.cs deleted file mode 100644 index b526c5e..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.Pool.cs +++ /dev/null @@ -1,71 +0,0 @@ -using AlicizaX.ObjectPool; -using AlicizaX; - -namespace AlicizaX.Resource.Runtime -{ - internal partial class ResourceModule - { - private IObjectPool _assetPool; - - /// - /// 获取或设置资源对象池自动释放可释放对象的间隔秒数。 - /// - public float AssetAutoReleaseInterval - { - get => _assetPool.AutoReleaseInterval; - set => _assetPool.AutoReleaseInterval = value; - } - - /// - /// 获取或设置资源对象池的容量。 - /// - public int AssetCapacity - { - get => _assetPool.Capacity; - set => _assetPool.Capacity = value; - } - - /// - /// 获取或设置资源对象池对象过期秒数。 - /// - public float AssetExpireTime - { - get => _assetPool.ExpireTime; - set => _assetPool.ExpireTime = value; - } - - /// - /// 获取或设置资源对象池的优先级。 - /// - public int AssetPriority - { - get => _assetPool.Priority; - set => _assetPool.Priority = value; - } - - /// - /// 卸载资源。 - /// - /// 要卸载的资源。 - public void UnloadAsset(object asset) - { - if (_assetPool != null) - { - _assetPool.Unspawn(asset); - } - } - - /// - /// 设置对象池管理器。 - /// - /// 对象池管理器。 - public void SetObjectPoolModule(IObjectPoolModule objectPoolModule) - { - if (objectPoolModule == null) - { - throw new GameFrameworkException("Object pool manager is invalid."); - } - _assetPool = objectPoolModule.CreateMultiSpawnObjectPool("Asset Pool"); - } - } -} diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.Pool.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.Pool.cs.meta deleted file mode 100644 index 77caba9..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.Pool.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 68d64211ccdc47846b6588e4c855e99e -timeCreated: 1706867111 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.Services.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.Services.cs deleted file mode 100644 index 8cedd1b..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.Services.cs +++ /dev/null @@ -1,178 +0,0 @@ -using System.IO; -using UnityEngine; -using YooAsset; - -namespace AlicizaX.Resource.Runtime -{ - /// - /// 远端资源地址查询服务类 - /// - class RemoteServices : IRemoteServices - { - private readonly string _defaultHostServer; - private readonly string _fallbackHostServer; - - public RemoteServices(string defaultHostServer, string fallbackHostServer) - { - _defaultHostServer = defaultHostServer; - _fallbackHostServer = fallbackHostServer; - } - - string IRemoteServices.GetRemoteMainURL(string fileName) - { - return $"{_defaultHostServer}/{fileName}"; - } - - string IRemoteServices.GetRemoteFallbackURL(string fileName) - { - return $"{_fallbackHostServer}/{fileName}"; - } - } - - /// - /// 资源文件流加载解密类 - /// - class FileStreamDecryption : IDecryptionServices - { - /// - /// 同步方式获取解密的资源包对象 - /// - DecryptResult IDecryptionServices.LoadAssetBundle(DecryptFileInfo fileInfo) - { - BundleStream bundleStream = new BundleStream(fileInfo.FileLoadPath, FileMode.Open, FileAccess.Read, FileShare.Read); - DecryptResult decryptResult = new DecryptResult(); - decryptResult.ManagedStream = bundleStream; - decryptResult.Result = AssetBundle.LoadFromStream(bundleStream, fileInfo.FileLoadCRC, GetManagedReadBufferSize()); - return decryptResult; - } - - /// - /// 异步方式获取解密的资源包对象 - /// - DecryptResult IDecryptionServices.LoadAssetBundleAsync(DecryptFileInfo fileInfo) - { - BundleStream bundleStream = new BundleStream(fileInfo.FileLoadPath, FileMode.Open, FileAccess.Read, FileShare.Read); - DecryptResult decryptResult = new DecryptResult(); - decryptResult.ManagedStream = bundleStream; - decryptResult.CreateRequest = AssetBundle.LoadFromStreamAsync(bundleStream, fileInfo.FileLoadCRC, GetManagedReadBufferSize()); - return decryptResult; - } - - /// - /// 后备方式获取解密的资源包 - /// 注意:当正常解密方法失败后,会触发后备加载! - /// 说明:建议通过LoadFromMemory()方法加载资源包作为保底机制。 - /// - DecryptResult IDecryptionServices.LoadAssetBundleFallback(DecryptFileInfo fileInfo) - { - byte[] fileData = File.ReadAllBytes(fileInfo.FileLoadPath); - var assetBundle = AssetBundle.LoadFromMemory(fileData); - DecryptResult decryptResult = new DecryptResult(); - decryptResult.Result = assetBundle; - return decryptResult; - } - - /// - /// 获取解密的字节数据 - /// - byte[] IDecryptionServices.ReadFileData(DecryptFileInfo fileInfo) - { - throw new System.NotImplementedException(); - } - - /// - /// 获取解密的文本数据 - /// - string IDecryptionServices.ReadFileText(DecryptFileInfo fileInfo) - { - throw new System.NotImplementedException(); - } - - private static uint GetManagedReadBufferSize() - { - return 1024; - } - } - - /// - /// 资源文件偏移加载解密类 - /// - class FileOffsetDecryption : IDecryptionServices - { - /// - /// 同步方式获取解密的资源包对象 - /// 注意:加载流对象在资源包对象释放的时候会自动释放 - /// - DecryptResult IDecryptionServices.LoadAssetBundle(DecryptFileInfo fileInfo) - { - DecryptResult decryptResult = new DecryptResult(); - decryptResult.ManagedStream = null; - decryptResult.Result = AssetBundle.LoadFromFile(fileInfo.FileLoadPath, fileInfo.FileLoadCRC, GetFileOffset()); - return decryptResult; - } - - /// - /// 异步方式获取解密的资源包对象 - /// 注意:加载流对象在资源包对象释放的时候会自动释放 - /// - DecryptResult IDecryptionServices.LoadAssetBundleAsync(DecryptFileInfo fileInfo) - { - DecryptResult decryptResult = new DecryptResult(); - decryptResult.ManagedStream = null; - decryptResult.CreateRequest = AssetBundle.LoadFromFileAsync(fileInfo.FileLoadPath, fileInfo.FileLoadCRC, GetFileOffset()); - return decryptResult; - } - - /// - /// 后备方式获取解密的资源包对象 - /// - DecryptResult IDecryptionServices.LoadAssetBundleFallback(DecryptFileInfo fileInfo) - { - return new DecryptResult(); - } - - /// - /// 获取解密的字节数据 - /// - byte[] IDecryptionServices.ReadFileData(DecryptFileInfo fileInfo) - { - throw new System.NotImplementedException(); - } - - /// - /// 获取解密的文本数据 - /// - string IDecryptionServices.ReadFileText(DecryptFileInfo fileInfo) - { - throw new System.NotImplementedException(); - } - - private static ulong GetFileOffset() - { - return 32; - } - } - - - public class BundleStream : FileStream - { - public const byte KEY = 64; - - public BundleStream(string path, FileMode mode, FileAccess access, FileShare share) : base(path, mode, access, share) - { - } - public BundleStream(string path, FileMode mode) : base(path, mode) - { - } - - public override int Read(byte[] array, int offset, int count) - { - var index = base.Read(array, offset, count); - for (int i = 0; i < array.Length; i++) - { - array[i] ^= KEY; - } - return index; - } - } -} diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.Services.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.Services.cs.meta deleted file mode 100644 index 02e227c..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.Services.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 23f82b31c7eb84345b86abf347084ac2 -timeCreated: 1679030837 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.cs deleted file mode 100644 index 8a388b1..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.cs +++ /dev/null @@ -1,1096 +0,0 @@ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Threading; -using AlicizaX.ObjectPool; -using AlicizaX; -using Cysharp.Threading.Tasks; -using UnityEngine; -using YooAsset; - -namespace AlicizaX.Resource.Runtime -{ - /// - /// 资源管理器。 - /// - internal sealed partial class ResourceModule : IResourceModule - { - /// - /// 默认资源包名称。 - /// - public string DefaultPackageName { get; set; } = "DefaultPackage"; - - /// - /// 资源系统运行模式。 - /// - public EPlayMode PlayMode { get; set; } = EPlayMode.OfflinePlayMode; - - public string DecryptionServices { get; set; } - - /// - /// 设置异步系统参数,每帧执行消耗的最大时间切片(单位:毫秒) - /// - public long Milliseconds { get; set; } = 30; - - - public int Priority - { - get => 2; - } - - private string _applicableGameVersion; - - private int _internalResourceVersion; - - /// - /// 获取当前资源适用的游戏版本号。 - /// - public string ApplicableGameVersion => _applicableGameVersion; - - /// - /// 获取当前内部资源版本号。 - /// - public int InternalResourceVersion => _internalResourceVersion; - - /// - /// 当前最新的包裹版本。 - /// - public string PackageVersion { set; get; } - - public int DownloadingMaxNum { get; set; } - - public int FailedTryAgain { get; set; } - - - #region internal - - /// - /// 默认资源包。 - /// - internal ResourcePackage DefaultPackage { private set; get; } - - /// - /// 资源包列表。 - /// - private Dictionary PackageMap { get; } = new Dictionary(); - - /// - /// 资源信息列表。 - /// - private readonly Dictionary _assetInfoMap = new Dictionary(); - - /// - /// 正在加载的资源列表。 - /// - private readonly HashSet _assetLoadingList = new HashSet(); - - #endregion - - public void Initialize() - { - // 初始化资源系统 - YooAssets.Initialize(new ResourceLogger()); - YooAssets.SetOperationSystemMaxTimeSlice(Milliseconds); - - // 创建默认的资源包 - string packageName = DefaultPackageName; - var defaultPackage = YooAssets.TryGetPackage(packageName); - if (defaultPackage == null) - { - defaultPackage = YooAssets.CreatePackage(packageName); - YooAssets.SetDefaultPackage(defaultPackage); - } - - DefaultPackage = defaultPackage; - - IObjectPoolModule objectPoolModule = ModuleSystem.GetModule(); - SetObjectPoolModule(objectPoolModule); - } - - - void IModule.Dispose() - { - PackageMap.Clear(); - _assetPool = null; - _assetLoadingList.Clear(); - _assetInfoMap.Clear(); - } - - public UniTask InitPackageAsync(string packageName = "", string hostServerURL = "", string fallbackHostServerURL = "") - { - if (string.IsNullOrEmpty(packageName)) - { - packageName = DefaultPackageName; - } - - if (PackageMap.TryGetValue(packageName, out var resPackage)) - { - if (resPackage.InitializeStatus is EOperationStatus.Processing or EOperationStatus.Succeed) - { - Log.Error($"ResourceSystem has already init package : {packageName}"); - return new UniTask(false); - } - else - { - PackageMap.Remove(packageName); - } - } - - var taskCompletionSource = new UniTaskCompletionSource(); - GameFrameworkGuard.NotNull(packageName, nameof(packageName)); - GameFrameworkGuard.NotNull(hostServerURL, nameof(hostServerURL)); - GameFrameworkGuard.NotNull(fallbackHostServerURL, nameof(fallbackHostServerURL)); - - // 创建默认的资源包 - var resourcePackage = YooAssets.TryGetPackage(packageName); - if (resourcePackage == null) - { - resourcePackage = YooAssets.CreatePackage(packageName); - } - - PackageMap[packageName] = resourcePackage; - - var initializationOperationHandler = CreateInitializationOperationHandler(resourcePackage, hostServerURL, fallbackHostServerURL, DecryptionServices); - initializationOperationHandler.Completed += asyncOperationBase => - { - if (asyncOperationBase.Error == null && asyncOperationBase.Status == EOperationStatus.Succeed && asyncOperationBase.IsDone) - { - taskCompletionSource.TrySetResult(true); - } - else - { - taskCompletionSource.TrySetException(new Exception(asyncOperationBase.Error)); - } - }; - return taskCompletionSource.Task; - } - - - /// - /// 获取当前资源包版本。 - /// - /// 指定资源包的名称。不传使用默认资源包 - /// 资源包版本。 - public string GetPackageVersion(string customPackageName = "") - { - var package = string.IsNullOrEmpty(customPackageName) - ? YooAssets.GetPackage(DefaultPackageName) - : YooAssets.GetPackage(customPackageName); - if (package == null) - { - return string.Empty; - } - - return package.GetPackageVersion(); - } - - /// - /// 异步更新最新包的版本。 - /// - /// 请求URL是否需要带时间戳。 - /// 超时时间。 - /// 指定资源包的名称。不传使用默认资源包 - /// 请求远端包裹的最新版本操作句柄。 - public RequestPackageVersionOperation RequestPackageVersionAsync(bool appendTimeTicks = false, int timeout = 60, - string customPackageName = "") - { - var package = string.IsNullOrEmpty(customPackageName) - ? YooAssets.GetPackage(DefaultPackageName) - : YooAssets.GetPackage(customPackageName); - return package.RequestPackageVersionAsync(appendTimeTicks, timeout); - } - - - /// - /// 向网络端请求并更新清单 - /// - /// 更新的包裹版本 - /// 超时时间(默认值:60秒) - /// 指定资源包的名称。不传使用默认资源包 - public UpdatePackageManifestOperation UpdatePackageManifestAsync(string packageVersion, int timeout = 60, string customPackageName = "") - { - var package = string.IsNullOrEmpty(customPackageName) - ? YooAssets.GetPackage(this.DefaultPackageName) - : YooAssets.GetPackage(customPackageName); - return package.UpdatePackageManifestAsync(packageVersion, timeout); - } - - - /// - /// 创建资源下载器,用于下载当前资源版本所有的资源包文件。 - /// - /// 指定资源包的名称。不传使用默认资源包 - public ResourceDownloaderOperation CreateResourceDownloader(string customPackageName = "") - { - ResourcePackage package = null; - if (string.IsNullOrEmpty(customPackageName)) - { - package = YooAssets.GetPackage(this.DefaultPackageName); - } - else - { - package = YooAssets.GetPackage(customPackageName); - } - - return package.CreateResourceDownloader(DownloadingMaxNum, FailedTryAgain); - } - - /// - /// 清理包裹未使用的缓存文件。 - /// - /// 文件清理方式。 - /// 指定资源包的名称。不传使用默认资源包 - public ClearCacheFilesOperation ClearCacheFilesAsync( - EFileClearMode clearMode = EFileClearMode.ClearUnusedBundleFiles, - string customPackageName = "") - { - var package = string.IsNullOrEmpty(customPackageName) - ? YooAssets.GetPackage(DefaultPackageName) - : YooAssets.GetPackage(customPackageName); - return package.ClearCacheFilesAsync(EFileClearMode.ClearUnusedBundleFiles); - } - - /// - /// 清理沙盒路径。 - /// - /// 指定资源包的名称。不传使用默认资源包 - public void ClearAllBundleFiles(string customPackageName = "") - { - var package = string.IsNullOrEmpty(customPackageName) - ? YooAssets.GetPackage(DefaultPackageName) - : YooAssets.GetPackage(customPackageName); - package.ClearCacheFilesAsync(EFileClearMode.ClearAllBundleFiles); - } - - #region 资源回收 - - public void OnLowMemory() - { - Log.Warning("Low memory reported..."); - _forceUnloadUnusedAssetsAction?.Invoke(true); - } - - private Action _forceUnloadUnusedAssetsAction; - - /// - /// 低内存回调保护。 - /// - /// 低内存行为。 - public void SetForceUnloadUnusedAssetsAction(Action action) - { - _forceUnloadUnusedAssetsAction = action; - } - - /// - /// 资源回收(卸载引用计数为零的资源)。 - /// - public void UnloadUnusedAssets() - { - _assetPool.ReleaseAllUnused(); - foreach (var package in PackageMap.Values) - { - if (package is { InitializeStatus: EOperationStatus.Succeed }) - { - package.UnloadUnusedAssetsAsync(); - } - } - } - - /// - /// 强制回收所有资源。 - /// - public void ForceUnloadAllAssets() - { -#if UNITY_WEBGL - Log.Warning($"WebGL not support invoke {nameof(ForceUnloadAllAssets)}"); - return; -#else - - foreach (var package in PackageMap.Values) - { - if (package is { InitializeStatus: EOperationStatus.Succeed }) - { - package.UnloadAllAssetsAsync(); - } - } -#endif - } - - public void ForceUnloadUnusedAssets(bool performGCCollect) - { - _forceUnloadUnusedAssetsAction?.Invoke(performGCCollect); - } - - #region Public Methods - - #region 获取资源信息 - - /// - /// 是否需要从远端更新下载。 - /// - /// 资源的定位地址。 - /// 资源包名称。 - public bool IsNeedDownloadFromRemote(string location, string packageName = "") - { - if (string.IsNullOrEmpty(packageName)) - { - return YooAssets.IsNeedDownloadFromRemote(location); - } - else - { - var package = YooAssets.GetPackage(packageName); - return package.IsNeedDownloadFromRemote(location); - } - } - - /// - /// 是否需要从远端更新下载。 - /// - /// 资源信息。 - /// 资源包名称。 - public bool IsNeedDownloadFromRemote(AssetInfo assetInfo, string packageName = "") - { - if (string.IsNullOrEmpty(packageName)) - { - return YooAssets.IsNeedDownloadFromRemote(assetInfo); - } - else - { - var package = YooAssets.GetPackage(packageName); - return package.IsNeedDownloadFromRemote(assetInfo); - } - } - - /// - /// 获取资源信息列表。 - /// - /// 资源标签。 - /// 资源包名称。 - /// 资源信息列表。 - public AssetInfo[] GetAssetInfos(string tag, string packageName = "") - { - if (string.IsNullOrEmpty(packageName)) - { - return YooAssets.GetAssetInfos(tag); - } - else - { - var package = YooAssets.GetPackage(packageName); - return package.GetAssetInfos(tag); - } - } - - /// - /// 获取资源信息列表。 - /// - /// 资源标签列表。 - /// 资源包名称。 - /// 资源信息列表。 - public AssetInfo[] GetAssetInfos(string[] tags, string packageName = "") - { - if (string.IsNullOrEmpty(packageName)) - { - return YooAssets.GetAssetInfos(tags); - } - else - { - var package = YooAssets.GetPackage(packageName); - return package.GetAssetInfos(tags); - } - } - - /// - /// 获取资源信息。 - /// - /// 资源的定位地址。 - /// 资源包名称。 - /// 资源信息。 - public AssetInfo GetAssetInfo(string location, string packageName = "") - { - if (string.IsNullOrEmpty(location)) - { - throw new GameFrameworkException("Asset name is invalid."); - } - - if (string.IsNullOrEmpty(packageName)) - { - if (_assetInfoMap.TryGetValue(location, out AssetInfo assetInfo)) - { - return assetInfo; - } - - assetInfo = YooAssets.GetAssetInfo(location); - _assetInfoMap[location] = assetInfo; - return assetInfo; - } - else - { - string key = $"{packageName}/{location}"; - if (_assetInfoMap.TryGetValue(key, out AssetInfo assetInfo)) - { - return assetInfo; - } - - var package = YooAssets.GetPackage(packageName); - if (package == null) - { - throw new GameFrameworkException($"The package does not exist. Package Name :{packageName}"); - } - - assetInfo = package.GetAssetInfo(location); - _assetInfoMap[key] = assetInfo; - return assetInfo; - } - } - - /// - /// 检查资源是否存在。 - /// - /// 资源定位地址。 - /// 资源包名称。 - /// 检查资源是否存在的结果。 - public HasAssetResult HasAsset(string location, string packageName = "") - { - if (string.IsNullOrEmpty(location)) - { - throw new GameFrameworkException("Asset name is invalid."); - } - - AssetInfo assetInfo = GetAssetInfo(location, packageName); - - if (!CheckLocationValid(location)) - { - return HasAssetResult.Valid; - } - - if (assetInfo == null) - { - return HasAssetResult.NotExist; - } - - if (IsNeedDownloadFromRemote(assetInfo)) - { - return HasAssetResult.AssetOnline; - } - - return HasAssetResult.AssetOnDisk; - } - - /// - /// 检查资源定位地址是否有效。 - /// - /// 资源的定位地址 - /// 资源包名称。 - public bool CheckLocationValid(string location, string packageName = "") - { - if (string.IsNullOrEmpty(packageName)) - { - return YooAssets.CheckLocationValid(location); - } - else - { - var package = YooAssets.GetPackage(packageName); - return package.CheckLocationValid(location); - } - } - - #endregion - - #region 资源加载 - - #region 获取资源句柄 - - /// - /// 获取同步资源句柄。 - /// - /// 资源定位地址。 - /// 指定资源包的名称。不传使用默认资源包 - /// 资源类型。 - /// 资源句柄。 - private AssetHandle GetHandleSync(string location, string packageName = "") where T : UnityEngine.Object - { - return GetHandleSync(location, typeof(T), packageName); - } - - private AssetHandle GetHandleSync(string location, Type assetType, string packageName = "") - { - if (string.IsNullOrEmpty(packageName)) - { - return YooAssets.LoadAssetSync(location, assetType); - } - - var package = YooAssets.GetPackage(packageName); - return package.LoadAssetSync(location, assetType); - } - - /// - /// 获取异步资源句柄。 - /// - /// 资源定位地址。 - /// 指定资源包的名称。不传使用默认资源包 - /// 资源类型。 - /// 资源句柄。 - private AssetHandle GetHandleAsync(string location, string packageName = "") where T : UnityEngine.Object - { - return GetHandleAsync(location, typeof(T), packageName); - } - - private AssetHandle GetHandleAsync(string location, Type assetType, string packageName = "") - { - if (string.IsNullOrEmpty(packageName)) - { - return YooAssets.LoadAssetAsync(location, assetType); - } - - var package = YooAssets.GetPackage(packageName); - return package.LoadAssetAsync(location, assetType); - } - - #endregion - - /// - /// 获取资源定位地址的缓存Key。 - /// - /// 资源定位地址。 - /// 资源包名称。 - /// 资源定位地址的缓存Key。 - private string GetCacheKey(string location, string packageName = "") - { - if (string.IsNullOrEmpty(packageName) || packageName.Equals(DefaultPackageName)) - { - return location; - } - - return $"{packageName}/{location}"; - } - - public T LoadAsset(string location, string packageName = "") where T : UnityEngine.Object - { - if (string.IsNullOrEmpty(location)) - { - throw new GameFrameworkException("Asset name is invalid."); - } - - if (!CheckLocationValid(location, packageName)) - { - Log.Error($"Could not found location [{location}]."); - return null; - } - - string assetObjectKey = GetCacheKey(location, packageName); - AssetObject assetObject = _assetPool.Spawn(assetObjectKey); - if (assetObject != null) - { - return assetObject.Target as T; - } - - AssetHandle handle = GetHandleSync(location, packageName: packageName); - - T ret = handle.AssetObject as T; - - assetObject = AssetObject.Create(assetObjectKey, handle.AssetObject, handle, this); - _assetPool.Register(assetObject, true); - - return ret; - } - - public GameObject LoadGameObject(string location, Transform parent = null, string packageName = "") - { - if (string.IsNullOrEmpty(location)) - { - throw new GameFrameworkException("Asset name is invalid."); - } - - if (!CheckLocationValid(location, packageName)) - { - Log.Error($"Could not found location [{location}]."); - return null; - } - - string assetObjectKey = GetCacheKey(location, packageName); - AssetObject assetObject = _assetPool.Spawn(assetObjectKey); - if (assetObject != null) - { - return AssetsReference.Instantiate(assetObject.Target as GameObject, parent, this).gameObject; - } - - AssetHandle handle = GetHandleSync(location, packageName: packageName); - - GameObject gameObject = AssetsReference.Instantiate(handle.AssetObject as GameObject, parent, this).gameObject; - - assetObject = AssetObject.Create(assetObjectKey, handle.AssetObject, handle, this); - _assetPool.Register(assetObject, true); - - return gameObject; - } - - /// - /// 异步加载资源。 - /// - /// 资源的定位地址。 - /// 回调函数。 - /// 指定资源包的名称。不传使用默认资源包 - /// 要加载资源的类型。 - public async UniTaskVoid LoadAsset(string location, Action callback, string packageName = "") where T : UnityEngine.Object - { - if (string.IsNullOrEmpty(location)) - { - Log.Error("Asset name is invalid."); - return; - } - - if (string.IsNullOrEmpty(location)) - { - throw new GameFrameworkException("Asset name is invalid."); - } - - if (!CheckLocationValid(location, packageName)) - { - Log.Error($"Could not found location [{location}]."); - callback?.Invoke(null); - return; - } - - string assetObjectKey = GetCacheKey(location, packageName); - - await TryWaitingLoading(assetObjectKey); - - AssetObject assetObject = _assetPool.Spawn(assetObjectKey); - if (assetObject != null) - { - await UniTask.Yield(); - callback?.Invoke(assetObject.Target as T); - return; - } - - _assetLoadingList.Add(assetObjectKey); - - AssetHandle handle = GetHandleAsync(location, packageName: packageName); - - handle.Completed += assetHandle => - { - _assetLoadingList.Remove(assetObjectKey); - - if (assetHandle.AssetObject != null) - { - assetObject = AssetObject.Create(assetObjectKey, handle.AssetObject, handle, this); - _assetPool.Register(assetObject, true); - - callback?.Invoke(assetObject.Target as T); - } - else - { - callback?.Invoke(null); - } - }; - } - - public async UniTask LoadAssetAsync(string location, CancellationToken cancellationToken = default, string packageName = "") where T : UnityEngine.Object - { - if (string.IsNullOrEmpty(location)) - { - throw new GameFrameworkException("Asset name is invalid."); - } - - if (!CheckLocationValid(location, packageName)) - { - Log.Error($"Could not found location [{location}]."); - return null; - } - - - string assetObjectKey = GetCacheKey(location, packageName); - - await TryWaitingLoading(assetObjectKey); - - AssetObject assetObject = _assetPool.Spawn(assetObjectKey); - if (assetObject != null) - { - await UniTask.Yield(); - return assetObject.Target as T; - } - - _assetLoadingList.Add(assetObjectKey); - - AssetHandle handle = GetHandleAsync(location, packageName: packageName); - - bool cancelOrFailed = await handle.ToUniTask().AttachExternalCancellation(cancellationToken).SuppressCancellationThrow(); - - if (cancelOrFailed) - { - _assetLoadingList.Remove(assetObjectKey); - return null; - } - - assetObject = AssetObject.Create(assetObjectKey, handle.AssetObject, handle, this); - _assetPool.Register(assetObject, true); - - _assetLoadingList.Remove(assetObjectKey); - - return handle.AssetObject as T; - } - - public async UniTask LoadGameObjectAsync(string location, Transform parent = null, CancellationToken cancellationToken = default, string packageName = "") - { - if (string.IsNullOrEmpty(location)) - { - throw new GameFrameworkException("Asset name is invalid."); - } - - if (!CheckLocationValid(location, packageName)) - { - Log.Error($"Could not found location [{location}]."); - return null; - } - - string assetObjectKey = GetCacheKey(location, packageName); - - await TryWaitingLoading(assetObjectKey); - - AssetObject assetObject = _assetPool.Spawn(assetObjectKey); - if (assetObject != null) - { - await UniTask.Yield(); - return AssetsReference.Instantiate(assetObject.Target as GameObject, parent, this).gameObject; - } - - _assetLoadingList.Add(assetObjectKey); - - AssetHandle handle = GetHandleAsync(location, packageName: packageName); - - bool cancelOrFailed = await handle.ToUniTask().AttachExternalCancellation(cancellationToken).SuppressCancellationThrow(); - - if (cancelOrFailed) - { - _assetLoadingList.Remove(assetObjectKey); - return null; - } - - GameObject gameObject = AssetsReference.Instantiate(handle.AssetObject as GameObject, parent, this).gameObject; - - assetObject = AssetObject.Create(assetObjectKey, handle.AssetObject, handle, this); - _assetPool.Register(assetObject, true); - - _assetLoadingList.Remove(assetObjectKey); - - return gameObject; - } - - #endregion - - /// - /// 异步加载资源。 - /// - /// 资源的定位地址。 - /// 要加载资源的类型。 - /// 加载资源的优先级。 - /// 加载资源回调函数集。 - /// 用户自定义数据。 - /// 指定资源包的名称。不传使用默认资源包。 - public async void LoadAssetAsync(string location, Type assetType, int priority, LoadAssetCallbacks loadAssetCallbacks, object userData, string packageName = "") - { - if (string.IsNullOrEmpty(location)) - { - throw new GameFrameworkException("Asset name is invalid."); - } - - if (loadAssetCallbacks == null) - { - throw new GameFrameworkException("Load asset callbacks is invalid."); - } - - if (!CheckLocationValid(location, packageName)) - { - string errorMessage = Utility.Text.Format("Could not found location [{0}].", location); - Log.Error(errorMessage); - if (loadAssetCallbacks.LoadAssetFailureCallback != null) - { - loadAssetCallbacks.LoadAssetFailureCallback(location, LoadResourceStatus.NotExist, errorMessage, userData); - } - return; - } - - string assetObjectKey = GetCacheKey(location, packageName); - - await TryWaitingLoading(assetObjectKey); - - float duration = Time.time; - - AssetObject assetObject = _assetPool.Spawn(assetObjectKey); - if (assetObject != null) - { - await UniTask.Yield(); - loadAssetCallbacks.LoadAssetSuccessCallback(location, assetObject.Target, Time.time - duration, userData); - return; - } - - _assetLoadingList.Add(assetObjectKey); - - AssetInfo assetInfo = GetAssetInfo(location, packageName); - - if (!string.IsNullOrEmpty(assetInfo.Error)) - { - _assetLoadingList.Remove(assetObjectKey); - - string errorMessage = Utility.Text.Format("Can not load asset '{0}' because :'{1}'.", location, assetInfo.Error); - if (loadAssetCallbacks.LoadAssetFailureCallback != null) - { - loadAssetCallbacks.LoadAssetFailureCallback(location, LoadResourceStatus.NotExist, errorMessage, userData); - return; - } - - throw new GameFrameworkException(errorMessage); - } - - AssetHandle handle = GetHandleAsync(location, assetType, packageName: packageName); - - if (loadAssetCallbacks.LoadAssetUpdateCallback != null) - { - InvokeProgress(location, handle, loadAssetCallbacks.LoadAssetUpdateCallback, userData).Forget(); - } - - await handle.ToUniTask(); - - if (handle.AssetObject == null || handle.Status == EOperationStatus.Failed) - { - _assetLoadingList.Remove(assetObjectKey); - - string errorMessage = Utility.Text.Format("Can not load asset '{0}'.", location); - if (loadAssetCallbacks.LoadAssetFailureCallback != null) - { - loadAssetCallbacks.LoadAssetFailureCallback(location, LoadResourceStatus.NotReady, errorMessage, userData); - return; - } - - throw new GameFrameworkException(errorMessage); - } - else - { - assetObject = AssetObject.Create(assetObjectKey, handle.AssetObject, handle, this); - _assetPool.Register(assetObject, true); - - _assetLoadingList.Remove(assetObjectKey); - - if (loadAssetCallbacks.LoadAssetSuccessCallback != null) - { - duration = Time.time - duration; - - loadAssetCallbacks.LoadAssetSuccessCallback(location, handle.AssetObject, duration, userData); - } - } - } - - /// - /// 异步加载资源。 - /// - /// 资源的定位地址。 - /// 加载资源的优先级。 - /// 加载资源回调函数集。 - /// 用户自定义数据。 - /// 指定资源包的名称。不传使用默认资源包。 - public async void LoadAssetAsync(string location, int priority, LoadAssetCallbacks loadAssetCallbacks, object userData, string packageName = "") - { - if (string.IsNullOrEmpty(location)) - { - throw new GameFrameworkException("Asset name is invalid."); - } - - if (loadAssetCallbacks == null) - { - throw new GameFrameworkException("Load asset callbacks is invalid."); - } - - if (!CheckLocationValid(location, packageName)) - { - string errorMessage = Utility.Text.Format("Could not found location [{0}].", location); - Log.Error(errorMessage); - if (loadAssetCallbacks.LoadAssetFailureCallback != null) - { - loadAssetCallbacks.LoadAssetFailureCallback(location, LoadResourceStatus.NotExist, errorMessage, userData); - } - return; - } - - string assetObjectKey = GetCacheKey(location, packageName); - - await TryWaitingLoading(assetObjectKey); - - float duration = Time.time; - - AssetObject assetObject = _assetPool.Spawn(assetObjectKey); - if (assetObject != null) - { - await UniTask.Yield(); - loadAssetCallbacks.LoadAssetSuccessCallback(location, assetObject.Target, Time.time - duration, userData); - return; - } - - _assetLoadingList.Add(assetObjectKey); - - AssetInfo assetInfo = GetAssetInfo(location, packageName); - - if (!string.IsNullOrEmpty(assetInfo.Error)) - { - _assetLoadingList.Remove(assetObjectKey); - - string errorMessage = Utility.Text.Format("Can not load asset '{0}' because :'{1}'.", location, assetInfo.Error); - if (loadAssetCallbacks.LoadAssetFailureCallback != null) - { - loadAssetCallbacks.LoadAssetFailureCallback(location, LoadResourceStatus.NotExist, errorMessage, userData); - return; - } - - throw new GameFrameworkException(errorMessage); - } - - AssetHandle handle = GetHandleAsync(location, assetInfo.AssetType, packageName: packageName); - - if (loadAssetCallbacks.LoadAssetUpdateCallback != null) - { - InvokeProgress(location, handle, loadAssetCallbacks.LoadAssetUpdateCallback, userData).Forget(); - } - - await handle.ToUniTask(); - - if (handle.AssetObject == null || handle.Status == EOperationStatus.Failed) - { - _assetLoadingList.Remove(assetObjectKey); - - string errorMessage = Utility.Text.Format("Can not load asset '{0}'.", location); - if (loadAssetCallbacks.LoadAssetFailureCallback != null) - { - loadAssetCallbacks.LoadAssetFailureCallback(location, LoadResourceStatus.NotReady, errorMessage, userData); - return; - } - - throw new GameFrameworkException(errorMessage); - } - else - { - assetObject = AssetObject.Create(assetObjectKey, handle.AssetObject, handle, this); - _assetPool.Register(assetObject, true); - - _assetLoadingList.Remove(assetObjectKey); - - if (loadAssetCallbacks.LoadAssetSuccessCallback != null) - { - duration = Time.time - duration; - - loadAssetCallbacks.LoadAssetSuccessCallback(location, handle.AssetObject, duration, userData); - } - } - } - - private async UniTaskVoid InvokeProgress(string location, AssetHandle assetHandle, LoadAssetUpdateCallback loadAssetUpdateCallback, object userData) - { - if (string.IsNullOrEmpty(location)) - { - throw new GameFrameworkException("Asset name is invalid."); - } - - if (loadAssetUpdateCallback != null) - { - while (assetHandle is { IsValid: true, IsDone: false }) - { - await UniTask.Yield(); - - loadAssetUpdateCallback.Invoke(location, assetHandle.Progress, userData); - } - } - } - - /// - /// 获取同步加载的资源操作句柄。 - /// - /// 资源定位地址。 - /// 资源包名称。 - /// 资源类型。 - /// 资源操作句柄。 - public AssetHandle LoadAssetSyncHandle(string location, string packageName = "") where T : UnityEngine.Object - { - if (string.IsNullOrEmpty(packageName)) - { - return YooAssets.LoadAssetSync(location); - } - - var package = YooAssets.GetPackage(packageName); - return package.LoadAssetSync(location); - } - - /// - /// 获取异步加载的资源操作句柄。 - /// - /// 资源定位地址。 - /// 资源包名称。 - /// 资源类型。 - /// 资源操作句柄。 - public AssetHandle LoadAssetAsyncHandle(string location, string packageName = "") where T : UnityEngine.Object - { - if (string.IsNullOrEmpty(packageName)) - { - return YooAssets.LoadAssetAsync(location); - } - - var package = YooAssets.GetPackage(packageName); - return package.LoadAssetAsync(location); - } - - #endregion - - private readonly TimeoutController _timeoutController = new TimeoutController(); - - private async UniTask TryWaitingLoading(string assetObjectKey) - { - if (_assetLoadingList.Contains(assetObjectKey)) - { - try - { - await UniTask.WaitUntil(() => !_assetLoadingList.Contains(assetObjectKey)) -#if UNITY_EDITOR - .AttachExternalCancellation(_timeoutController.Timeout(TimeSpan.FromSeconds(60))); - _timeoutController.Reset(); -#else - ; -#endif - } - catch (OperationCanceledException ex) - { - if (_timeoutController.IsTimeout()) - { - Log.Error($"LoadAssetAsync Waiting {assetObjectKey} timeout. reason:{ex.Message}"); - } - } - } - } - - #endregion - - #region 设置下载系统参数,自定义下载请求 - - /// - /// 设置下载系统参数,自定义下载请求。 - /// - /// 自定义下载器的请求委托。 - public void SetDownloadSystemUnityWebRequest(UnityWebRequestDelegate downloadSystemUnityWebRequest) - { - YooAssets.SetDownloadSystemUnityWebRequest(downloadSystemUnityWebRequest); - } - - public UnityEngine.Networking.UnityWebRequest CustomWebRequester(string url) - { - var request = new UnityEngine.Networking.UnityWebRequest(url, UnityEngine.Networking.UnityWebRequest.kHttpVerbGET); - var authorization = GetAuthorization("Admin", "12345"); - request.SetRequestHeader("AUTHORIZATION", authorization); - return request; - } - - private string GetAuthorization(string userName, string password) - { - string auth = $"{userName}:{password}"; - var bytes = System.Text.Encoding.GetEncoding("ISO-8859-1").GetBytes(auth); - return $"Basic {Convert.ToBase64String(bytes)}"; - } - - #endregion - } -} diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.cs.meta deleted file mode 100644 index 82f4410..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 132ce4e1754bf78429c5f36e298ac40f -timeCreated: 1678969240 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/link.xml b/Client/Packages/com.alicizax.unity.resource/Runtime/link.xml deleted file mode 100644 index 10b8269..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/link.xml +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/link.xml.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/link.xml.meta deleted file mode 100644 index cbb7348..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/link.xml.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 46f73f9e5371452fa5bb613efd8b7131 -timeCreated: 1737098180 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/package.json b/Client/Packages/com.alicizax.unity.resource/package.json deleted file mode 100644 index f555d1d..0000000 --- a/Client/Packages/com.alicizax.unity.resource/package.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "name": "com.alicizax.unity.resource", - "displayName": "Aliciza X Resource", - "category": "Aliciza X", - "description": "Aliciza X Resource Component", - "version": "1.0.1", - "unity": "2017.1", - "keywords": [ - "Aliciza X" - ], - "repository": { - "name": "com.alicizax.unity", - "url": "http://101.34.252.46:3000/AlicizaX/", - "type": "git" - }, - "author": { - "name": "Yuliuren", - "email": "yuliuren00@gmail.com" - }, - "dependencies": { - } -} diff --git a/Client/Packages/com.alicizax.unity.resource/package.json.meta b/Client/Packages/com.alicizax.unity.resource/package.json.meta deleted file mode 100644 index c2d1465..0000000 --- a/Client/Packages/com.alicizax.unity.resource/package.json.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 3418f1cfb0886604b9f90049151b2693 -PackageManifestImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.scene/LICENSE.md b/Client/Packages/com.alicizax.unity.scene/LICENSE.md deleted file mode 100644 index 4e6513a..0000000 --- a/Client/Packages/com.alicizax.unity.scene/LICENSE.md +++ /dev/null @@ -1,201 +0,0 @@ - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - -TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - -1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - -2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - -3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - -4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - -5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - -6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - -7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - -8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - -9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - -END OF TERMS AND CONDITIONS - -APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - -Copyright [2023] [ALianBlank of copyright owner][alianblank@outlook.com][https://alianblank.com/] - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. diff --git a/Client/Packages/com.alicizax.unity.scene/LICENSE.md.meta b/Client/Packages/com.alicizax.unity.scene/LICENSE.md.meta deleted file mode 100644 index 78c466f..0000000 --- a/Client/Packages/com.alicizax.unity.scene/LICENSE.md.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 9a457af1288280e488d058a56ea8245f -TextScriptImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.scene/Runtime.meta b/Client/Packages/com.alicizax.unity.scene/Runtime.meta deleted file mode 100644 index 32a63ce..0000000 --- a/Client/Packages/com.alicizax.unity.scene/Runtime.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: ef5ed9fdb66333a4e9bcbacbf4c42b5a -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.scene/Runtime/AlicizaX.Scene.Runtime.asmdef b/Client/Packages/com.alicizax.unity.scene/Runtime/AlicizaX.Scene.Runtime.asmdef deleted file mode 100644 index 6231a1a..0000000 --- a/Client/Packages/com.alicizax.unity.scene/Runtime/AlicizaX.Scene.Runtime.asmdef +++ /dev/null @@ -1,20 +0,0 @@ -{ - "name": "AlicizaX.Scene.Runtime", - "rootNamespace": "AlicizaX.Scene.Runtime", - "references": [ - "GUID:75b6f2078d190f14dbda4a5b747d709c", - "GUID:4041d17782e62754ba8777fe2dfb6b27", - "GUID:f51ebe6a0ceec4240a699833d6309b23", - "GUID:be2f20a77f3232f44b9711ef43234aac", - "GUID:e34a5702dd353724aa315fb8011f08c3" - ], - "includePlatforms": [], - "excludePlatforms": [], - "allowUnsafeCode": true, - "overrideReferences": false, - "precompiledReferences": [], - "autoReferenced": true, - "defineConstraints": [], - "versionDefines": [], - "noEngineReferences": false -} \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.scene/Runtime/AlicizaX.Scene.Runtime.asmdef.meta b/Client/Packages/com.alicizax.unity.scene/Runtime/AlicizaX.Scene.Runtime.asmdef.meta deleted file mode 100644 index 83652ee..0000000 --- a/Client/Packages/com.alicizax.unity.scene/Runtime/AlicizaX.Scene.Runtime.asmdef.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 000cc1eaf688c5246be5328cb0cf16c8 -AssemblyDefinitionImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.scene/Runtime/Scene.meta b/Client/Packages/com.alicizax.unity.scene/Runtime/Scene.meta deleted file mode 100644 index bc292df..0000000 --- a/Client/Packages/com.alicizax.unity.scene/Runtime/Scene.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: a904919137204c579e29194387a084d6 -timeCreated: 1737381345 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.scene/Runtime/Scene/ISceneModule.cs b/Client/Packages/com.alicizax.unity.scene/Runtime/Scene/ISceneModule.cs deleted file mode 100644 index 9011a24..0000000 --- a/Client/Packages/com.alicizax.unity.scene/Runtime/Scene/ISceneModule.cs +++ /dev/null @@ -1,90 +0,0 @@ -using System; -using AlicizaX.Resource.Runtime; -using AlicizaX; -using Cysharp.Threading.Tasks; -using UnityEngine.SceneManagement; -using YooAsset; - -namespace AlicizaX.Scene.Runtime -{ - public interface ISceneModule : IModule,IModuleAwake - { - /// - /// 当前主场景名称。 - /// - public string CurrentMainSceneName { get; } - - /// - /// 加载场景。 - /// - /// 场景的定位地址 - /// 场景加载模式 - /// 加载完毕时是否主动挂起 - /// 优先级 - /// 加载主场景是否回收垃圾。 - /// 加载进度回调。 - public UniTask LoadSceneAsync(string location, LoadSceneMode sceneMode = LoadSceneMode.Single, bool suspendLoad = false, uint priority = 100, bool gcCollect = true, - Action progressCallBack = null); - - /// - /// 加载场景。 - /// - /// 场景的定位地址 - /// 场景加载模式 - /// 加载完毕时是否主动挂起 - /// 优先级 - /// 加载回调。 - /// 加载主场景是否回收垃圾。 - /// 加载进度回调。 - public void LoadScene(string location, - LoadSceneMode sceneMode = LoadSceneMode.Single, - bool suspendLoad = false, - uint priority = 100, - Action callBack = null, - bool gcCollect = true, - Action progressCallBack = null); - - /// - /// 激活场景(当同时存在多个场景时用于切换激活场景)。 - /// - /// 场景资源定位地址。 - /// 是否操作成功。 - public bool ActivateScene(string location); - - /// - /// 解除场景加载挂起操作。 - /// - /// 场景资源定位地址。 - /// 是否操作成功。 - public bool UnSuspend(string location); - - /// - /// 是否为主场景。 - /// - /// 场景资源定位地址。 - /// 是否主场景。 - public bool IsMainScene(string location); - - /// - /// 异步卸载子场景。 - /// - /// 场景资源定位地址。 - /// 进度回调。 - public UniTask UnloadAsync(string location, Action progressCallBack = null); - - /// - /// 异步卸载子场景。 - /// - /// 场景资源定位地址。 - /// 卸载完成回调。 - /// 进度回调。 - public void Unload(string location, Action callBack = null, Action progressCallBack = null); - - /// - /// 是否包含场景。 - /// - /// 场景资源定位地址。 - /// 是否包含场景。 - public bool IsContainScene(string location); - } -} diff --git a/Client/Packages/com.alicizax.unity.scene/Runtime/Scene/ISceneModule.cs.meta b/Client/Packages/com.alicizax.unity.scene/Runtime/Scene/ISceneModule.cs.meta deleted file mode 100644 index 6fa734c..0000000 --- a/Client/Packages/com.alicizax.unity.scene/Runtime/Scene/ISceneModule.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 861177fef6ea4c02a3aae34fa55b7ab0 -timeCreated: 1738733678 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.scene/Runtime/Scene/SceneComponent.cs b/Client/Packages/com.alicizax.unity.scene/Runtime/Scene/SceneComponent.cs deleted file mode 100644 index 3964062..0000000 --- a/Client/Packages/com.alicizax.unity.scene/Runtime/Scene/SceneComponent.cs +++ /dev/null @@ -1,16 +0,0 @@ -using System; -using AlicizaX; -using UnityEngine; - -namespace AlicizaX.Scene.Runtime -{ - [DisallowMultipleComponent] - [AddComponentMenu("Game Framework/Scene")] - public sealed class SceneComponent : MonoBehaviour - { - private void Awake() - { - ModuleSystem.RegisterModule(); - } - } -} diff --git a/Client/Packages/com.alicizax.unity.scene/Runtime/Scene/SceneComponent.cs.meta b/Client/Packages/com.alicizax.unity.scene/Runtime/Scene/SceneComponent.cs.meta deleted file mode 100644 index 28f77fd..0000000 --- a/Client/Packages/com.alicizax.unity.scene/Runtime/Scene/SceneComponent.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: a21ca977c2264066ab0da2058aaecb24 -timeCreated: 1742461878 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.scene/Runtime/Scene/SceneModule.cs b/Client/Packages/com.alicizax.unity.scene/Runtime/Scene/SceneModule.cs deleted file mode 100644 index 4ca667e..0000000 --- a/Client/Packages/com.alicizax.unity.scene/Runtime/Scene/SceneModule.cs +++ /dev/null @@ -1,408 +0,0 @@ -using System; -using System.Collections.Generic; -using AlicizaX.Resource.Runtime; -using Cysharp.Threading.Tasks; -using UnityEngine.SceneManagement; -using YooAsset; - -namespace AlicizaX.Scene.Runtime -{ - internal class SceneModule : ISceneModule - { - private string _currentMainSceneName = string.Empty; - - private SceneHandle _currentMainScene; - - private readonly Dictionary _subScenes = new Dictionary(); - - private readonly HashSet _handlingScene = new HashSet(); - - /// - /// 当前主场景名称。 - /// - public string CurrentMainSceneName => _currentMainSceneName; - - void IModuleAwake.Awake() - { - _currentMainScene = null; - _currentMainSceneName = SceneManager.GetSceneByBuildIndex(0).name; - } - - void IModule.Dispose() - { - var iter = _subScenes.Values.GetEnumerator(); - while (iter.MoveNext()) - { - SceneHandle subScene = iter.Current; - if (subScene != null) - { - subScene.UnloadAsync(); - } - } - - iter.Dispose(); - _subScenes.Clear(); - _handlingScene.Clear(); - _currentMainSceneName = string.Empty; - } - - - /// - /// 加载场景。 - /// - /// 场景的定位地址 - /// 场景加载模式 - /// 加载完毕时是否主动挂起 - /// 优先级 - /// 加载主场景是否回收垃圾。 - /// 加载进度回调。 - public async UniTask LoadSceneAsync(string location, LoadSceneMode sceneMode = LoadSceneMode.Single, bool suspendLoad = false, uint priority = 100, bool gcCollect = true, Action progressCallBack = null) - { - if (!_handlingScene.Add(location)) - { - Log.Error($"Could not load scene while loading. Scene: {location}"); - return default; - } - - if (sceneMode == LoadSceneMode.Additive) - { - if (_subScenes.TryGetValue(location, out SceneHandle subScene)) - { - throw new Exception($"Could not load subScene while already loaded. Scene: {location}"); - } - - subScene = YooAssets.LoadSceneAsync(location, sceneMode, LocalPhysicsMode.None, suspendLoad, priority); - - //Fix 这里前置,subScene.IsDone在UnSupendLoad之后才会是true - _subScenes.Add(location, subScene); - - if (progressCallBack != null) - { - while (!subScene.IsDone && subScene.IsValid) - { - progressCallBack.Invoke(subScene.Progress); - await UniTask.Yield(); - } - } - else - { - await subScene.ToUniTask(); - } - - _handlingScene.Remove(location); - - return subScene.SceneObject; - } - else - { - if (_currentMainScene is { IsDone: false }) - { - throw new Exception($"Could not load MainScene while loading. CurrentMainScene: {_currentMainSceneName}."); - } - - _currentMainSceneName = location; - - _currentMainScene = YooAssets.LoadSceneAsync(location, sceneMode, LocalPhysicsMode.None, suspendLoad, priority); - - if (progressCallBack != null) - { - while (!_currentMainScene.IsDone && _currentMainScene.IsValid) - { - progressCallBack.Invoke(_currentMainScene.Progress); - await UniTask.Yield(); - } - } - else - { - await _currentMainScene.ToUniTask(); - } - - ModuleSystem.GetModule().ForceUnloadUnusedAssets(gcCollect); - - _handlingScene.Remove(location); - - return _currentMainScene.SceneObject; - } - } - - /// - /// 加载场景。 - /// - /// 场景的定位地址 - /// 场景加载模式 - /// 加载完毕时是否主动挂起 - /// 优先级 - /// 加载回调。 - /// 加载主场景是否回收垃圾。 - /// 加载进度回调。 - public void LoadScene(string location, LoadSceneMode sceneMode = LoadSceneMode.Single, bool suspendLoad = false, uint priority = 100, - Action callBack = null, - bool gcCollect = true, Action progressCallBack = null) - { - if (!_handlingScene.Add(location)) - { - Log.Error($"Could not load scene while loading. Scene: {location}"); - return; - } - - if (sceneMode == LoadSceneMode.Additive) - { - if (_subScenes.TryGetValue(location, out SceneHandle subScene)) - { - Log.Warning($"Could not load subScene while already loaded. Scene: {location}"); - return; - } - - subScene = YooAssets.LoadSceneAsync(location, sceneMode, LocalPhysicsMode.None, suspendLoad, priority); - - subScene.Completed += handle => - { - _handlingScene.Remove(location); - callBack?.Invoke(handle.SceneObject); - }; - - if (progressCallBack != null) - { - InvokeProgress(subScene, progressCallBack).Forget(); - } - - _subScenes.Add(location, subScene); - } - else - { - if (_currentMainScene is { IsDone: false }) - { - Log.Warning($"Could not load MainScene while loading. CurrentMainScene: {_currentMainSceneName}."); - return; - } - - _currentMainSceneName = location; - - _currentMainScene = YooAssets.LoadSceneAsync(location, sceneMode, LocalPhysicsMode.None, suspendLoad, priority); - - _currentMainScene.Completed += handle => - { - _handlingScene.Remove(location); - callBack?.Invoke(handle.SceneObject); - }; - - if (progressCallBack != null) - { - InvokeProgress(_currentMainScene, progressCallBack).Forget(); - } - - ModuleSystem.GetModule().ForceUnloadUnusedAssets(gcCollect); - } - } - - private async UniTaskVoid InvokeProgress(SceneHandle sceneHandle, Action progress) - { - if (sceneHandle == null) - { - return; - } - - while (!sceneHandle.IsDone && sceneHandle.IsValid) - { - await UniTask.Yield(); - - progress?.Invoke(sceneHandle.Progress); - } - } - - /// - /// 激活场景(当同时存在多个场景时用于切换激活场景)。 - /// - /// 场景资源定位地址。 - /// 是否操作成功。 - public bool ActivateScene(string location) - { - if (_currentMainSceneName.Equals(location)) - { - if (_currentMainScene != null) - { - return _currentMainScene.ActivateScene(); - } - - return false; - } - - _subScenes.TryGetValue(location, out SceneHandle subScene); - if (subScene != null) - { - return subScene.ActivateScene(); - } - - Log.Warning($"IsMainScene invalid location:{location}"); - return false; - } - - /// - /// 解除场景加载挂起操作。 - /// - /// 场景资源定位地址。 - /// 是否操作成功。 - public bool UnSuspend(string location) - { - if (_currentMainSceneName.Equals(location)) - { - if (_currentMainScene != null) - { - return _currentMainScene.UnSuspend(); - } - - return false; - } - - _subScenes.TryGetValue(location, out SceneHandle subScene); - if (subScene != null) - { - return subScene.UnSuspend(); - } - - Log.Warning($"IsMainScene invalid location:{location}"); - return false; - } - - /// - /// 是否为主场景。 - /// - /// 场景资源定位地址。 - /// 是否主场景。 - public bool IsMainScene(string location) - { - // 获取当前激活的场景 - UnityEngine.SceneManagement.Scene currentScene = SceneManager.GetActiveScene(); - - if (_currentMainSceneName.Equals(location)) - { - if (_currentMainScene == null) - { - return false; - } - - // 判断当前场景是否是主场景 - if (currentScene.name == _currentMainScene.SceneName) - { - return true; - } - - return _currentMainScene.SceneName == currentScene.name; - } - - // 判断当前场景是否是主场景 - if (currentScene.name == _currentMainScene?.SceneName) - { - return true; - } - - Log.Warning($"IsMainScene invalid location:{location}"); - return false; - } - - /// - /// 异步卸载子场景。 - /// - /// 场景资源定位地址。 - /// 进度回调。 - public async UniTask UnloadAsync(string location, Action progressCallBack = null) - { - _subScenes.TryGetValue(location, out SceneHandle subScene); - if (subScene != null) - { - if (subScene.SceneObject == default) - { - Log.Error($"Could not unload Scene while not loaded. Scene: {location}"); - return false; - } - - if (!_handlingScene.Add(location)) - { - Log.Warning($"Could not unload Scene while loading. Scene: {location}"); - return false; - } - - var unloadOperation = subScene.UnloadAsync(); - - if (progressCallBack != null) - { - while (!unloadOperation.IsDone && unloadOperation.Status != EOperationStatus.Failed) - { - progressCallBack.Invoke(unloadOperation.Progress); - await UniTask.Yield(); - } - } - else - { - await unloadOperation.ToUniTask(); - } - - _subScenes.Remove(location); - - _handlingScene.Remove(location); - - return true; - } - - Log.Warning($"UnloadAsync invalid location:{location}"); - return false; - } - - /// - /// 异步卸载子场景。 - /// - /// 场景资源定位地址。 - /// 卸载完成回调。 - /// 进度回调。 - public void Unload(string location, Action callBack = null, Action progressCallBack = null) - { - _subScenes.TryGetValue(location, out SceneHandle subScene); - if (subScene != null) - { - if (subScene.SceneObject == default) - { - Log.Error($"Could not unload Scene while not loaded. Scene: {location}"); - return; - } - - if (!_handlingScene.Add(location)) - { - Log.Warning($"Could not unload Scene while loading. Scene: {location}"); - return; - } - - subScene.UnloadAsync(); - subScene.UnloadAsync().Completed += @base => - { - _subScenes.Remove(location); - _handlingScene.Remove(location); - callBack?.Invoke(); - }; - - if (progressCallBack != null) - { - InvokeProgress(subScene, progressCallBack).Forget(); - } - - return; - } - - Log.Warning($"UnloadAsync invalid location:{location}"); - } - - /// - /// 是否包含场景。 - /// - /// 场景资源定位地址。 - /// 是否包含场景。 - public bool IsContainScene(string location) - { - if (_currentMainSceneName.Equals(location)) - { - return true; - } - - return _subScenes.TryGetValue(location, out var _); - } - } -} diff --git a/Client/Packages/com.alicizax.unity.scene/Runtime/Scene/SceneModule.cs.meta b/Client/Packages/com.alicizax.unity.scene/Runtime/Scene/SceneModule.cs.meta deleted file mode 100644 index 62c1fab..0000000 --- a/Client/Packages/com.alicizax.unity.scene/Runtime/Scene/SceneModule.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: df58bc01666e4f05abdd6a6b8fc87e78 -timeCreated: 1738733705 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.scene/Runtime/link.xml b/Client/Packages/com.alicizax.unity.scene/Runtime/link.xml deleted file mode 100644 index 06a8989..0000000 --- a/Client/Packages/com.alicizax.unity.scene/Runtime/link.xml +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.scene/Runtime/link.xml.meta b/Client/Packages/com.alicizax.unity.scene/Runtime/link.xml.meta deleted file mode 100644 index 0bfaa83..0000000 --- a/Client/Packages/com.alicizax.unity.scene/Runtime/link.xml.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 7d1161e617327ed42b3dc63be47c482d -timeCreated: 1737098208 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.scene/package.json b/Client/Packages/com.alicizax.unity.scene/package.json deleted file mode 100644 index e31824f..0000000 --- a/Client/Packages/com.alicizax.unity.scene/package.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "name": "com.alicizax.unity.scene", - "displayName": "Aliciza X Scene", - "category": "Aliciza X", - "description": "Aliciza X Scene Component", - "version": "1.0.1", - "unity": "2019.1", - "keywords": [ - "Aliciza X" - ], - "repository": { - "name": "com.alicizax.unity", - "url": "http://101.34.252.46:3000/AlicizaX/", - "type": "git" - }, - "author": { - "name": "Yuliuren", - "email": "yuliuren00@gmail.com" - }, - "dependencies": { - } -} diff --git a/Client/Packages/com.alicizax.unity.scene/package.json.meta b/Client/Packages/com.alicizax.unity.scene/package.json.meta deleted file mode 100644 index 699d3bc..0000000 --- a/Client/Packages/com.alicizax.unity.scene/package.json.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 9cd0dd6fcc5e8e347ad531efac904f96 -PackageManifestImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.timer/LICENSE.md b/Client/Packages/com.alicizax.unity.timer/LICENSE.md deleted file mode 100644 index 4e6513a..0000000 --- a/Client/Packages/com.alicizax.unity.timer/LICENSE.md +++ /dev/null @@ -1,201 +0,0 @@ - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - -TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - -1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - -2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - -3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - -4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - -5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - -6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - -7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - -8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - -9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - -END OF TERMS AND CONDITIONS - -APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - -Copyright [2023] [ALianBlank of copyright owner][alianblank@outlook.com][https://alianblank.com/] - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. diff --git a/Client/Packages/com.alicizax.unity.timer/LICENSE.md.meta b/Client/Packages/com.alicizax.unity.timer/LICENSE.md.meta deleted file mode 100644 index fe8441f..0000000 --- a/Client/Packages/com.alicizax.unity.timer/LICENSE.md.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 07cd3cd42e00fc64cafbee47cfe18a37 -TextScriptImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.timer/Runtime.meta b/Client/Packages/com.alicizax.unity.timer/Runtime.meta deleted file mode 100644 index 22e6c51..0000000 --- a/Client/Packages/com.alicizax.unity.timer/Runtime.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 8a7efbb10935050448352764f4876d81 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.timer/Runtime/AlicizaX.Timer.Runtime.asmdef b/Client/Packages/com.alicizax.unity.timer/Runtime/AlicizaX.Timer.Runtime.asmdef deleted file mode 100644 index bc8f684..0000000 --- a/Client/Packages/com.alicizax.unity.timer/Runtime/AlicizaX.Timer.Runtime.asmdef +++ /dev/null @@ -1,16 +0,0 @@ -{ - "name": "AlicizaX.Timer.Runtime", - "rootNamespace": "", - "references": [ - "GUID:75b6f2078d190f14dbda4a5b747d709c" - ], - "includePlatforms": [], - "excludePlatforms": [], - "allowUnsafeCode": false, - "overrideReferences": false, - "precompiledReferences": [], - "autoReferenced": true, - "defineConstraints": [], - "versionDefines": [], - "noEngineReferences": false -} \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.timer/Runtime/AlicizaX.Timer.Runtime.asmdef.meta b/Client/Packages/com.alicizax.unity.timer/Runtime/AlicizaX.Timer.Runtime.asmdef.meta deleted file mode 100644 index db9ea78..0000000 --- a/Client/Packages/com.alicizax.unity.timer/Runtime/AlicizaX.Timer.Runtime.asmdef.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 56115dc8e38144842823f4ee0dcad88b -AssemblyDefinitionImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.timer/Runtime/Timer.meta b/Client/Packages/com.alicizax.unity.timer/Runtime/Timer.meta deleted file mode 100644 index 1eb8073..0000000 --- a/Client/Packages/com.alicizax.unity.timer/Runtime/Timer.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: ae644371f69948a8b433ea56bee320b6 -timeCreated: 1737098228 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.timer/Runtime/Timer/ITimerModule.cs b/Client/Packages/com.alicizax.unity.timer/Runtime/Timer/ITimerModule.cs deleted file mode 100644 index fa95b80..0000000 --- a/Client/Packages/com.alicizax.unity.timer/Runtime/Timer/ITimerModule.cs +++ /dev/null @@ -1,64 +0,0 @@ -using System; -using System.Collections.Generic; -using AlicizaX; - -namespace AlicizaX.Timer.Runtime -{ - /// - /// 定时器接口 - /// - [UnityEngine.Scripting.Preserve] - public interface ITimerModule : IModule, IModuleUpdate - { - /// - /// 添加计时器。 - /// - /// 计时器回调。 - /// 计时器间隔。 - /// 是否循环。 - /// 是否不收时间缩放影响。 - /// 传参。(避免闭包) - /// 计时器Id。 - public int AddTimer(TimerHandler callback, float time, bool isLoop = false, bool isUnscaled = false, params object[] args); - - /// - /// 暂停计时器。 - /// - /// 计时器Id。 - public void Stop(int timerId); - - /// - /// 恢复计时器。 - /// - /// 计时器Id。 - public void Resume(int timerId); - - /// - /// 计时器是否在运行中。 - /// - /// 计时器Id。 - /// 否在运行中。 - public bool IsRunning(int timerId); - - /// - /// 获得计时器剩余时间。 - /// - public float GetLeftTime(int timerId); - - /// - /// 重置计时器,恢复到开始状态。 - /// - public void Restart(int timerId); - - /// - /// 移除计时器。 - /// - /// 计时器Id。 - public void RemoveTimer(int timerId); - - /// - /// 移除所有计时器。 - /// - public void RemoveAllTimer(); - } -} diff --git a/Client/Packages/com.alicizax.unity.timer/Runtime/Timer/ITimerModule.cs.meta b/Client/Packages/com.alicizax.unity.timer/Runtime/Timer/ITimerModule.cs.meta deleted file mode 100644 index 2a798a3..0000000 --- a/Client/Packages/com.alicizax.unity.timer/Runtime/Timer/ITimerModule.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 89c3f76bd6f04ecca4b90909318b07c1 -timeCreated: 1737084351 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.timer/Runtime/Timer/TimerComponent.cs b/Client/Packages/com.alicizax.unity.timer/Runtime/Timer/TimerComponent.cs deleted file mode 100644 index 4fec6ed..0000000 --- a/Client/Packages/com.alicizax.unity.timer/Runtime/Timer/TimerComponent.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System; -using AlicizaX; -using UnityEngine; - -namespace AlicizaX.Timer.Runtime -{ - [DisallowMultipleComponent] - [AddComponentMenu("Game Framework/Timer")] - [UnityEngine.Scripting.Preserve] - public sealed class TimerComponent:MonoBehaviour - { - private void Awake() - { - ModuleSystem.RegisterModule(); - } - } -} diff --git a/Client/Packages/com.alicizax.unity.timer/Runtime/Timer/TimerComponent.cs.meta b/Client/Packages/com.alicizax.unity.timer/Runtime/Timer/TimerComponent.cs.meta deleted file mode 100644 index 014fe0d..0000000 --- a/Client/Packages/com.alicizax.unity.timer/Runtime/Timer/TimerComponent.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 40c9991bf8984e2d89a8536bc8557abd -timeCreated: 1742474413 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.timer/Runtime/Timer/TimerModule.cs b/Client/Packages/com.alicizax.unity.timer/Runtime/Timer/TimerModule.cs deleted file mode 100644 index 7546e78..0000000 --- a/Client/Packages/com.alicizax.unity.timer/Runtime/Timer/TimerModule.cs +++ /dev/null @@ -1,235 +0,0 @@ -using System; -using System.Collections.Generic; -using AlicizaX; -using UnityEngine; - -namespace AlicizaX.Timer.Runtime -{ - public delegate void TimerHandler(params object[] args); - - [Serializable] - public class Timer : IMemory - { - public int TimerId; - public float TriggerTime; - public float Interval; - public TimerHandler Handler; - public bool IsLoop; - public bool IsRunning; - public bool IsUnscaled; - public bool IsActive; // 标记定时器是否有效 - public object[] Args; - public LinkedListNode Node; // 用于时间轮中的链表节点 - - public void Clear() - { - Handler = null; - Args = null; - Node = null; - IsActive = false; - } - } - - [UnityEngine.Scripting.Preserve] - internal sealed class TimerModule : ITimerModule - { - private int _curTimerId; - private TimeWheel _scaledTimeWheel; - private TimeWheel _unscaledTimeWheel; - private readonly Dictionary _activeTimers = new Dictionary(); - private readonly Action _processTimerDelegate; - private class TimeWheel - { - private readonly float _slotInterval; // 每个槽的时间间隔(秒) - private readonly int _slotCount; // 槽的数量 - private readonly LinkedList[] _slots; - private float _currentTime; - private int _currentSlotIndex; - - public TimeWheel(float slotInterval, int slotCount) - { - _slotInterval = slotInterval; - _slotCount = slotCount; - _slots = new LinkedList[slotCount]; - for (int i = 0; i < slotCount; i++) - _slots[i] = new LinkedList(); - _currentTime = 0f; - _currentSlotIndex = 0; - } - - public void AddTimer(Timer timer, float currentTime) - { - if (!timer.IsActive) return; - - float triggerTime = timer.TriggerTime; - float delta = triggerTime - currentTime; - - if (delta < 0) - { - // 立即触发 - delta = 0; - } - - int slotsToAdvance = Mathf.FloorToInt(delta / _slotInterval); - int targetSlot = (_currentSlotIndex + slotsToAdvance) % _slotCount; - - timer.Node = _slots[targetSlot].AddLast(timer); - timer.IsRunning = true; - } - - public void Advance(float currentTime, Action processTimer) - { - float timeDelta = currentTime - _currentTime; - if (timeDelta <= 0) return; - - int steps = Mathf.FloorToInt(timeDelta / _slotInterval); - for (int i = 0; i < steps; i++) - { - _currentSlotIndex = (_currentSlotIndex + 1) % _slotCount; - _currentTime += _slotInterval; - - LinkedList currentSlot = _slots[_currentSlotIndex]; - LinkedListNode currentNode = currentSlot.First; - while (currentNode != null) - { - LinkedListNode nextNode = currentNode.Next; - Timer timer = currentNode.Value; - currentSlot.Remove(currentNode); - - if (timer.IsActive && timer.IsRunning) - { - processTimer(timer); - } - - currentNode = nextNode; - } - } - } - } - - public TimerModule() - { - _scaledTimeWheel = new TimeWheel(1f, 60); - _unscaledTimeWheel = new TimeWheel(1f, 60); - _processTimerDelegate = ProcessTimer; // 初始化时创建委托一次 - } - - - public int AddTimer(TimerHandler callback, float time, bool isLoop = false, - bool isUnscaled = false, params object[] args) - { - Timer timer = GetTimerFromPool(); - timer.TimerId = ++_curTimerId; - timer.TriggerTime = (isUnscaled ? Time.unscaledTime : Time.time) + time; - timer.Interval = isLoop ? time : 0f; - timer.Handler = callback; - timer.IsLoop = isLoop; - timer.IsRunning = true; - timer.IsUnscaled = isUnscaled; - timer.Args = args; - timer.IsActive = true; - - _activeTimers.Add(timer.TimerId, timer); - TimeWheel targetWheel = isUnscaled ? _unscaledTimeWheel : _scaledTimeWheel; - targetWheel.AddTimer(timer, isUnscaled ? Time.unscaledTime : Time.time); - return timer.TimerId; - } - - public void Stop(int timerId) - { - if (_activeTimers.TryGetValue(timerId, out Timer timer)) - timer.IsRunning = false; - } - - public void Resume(int timerId) - { - if (_activeTimers.TryGetValue(timerId, out Timer timer)) - timer.IsRunning = true; - } - - public bool IsRunning(int timerId) => - _activeTimers.TryGetValue(timerId, out Timer timer) && timer.IsRunning; - - public float GetLeftTime(int timerId) => - _activeTimers.TryGetValue(timerId, out Timer timer) - ? Mathf.Max(timer.TriggerTime - (timer.IsUnscaled ? Time.unscaledTime : Time.time), 0) - : 0; - - public void Restart(int timerId) - { - if (_activeTimers.TryGetValue(timerId, out Timer timer)) - { - timer.TriggerTime = (timer.IsUnscaled ? Time.unscaledTime : Time.time) + timer.Interval; - TimeWheel targetWheel = timer.IsUnscaled ? _unscaledTimeWheel : _scaledTimeWheel; - targetWheel.AddTimer(timer, timer.IsUnscaled ? Time.unscaledTime : Time.time); - } - } - - public void RemoveTimer(int timerId) - { - if (_activeTimers.TryGetValue(timerId, out Timer timer)) - { - timer.IsActive = false; // 标记为无效 - _activeTimers.Remove(timerId); - ReturnTimerToPool(timer); - } - } - - public void RemoveAllTimer() - { - foreach (var timer in _activeTimers.Values) - { - timer.IsActive = false; - ReturnTimerToPool(timer); - } - - _activeTimers.Clear(); - } - - private Timer GetTimerFromPool() => MemoryPool.Acquire(); - - - private void ReturnTimerToPool(Timer timer) - { - MemoryPool.Release(timer); - } - - void IModuleUpdate.Update(float elapseSeconds, float realElapseSeconds) - { - float scaledTime = Time.time; - _scaledTimeWheel.Advance(scaledTime, _processTimerDelegate); - - float unscaledTime = Time.unscaledTime; - _unscaledTimeWheel.Advance(unscaledTime, _processTimerDelegate); - } - - private void ProcessTimer(Timer timer) - { - if (!timer.IsActive || !timer.IsRunning) return; - - try - { - timer.Handler?.Invoke(timer.Args); - } - catch (Exception e) - { - Log.Error($"Timer callback error: {e}"); - } - - if (timer.IsLoop) - { - timer.TriggerTime += timer.Interval; - TimeWheel targetWheel = timer.IsUnscaled ? _unscaledTimeWheel : _scaledTimeWheel; - targetWheel.AddTimer(timer, timer.IsUnscaled ? Time.unscaledTime : Time.time); - } - else - { - RemoveTimer(timer.TimerId); - } - } - - void IModule.Dispose() => RemoveAllTimer(); - - public int Priority => 0; - } -} diff --git a/Client/Packages/com.alicizax.unity.timer/Runtime/Timer/TimerModule.cs.meta b/Client/Packages/com.alicizax.unity.timer/Runtime/Timer/TimerModule.cs.meta deleted file mode 100644 index c85d8fd..0000000 --- a/Client/Packages/com.alicizax.unity.timer/Runtime/Timer/TimerModule.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 205d0803930745d7825f89aa604530a5 -timeCreated: 1741683842 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.timer/Runtime/link.xml b/Client/Packages/com.alicizax.unity.timer/Runtime/link.xml deleted file mode 100644 index 4f471e0..0000000 --- a/Client/Packages/com.alicizax.unity.timer/Runtime/link.xml +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.timer/Runtime/link.xml.meta b/Client/Packages/com.alicizax.unity.timer/Runtime/link.xml.meta deleted file mode 100644 index a4fcad5..0000000 --- a/Client/Packages/com.alicizax.unity.timer/Runtime/link.xml.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: f02ea4e485fc4dab80cb6c2586d119f1 -timeCreated: 1737098208 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.timer/package.json b/Client/Packages/com.alicizax.unity.timer/package.json deleted file mode 100644 index c10fbf9..0000000 --- a/Client/Packages/com.alicizax.unity.timer/package.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "name": "com.alicizax.unity.timer", - "displayName": "Aliciza X Timer", - "category": "Aliciza X", - "description": "Aliciza X Timer Component", - "version": "1.0.1", - "unity": "2017.1", - "keywords": [ - "Aliciza X" - ], - "repository": { - "name": "com.alicizax.unity", - "url": "http://101.34.252.46:3000/AlicizaX/", - "type": "git" - }, - "author": { - "name": "Yuliuren", - "email": "yuliuren00@gmail.com" - }, - "dependencies": { - } -} diff --git a/Client/Packages/com.alicizax.unity.timer/package.json.meta b/Client/Packages/com.alicizax.unity.timer/package.json.meta deleted file mode 100644 index 7d9b67d..0000000 --- a/Client/Packages/com.alicizax.unity.timer/package.json.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 65a86e3880a8c9d4d93b81cd5244cd5f -PackageManifestImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.tuyoogame.yooasset b/Client/Packages/com.alicizax.unity.tuyoogame.yooasset index cade0ba..f4406e8 160000 --- a/Client/Packages/com.alicizax.unity.tuyoogame.yooasset +++ b/Client/Packages/com.alicizax.unity.tuyoogame.yooasset @@ -1 +1 @@ -Subproject commit cade0ba3170b88ff442c9ffad465cee95174e11a +Subproject commit f4406e86a7a81ff038ea5baf1f6983b279c7b09c diff --git a/Client/Packages/com.alicizax.unity.ui b/Client/Packages/com.alicizax.unity.ui deleted file mode 160000 index 3e8a724..0000000 --- a/Client/Packages/com.alicizax.unity.ui +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 3e8a724271c8dd1dc00ea50eb011f3364fca777a diff --git a/Client/Packages/com.alicizax.unity.ui.extension b/Client/Packages/com.alicizax.unity.ui.extension index dab724f..e95b661 160000 --- a/Client/Packages/com.alicizax.unity.ui.extension +++ b/Client/Packages/com.alicizax.unity.ui.extension @@ -1 +1 @@ -Subproject commit dab724f74ea59a465f071b806e9ae427152e9869 +Subproject commit e95b661d6a71b34677b94dd0568bb4842c1c9b91 diff --git a/Client/Packages/com.alicizax.unity/Runtime/Base/Variable.meta b/Client/Packages/com.alicizax.unity/Runtime/Base/Variable.meta deleted file mode 100644 index e0b8258..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Base/Variable.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 06e7b95e5ae0f4d07b4f928fe852b7a2 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Base/Variable/GenericVariable.cs b/Client/Packages/com.alicizax.unity/Runtime/Base/Variable/GenericVariable.cs deleted file mode 100644 index 6691261..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Base/Variable/GenericVariable.cs +++ /dev/null @@ -1,82 +0,0 @@ -using System; - -namespace AlicizaX -{ - /// - /// 变量。 - /// - /// 变量类型。 - public abstract class Variable : Variable - { - private T m_Value; - - /// - /// 初始化变量的新实例。 - /// - public Variable() - { - m_Value = default(T); - } - - /// - /// 获取变量类型。 - /// - public override Type Type - { - get - { - return typeof(T); - } - } - - /// - /// 获取或设置变量值。 - /// - public T Value - { - get - { - return m_Value; - } - set - { - m_Value = value; - } - } - - /// - /// 获取变量值。 - /// - /// 变量值。 - public override object GetValue() - { - return m_Value; - } - - /// - /// 设置变量值。 - /// - /// 变量值。 - public override void SetValue(object value) - { - m_Value = (T)value; - } - - /// - /// 清理变量值。 - /// - public override void Clear() - { - m_Value = default(T); - } - - /// - /// 获取变量字符串。 - /// - /// 变量字符串。 - public override string ToString() - { - return (m_Value != null) ? m_Value.ToString() : ""; - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Base/Variable/GenericVariable.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Base/Variable/GenericVariable.cs.meta deleted file mode 100644 index e48754f..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Base/Variable/GenericVariable.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e903914a1dea94a4398096df4c75ea1e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Base/Variable/Variable.cs b/Client/Packages/com.alicizax.unity/Runtime/Base/Variable/Variable.cs deleted file mode 100644 index a8e27fd..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Base/Variable/Variable.cs +++ /dev/null @@ -1,42 +0,0 @@ -using System; - -namespace AlicizaX -{ - /// - /// 变量。 - /// - public abstract class Variable : IMemory - { - /// - /// 初始化变量的新实例。 - /// - public Variable() - { - } - - /// - /// 获取变量类型。 - /// - public abstract Type Type - { - get; - } - - /// - /// 获取变量值。 - /// - /// 变量值。 - public abstract object GetValue(); - - /// - /// 设置变量值。 - /// - /// 变量值。 - public abstract void SetValue(object value); - - /// - /// 清理变量值。 - /// - public abstract void Clear(); - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Base/Variable/Variable.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Base/Variable/Variable.cs.meta deleted file mode 100644 index b9f1e71..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Base/Variable/Variable.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3095086a6640144c1a52469766ae1375 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable.meta b/Client/Packages/com.alicizax.unity/Runtime/Variable.meta deleted file mode 100644 index b49d7d6..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: da8a93113cb64c208f31f39ec8500afd -timeCreated: 1737365818 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarBoolean.cs b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarBoolean.cs deleted file mode 100644 index de1a7bc..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarBoolean.cs +++ /dev/null @@ -1,37 +0,0 @@ -using AlicizaX; - -namespace AlicizaX -{ - /// - /// System.Boolean 变量类。 - /// - public sealed class VarBoolean : Variable - { - /// - /// 初始化 System.Boolean 变量类的新实例。 - /// - public VarBoolean() - { - } - - /// - /// 从 System.Boolean 到 System.Boolean 变量类的隐式转换。 - /// - /// 值。 - public static implicit operator VarBoolean(bool value) - { - VarBoolean varValue = MemoryPool.Acquire(); - varValue.Value = value; - return varValue; - } - - /// - /// 从 System.Boolean 变量类到 System.Boolean 的隐式转换。 - /// - /// 值。 - public static implicit operator bool(VarBoolean value) - { - return value.Value; - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarBoolean.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarBoolean.cs.meta deleted file mode 100644 index 10ec55f..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarBoolean.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 951d24bf51d09c64e8cd2ac824a363b4 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarByte.cs b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarByte.cs deleted file mode 100644 index d392e50..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarByte.cs +++ /dev/null @@ -1,37 +0,0 @@ -using AlicizaX; - -namespace AlicizaX -{ - /// - /// System.Byte 变量类。 - /// - public sealed class VarByte : Variable - { - /// - /// 初始化 System.Byte 变量类的新实例。 - /// - public VarByte() - { - } - - /// - /// 从 System.Byte 到 System.Byte 变量类的隐式转换。 - /// - /// 值。 - public static implicit operator VarByte(byte value) - { - VarByte varValue = MemoryPool.Acquire(); - varValue.Value = value; - return varValue; - } - - /// - /// 从 System.Byte 变量类到 System.Byte 的隐式转换。 - /// - /// 值。 - public static implicit operator byte(VarByte value) - { - return value.Value; - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarByte.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarByte.cs.meta deleted file mode 100644 index 631cca8..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarByte.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 028b1842c42f7bf4999e1aaffed3b451 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarByteArray.cs b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarByteArray.cs deleted file mode 100644 index 88892be..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarByteArray.cs +++ /dev/null @@ -1,37 +0,0 @@ -using AlicizaX; - -namespace AlicizaX -{ - /// - /// System.Byte 数组变量类。 - /// - public sealed class VarByteArray : Variable - { - /// - /// 初始化 System.Byte 数组变量类的新实例。 - /// - public VarByteArray() - { - } - - /// - /// 从 System.Byte 数组到 System.Byte 数组变量类的隐式转换。 - /// - /// 值。 - public static implicit operator VarByteArray(byte[] value) - { - VarByteArray varValue = MemoryPool.Acquire(); - varValue.Value = value; - return varValue; - } - - /// - /// 从 System.Byte 数组变量类到 System.Byte 数组的隐式转换。 - /// - /// 值。 - public static implicit operator byte[](VarByteArray value) - { - return value.Value; - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarByteArray.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarByteArray.cs.meta deleted file mode 100644 index e2ccc9f..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarByteArray.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: dbb9b35f2ec6f8f4bb8bb6c361eb8ef6 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarChar.cs b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarChar.cs deleted file mode 100644 index 49b043e..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarChar.cs +++ /dev/null @@ -1,37 +0,0 @@ -using AlicizaX; - -namespace AlicizaX -{ - /// - /// System.Char 变量类。 - /// - public sealed class VarChar : Variable - { - /// - /// 初始化 System.Char 变量类的新实例。 - /// - public VarChar() - { - } - - /// - /// 从 System.Char 到 System.Char 变量类的隐式转换。 - /// - /// 值。 - public static implicit operator VarChar(char value) - { - VarChar varValue = MemoryPool.Acquire(); - varValue.Value = value; - return varValue; - } - - /// - /// 从 System.Char 变量类到 System.Char 的隐式转换。 - /// - /// 值。 - public static implicit operator char(VarChar value) - { - return value.Value; - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarChar.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarChar.cs.meta deleted file mode 100644 index 3b78eb9..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarChar.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 17c91d9b1ebba834385874fcf8c1076a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarCharArray.cs b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarCharArray.cs deleted file mode 100644 index cf00eae..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarCharArray.cs +++ /dev/null @@ -1,37 +0,0 @@ -using AlicizaX; - -namespace AlicizaX -{ - /// - /// System.Char 数组变量类。 - /// - public sealed class VarCharArray : Variable - { - /// - /// 初始化 System.Char 数组变量类的新实例。 - /// - public VarCharArray() - { - } - - /// - /// 从 System.Char 数组到 System.Char 数组变量类的隐式转换。 - /// - /// 值。 - public static implicit operator VarCharArray(char[] value) - { - VarCharArray varValue = MemoryPool.Acquire(); - varValue.Value = value; - return varValue; - } - - /// - /// 从 System.Char 数组变量类到 System.Char 数组的隐式转换。 - /// - /// 值。 - public static implicit operator char[](VarCharArray value) - { - return value.Value; - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarCharArray.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarCharArray.cs.meta deleted file mode 100644 index 64422cc..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarCharArray.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 74c192285e6e9d8469961735fd7bc29e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarColor.cs b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarColor.cs deleted file mode 100644 index c3fc1ac..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarColor.cs +++ /dev/null @@ -1,38 +0,0 @@ -using AlicizaX; -using UnityEngine; - -namespace AlicizaX -{ - /// - /// UnityEngine.Color 变量类。 - /// - public sealed class VarColor : Variable - { - /// - /// 初始化 UnityEngine.Color 变量类的新实例。 - /// - public VarColor() - { - } - - /// - /// 从 UnityEngine.Color 到 UnityEngine.Color 变量类的隐式转换。 - /// - /// 值。 - public static implicit operator VarColor(Color value) - { - VarColor varValue = MemoryPool.Acquire(); - varValue.Value = value; - return varValue; - } - - /// - /// 从 UnityEngine.Color 变量类到 UnityEngine.Color 的隐式转换。 - /// - /// 值。 - public static implicit operator Color(VarColor value) - { - return value.Value; - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarColor.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarColor.cs.meta deleted file mode 100644 index f6b2dbe..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarColor.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b7b2e4000c824c341bd90a5886dd0893 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarColor32.cs b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarColor32.cs deleted file mode 100644 index 3e78648..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarColor32.cs +++ /dev/null @@ -1,38 +0,0 @@ -using AlicizaX; -using UnityEngine; - -namespace AlicizaX -{ - /// - /// UnityEngine.Color32 变量类。 - /// - public sealed class VarColor32 : Variable - { - /// - /// 初始化 UnityEngine.Color32 变量类的新实例。 - /// - public VarColor32() - { - } - - /// - /// 从 UnityEngine.Color32 到 UnityEngine.Color32 变量类的隐式转换。 - /// - /// 值。 - public static implicit operator VarColor32(Color32 value) - { - VarColor32 varValue = MemoryPool.Acquire(); - varValue.Value = value; - return varValue; - } - - /// - /// 从 UnityEngine.Color32 变量类到 UnityEngine.Color32 的隐式转换。 - /// - /// 值。 - public static implicit operator Color32(VarColor32 value) - { - return value.Value; - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarColor32.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarColor32.cs.meta deleted file mode 100644 index c5c4af6..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarColor32.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f31aea41afccdc843a7cc7de09a7fc9e -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarDateTime.cs b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarDateTime.cs deleted file mode 100644 index 51b4bd3..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarDateTime.cs +++ /dev/null @@ -1,38 +0,0 @@ -using AlicizaX; -using System; - -namespace AlicizaX -{ - /// - /// System.DateTime 变量类。 - /// - public sealed class VarDateTime : Variable - { - /// - /// 初始化 System.DateTime 变量类的新实例。 - /// - public VarDateTime() - { - } - - /// - /// 从 System.DateTime 到 System.DateTime 变量类的隐式转换。 - /// - /// 值。 - public static implicit operator VarDateTime(DateTime value) - { - VarDateTime varValue = MemoryPool.Acquire(); - varValue.Value = value; - return varValue; - } - - /// - /// 从 System.DateTime 变量类到 System.DateTime 的隐式转换。 - /// - /// 值。 - public static implicit operator DateTime(VarDateTime value) - { - return value.Value; - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarDateTime.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarDateTime.cs.meta deleted file mode 100644 index 7b03c2c..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarDateTime.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 0b58529251d8325439e3988047d2f019 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarDecimal.cs b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarDecimal.cs deleted file mode 100644 index cdb92fb..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarDecimal.cs +++ /dev/null @@ -1,37 +0,0 @@ -using AlicizaX; - -namespace AlicizaX -{ - /// - /// System.Decimal 变量类。 - /// - public sealed class VarDecimal : Variable - { - /// - /// 初始化 System.Decimal 变量类的新实例。 - /// - public VarDecimal() - { - } - - /// - /// 从 System.Decimal 到 System.Decimal 变量类的隐式转换。 - /// - /// 值。 - public static implicit operator VarDecimal(decimal value) - { - VarDecimal varValue = MemoryPool.Acquire(); - varValue.Value = value; - return varValue; - } - - /// - /// 从 System.Decimal 变量类到 System.Decimal 的隐式转换。 - /// - /// 值。 - public static implicit operator decimal(VarDecimal value) - { - return value.Value; - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarDecimal.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarDecimal.cs.meta deleted file mode 100644 index ac5b497..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarDecimal.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c8bd5d553ed3aea4485bf78964f09708 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarDouble.cs b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarDouble.cs deleted file mode 100644 index 3758f6b..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarDouble.cs +++ /dev/null @@ -1,37 +0,0 @@ -using AlicizaX; - -namespace AlicizaX -{ - /// - /// System.Double 变量类。 - /// - public sealed class VarDouble : Variable - { - /// - /// 初始化 System.Double 变量类的新实例。 - /// - public VarDouble() - { - } - - /// - /// 从 System.Double 到 System.Double 变量类的隐式转换。 - /// - /// 值。 - public static implicit operator VarDouble(double value) - { - VarDouble varValue = MemoryPool.Acquire(); - varValue.Value = value; - return varValue; - } - - /// - /// 从 System.Double 变量类到 System.Double 的隐式转换。 - /// - /// 值。 - public static implicit operator double(VarDouble value) - { - return value.Value; - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarDouble.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarDouble.cs.meta deleted file mode 100644 index 98661ba..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarDouble.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 55b52e85a025f734495ed0e888633468 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarGameObject.cs b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarGameObject.cs deleted file mode 100644 index 5f2a148..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarGameObject.cs +++ /dev/null @@ -1,38 +0,0 @@ -using AlicizaX; -using UnityEngine; - -namespace AlicizaX -{ - /// - /// UnityEngine.GameObject 变量类。 - /// - public sealed class VarGameObject : Variable - { - /// - /// 初始化 UnityEngine.GameObject 变量类的新实例。 - /// - public VarGameObject() - { - } - - /// - /// 从 UnityEngine.GameObject 到 UnityEngine.GameObject 变量类的隐式转换。 - /// - /// 值。 - public static implicit operator VarGameObject(GameObject value) - { - VarGameObject varValue = MemoryPool.Acquire(); - varValue.Value = value; - return varValue; - } - - /// - /// 从 UnityEngine.GameObject 变量类到 UnityEngine.GameObject 的隐式转换。 - /// - /// 值。 - public static implicit operator GameObject(VarGameObject value) - { - return value.Value; - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarGameObject.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarGameObject.cs.meta deleted file mode 100644 index 7fda629..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarGameObject.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 9c339e4000da5e645993ae5bb3c79554 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarInt16.cs b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarInt16.cs deleted file mode 100644 index af4f776..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarInt16.cs +++ /dev/null @@ -1,37 +0,0 @@ -using AlicizaX; - -namespace AlicizaX -{ - /// - /// System.Int16 变量类。 - /// - public sealed class VarInt16 : Variable - { - /// - /// 初始化 System.Int16 变量类的新实例。 - /// - public VarInt16() - { - } - - /// - /// 从 System.Int16 到 System.Int16 变量类的隐式转换。 - /// - /// 值。 - public static implicit operator VarInt16(short value) - { - VarInt16 varValue = MemoryPool.Acquire(); - varValue.Value = value; - return varValue; - } - - /// - /// 从 System.Int16 变量类到 System.Int16 的隐式转换。 - /// - /// 值。 - public static implicit operator short(VarInt16 value) - { - return value.Value; - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarInt16.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarInt16.cs.meta deleted file mode 100644 index 4a27d15..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarInt16.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: fb22474f50a73704ebdc00b32ba1fd93 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarInt32.cs b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarInt32.cs deleted file mode 100644 index 9b5ad29..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarInt32.cs +++ /dev/null @@ -1,37 +0,0 @@ -using AlicizaX; - -namespace AlicizaX -{ - /// - /// System.Int32 变量类。 - /// - public sealed class VarInt32 : Variable - { - /// - /// 初始化 System.Int32 变量类的新实例。 - /// - public VarInt32() - { - } - - /// - /// 从 System.Int32 到 System.Int32 变量类的隐式转换。 - /// - /// 值。 - public static implicit operator VarInt32(int value) - { - VarInt32 varValue = MemoryPool.Acquire(); - varValue.Value = value; - return varValue; - } - - /// - /// 从 System.Int32 变量类到 System.Int32 的隐式转换。 - /// - /// 值。 - public static implicit operator int(VarInt32 value) - { - return value.Value; - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarInt32.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarInt32.cs.meta deleted file mode 100644 index 8f4d62d..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarInt32.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f82188cc963752848a236f4fed834740 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarInt64.cs b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarInt64.cs deleted file mode 100644 index 56c98da..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarInt64.cs +++ /dev/null @@ -1,37 +0,0 @@ -using AlicizaX; - -namespace AlicizaX -{ - /// - /// System.Int64 变量类。 - /// - public sealed class VarInt64 : Variable - { - /// - /// 初始化 System.Int64 变量类的新实例。 - /// - public VarInt64() - { - } - - /// - /// 从 System.Int64 到 System.Int64 变量类的隐式转换。 - /// - /// 值。 - public static implicit operator VarInt64(long value) - { - VarInt64 varValue = MemoryPool.Acquire(); - varValue.Value = value; - return varValue; - } - - /// - /// 从 System.Int64 变量类到 System.Int64 的隐式转换。 - /// - /// 值。 - public static implicit operator long(VarInt64 value) - { - return value.Value; - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarInt64.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarInt64.cs.meta deleted file mode 100644 index a52a798..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarInt64.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 13f2695725ed09648a9fc2b506584a0c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarMaterial.cs b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarMaterial.cs deleted file mode 100644 index 3811cf7..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarMaterial.cs +++ /dev/null @@ -1,38 +0,0 @@ -using AlicizaX; -using UnityEngine; - -namespace AlicizaX -{ - /// - /// UnityEngine.Material 变量类。 - /// - public sealed class VarMaterial : Variable - { - /// - /// 初始化 UnityEngine.Material 变量类的新实例。 - /// - public VarMaterial() - { - } - - /// - /// 从 UnityEngine.Material 到 UnityEngine.Material 变量类的隐式转换。 - /// - /// 值。 - public static implicit operator VarMaterial(Material value) - { - VarMaterial varValue = MemoryPool.Acquire(); - varValue.Value = value; - return varValue; - } - - /// - /// 从 UnityEngine.Material 变量类到 UnityEngine.Material 的隐式转换。 - /// - /// 值。 - public static implicit operator Material(VarMaterial value) - { - return value.Value; - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarMaterial.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarMaterial.cs.meta deleted file mode 100644 index 6b6a0e2..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarMaterial.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 45b6448300498c842a0facd7b2b6d45c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarObject.cs b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarObject.cs deleted file mode 100644 index ca42841..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarObject.cs +++ /dev/null @@ -1,17 +0,0 @@ -using AlicizaX; - -namespace AlicizaX -{ - /// - /// System.Object 变量类。 - /// - public sealed class VarObject : Variable - { - /// - /// 初始化 System.Object 变量类的新实例。 - /// - public VarObject() - { - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarObject.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarObject.cs.meta deleted file mode 100644 index dae3a94..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarObject.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f3b2d458c0eb0244c905a819c9fec4f3 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarQuaternion.cs b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarQuaternion.cs deleted file mode 100644 index 0e1a5b5..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarQuaternion.cs +++ /dev/null @@ -1,38 +0,0 @@ -using AlicizaX; -using UnityEngine; - -namespace AlicizaX -{ - /// - /// UnityEngine.Quaternion 变量类。 - /// - public sealed class VarQuaternion : Variable - { - /// - /// 初始化 UnityEngine.Quaternion 变量类的新实例。 - /// - public VarQuaternion() - { - } - - /// - /// 从 UnityEngine.Quaternion 到 UnityEngine.Quaternion 变量类的隐式转换。 - /// - /// 值。 - public static implicit operator VarQuaternion(Quaternion value) - { - VarQuaternion varValue = MemoryPool.Acquire(); - varValue.Value = value; - return varValue; - } - - /// - /// 从 UnityEngine.Quaternion 变量类到 UnityEngine.Quaternion 的隐式转换。 - /// - /// 值。 - public static implicit operator Quaternion(VarQuaternion value) - { - return value.Value; - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarQuaternion.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarQuaternion.cs.meta deleted file mode 100644 index 213ce68..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarQuaternion.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 411c1800741f3594d80ef8ce06797ca4 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarRect.cs b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarRect.cs deleted file mode 100644 index b82f4c5..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarRect.cs +++ /dev/null @@ -1,38 +0,0 @@ -using AlicizaX; -using UnityEngine; - -namespace AlicizaX -{ - /// - /// UnityEngine.Rect 变量类。 - /// - public sealed class VarRect : Variable - { - /// - /// 初始化 UnityEngine.Rect 变量类的新实例。 - /// - public VarRect() - { - } - - /// - /// 从 UnityEngine.Rect 到 UnityEngine.Rect 变量类的隐式转换。 - /// - /// 值。 - public static implicit operator VarRect(Rect value) - { - VarRect varValue = MemoryPool.Acquire(); - varValue.Value = value; - return varValue; - } - - /// - /// 从 UnityEngine.Rect 变量类到 UnityEngine.Rect 的隐式转换。 - /// - /// 值。 - public static implicit operator Rect(VarRect value) - { - return value.Value; - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarRect.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarRect.cs.meta deleted file mode 100644 index 8167184..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarRect.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ee11011c267861947bfbd3353b91bd12 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarSByte.cs b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarSByte.cs deleted file mode 100644 index c56020a..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarSByte.cs +++ /dev/null @@ -1,37 +0,0 @@ -using AlicizaX; - -namespace AlicizaX -{ - /// - /// System.SByte 变量类。 - /// - public sealed class VarSByte : Variable - { - /// - /// 初始化 System.SByte 变量类的新实例。 - /// - public VarSByte() - { - } - - /// - /// 从 System.SByte 到 System.SByte 变量类的隐式转换。 - /// - /// 值。 - public static implicit operator VarSByte(sbyte value) - { - VarSByte varValue = MemoryPool.Acquire(); - varValue.Value = value; - return varValue; - } - - /// - /// 从 System.SByte 变量类到 System.SByte 的隐式转换。 - /// - /// 值。 - public static implicit operator sbyte(VarSByte value) - { - return value.Value; - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarSByte.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarSByte.cs.meta deleted file mode 100644 index d4a8514..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarSByte.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 1e0877a15fd8ef34699d6e817a9c04bd -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarSingle.cs b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarSingle.cs deleted file mode 100644 index 8360514..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarSingle.cs +++ /dev/null @@ -1,37 +0,0 @@ -using AlicizaX; - -namespace AlicizaX -{ - /// - /// System.Single 变量类。 - /// - public sealed class VarSingle : Variable - { - /// - /// 初始化 System.Single 变量类的新实例。 - /// - public VarSingle() - { - } - - /// - /// 从 System.Single 到 System.Single 变量类的隐式转换。 - /// - /// 值。 - public static implicit operator VarSingle(float value) - { - VarSingle varValue = MemoryPool.Acquire(); - varValue.Value = value; - return varValue; - } - - /// - /// 从 System.Single 变量类到 System.Single 的隐式转换。 - /// - /// 值。 - public static implicit operator float(VarSingle value) - { - return value.Value; - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarSingle.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarSingle.cs.meta deleted file mode 100644 index f53d09e..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarSingle.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3a31b440f69e7f04f9afabe202d14550 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarString.cs b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarString.cs deleted file mode 100644 index 88e4aa0..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarString.cs +++ /dev/null @@ -1,37 +0,0 @@ -using AlicizaX; - -namespace AlicizaX -{ - /// - /// System.String 变量类。 - /// - public sealed class VarString : Variable - { - /// - /// 初始化 System.String 变量类的新实例。 - /// - public VarString() - { - } - - /// - /// 从 System.String 到 System.String 变量类的隐式转换。 - /// - /// 值。 - public static implicit operator VarString(string value) - { - VarString varValue = MemoryPool.Acquire(); - varValue.Value = value; - return varValue; - } - - /// - /// 从 System.String 变量类到 System.String 的隐式转换。 - /// - /// 值。 - public static implicit operator string(VarString value) - { - return value.Value; - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarString.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarString.cs.meta deleted file mode 100644 index a602417..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarString.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d45679f4a06fe6244ad4ff88dca368a4 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarTexture.cs b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarTexture.cs deleted file mode 100644 index 286a733..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarTexture.cs +++ /dev/null @@ -1,38 +0,0 @@ -using AlicizaX; -using UnityEngine; - -namespace AlicizaX -{ - /// - /// UnityEngine.Texture 变量类。 - /// - public sealed class VarTexture : Variable - { - /// - /// 初始化 UnityEngine.Texture 变量类的新实例。 - /// - public VarTexture() - { - } - - /// - /// 从 UnityEngine.Texture 到 UnityEngine.Texture 变量类的隐式转换。 - /// - /// 值。 - public static implicit operator VarTexture(Texture value) - { - VarTexture varValue = MemoryPool.Acquire(); - varValue.Value = value; - return varValue; - } - - /// - /// 从 UnityEngine.Texture 变量类到 UnityEngine.Texture 的隐式转换。 - /// - /// 值。 - public static implicit operator Texture(VarTexture value) - { - return value.Value; - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarTexture.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarTexture.cs.meta deleted file mode 100644 index 4f72c27..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarTexture.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c0f43d324b63e5d48933b078ca2cc5f3 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarTransform.cs b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarTransform.cs deleted file mode 100644 index 7771905..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarTransform.cs +++ /dev/null @@ -1,38 +0,0 @@ -using AlicizaX; -using UnityEngine; - -namespace AlicizaX -{ - /// - /// UnityEngine.Transform 变量类。 - /// - public sealed class VarTransform : Variable - { - /// - /// 初始化 UnityEngine.Transform 变量类的新实例。 - /// - public VarTransform() - { - } - - /// - /// 从 UnityEngine.Transform 到 UnityEngine.Transform 变量类的隐式转换。 - /// - /// 值。 - public static implicit operator VarTransform(Transform value) - { - VarTransform varValue = MemoryPool.Acquire(); - varValue.Value = value; - return varValue; - } - - /// - /// 从 UnityEngine.Transform 变量类到 UnityEngine.Transform 的隐式转换。 - /// - /// 值。 - public static implicit operator Transform(VarTransform value) - { - return value.Value; - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarTransform.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarTransform.cs.meta deleted file mode 100644 index 51d1324..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarTransform.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: dff6037db6354304d82d9aaf079d5c63 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarUInt16.cs b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarUInt16.cs deleted file mode 100644 index 1cfec35..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarUInt16.cs +++ /dev/null @@ -1,37 +0,0 @@ -using AlicizaX; - -namespace AlicizaX -{ - /// - /// System.UInt16 变量类。 - /// - public sealed class VarUInt16 : Variable - { - /// - /// 初始化 System.UInt16 变量类的新实例。 - /// - public VarUInt16() - { - } - - /// - /// 从 System.UInt16 到 System.UInt16 变量类的隐式转换。 - /// - /// 值。 - public static implicit operator VarUInt16(ushort value) - { - VarUInt16 varValue = MemoryPool.Acquire(); - varValue.Value = value; - return varValue; - } - - /// - /// 从 System.UInt16 变量类到 System.UInt16 的隐式转换。 - /// - /// 值。 - public static implicit operator ushort(VarUInt16 value) - { - return value.Value; - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarUInt16.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarUInt16.cs.meta deleted file mode 100644 index 6303851..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarUInt16.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c158720cba058174995252c289e561b8 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarUInt32.cs b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarUInt32.cs deleted file mode 100644 index 1eea2ea..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarUInt32.cs +++ /dev/null @@ -1,37 +0,0 @@ -using AlicizaX; - -namespace AlicizaX -{ - /// - /// System.UInt32 变量类。 - /// - public sealed class VarUInt32 : Variable - { - /// - /// 初始化 System.UInt32 变量类的新实例。 - /// - public VarUInt32() - { - } - - /// - /// 从 System.UInt32 到 System.UInt32 变量类的隐式转换。 - /// - /// 值。 - public static implicit operator VarUInt32(uint value) - { - VarUInt32 varValue = MemoryPool.Acquire(); - varValue.Value = value; - return varValue; - } - - /// - /// 从 System.UInt32 变量类到 System.UInt32 的隐式转换。 - /// - /// 值。 - public static implicit operator uint(VarUInt32 value) - { - return value.Value; - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarUInt32.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarUInt32.cs.meta deleted file mode 100644 index 2a2b4e1..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarUInt32.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ec67b25d499a2d34fa1c450a9d165ab0 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarUInt64.cs b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarUInt64.cs deleted file mode 100644 index 0aa82fb..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarUInt64.cs +++ /dev/null @@ -1,37 +0,0 @@ -using AlicizaX; - -namespace AlicizaX -{ - /// - /// System.UInt64 变量类。 - /// - public sealed class VarUInt64 : Variable - { - /// - /// 初始化 System.UInt64 变量类的新实例。 - /// - public VarUInt64() - { - } - - /// - /// 从 System.UInt64 到 System.UInt64 变量类的隐式转换。 - /// - /// 值。 - public static implicit operator VarUInt64(ulong value) - { - VarUInt64 varValue = MemoryPool.Acquire(); - varValue.Value = value; - return varValue; - } - - /// - /// 从 System.UInt64 变量类到 System.UInt64 的隐式转换。 - /// - /// 值。 - public static implicit operator ulong(VarUInt64 value) - { - return value.Value; - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarUInt64.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarUInt64.cs.meta deleted file mode 100644 index 78ae7a0..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarUInt64.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d0195ac43c505b248a7d9d41beff1436 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarUnityObject.cs b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarUnityObject.cs deleted file mode 100644 index 6a6d747..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarUnityObject.cs +++ /dev/null @@ -1,38 +0,0 @@ -using AlicizaX; -using UnityEngine; - -namespace AlicizaX -{ - /// - /// UnityEngine.Object 变量类。 - /// - public sealed class VarUnityObject : Variable - { - /// - /// 初始化 UnityEngine.Object 变量类的新实例。 - /// - public VarUnityObject() - { - } - - /// - /// 从 UnityEngine.Object 到 UnityEngine.Object 变量类的隐式转换。 - /// - /// 值。 - public static implicit operator VarUnityObject(Object value) - { - VarUnityObject varValue = MemoryPool.Acquire(); - varValue.Value = value; - return varValue; - } - - /// - /// 从 UnityEngine.Object 变量类到 UnityEngine.Object 的隐式转换。 - /// - /// 值。 - public static implicit operator Object(VarUnityObject value) - { - return value.Value; - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarUnityObject.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarUnityObject.cs.meta deleted file mode 100644 index b0adfea..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarUnityObject.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: bc9d733f793fc00468089f8cdd6c1835 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarVector2.cs b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarVector2.cs deleted file mode 100644 index 75fe6a8..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarVector2.cs +++ /dev/null @@ -1,38 +0,0 @@ -using AlicizaX; -using UnityEngine; - -namespace AlicizaX -{ - /// - /// UnityEngine.Vector2 变量类。 - /// - public sealed class VarVector2 : Variable - { - /// - /// 初始化 UnityEngine.Vector2 变量类的新实例。 - /// - public VarVector2() - { - } - - /// - /// 从 UnityEngine.Vector2 到 UnityEngine.Vector2 变量类的隐式转换。 - /// - /// 值。 - public static implicit operator VarVector2(Vector2 value) - { - VarVector2 varValue = MemoryPool.Acquire(); - varValue.Value = value; - return varValue; - } - - /// - /// 从 UnityEngine.Vector2 变量类到 UnityEngine.Vector2 的隐式转换。 - /// - /// 值。 - public static implicit operator Vector2(VarVector2 value) - { - return value.Value; - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarVector2.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarVector2.cs.meta deleted file mode 100644 index 78ad39a..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarVector2.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ef03a8d73e6be4348802fc28c4777c49 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarVector3.cs b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarVector3.cs deleted file mode 100644 index 8fb6fa6..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarVector3.cs +++ /dev/null @@ -1,38 +0,0 @@ -using AlicizaX; -using UnityEngine; - -namespace AlicizaX -{ - /// - /// UnityEngine.Vector3 变量类。 - /// - public sealed class VarVector3 : Variable - { - /// - /// 初始化 UnityEngine.Vector3 变量类的新实例。 - /// - public VarVector3() - { - } - - /// - /// 从 UnityEngine.Vector3 到 UnityEngine.Vector3 变量类的隐式转换。 - /// - /// 值。 - public static implicit operator VarVector3(Vector3 value) - { - VarVector3 varValue = MemoryPool.Acquire(); - varValue.Value = value; - return varValue; - } - - /// - /// 从 UnityEngine.Vector3 变量类到 UnityEngine.Vector3 的隐式转换。 - /// - /// 值。 - public static implicit operator Vector3(VarVector3 value) - { - return value.Value; - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarVector3.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarVector3.cs.meta deleted file mode 100644 index 0fd91e0..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarVector3.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b041a74c058fe54418735010bcfd2a21 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarVector4.cs b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarVector4.cs deleted file mode 100644 index c47becf..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarVector4.cs +++ /dev/null @@ -1,38 +0,0 @@ -using AlicizaX; -using UnityEngine; - -namespace AlicizaX -{ - /// - /// UnityEngine.Vector4 变量类。 - /// - public sealed class VarVector4 : Variable - { - /// - /// 初始化 UnityEngine.Vector4 变量类的新实例。 - /// - public VarVector4() - { - } - - /// - /// 从 UnityEngine.Vector4 到 UnityEngine.Vector4 变量类的隐式转换。 - /// - /// 值。 - public static implicit operator VarVector4(Vector4 value) - { - VarVector4 varValue = MemoryPool.Acquire(); - varValue.Value = value; - return varValue; - } - - /// - /// 从 UnityEngine.Vector4 变量类到 UnityEngine.Vector4 的隐式转换。 - /// - /// 值。 - public static implicit operator Vector4(VarVector4 value) - { - return value.Value; - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarVector4.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Variable/VarVector4.cs.meta deleted file mode 100644 index f6d7301..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/VarVector4.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 30950f09797d4354e883c8c4d2caa7b7 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/Vec2.cs b/Client/Packages/com.alicizax.unity/Runtime/Variable/Vec2.cs deleted file mode 100644 index c204836..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/Vec2.cs +++ /dev/null @@ -1,26 +0,0 @@ -/*namespace UnityGameFramework.Runtime -{ - public class Vec2Int - { - public int w; - public int h; - - public Vec2Int(int width, int height) - { - w = width; - h = height; - } - } - - public class Vec2 - { - public float x; - public float y; - - public Vec2(float px, float py) - { - x = px; - y = py; - } - } -}*/ \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity/Runtime/Variable/Vec2.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Variable/Vec2.cs.meta deleted file mode 100644 index ed4b0dc..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Variable/Vec2.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 40c7c34adba84c8e9c5fb3edfce0343e -timeCreated: 1666619345 \ No newline at end of file diff --git a/Client/Packages/manifest.json b/Client/Packages/manifest.json index 40a6afb..b1facc3 100644 --- a/Client/Packages/manifest.json +++ b/Client/Packages/manifest.json @@ -2,7 +2,6 @@ "dependencies": { "com.alicizax.unity.cysharp.zstring": "http://101.34.252.46:3000/AlicizaX/com.alicizax.unity.cysharp.zstring.git", "com.code-philosophy.hybridclr": "https://gitee.com/focus-creative-games/hybridclr_unity.git", - "com.fantasy.unity": "http://101.34.252.46:3000/AlicizaX/Fantasy.Unity.git", "com.kyrylokuzyk.primetween": "http://101.34.252.46:3000/AlicizaX/com.alicizax.kyrylokuzyk.primetween.git", "com.unity.ai.navigation": "2.0.6", "com.unity.editorcoroutines": "1.0.0", diff --git a/Client/Packages/packages-lock.json b/Client/Packages/packages-lock.json index 161988a..7941f5c 100644 --- a/Client/Packages/packages-lock.json +++ b/Client/Packages/packages-lock.json @@ -12,12 +12,6 @@ "source": "embedded", "dependencies": {} }, - "com.alicizax.unity.audio": { - "version": "file:com.alicizax.unity.audio", - "depth": 0, - "source": "embedded", - "dependencies": {} - }, "com.alicizax.unity.cysharp.unitask": { "version": "file:com.alicizax.unity.cysharp.unitask", "depth": 0, @@ -31,12 +25,6 @@ "dependencies": {}, "hash": "4fbea560b5790224c98b0aba56f545b80d28de43" }, - "com.alicizax.unity.debugger": { - "version": "file:com.alicizax.unity.debugger", - "depth": 0, - "source": "embedded", - "dependencies": {} - }, "com.alicizax.unity.editor.extension": { "version": "file:com.alicizax.unity.editor.extension", "depth": 0, @@ -57,25 +45,19 @@ "source": "embedded", "dependencies": {} }, - "com.alicizax.unity.fsm": { - "version": "file:com.alicizax.unity.fsm", + "com.alicizax.unity.framework": { + "version": "file:com.alicizax.unity.framework", "depth": 0, "source": "embedded", "dependencies": {} }, - "com.alicizax.unity.localization": { - "version": "file:com.alicizax.unity.localization", - "depth": 0, - "source": "embedded", - "dependencies": { - "com.unity.serialization": "3.1.2" - } - }, "com.alicizax.unity.network": { "version": "file:com.alicizax.unity.network", "depth": 0, "source": "embedded", - "dependencies": {} + "dependencies": { + "com.unity.nuget.newtonsoft-json": "3.2.1" + } }, "com.alicizax.unity.packagemanager": { "version": "file:com.alicizax.unity.packagemanager", @@ -85,29 +67,16 @@ "com.unity.editorcoroutines": "1.0.0" } }, - "com.alicizax.unity.resource": { - "version": "file:com.alicizax.unity.resource", + "com.alicizax.unity.tuyoogame.yooasset": { + "version": "file:com.alicizax.unity.tuyoogame.yooasset", "depth": 0, "source": "embedded", - "dependencies": {} - }, - "com.alicizax.unity.scene": { - "version": "file:com.alicizax.unity.scene", - "depth": 0, - "source": "embedded", - "dependencies": {} - }, - "com.alicizax.unity.timer": { - "version": "file:com.alicizax.unity.timer", - "depth": 0, - "source": "embedded", - "dependencies": {} - }, - "com.alicizax.unity.ui": { - "version": "file:com.alicizax.unity.ui", - "depth": 0, - "source": "embedded", - "dependencies": {} + "dependencies": { + "com.unity.scriptablebuildpipeline": "1.21.25", + "com.unity.modules.assetbundle": "1.0.0", + "com.unity.modules.unitywebrequest": "1.0.0", + "com.unity.modules.unitywebrequestassetbundle": "1.0.0" + } }, "com.alicizax.unity.ui.extension": { "version": "file:com.alicizax.unity.ui.extension", @@ -120,16 +89,7 @@ "depth": 0, "source": "git", "dependencies": {}, - "hash": "756b906a215feb6eed414fb56c0f5758220096ae" - }, - "com.fantasy.unity": { - "version": "http://101.34.252.46:3000/AlicizaX/Fantasy.Unity.git", - "depth": 0, - "source": "git", - "dependencies": { - "com.unity.nuget.newtonsoft-json": "3.2.1" - }, - "hash": "67c84d068af9a1ed26e2b056983a5006d6fc3e18" + "hash": "d505624c78e6d1d2d53efd716abe7349b611681e" }, "com.kyrylokuzyk.primetween": { "version": "http://101.34.252.46:3000/AlicizaX/com.alicizax.kyrylokuzyk.primetween.git", @@ -138,17 +98,6 @@ "dependencies": {}, "hash": "a2d206268922a2011851aedb053f3396f2243fc4" }, - "com.tuyoogame.yooasset": { - "version": "file:com.alicizax.unity.tuyoogame.yooasset", - "depth": 0, - "source": "embedded", - "dependencies": { - "com.unity.scriptablebuildpipeline": "1.21.25", - "com.unity.modules.assetbundle": "1.0.0", - "com.unity.modules.unitywebrequest": "1.0.0", - "com.unity.modules.unitywebrequestassetbundle": "1.0.0" - } - }, "com.unity.ai.navigation": { "version": "2.0.6", "depth": 0, diff --git a/Client/ProjectSettings/HybridCLRSettings.asset b/Client/ProjectSettings/HybridCLRSettings.asset index bad7217..a1cc82b 100644 --- a/Client/ProjectSettings/HybridCLRSettings.asset +++ b/Client/ProjectSettings/HybridCLRSettings.asset @@ -38,5 +38,3 @@ MonoBehaviour: outputAOTGenericReferenceFile: HybridCLRGenerate/AOTGenericReferences.cs maxGenericReferenceIteration: 10 maxMethodBridgeGenericIteration: 10 - enableProfilerInReleaseBuild: 0 - enableStraceTraceInWebGLReleaseBuild: 0 diff --git a/Client/ProjectSettings/ProjectSettings.asset b/Client/ProjectSettings/ProjectSettings.asset index 86ac743..1763cd9 100644 --- a/Client/ProjectSettings/ProjectSettings.asset +++ b/Client/ProjectSettings/ProjectSettings.asset @@ -827,7 +827,7 @@ PlayerSettings: webWasm2023: 0 scriptingDefineSymbols: Android: ENABLE_HYBRIDCLR;ENABLE_LOG - Standalone: ODIN_INSPECTOR;ODIN_INSPECTOR_3;ODIN_INSPECTOR_3_1;ODIN_VALIDATOR;ODIN_VALIDATOR_3_1;ENABLE_HYBRIDCLR;FANTASY_UNITY;ENABLE_LOG + Standalone: ODIN_INSPECTOR;ODIN_INSPECTOR_3;ODIN_INSPECTOR_3_1;ODIN_VALIDATOR;ODIN_VALIDATOR_3_1;ENABLE_HYBRIDCLR;FANTASY_UNITY;ENABLE_LOG;Event_StrickCheck WebGL: ENABLE_HYBRIDCLR;ENABLE_LOG Windows Store Apps: ENABLE_HYBRIDCLR;ENABLE_LOG iPhone: ENABLE_HYBRIDCLR;ENABLE_LOG diff --git a/Client/UserSettings/EditorUserSettings.asset b/Client/UserSettings/EditorUserSettings.asset index 0206018..58a3642 100644 --- a/Client/UserSettings/EditorUserSettings.asset +++ b/Client/UserSettings/EditorUserSettings.asset @@ -33,10 +33,10 @@ EditorUserSettings: value: 0505045406565e080c59097440205d4444164f727d7d76367d7d1c63e3b9646d flags: 0 RecentlyUsedSceneGuid-8: - value: 50500404540c580d0f0b5e7543725b44424f4c7a7b7c7734747e4f36e4b1676d + value: 5a07065703500c59585e0e7748770d44444f4a737d2d7f35787d4f63e0b26668 flags: 0 RecentlyUsedSceneGuid-9: - value: 5a07065703500c59585e0e7748770d44444f4a737d2d7f35787d4f63e0b26668 + value: 50500404540c580d0f0b5e7543725b44424f4c7a7b7c7734747e4f36e4b1676d flags: 0 vcSharedLogLevel: value: 0d5e400f0650 diff --git a/Client/UserSettings/Layouts/default-6000.dwlt b/Client/UserSettings/Layouts/default-6000.dwlt index 1a68b9b..85c7e84 100644 --- a/Client/UserSettings/Layouts/default-6000.dwlt +++ b/Client/UserSettings/Layouts/default-6000.dwlt @@ -19,7 +19,7 @@ MonoBehaviour: width: 1920 height: 997 m_ShowMode: 4 - m_Title: Inspector + m_Title: Project m_RootView: {fileID: 2} m_MinSize: {x: 875, y: 300} m_MaxSize: {x: 10000, y: 10000} @@ -121,7 +121,7 @@ MonoBehaviour: m_MinSize: {x: 400, y: 100} m_MaxSize: {x: 32384, y: 16192} vertical: 0 - controlID: 168 + controlID: 54 draggingID: 0 --- !u!114 &6 MonoBehaviour: @@ -140,7 +140,7 @@ MonoBehaviour: serializedVersion: 2 x: 0 y: 0 - width: 469 + width: 590 height: 941 m_MinSize: {x: 101, y: 126} m_MaxSize: {x: 4001, y: 4026} @@ -167,9 +167,9 @@ MonoBehaviour: - {fileID: 9} m_Position: serializedVersion: 2 - x: 469 + x: 590 y: 0 - width: 432 + width: 311 height: 941 m_MinSize: {x: 100, y: 100} m_MaxSize: {x: 8096, y: 16192} @@ -193,7 +193,7 @@ MonoBehaviour: serializedVersion: 2 x: 0 y: 0 - width: 432 + width: 311 height: 363 m_MinSize: {x: 202, y: 226} m_MaxSize: {x: 4002, y: 4026} @@ -219,7 +219,7 @@ MonoBehaviour: serializedVersion: 2 x: 0 y: 363 - width: 432 + width: 311 height: 578 m_MinSize: {x: 102, y: 126} m_MaxSize: {x: 4002, y: 4026} @@ -246,7 +246,7 @@ MonoBehaviour: serializedVersion: 2 x: 901 y: 0 - width: 407 + width: 525 height: 941 m_MinSize: {x: 232, y: 276} m_MaxSize: {x: 10002, y: 10026} @@ -270,9 +270,9 @@ MonoBehaviour: m_Children: [] m_Position: serializedVersion: 2 - x: 1308 + x: 1426 y: 0 - width: 612 + width: 494 height: 941 m_MinSize: {x: 276, y: 76} m_MaxSize: {x: 4001, y: 4026} @@ -302,9 +302,9 @@ MonoBehaviour: m_TextWithWhitespace: "Game\u200B" m_Pos: serializedVersion: 2 - x: 469 + x: 225 y: 442 - width: 430 + width: 658 height: 552 m_SerializedDataModeController: m_DataMode: 0 @@ -323,7 +323,7 @@ MonoBehaviour: m_ShowGizmos: 0 m_TargetDisplay: 0 m_ClearColor: {r: 0, g: 0, b: 0, a: 0} - m_TargetSize: {x: 430, y: 242} + m_TargetSize: {x: 658, y: 370} m_TextureFilterMode: 0 m_TextureHideFlags: 61 m_RenderIMGUI: 1 @@ -338,10 +338,10 @@ MonoBehaviour: m_VRangeLocked: 0 hZoomLockedByDefault: 0 vZoomLockedByDefault: 0 - m_HBaseRangeMin: -215 - m_HBaseRangeMax: 215 - m_VBaseRangeMin: -121 - m_VBaseRangeMax: 121 + m_HBaseRangeMin: -329 + m_HBaseRangeMax: 329 + m_VBaseRangeMin: -185 + m_VBaseRangeMax: 185 m_HAllowExceedBaseRangeMin: 1 m_HAllowExceedBaseRangeMax: 1 m_VAllowExceedBaseRangeMin: 1 @@ -359,23 +359,23 @@ MonoBehaviour: serializedVersion: 2 x: 0 y: 21 - width: 430 + width: 658 height: 531 m_Scale: {x: 1, y: 1} - m_Translation: {x: 215, y: 265.5} + m_Translation: {x: 329, y: 265.5} m_MarginLeft: 0 m_MarginRight: 0 m_MarginTop: 0 m_MarginBottom: 0 m_LastShownAreaInsideMargins: serializedVersion: 2 - x: -215 + x: -329 y: -265.5 - width: 430 + width: 658 height: 531 m_MinimalGUI: 1 m_defaultScale: 1 - m_LastWindowPixelSize: {x: 430, y: 552} + m_LastWindowPixelSize: {x: 658, y: 552} m_ClearInEditMode: 1 m_NoCameraWarning: 1 m_LowResolutionForAspectRatios: 01000000000000000000 @@ -404,7 +404,7 @@ MonoBehaviour: serializedVersion: 2 x: 0 y: 24 - width: 468 + width: 589 height: 915 m_SerializedDataModeController: m_DataMode: 0 @@ -1171,7 +1171,7 @@ MonoBehaviour: serializedVersion: 2 x: 1 y: 24 - width: 430 + width: 309 height: 337 m_SerializedDataModeController: m_DataMode: 0 @@ -1189,7 +1189,7 @@ MonoBehaviour: scrollPos: {x: 0, y: 0} m_SelectedIDs: m_LastClickedID: 0 - m_ExpandedIDs: 98faffff + m_ExpandedIDs: b6faffff m_RenameOverlay: m_UserAcceptedRename: 0 m_Name: @@ -1237,7 +1237,7 @@ MonoBehaviour: serializedVersion: 2 x: 1 y: 387 - width: 430 + width: 309 height: 552 m_SerializedDataModeController: m_DataMode: 0 @@ -1273,7 +1273,7 @@ MonoBehaviour: serializedVersion: 2 x: 902 y: 24 - width: 405 + width: 523 height: 915 m_SerializedDataModeController: m_DataMode: 0 @@ -1296,8 +1296,7 @@ MonoBehaviour: m_ShowAllHits: 0 m_SkipHidden: 0 m_SearchArea: 1 - m_Folders: - - Packages/com.alicizax.unity.eventkit/Plugins + m_Folders: [] m_Globs: [] m_ProductIds: m_AnyWithAssetOrigin: 0 @@ -1315,7 +1314,7 @@ MonoBehaviour: scrollPos: {x: 0, y: 0} m_SelectedIDs: e48c0000 m_LastClickedID: 36068 - m_ExpandedIDs: 0000000010c3000012c3000014c3000016c3000018c300001ac300001cc300001ec3000020c3000022c3000024c3000026c3000028c300002ac300002cc300002ec3000030c3000032c3000034c3000036c3000038c300003ac300003cc300003ec3000040c3000042c3000044c3000046c3000048c300004ac300004cc300004ec3000050c3000052c3000054c3000056c3000058c300005ac300005cc300005ec3000060c3000062c3000064c3000066c3000068c300006ac300006cc300006ec3000070c3000072c3000074c3000076c3000078c300007ac300007cc300007ec3000080c3000082c3000084c3000086c3000088c300008ac300008cc300008ec3000090c3000092c3000094c3000096c3000098c300009ac300009cc300009ec30000a0c30000a2c30000a4c30000a6c30000a8c30000aac30000acc30000aec30000b0c30000b2c30000b4c30000b6c30000b8c30000bac30000bcc30000bec30000c0c30000c2c30000c4c30000c6c30000c8c30000cac30000ccc30000cec30000d0c30000d2c30000d4c30000d6c30000d8c30000dac30000dcc30000dec30000e0c30000e2c30000e4c30000e6c30000e8c30000eac30000ecc30000eec30000f0c30000f2c30000f4c30000f6c30000f8c30000fac30000fcc30000fec3000000c4000002c4000004c4000006c4000008c400000ac400000cc400000ec4000010c4000012c4000014c4000016c40000 + m_ExpandedIDs: 00000000bac10000bcc10000bec10000c0c10000c2c10000c4c10000c6c10000c8c10000cac10000ccc10000cec10000d0c10000d2c10000d4c10000d6c10000d8c10000dac10000dcc10000dec10000e0c10000e2c10000e4c10000e6c10000e8c10000eac10000ecc10000eec10000f0c10000f2c10000f4c10000f6c10000f8c10000fac10000fcc10000fec1000000c2000002c2000004c2000006c2000008c200000ac200000cc200000ec2000010c2000012c2000014c2000016c2000018c200001ac200001cc200001ec2000020c2000022c2000024c2000026c2000028c200002ac200002cc200002ec2000030c2000032c2000034c2000036c2000038c200003ac200003cc200003ec2000040c2000042c2000044c2000046c2000048c200004ac200004cc200004ec2000050c2000052c2000054c2000056c2000058c200005ac200005cc200005ec2000060c2000062c2000064c2000066c2000068c200006ac200006cc200006ec2000070c2000072c2000074c2000076c2000078c200007ac200007cc200007ec2000080c2000082c2000084c2000086c2000088c200008ac200008cc200008ec2000090c2000092c2000094c2000096c2000098c200009ac200009cc200009ec20000a0c20000a2c20000a4c20000a6c20000a8c20000aac20000acc20000aec20000b0c20000b2c20000b4c20000b6c20000b8c20000bac20000bcc20000bec20000c0c20000c2c20000 m_RenameOverlay: m_UserAcceptedRename: 0 m_Name: @@ -1341,10 +1340,10 @@ MonoBehaviour: m_Icon: {fileID: 0} m_ResourceFile: m_AssetTreeState: - scrollPos: {x: 0, y: 2363} + scrollPos: {x: 0, y: 0} m_SelectedIDs: m_LastClickedID: 0 - m_ExpandedIDs: 0000000010c3000012c3000014c3000016c3000018c300001ac300001cc300001ec3000020c3000022c3000024c3000026c3000028c300002ac300002cc300002ec3000030c3000032c3000034c3000036c3000038c300003ac300003cc300003ec3000040c3000042c3000044c3000046c3000048c300004ac300004cc300004ec3000050c3000052c3000054c3000056c3000058c300005ac300005cc300005ec3000060c3000062c3000064c3000066c3000068c300006ac300006cc300006ec3000070c3000072c3000074c3000076c3000078c300007ac300007cc300007ec3000080c3000082c3000084c3000086c3000088c300008ac300008cc300008ec3000090c3000092c3000094c3000096c3000098c300009ac300009cc300009ec30000a0c30000a2c30000a4c30000a6c30000a8c30000aac30000acc30000aec30000b0c30000b2c30000b4c30000b6c30000b8c30000bac30000bcc30000bec30000c0c30000c2c30000c4c30000c6c30000c8c30000cac30000ccc30000cec30000d0c30000d2c30000d4c30000d6c30000d8c30000dac30000dcc30000dec30000e0c30000e2c30000e4c30000e6c30000e8c30000eac30000ecc30000eec30000f0c30000f2c30000f4c30000f6c30000f8c30000fac30000fcc30000fec3000000c4000002c4000004c4000006c4000008c400000ac400000cc400000ec4000010c4000012c4000014c4000016c40000 + m_ExpandedIDs: 00000000bac10000bcc10000bec10000c0c10000c2c10000c4c10000c6c10000c8c10000cac10000ccc10000cec10000d0c10000d2c10000d4c10000d6c10000d8c10000dac10000dcc10000dec10000e0c10000e2c10000e4c10000e6c10000e8c10000eac10000ecc10000eec10000f0c10000f2c10000f4c10000f6c10000f8c10000fac10000fcc10000fec1000000c2000002c2000004c2000006c2000008c200000ac200000cc200000ec2000010c2000012c2000014c2000016c2000018c200001ac200001cc200001ec2000020c2000022c2000024c2000026c2000028c200002ac200002cc200002ec2000030c2000032c2000034c2000036c2000038c200003ac200003cc200003ec2000040c2000042c2000044c2000046c2000048c200004ac200004cc200004ec2000050c2000052c2000054c2000056c2000058c200005ac200005cc200005ec2000060c2000062c2000064c2000066c2000068c200006ac200006cc200006ec2000070c2000072c2000074c2000076c2000078c200007ac200007cc200007ec2000080c2000082c2000084c2000086c2000088c200008ac200008cc200008ec2000090c2000092c2000094c2000096c2000098c200009ac200009cc200009ec20000a0c20000a2c20000a4c20000a6c20000a8c20000aac20000acc20000aec20000b0c20000b2c20000b4c20000b6c20000b8c20000bac20000bcc20000bec20000c0c20000c2c20000 m_RenameOverlay: m_UserAcceptedRename: 0 m_Name: @@ -1423,9 +1422,9 @@ MonoBehaviour: m_TextWithWhitespace: "Inspector\u200B" m_Pos: serializedVersion: 2 - x: 1309 + x: 1427 y: 24 - width: 611 + width: 493 height: 915 m_SerializedDataModeController: m_DataMode: 0