diff --git a/Client/Assets/Art/GameInputSO.inputactions b/Client/Assets/Art/GameInputSO.inputactions new file mode 100644 index 0000000..98a3063 --- /dev/null +++ b/Client/Assets/Art/GameInputSO.inputactions @@ -0,0 +1,433 @@ +{ + "name": "GameInputSO", + "maps": [ + { + "name": "Player", + "id": "f62a4b92-ef5e-4175-8f4c-c9075429d32c", + "actions": [ + { + "name": "Move", + "type": "Value", + "id": "6bc1aaf4-b110-4ff7-891e-5b9fe6f32c4d", + "expectedControlType": "Vector2", + "processors": "", + "interactions": "", + "initialStateCheck": true + }, + { + "name": "Look", + "type": "Value", + "id": "2690c379-f54d-45be-a724-414123833eb4", + "expectedControlType": "Vector2", + "processors": "", + "interactions": "", + "initialStateCheck": true + }, + { + "name": "Jump", + "type": "Button", + "id": "8c4abdf8-4099-493a-aa1a-129acec7c3df", + "expectedControlType": "", + "processors": "", + "interactions": "", + "initialStateCheck": false + }, + { + "name": "Sprint", + "type": "Value", + "id": "980e881e-182c-404c-8cbf-3d09fdb48fef", + "expectedControlType": "Button", + "processors": "", + "interactions": "", + "initialStateCheck": true + }, + { + "name": "Escape", + "type": "Button", + "id": "d0bfd212-2876-4c8e-b35e-cfb618a9dc0b", + "expectedControlType": "", + "processors": "", + "interactions": "", + "initialStateCheck": false + }, + { + "name": "InteractPrimary", + "type": "Button", + "id": "66b26e9d-c51a-4fb2-a4cc-3f44bdff3355", + "expectedControlType": "", + "processors": "", + "interactions": "", + "initialStateCheck": false + }, + { + "name": "InteractSecondary", + "type": "Button", + "id": "5cc4edbd-955c-4718-8bce-ce78d07abf3f", + "expectedControlType": "", + "processors": "", + "interactions": "", + "initialStateCheck": false + }, + { + "name": "Zoom", + "type": "PassThrough", + "id": "702f73cf-2f96-4624-871e-f1263393b8f5", + "expectedControlType": "", + "processors": "", + "interactions": "", + "initialStateCheck": false + }, + { + "name": "Toggle Walking", + "type": "Button", + "id": "4a6790ad-d534-44f4-bfde-3a550760bd39", + "expectedControlType": "", + "processors": "", + "interactions": "Press(behavior=1)", + "initialStateCheck": false + } + ], + "bindings": [ + { + "name": "WASD", + "id": "b7594ddb-26c9-4ba2-bd5a-901468929edc", + "path": "2DVector(mode=1)", + "interactions": "", + "processors": "", + "groups": "", + "action": "Move", + "isComposite": true, + "isPartOfComposite": false + }, + { + "name": "up", + "id": "2063a8b5-6a45-43de-851b-65f3d46e7b58", + "path": "/w", + "interactions": "", + "processors": "", + "groups": "KeyboardMouse", + "action": "Move", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "down", + "id": "64e4d037-32e1-4fb9-80e4-fc7330404dfe", + "path": "/s", + "interactions": "", + "processors": "", + "groups": "KeyboardMouse", + "action": "Move", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "left", + "id": "0fce8b11-5eab-4e4e-a741-b732e7b20873", + "path": "/a", + "interactions": "", + "processors": "", + "groups": "KeyboardMouse", + "action": "Move", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "right", + "id": "7bdda0d6-57a8-47c8-8238-8aecf3110e47", + "path": "/d", + "interactions": "", + "processors": "", + "groups": "KeyboardMouse", + "action": "Move", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "up", + "id": "bb94b405-58d3-4998-8535-d705c1218a98", + "path": "/upArrow", + "interactions": "", + "processors": "", + "groups": "KeyboardMouse", + "action": "Move", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "down", + "id": "929d9071-7dd0-4368-9743-6793bb98087e", + "path": "/downArrow", + "interactions": "", + "processors": "", + "groups": "KeyboardMouse", + "action": "Move", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "left", + "id": "28abadba-06ff-4d37-bb70-af2f1e35a3b9", + "path": "/leftArrow", + "interactions": "", + "processors": "", + "groups": "KeyboardMouse", + "action": "Move", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "right", + "id": "45f115b6-9b4f-4ba8-b500-b94c93bf7d7e", + "path": "/rightArrow", + "interactions": "", + "processors": "", + "groups": "KeyboardMouse", + "action": "Move", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "", + "id": "e2f9aa65-db06-4c5b-a2e9-41bc8acb9517", + "path": "/leftStick", + "interactions": "", + "processors": "StickDeadzone", + "groups": "Gamepad", + "action": "Move", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "ed66cbff-2900-4a62-8896-696503cfcd31", + "path": "/delta", + "interactions": "", + "processors": "InvertVector2(invertX=false),ScaleVector2(x=0.05,y=0.05)", + "groups": "KeyboardMouse", + "action": "Look", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "d1d171b6-19d8-47a6-ba3a-71b6a8e7b3c0", + "path": "/rightStick", + "interactions": "", + "processors": "InvertVector2(invertX=false),StickDeadzone,ScaleVector2(x=300,y=300)", + "groups": "Gamepad", + "action": "Look", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "1bd55a0b-761e-4ae4-89ae-8ec127e08a29", + "path": "/space", + "interactions": "", + "processors": "", + "groups": "KeyboardMouse", + "action": "Jump", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "9f973413-5e27-4239-acee-38c4a63feeba", + "path": "/buttonSouth", + "interactions": "", + "processors": "", + "groups": "Gamepad", + "action": "Jump", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "dc65b89f-9bd3-43fb-92af-d0d87ba5faa4", + "path": "/leftShift", + "interactions": "", + "processors": "", + "groups": "KeyboardMouse", + "action": "Sprint", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "c8fcd86e-dcfd-4f88-8e93-b638cdbf3320", + "path": "/leftTrigger", + "interactions": "", + "processors": "", + "groups": "Gamepad", + "action": "Sprint", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "2253ad85-a0da-43df-ac0e-ee4d9e37f9fa", + "path": "/escape", + "interactions": "", + "processors": "", + "groups": "KeyboardMouse", + "action": "Escape", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "ec4c5980-4d30-41c4-b1b4-658d52b3a103", + "path": "/leftButton", + "interactions": "", + "processors": "", + "groups": "KeyboardMouse", + "action": "InteractPrimary", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "adcb95fb-24a3-4c13-a238-588970915d06", + "path": "/rightButton", + "interactions": "", + "processors": "", + "groups": "KeyboardMouse", + "action": "InteractSecondary", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "18772126-eab8-4125-b643-22aa0566bc51", + "path": "/scroll/y", + "interactions": "", + "processors": "Clamp(min=-0.1,max=0.1)", + "groups": "", + "action": "Zoom", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "fcac67ce-ed18-4457-b978-8eff197ccf91", + "path": "/dpad/y", + "interactions": "", + "processors": "Clamp(min=-0.01,max=0.01)", + "groups": "", + "action": "Zoom", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "5edc2393-2264-49df-8e82-18f9cfa4e062", + "path": "/leftCtrl", + "interactions": "", + "processors": "", + "groups": "", + "action": "Toggle Walking", + "isComposite": false, + "isPartOfComposite": false + } + ] + }, + { + "name": "UI", + "id": "ebfdbacf-7468-4988-9497-b726572473ea", + "actions": [ + { + "name": "Cancel", + "type": "Button", + "id": "1c614fd1-b2d4-4a37-8a58-480ab69e09a5", + "expectedControlType": "", + "processors": "", + "interactions": "", + "initialStateCheck": false + }, + { + "name": "Submit", + "type": "Button", + "id": "8a983366-d7b9-4953-89d1-7f6e4392ecc6", + "expectedControlType": "", + "processors": "", + "interactions": "", + "initialStateCheck": false + } + ], + "bindings": [ + { + "name": "", + "id": "55447a8c-bc61-4ae9-98e4-ccdcdb2bd538", + "path": "*/{Cancel}", + "interactions": "", + "processors": "", + "groups": "", + "action": "Cancel", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "9783ec4c-2684-44b8-b4dc-ca554c527049", + "path": "*/{Submit}", + "interactions": "", + "processors": "", + "groups": "", + "action": "Submit", + "isComposite": false, + "isPartOfComposite": false + } + ] + } + ], + "controlSchemes": [ + { + "name": "KeyboardMouse", + "bindingGroup": "KeyboardMouse", + "devices": [ + { + "devicePath": "", + "isOptional": false, + "isOR": false + }, + { + "devicePath": "", + "isOptional": false, + "isOR": false + } + ] + }, + { + "name": "Gamepad", + "bindingGroup": "Gamepad", + "devices": [ + { + "devicePath": "", + "isOptional": true, + "isOR": false + }, + { + "devicePath": "", + "isOptional": true, + "isOR": false + }, + { + "devicePath": "", + "isOptional": true, + "isOR": false + } + ] + }, + { + "name": "Xbox Controller", + "bindingGroup": "Xbox Controller", + "devices": [] + }, + { + "name": "PS4 Controller", + "bindingGroup": "PS4 Controller", + "devices": [] + } + ] +} \ No newline at end of file diff --git a/Client/Assets/Art/GameInputSO.inputactions.meta b/Client/Assets/Art/GameInputSO.inputactions.meta new file mode 100644 index 0000000..3badf34 --- /dev/null +++ b/Client/Assets/Art/GameInputSO.inputactions.meta @@ -0,0 +1,14 @@ +fileFormatVersion: 2 +guid: 4419d82f33d36e848b3ed5af4c8da37e +ScriptedImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 2 + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 11500000, guid: 8404be70184654265930450def6a9037, type: 3} + generateWrapperCode: 1 + wrapperCodePath: Assets/Scripts/Hotfix/GameLogic/GameInput.cs + wrapperClassName: GameInput + wrapperCodeNamespace: diff --git a/Client/Assets/Editor/Localization/LocalizationDropdownField.cs b/Client/Assets/Editor/Localization/LocalizationDropdownField.cs deleted file mode 100644 index 9ba7134..0000000 --- a/Client/Assets/Editor/Localization/LocalizationDropdownField.cs +++ /dev/null @@ -1,65 +0,0 @@ -using AlicizaX.Localization.Runtime; -using AlicizaX; -using Paps.UnityToolbarExtenderUIToolkit; -using UnityEditor; -using UnityEngine; -using UnityEngine.UIElements; - -[MainToolbarElement("LocalizationDropdownField", alignment: ToolbarAlign.Right, order: 0)] -public class LocalizationDropdownField : IMGUIContainer -{ - private static GUIContent appConfigBtContent; - - private static readonly string[] _languageTypeNames = - { - Language.ChineseSimplified.ToString(), - Language.English.ToString(), - Language.Japanese.ToString(), - }; - - public void InitializeElement() - { - appConfigBtContent = - EditorGUIUtility.TrTextContentWithIcon("", "", - "Settings"); - onGUIHandler = MyGUIMethod; - } - - private void MyGUIMethod() - { - GUILayout.BeginHorizontal(); - string title = _languageTypeNames[GetPrefsIndex()]; - appConfigBtContent.text = title; - if (EditorGUILayout.DropdownButton(appConfigBtContent, FocusType.Passive, EditorStyles.toolbarPopup, GUILayout.MaxWidth(120))) - { - DrawEditorToolDropdownMenus(); - } - - GUILayout.Space(5); - GUILayout.EndHorizontal(); - } - - static void DrawEditorToolDropdownMenus() - { - int index = GetPrefsIndex(); - GenericMenu popMenu = new GenericMenu(); - for (int i = 0; i < _languageTypeNames.Length; i++) - { - var selected = index == i; - var toolAttr = _languageTypeNames[i]; - popMenu.AddItem(new GUIContent(toolAttr), selected, menuIdx => { ClickToolsSubmenu((int)menuIdx); }, i); - } - - popMenu.ShowAsContext(); - } - - static void ClickToolsSubmenu(int menuIdx) - { - EditorPrefs.SetInt(LocalizationComponent.PrefsKey, menuIdx + 1); - } - - static int GetPrefsIndex() - { - return EditorPrefs.GetInt(LocalizationComponent.PrefsKey, 1) - 1; - } -} diff --git a/Client/Assets/Editor/Localization/LocalizationDropdownField.cs.meta b/Client/Assets/Editor/Localization/LocalizationDropdownField.cs.meta deleted file mode 100644 index 84b1b0b..0000000 --- a/Client/Assets/Editor/Localization/LocalizationDropdownField.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 2295b86f78274a84a63dc65ab4a69cb1 -timeCreated: 1742364662 \ No newline at end of file diff --git a/Client/Assets/Editor/Template/UITemplatePanel.prefab b/Client/Assets/Editor/Template/UITemplatePanel.prefab deleted file mode 100644 index 3048637..0000000 --- a/Client/Assets/Editor/Template/UITemplatePanel.prefab +++ /dev/null @@ -1,416 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!1 &391155014370552000 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 907499237110470932} - - component: {fileID: 1560093894229825085} - - component: {fileID: 4731840468700438029} - - component: {fileID: 6898308893480071255} - m_Layer: 5 - m_Name: UITemplatePanel - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 0 ---- !u!224 &907499237110470932 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 391155014370552000} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 657135054198889253} - - {fileID: 2071464777709478385} - - {fileID: 7379194316950781412} - m_Father: {fileID: 0} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!223 &1560093894229825085 -Canvas: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 391155014370552000} - m_Enabled: 1 - serializedVersion: 3 - m_RenderMode: 0 - m_Camera: {fileID: 0} - m_PlaneDistance: 100 - m_PixelPerfect: 0 - m_ReceivesEvents: 1 - m_OverrideSorting: 0 - m_OverridePixelPerfect: 0 - m_SortingBucketNormalizedSize: 0 - m_VertexColorAlwaysGammaSpace: 1 - m_AdditionalShaderChannelsFlag: 7 - m_UpdateRectTransformForStandalone: 0 - m_SortingLayerID: 0 - m_SortingOrder: 0 - m_TargetDisplay: 0 ---- !u!114 &4731840468700438029 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 391155014370552000} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} - m_Name: - m_EditorClassIdentifier: - m_IgnoreReversedGraphics: 1 - m_BlockingObjects: 0 - m_BlockingMask: - serializedVersion: 2 - m_Bits: 55 ---- !u!114 &6898308893480071255 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 391155014370552000} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} - m_Name: - m_EditorClassIdentifier: - m_UiScaleMode: 1 - m_ReferencePixelsPerUnit: 100 - m_ScaleFactor: 1 - m_ReferenceResolution: {x: 1920, y: 1080} - m_ScreenMatchMode: 0 - m_MatchWidthOrHeight: 0 - m_PhysicalUnit: 3 - m_FallbackScreenDPI: 96 - m_DefaultSpriteDPI: 96 - m_DynamicPixelsPerUnit: 1 - m_PresetInfoIsWorld: 0 ---- !u!1 &4390318779409622146 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 7379194316950781412} - - component: {fileID: 2778387066864233462} - - component: {fileID: 4568176083037806692} - m_Layer: 0 - m_Name: TextLocalizeDefault - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &7379194316950781412 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4390318779409622146} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 907499237110470932} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 200, y: 50} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &2778387066864233462 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4390318779409622146} - m_CullTransparentMesh: 1 ---- !u!114 &4568176083037806692 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 4390318779409622146} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: bd17b8b605f2ba540bac156b5cf5ac77, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 0 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_text: "\u8BF7\u8F93\u5165\u6635\u79F0 (\u9650\u5341\u5B57\u4EE5\u5185)" - m_isRightToLeft: 0 - m_fontAsset: {fileID: 11400000, guid: b7bdda5fb9422b44ba90b21b9985c16c, type: 2} - m_sharedMaterial: {fileID: -7098814193341831791, guid: b7bdda5fb9422b44ba90b21b9985c16c, type: 2} - m_fontSharedMaterials: [] - m_fontMaterial: {fileID: 0} - m_fontMaterials: [] - m_fontColor32: - serializedVersion: 2 - rgba: 4294967295 - m_fontColor: {r: 1, g: 1, b: 1, a: 1} - m_enableVertexGradient: 0 - m_colorMode: 3 - m_fontColorGradient: - topLeft: {r: 1, g: 1, b: 1, a: 1} - topRight: {r: 1, g: 1, b: 1, a: 1} - bottomLeft: {r: 1, g: 1, b: 1, a: 1} - bottomRight: {r: 1, g: 1, b: 1, a: 1} - m_fontColorGradientPreset: {fileID: 0} - m_spriteAsset: {fileID: 0} - m_tintAllSprites: 0 - m_StyleSheet: {fileID: 0} - m_TextStyleHashCode: -1183493901 - m_overrideHtmlColors: 0 - m_faceColor: - serializedVersion: 2 - rgba: 4294967295 - m_fontSize: 36 - m_fontSizeBase: 36 - m_fontWeight: 400 - m_enableAutoSizing: 0 - m_fontSizeMin: 18 - m_fontSizeMax: 72 - m_fontStyle: 0 - m_HorizontalAlignment: 1 - m_VerticalAlignment: 256 - m_textAlignment: 65535 - m_characterSpacing: 0 - m_wordSpacing: 0 - m_lineSpacing: 0 - m_lineSpacingMax: 0 - m_paragraphSpacing: 0 - m_charWidthMaxAdj: 0 - m_TextWrappingMode: 1 - m_wordWrappingRatios: 0.4 - m_overflowMode: 0 - m_linkedTextComponent: {fileID: 0} - parentLinkedComponent: {fileID: 0} - m_enableKerning: 0 - m_ActiveFontFeatures: 6e72656b - m_enableExtraPadding: 0 - checkPaddingRequired: 0 - m_isRichText: 1 - m_EmojiFallbackSupport: 1 - m_parseCtrlCharacters: 1 - m_isOrthographic: 1 - m_isCullingEnabled: 0 - m_horizontalMapping: 0 - m_verticalMapping: 0 - m_uvLineOffset: 0 - m_geometrySortingOrder: 0 - m_IsTextObjectScaleStatic: 0 - m_VertexBufferAutoSizeReduction: 0 - m_useMaxVisibleDescender: 1 - m_pageToDisplay: 1 - m_margin: {x: 0, y: 0, z: 0, w: 0} - m_isUsingLegacyAnimationComponent: 0 - m_isVolumetricText: 0 - m_hasFontAssetChanged: 0 - m_baseMaterial: {fileID: 0} - m_maskOffset: {x: 0, y: 0, z: 0, w: 0} - m_localizationID: INPUTPANEL_NICKNAME ---- !u!1 &5504379471084463201 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 2071464777709478385} - - component: {fileID: 6336580921231272565} - - component: {fileID: 1353736730444205859} - - component: {fileID: 2186285324861091094} - m_Layer: 5 - m_Name: Img@Time - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &2071464777709478385 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5504379471084463201} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 907499237110470932} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 120, y: 120} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &6336580921231272565 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5504379471084463201} - m_CullTransparentMesh: 1 ---- !u!114 &1353736730444205859 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5504379471084463201} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 21300000, guid: 871027c5d100f954b9136354adae6817, type: 3} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!95 &2186285324861091094 -Animator: - serializedVersion: 7 - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5504379471084463201} - m_Enabled: 1 - m_Avatar: {fileID: 0} - m_Controller: {fileID: 9100000, guid: 7f77f6ebcc9564d4aafeef6af8b2086d, type: 2} - m_CullingMode: 0 - m_UpdateMode: 0 - m_ApplyRootMotion: 0 - m_LinearVelocityBlending: 0 - m_StabilizeFeet: 0 - m_AnimatePhysics: 0 - m_WarningMessage: - m_HasTransformHierarchy: 1 - m_AllowConstantClipSamplingOptimization: 1 - m_KeepAnimatorStateOnDisable: 0 - m_WriteDefaultValuesOnDisable: 0 ---- !u!1 &6705590104215007862 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 657135054198889253} - - component: {fileID: 541698302465368760} - - component: {fileID: 1217312796379611331} - m_Layer: 5 - m_Name: Mask - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 0 ---- !u!224 &657135054198889253 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 6705590104215007862} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 907499237110470932} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!222 &541698302465368760 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 6705590104215007862} - m_CullTransparentMesh: 1 ---- !u!114 &1217312796379611331 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 6705590104215007862} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 0} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 diff --git a/Client/Assets/Editor/Template/UITemplatePanel.prefab.meta b/Client/Assets/Editor/Template/UITemplatePanel.prefab.meta deleted file mode 100644 index 0276782..0000000 --- a/Client/Assets/Editor/Template/UITemplatePanel.prefab.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 4581faa155df5854cab0d579934a0c40 -PrefabImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Assets/Resources/AssemblyLoadData.json b/Client/Assets/Resources/AssemblyLoadData.json deleted file mode 100644 index 0920b42..0000000 --- a/Client/Assets/Resources/AssemblyLoadData.json +++ /dev/null @@ -1 +0,0 @@ -{"HotUpdateAssemblies":["GameLib.dll","GameProto.dll","GameBase.dll","GameLogic.dll"],"AOTMetaAssemblies":["mscorlib.dll","System.dll","System.Core.dll","UnityEngine.CoreModule.dll","YooAsset.dll","UniTask.Runtime.dll","ZString.dll"]} \ No newline at end of file diff --git a/Client/Assets/Resources/AssemblyLoadData.json.meta b/Client/Assets/Resources/AssemblyLoadData.json.meta deleted file mode 100644 index e3eece5..0000000 --- a/Client/Assets/Resources/AssemblyLoadData.json.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 69d8fe4890823d140950a9c8adce8ff8 -TextScriptImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.event/Runtime.meta b/Client/Assets/Samples.meta similarity index 77% rename from Client/Packages/com.alicizax.unity.event/Runtime.meta rename to Client/Assets/Samples.meta index 5e7906b..e3fcadf 100644 --- a/Client/Packages/com.alicizax.unity.event/Runtime.meta +++ b/Client/Assets/Samples.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: f3dbce1945b8e7d4bba4cb7d6e73c2e3 +guid: d697d3adc2f64e643914d1fabf6f9572 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Client/Assets/Scenes/Desingn.unity b/Client/Assets/Scenes/Desingn.unity index f2334f9..698c303 100644 --- a/Client/Assets/Scenes/Desingn.unity +++ b/Client/Assets/Scenes/Desingn.unity @@ -232,9 +232,160 @@ PrefabInstance: addedObject: {fileID: 2069737132} - targetCorrespondingSourceObject: {fileID: 7611974172231861040, guid: 48513b07f7f7f364b863b27de9a3f5e2, type: 3} insertIndex: -1 - addedObject: {fileID: 1768216400} - m_AddedComponents: [] + addedObject: {fileID: 1134568826} + - targetCorrespondingSourceObject: {fileID: 7611974172231861040, guid: 48513b07f7f7f364b863b27de9a3f5e2, type: 3} + insertIndex: -1 + addedObject: {fileID: 561161497} + - targetCorrespondingSourceObject: {fileID: 7611974172231861040, guid: 48513b07f7f7f364b863b27de9a3f5e2, type: 3} + insertIndex: -1 + addedObject: {fileID: 199957137} + - targetCorrespondingSourceObject: {fileID: 7611974172231861040, guid: 48513b07f7f7f364b863b27de9a3f5e2, type: 3} + insertIndex: -1 + addedObject: {fileID: 630692318} + - targetCorrespondingSourceObject: {fileID: 7611974172231861040, guid: 48513b07f7f7f364b863b27de9a3f5e2, type: 3} + insertIndex: -1 + addedObject: {fileID: 335553191} + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 2463889675848662058, guid: 48513b07f7f7f364b863b27de9a3f5e2, type: 3} + insertIndex: -1 + addedObject: {fileID: 125612304} m_SourcePrefab: {fileID: 100100000, guid: 48513b07f7f7f364b863b27de9a3f5e2, type: 3} +--- !u!1 &125612303 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 2463889675848662058, guid: 48513b07f7f7f364b863b27de9a3f5e2, type: 3} + m_PrefabInstance: {fileID: 125612302} + m_PrefabAsset: {fileID: 0} +--- !u!114 &125612304 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 125612303} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7f0492ee9ffe496c9f028b5f28a10308, type: 3} + m_Name: + m_EditorClassIdentifier: + m_AllowSwitchOff: 0 + m_Buttons: + - {fileID: 2069737134} + - {fileID: 1134568824} + - {fileID: 561161495} + - {fileID: 199957135} + onSelectedChanged: + m_PersistentCalls: + m_Calls: [] +--- !u!1 &199957134 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 199957137} + - component: {fileID: 199957135} + - component: {fileID: 199957136} + m_Layer: 5 + m_Name: Btn@test (4) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &199957135 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 199957134} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d7e92b092d584bb39e5239463f064cbe, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Interactable: 1 + m_Mode: 1 + m_OnClick: + m_PersistentCalls: + m_Calls: [] + m_TransitionData: + targetGraphic: {fileID: 1894264047} + transition: 1 + colors: + m_NormalColor: {r: 1, g: 0.7600515, b: 0, a: 1} + m_HighlightedColor: {r: 0.33962262, g: 0.062477753, b: 0.062477753, a: 1} + m_PressedColor: {r: 0.3200357, g: 1, b: 0, a: 1} + m_SelectedColor: {r: 0.85877466, g: 0, b: 1, a: 1} + m_DisabledColor: {r: 0.7843137, g: 0.7843137, b: 0.7843137, a: 0.5} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + spriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + animationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_ChildTransitions: [] + m_UXGroup: {fileID: 125612304} + hoverAudioClip: {fileID: 0} + clickAudioClip: {fileID: 0} + _hotKeyRefrence: {fileID: 0} + _hotkeyPressType: 0 + m_SelectionState: 0 + m_OnValueChanged: + m_PersistentCalls: + m_Calls: [] +--- !u!95 &199957136 +Animator: + serializedVersion: 7 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 199957134} + m_Enabled: 1 + m_Avatar: {fileID: 0} + m_Controller: {fileID: 9100000, guid: 75db14477f59de44b96f358d16e02e73, type: 2} + m_CullingMode: 0 + m_UpdateMode: 0 + m_ApplyRootMotion: 0 + m_LinearVelocityBlending: 0 + m_StabilizeFeet: 0 + m_AnimatePhysics: 0 + m_WarningMessage: + m_HasTransformHierarchy: 1 + m_AllowConstantClipSamplingOptimization: 1 + m_KeepAnimatorStateOnDisable: 0 + m_WriteDefaultValuesOnDisable: 0 +--- !u!224 &199957137 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 199957134} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1894264049} + - {fileID: 1734249350} + m_Father: {fileID: 1149398277} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 143, y: -72} + m_SizeDelta: {x: 100, y: 100} + m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &203844586 GameObject: m_ObjectHideFlags: 0 @@ -356,7 +507,7 @@ Transform: m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} ---- !u!1 &835349030 +--- !u!1 &279765095 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -364,9 +515,145 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 835349031} - - component: {fileID: 835349033} - - component: {fileID: 835349032} + - component: {fileID: 279765096} + - component: {fileID: 279765098} + - component: {fileID: 279765097} + m_Layer: 5 + m_Name: Text@Titl + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &279765096 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 279765095} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 561161497} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &279765097 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 279765095} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: 50 + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4278190080 + m_fontColor: {r: 0, g: 0, b: 0, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 36 + m_fontSizeBase: 36 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 2 + m_VerticalAlignment: 512 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_TextWrappingMode: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 0 + m_ActiveFontFeatures: 6e72656b + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_EmojiFallbackSupport: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!222 &279765098 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 279765095} + m_CullTransparentMesh: 1 +--- !u!1 &281834122 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 281834125} + - component: {fileID: 281834124} + - component: {fileID: 281834123} m_Layer: 5 m_Name: UXImage m_TagString: Untagged @@ -374,32 +661,13 @@ GameObject: m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!224 &835349031 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 835349030} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 1768216400} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 1, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 0, y: 0} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &835349032 +--- !u!114 &281834123 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 835349030} + m_GameObject: {fileID: 281834122} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: af0993b503fa4dd1adf519458df05486, type: 3} @@ -462,13 +730,772 @@ MonoBehaviour: m_FlipEdgeVertical: 5 m_FlipFillCenter: 3 m_FlipDirection: 3 ---- !u!222 &835349033 +--- !u!222 &281834124 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 835349030} + m_GameObject: {fileID: 281834122} + m_CullTransparentMesh: 1 +--- !u!224 &281834125 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 281834122} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1134568826} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 100, y: 100} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!1 &335553190 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 335553191} + - component: {fileID: 335553193} + - component: {fileID: 335553192} + m_Layer: 5 + m_Name: Btn@test (6) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &335553191 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 335553190} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 2129144263} + - {fileID: 909748286} + m_Father: {fileID: 1149398277} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 149, y: 167} + m_SizeDelta: {x: 100, y: 100} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!95 &335553192 +Animator: + serializedVersion: 7 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 335553190} + m_Enabled: 1 + m_Avatar: {fileID: 0} + m_Controller: {fileID: 9100000, guid: 75db14477f59de44b96f358d16e02e73, type: 2} + m_CullingMode: 0 + m_UpdateMode: 0 + m_ApplyRootMotion: 0 + m_LinearVelocityBlending: 0 + m_StabilizeFeet: 0 + m_AnimatePhysics: 0 + m_WarningMessage: + m_HasTransformHierarchy: 1 + m_AllowConstantClipSamplingOptimization: 1 + m_KeepAnimatorStateOnDisable: 0 + m_WriteDefaultValuesOnDisable: 0 +--- !u!114 &335553193 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 335553190} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d7e92b092d584bb39e5239463f064cbe, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Interactable: 1 + m_Mode: 0 + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 125612304} + m_TargetAssemblyTypeName: UXGroup, AlicizaX.UI.Extension + m_MethodName: SelectNext + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 + m_TransitionData: + targetGraphic: {fileID: 2129144264} + transition: 1 + colors: + m_NormalColor: {r: 1, g: 0.7600515, b: 0, a: 1} + m_HighlightedColor: {r: 0.33962262, g: 0.062477753, b: 0.062477753, a: 1} + m_PressedColor: {r: 0.3200357, g: 1, b: 0, a: 1} + m_SelectedColor: {r: 0.85877466, g: 0, b: 1, a: 1} + m_DisabledColor: {r: 0.7843137, g: 0.7843137, b: 0.7843137, a: 0.5} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + spriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + animationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_ChildTransitions: [] + m_UXGroup: {fileID: 125612304} + hoverAudioClip: {fileID: 0} + clickAudioClip: {fileID: 0} + _hotKeyRefrence: {fileID: 0} + _hotkeyPressType: 0 + m_SelectionState: 0 + m_OnValueChanged: + m_PersistentCalls: + m_Calls: [] +--- !u!1 &561161494 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 561161497} + - component: {fileID: 561161495} + - component: {fileID: 561161496} + m_Layer: 5 + m_Name: Btn@test (3) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &561161495 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 561161494} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d7e92b092d584bb39e5239463f064cbe, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Interactable: 1 + m_Mode: 1 + m_OnClick: + m_PersistentCalls: + m_Calls: [] + m_TransitionData: + targetGraphic: {fileID: 879928365} + transition: 1 + colors: + m_NormalColor: {r: 1, g: 0.7600515, b: 0, a: 1} + m_HighlightedColor: {r: 0.33962262, g: 0.062477753, b: 0.062477753, a: 1} + m_PressedColor: {r: 0.3200357, g: 1, b: 0, a: 1} + m_SelectedColor: {r: 0.85877466, g: 0, b: 1, a: 1} + m_DisabledColor: {r: 0.7843137, g: 0.7843137, b: 0.7843137, a: 0.5} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + spriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + animationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_ChildTransitions: [] + m_UXGroup: {fileID: 125612304} + hoverAudioClip: {fileID: 0} + clickAudioClip: {fileID: 0} + _hotKeyRefrence: {fileID: 0} + _hotkeyPressType: 0 + m_SelectionState: 0 + m_OnValueChanged: + m_PersistentCalls: + m_Calls: [] +--- !u!95 &561161496 +Animator: + serializedVersion: 7 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 561161494} + m_Enabled: 1 + m_Avatar: {fileID: 0} + m_Controller: {fileID: 9100000, guid: 75db14477f59de44b96f358d16e02e73, type: 2} + m_CullingMode: 0 + m_UpdateMode: 0 + m_ApplyRootMotion: 0 + m_LinearVelocityBlending: 0 + m_StabilizeFeet: 0 + m_AnimatePhysics: 0 + m_WarningMessage: + m_HasTransformHierarchy: 1 + m_AllowConstantClipSamplingOptimization: 1 + m_KeepAnimatorStateOnDisable: 0 + m_WriteDefaultValuesOnDisable: 0 +--- !u!224 &561161497 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 561161494} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 879928367} + - {fileID: 279765096} + m_Father: {fileID: 1149398277} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: -9, y: -72} + m_SizeDelta: {x: 100, y: 100} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!1 &569174569 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 569174570} + - component: {fileID: 569174572} + - component: {fileID: 569174571} + m_Layer: 5 + m_Name: Text@Titl + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &569174570 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 569174569} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1134568826} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &569174571 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 569174569} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: 50 + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4278190080 + m_fontColor: {r: 0, g: 0, b: 0, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 36 + m_fontSizeBase: 36 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 2 + m_VerticalAlignment: 512 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_TextWrappingMode: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 0 + m_ActiveFontFeatures: 6e72656b + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_EmojiFallbackSupport: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!222 &569174572 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 569174569} + m_CullTransparentMesh: 1 +--- !u!1 &630692317 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 630692318} + - component: {fileID: 630692320} + - component: {fileID: 630692319} + m_Layer: 5 + m_Name: Btn@test (5) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &630692318 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 630692317} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1455221155} + - {fileID: 1649588972} + m_Father: {fileID: 1149398277} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: -302, y: 167} + m_SizeDelta: {x: 100, y: 100} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!95 &630692319 +Animator: + serializedVersion: 7 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 630692317} + m_Enabled: 1 + m_Avatar: {fileID: 0} + m_Controller: {fileID: 9100000, guid: 75db14477f59de44b96f358d16e02e73, type: 2} + m_CullingMode: 0 + m_UpdateMode: 0 + m_ApplyRootMotion: 0 + m_LinearVelocityBlending: 0 + m_StabilizeFeet: 0 + m_AnimatePhysics: 0 + m_WarningMessage: + m_HasTransformHierarchy: 1 + m_AllowConstantClipSamplingOptimization: 1 + m_KeepAnimatorStateOnDisable: 0 + m_WriteDefaultValuesOnDisable: 0 +--- !u!114 &630692320 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 630692317} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d7e92b092d584bb39e5239463f064cbe, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Interactable: 1 + m_Mode: 0 + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 125612304} + m_TargetAssemblyTypeName: UXGroup, AlicizaX.UI.Extension + m_MethodName: SelectPrevious + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 + m_TransitionData: + targetGraphic: {fileID: 1455221156} + transition: 1 + colors: + m_NormalColor: {r: 1, g: 0.7600515, b: 0, a: 1} + m_HighlightedColor: {r: 0.33962262, g: 0.062477753, b: 0.062477753, a: 1} + m_PressedColor: {r: 0.3200357, g: 1, b: 0, a: 1} + m_SelectedColor: {r: 0.85877466, g: 0, b: 1, a: 1} + m_DisabledColor: {r: 0.7843137, g: 0.7843137, b: 0.7843137, a: 0.5} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + spriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + animationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_ChildTransitions: [] + m_UXGroup: {fileID: 125612304} + hoverAudioClip: {fileID: 0} + clickAudioClip: {fileID: 0} + _hotKeyRefrence: {fileID: 0} + _hotkeyPressType: 0 + m_SelectionState: 0 + m_OnValueChanged: + m_PersistentCalls: + m_Calls: [] +--- !u!1 &879928364 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 879928367} + - component: {fileID: 879928366} + - component: {fileID: 879928365} + m_Layer: 5 + m_Name: UXImage + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &879928365 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 879928364} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: af0993b503fa4dd1adf519458df05486, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 2100000, guid: 624af9784554f4047997278dfbb22e47, type: 2} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 0} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 + m_ColorType: 0 + m_GradientColor: + serializedVersion: 2 + key0: {r: 0, g: 0, b: 0, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_ColorSpace: -1 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + m_Direction: 0 + m_OriginFlipMode: 0 + m_FlipMode: 0 + m_FlipWithCopy: 1 + m_FlipEdgeHorizontal: 2 + m_FlipEdgeVertical: 5 + m_FlipFillCenter: 3 + m_FlipDirection: 3 +--- !u!222 &879928366 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 879928364} + m_CullTransparentMesh: 1 +--- !u!224 &879928367 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 879928364} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 561161497} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 100, y: 100} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!1 &909748285 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 909748286} + - component: {fileID: 909748288} + - component: {fileID: 909748287} + m_Layer: 5 + m_Name: Text@Titl + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &909748286 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 909748285} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 335553191} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &909748287 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 909748285} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: 50 + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4278190080 + m_fontColor: {r: 0, g: 0, b: 0, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 36 + m_fontSizeBase: 36 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 2 + m_VerticalAlignment: 512 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_TextWrappingMode: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 0 + m_ActiveFontFeatures: 6e72656b + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_EmojiFallbackSupport: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!222 &909748288 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 909748285} m_CullTransparentMesh: 1 --- !u!1 &961739749 GameObject: @@ -607,6 +1634,116 @@ Transform: m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1134568823 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1134568826} + - component: {fileID: 1134568824} + - component: {fileID: 1134568825} + m_Layer: 5 + m_Name: Btn@test (2) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1134568824 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1134568823} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d7e92b092d584bb39e5239463f064cbe, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Interactable: 1 + m_Mode: 1 + m_OnClick: + m_PersistentCalls: + m_Calls: [] + m_TransitionData: + targetGraphic: {fileID: 281834123} + transition: 1 + colors: + m_NormalColor: {r: 1, g: 0.7600515, b: 0, a: 1} + m_HighlightedColor: {r: 0.33962262, g: 0.062477753, b: 0.062477753, a: 1} + m_PressedColor: {r: 0.3200357, g: 1, b: 0, a: 1} + m_SelectedColor: {r: 0.85877466, g: 0, b: 1, a: 1} + m_DisabledColor: {r: 0.7843137, g: 0.7843137, b: 0.7843137, a: 0.5} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + spriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + animationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_ChildTransitions: [] + m_UXGroup: {fileID: 125612304} + hoverAudioClip: {fileID: 0} + clickAudioClip: {fileID: 0} + _hotKeyRefrence: {fileID: 0} + _hotkeyPressType: 0 + m_SelectionState: 0 + m_OnValueChanged: + m_PersistentCalls: + m_Calls: [] +--- !u!95 &1134568825 +Animator: + serializedVersion: 7 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1134568823} + m_Enabled: 1 + m_Avatar: {fileID: 0} + m_Controller: {fileID: 9100000, guid: 75db14477f59de44b96f358d16e02e73, type: 2} + m_CullingMode: 0 + m_UpdateMode: 0 + m_ApplyRootMotion: 0 + m_LinearVelocityBlending: 0 + m_StabilizeFeet: 0 + m_AnimatePhysics: 0 + m_WarningMessage: + m_HasTransformHierarchy: 1 + m_AllowConstantClipSamplingOptimization: 1 + m_KeepAnimatorStateOnDisable: 0 + m_WriteDefaultValuesOnDisable: 0 +--- !u!224 &1134568826 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1134568823} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 281834125} + - {fileID: 569174570} + m_Father: {fileID: 1149398277} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: -150, y: -72} + m_SizeDelta: {x: 100, y: 100} + m_Pivot: {x: 0.5, y: 0.5} --- !u!224 &1149398277 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 7611974172231861040, guid: 48513b07f7f7f364b863b27de9a3f5e2, type: 3} @@ -617,6 +1754,120 @@ RectTransform: m_CorrespondingSourceObject: {fileID: 3110666966229274110, guid: 9368ff38b2090b2468f8358242026e4b, type: 3} m_PrefabInstance: {fileID: 1496268631} m_PrefabAsset: {fileID: 0} +--- !u!1 &1455221154 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1455221155} + - component: {fileID: 1455221157} + - component: {fileID: 1455221156} + m_Layer: 5 + m_Name: UXImage + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1455221155 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1455221154} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 630692318} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 100, y: 100} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1455221156 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1455221154} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: af0993b503fa4dd1adf519458df05486, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 2100000, guid: 624af9784554f4047997278dfbb22e47, type: 2} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 0} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 + m_ColorType: 0 + m_GradientColor: + serializedVersion: 2 + key0: {r: 0, g: 0, b: 0, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_ColorSpace: -1 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + m_Direction: 0 + m_OriginFlipMode: 0 + m_FlipMode: 0 + m_FlipWithCopy: 1 + m_FlipEdgeHorizontal: 2 + m_FlipEdgeVertical: 5 + m_FlipFillCenter: 3 + m_FlipDirection: 3 +--- !u!222 &1455221157 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1455221154} + m_CullTransparentMesh: 1 --- !u!1001 &1496268631 PrefabInstance: m_ObjectHideFlags: 0 @@ -677,6 +1928,278 @@ PrefabInstance: addedObject: {fileID: 1149398277} m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 9368ff38b2090b2468f8358242026e4b, type: 3} +--- !u!1 &1649588971 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1649588972} + - component: {fileID: 1649588974} + - component: {fileID: 1649588973} + m_Layer: 5 + m_Name: Text@Titl + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1649588972 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1649588971} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 630692318} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1649588973 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1649588971} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: 50 + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4278190080 + m_fontColor: {r: 0, g: 0, b: 0, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 36 + m_fontSizeBase: 36 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 2 + m_VerticalAlignment: 512 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_TextWrappingMode: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 0 + m_ActiveFontFeatures: 6e72656b + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_EmojiFallbackSupport: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!222 &1649588974 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1649588971} + m_CullTransparentMesh: 1 +--- !u!1 &1734249349 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1734249350} + - component: {fileID: 1734249352} + - component: {fileID: 1734249351} + m_Layer: 5 + m_Name: Text@Titl + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1734249350 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1734249349} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 199957137} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1734249351 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1734249349} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: 50 + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4278190080 + m_fontColor: {r: 0, g: 0, b: 0, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 36 + m_fontSizeBase: 36 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 2 + m_VerticalAlignment: 512 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_TextWrappingMode: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 0 + m_ActiveFontFeatures: 6e72656b + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_EmojiFallbackSupport: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!222 &1734249352 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1734249349} + m_CullTransparentMesh: 1 --- !u!1 &1739381811 GameObject: m_ObjectHideFlags: 0 @@ -727,7 +2250,7 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_Material: {fileID: 2100000, guid: 624af9784554f4047997278dfbb22e47, type: 2} - m_Color: {r: 1, g: 0.61752665, b: 0, a: 1} + m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 @@ -791,122 +2314,6 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1739381811} m_CullTransparentMesh: 1 ---- !u!1 &1768216399 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1768216400} - - component: {fileID: 1768216403} - - component: {fileID: 1768216401} - - component: {fileID: 1768216404} - m_Layer: 5 - m_Name: Button - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1768216400 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1768216399} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: - - {fileID: 835349031} - m_Father: {fileID: 1149398277} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 19.1, y: 63.7} - m_SizeDelta: {x: 160, y: 64.42} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!95 &1768216401 -Animator: - serializedVersion: 7 - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1768216399} - m_Enabled: 1 - m_Avatar: {fileID: 0} - m_Controller: {fileID: 9100000, guid: c103b1c0b339fe14eb5e4fea21d45a67, type: 2} - m_CullingMode: 0 - m_UpdateMode: 0 - m_ApplyRootMotion: 0 - m_LinearVelocityBlending: 0 - m_StabilizeFeet: 0 - m_AnimatePhysics: 0 - m_WarningMessage: - m_HasTransformHierarchy: 1 - m_AllowConstantClipSamplingOptimization: 1 - m_KeepAnimatorStateOnDisable: 0 - m_WriteDefaultValuesOnDisable: 0 ---- !u!222 &1768216403 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1768216399} - m_CullTransparentMesh: 1 ---- !u!114 &1768216404 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1768216399} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: d7e92b092d584bb39e5239463f064cbe, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Interactable: 1 - m_Mode: 0 - m_OnClick: - m_PersistentCalls: - m_Calls: [] - m_TransitionData: - targetGraphic: {fileID: 0} - transition: 3 - colors: - m_NormalColor: {r: 1, g: 1, b: 1, a: 1} - m_HighlightedColor: {r: 1, g: 1, b: 1, a: 1} - m_PressedColor: {r: 0.7843137, g: 0.7843137, b: 0.7843137, a: 1} - m_SelectedColor: {r: 1, g: 1, b: 1, a: 1} - m_DisabledColor: {r: 0.7843137, g: 0.7843137, b: 0.7843137, a: 0.5} - m_ColorMultiplier: 1 - m_FadeDuration: 0.1 - spriteState: - m_HighlightedSprite: {fileID: 0} - m_PressedSprite: {fileID: 0} - m_SelectedSprite: {fileID: 0} - m_DisabledSprite: {fileID: 0} - animationTriggers: - m_NormalTrigger: Normal - m_HighlightedTrigger: Highlighted - m_PressedTrigger: Pressed - m_SelectedTrigger: Selected - m_DisabledTrigger: Disabled - m_ChildTransitions: [] - m_UXGroup: {fileID: 0} - hoverAudioClip: {fileID: 8300000, guid: 185869ec9d2b4844ca54aa1f616404b9, type: 3} - clickAudioClip: {fileID: 8300000, guid: be441f609df74024dabfd79aef5a2940, type: 3} - m_SelectionState: 0 - m_OnValueChanged: - m_PersistentCalls: - m_Calls: [] --- !u!1 &1855178168 GameObject: m_ObjectHideFlags: 0 @@ -1043,6 +2450,120 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1855178168} m_CullTransparentMesh: 1 +--- !u!1 &1894264046 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1894264049} + - component: {fileID: 1894264048} + - component: {fileID: 1894264047} + m_Layer: 5 + m_Name: UXImage + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1894264047 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1894264046} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: af0993b503fa4dd1adf519458df05486, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 2100000, guid: 624af9784554f4047997278dfbb22e47, type: 2} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 0} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 + m_ColorType: 0 + m_GradientColor: + serializedVersion: 2 + key0: {r: 0, g: 0, b: 0, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_ColorSpace: -1 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + m_Direction: 0 + m_OriginFlipMode: 0 + m_FlipMode: 0 + m_FlipWithCopy: 1 + m_FlipEdgeHorizontal: 2 + m_FlipEdgeVertical: 5 + m_FlipFillCenter: 3 + m_FlipDirection: 3 +--- !u!222 &1894264048 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1894264046} + m_CullTransparentMesh: 1 +--- !u!224 &1894264049 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1894264046} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 199957137} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 100, y: 100} + m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &2069737131 GameObject: m_ObjectHideFlags: 0 @@ -1079,7 +2600,7 @@ RectTransform: m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 438, y: -72} + m_AnchoredPosition: {x: -302, y: -72} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} --- !u!95 &2069737133 @@ -1117,18 +2638,18 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_Interactable: 1 - m_Mode: 0 + m_Mode: 1 m_OnClick: m_PersistentCalls: m_Calls: [] m_TransitionData: - targetGraphic: {fileID: 0} - transition: 3 + targetGraphic: {fileID: 1739381813} + transition: 1 colors: - m_NormalColor: {r: 1, g: 1, b: 1, a: 1} - m_HighlightedColor: {r: 1, g: 1, b: 1, a: 1} - m_PressedColor: {r: 0.7843137, g: 0.7843137, b: 0.7843137, a: 1} - m_SelectedColor: {r: 1, g: 1, b: 1, a: 1} + m_NormalColor: {r: 1, g: 0.7600515, b: 0, a: 1} + m_HighlightedColor: {r: 0.33962262, g: 0.062477753, b: 0.062477753, a: 1} + m_PressedColor: {r: 0.3200357, g: 1, b: 0, a: 1} + m_SelectedColor: {r: 0.85877466, g: 0, b: 1, a: 1} m_DisabledColor: {r: 0.7843137, g: 0.7843137, b: 0.7843137, a: 0.5} m_ColorMultiplier: 1 m_FadeDuration: 0.1 @@ -1144,13 +2665,129 @@ MonoBehaviour: m_SelectedTrigger: Selected m_DisabledTrigger: Disabled m_ChildTransitions: [] - m_UXGroup: {fileID: 0} + m_UXGroup: {fileID: 125612304} hoverAudioClip: {fileID: 0} clickAudioClip: {fileID: 0} + _hotKeyRefrence: {fileID: 0} + _hotkeyPressType: 0 m_SelectionState: 0 m_OnValueChanged: m_PersistentCalls: m_Calls: [] +--- !u!1 &2129144262 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2129144263} + - component: {fileID: 2129144265} + - component: {fileID: 2129144264} + m_Layer: 5 + m_Name: UXImage + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &2129144263 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2129144262} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 335553191} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 100, y: 100} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &2129144264 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2129144262} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: af0993b503fa4dd1adf519458df05486, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 2100000, guid: 624af9784554f4047997278dfbb22e47, type: 2} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 0} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 + m_ColorType: 0 + m_GradientColor: + serializedVersion: 2 + key0: {r: 0, g: 0, b: 0, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_ColorSpace: -1 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + m_Direction: 0 + m_OriginFlipMode: 0 + m_FlipMode: 0 + m_FlipWithCopy: 1 + m_FlipEdgeHorizontal: 2 + m_FlipEdgeVertical: 5 + m_FlipFillCenter: 3 + m_FlipDirection: 3 +--- !u!222 &2129144265 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2129144262} + m_CullTransparentMesh: 1 --- !u!1660057539 &9223372036854775807 SceneRoots: m_ObjectHideFlags: 0 diff --git a/Client/Assets/Scenes/Main.unity b/Client/Assets/Scenes/Main.unity index 1549e5e..6985717 100644 --- a/Client/Assets/Scenes/Main.unity +++ b/Client/Assets/Scenes/Main.unity @@ -146,6 +146,7 @@ GameObject: m_Component: - component: {fileID: 1437010405} - component: {fileID: 1437010404} + - component: {fileID: 1437010406} m_Layer: 0 m_Name: GameObject m_TagString: Untagged @@ -180,6 +181,18 @@ Transform: m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1437010406 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1437010403} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f09b695799b281842af084a0cb741bdd, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1001 &7354943399308362261 PrefabInstance: m_ObjectHideFlags: 0 diff --git a/Client/Packages/com.alicizax.unity.eventkit/Editor.meta b/Client/Assets/Scripts/GameLogic.meta similarity index 77% rename from Client/Packages/com.alicizax.unity.eventkit/Editor.meta rename to Client/Assets/Scripts/GameLogic.meta index a3f8148..603b180 100644 --- a/Client/Packages/com.alicizax.unity.eventkit/Editor.meta +++ b/Client/Assets/Scripts/GameLogic.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: bc512c54039cec24ca30fef8581bf3c1 +guid: e792a38f87cbb9049a2545ca55f2fa79 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Client/Assets/Editor/Template.meta b/Client/Assets/Scripts/GameLogic/Base.meta similarity index 77% rename from Client/Assets/Editor/Template.meta rename to Client/Assets/Scripts/GameLogic/Base.meta index b2899a0..bf755d2 100644 --- a/Client/Assets/Editor/Template.meta +++ b/Client/Assets/Scripts/GameLogic/Base.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 009cebed0f276cf4490030907abfa822 +guid: 94e962d779c6d94458f307d8255d7821 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Client/Packages/com.alicizax.unity.event/Editor.meta b/Client/Assets/Scripts/GameLogic/Base/Common.meta similarity index 77% rename from Client/Packages/com.alicizax.unity.event/Editor.meta rename to Client/Assets/Scripts/GameLogic/Base/Common.meta index e29ac58..672d09a 100644 --- a/Client/Packages/com.alicizax.unity.event/Editor.meta +++ b/Client/Assets/Scripts/GameLogic/Base/Common.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: c609767384f3971468b7afd9dc95e01d +guid: 56cf3336573611b4a83b79a9ae756eed folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Client/Assets/Scripts/GameLogic/Base/Common/Constant.meta b/Client/Assets/Scripts/GameLogic/Base/Common/Constant.meta new file mode 100644 index 0000000..edbf719 --- /dev/null +++ b/Client/Assets/Scripts/GameLogic/Base/Common/Constant.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: edaf4cba549f0834d89826b87adae1d2 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Client/Assets/Scripts/Hotfix/GameLogic/AliasConfig.cs b/Client/Assets/Scripts/Hotfix/GameLogic/AliasConfig.cs new file mode 100644 index 0000000..78ed8a7 --- /dev/null +++ b/Client/Assets/Scripts/Hotfix/GameLogic/AliasConfig.cs @@ -0,0 +1,35 @@ +using System; +using System.Collections.Generic; +using UnityEngine; +using UnityEngine.InputSystem; + +[CreateAssetMenu(menuName = "Input/AliasConfig")] +public class AliasConfig : ScriptableObject +{ + [Serializable] + public class AliasMapping + { + public string alias; + public InputActionReference actionReference; + } + + public List mappings = new(); + private Dictionary _actionMap; + + public void Initialize() + { + _actionMap = new(); + foreach (var mapping in mappings) + { + if (mapping.actionReference != null) + { + _actionMap[mapping.alias] = mapping.actionReference.action; + } + } + } + + public bool TryGetAction(string alias, out InputAction action) + => _actionMap.TryGetValue(alias, out action); + + public IEnumerable GetAllAliases() => _actionMap.Keys; +} diff --git a/Client/Assets/Scripts/Hotfix/GameLogic/AliasConfig.cs.meta b/Client/Assets/Scripts/Hotfix/GameLogic/AliasConfig.cs.meta new file mode 100644 index 0000000..542c970 --- /dev/null +++ b/Client/Assets/Scripts/Hotfix/GameLogic/AliasConfig.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 930c7db3b7b445869daa7e250f7043cb +timeCreated: 1754479398 \ No newline at end of file diff --git a/Client/Assets/Scripts/Hotfix/GameLogic/GameInput.cs b/Client/Assets/Scripts/Hotfix/GameLogic/GameInput.cs new file mode 100644 index 0000000..c62f907 --- /dev/null +++ b/Client/Assets/Scripts/Hotfix/GameLogic/GameInput.cs @@ -0,0 +1,1048 @@ +//------------------------------------------------------------------------------ +// +// This code was auto-generated by com.unity.inputsystem:InputActionCodeGenerator +// version 1.13.1 +// from Assets/Art/GameInputSO.inputactions +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +using System; +using System.Collections; +using System.Collections.Generic; +using UnityEngine.InputSystem; +using UnityEngine.InputSystem.Utilities; + +/// +/// Provides programmatic access to , , and instances defined in asset "Assets/Art/GameInputSO.inputactions". +/// +/// +/// This class is source generated and any manual edits will be discarded if the associated asset is reimported or modified. +/// +/// +/// +/// using namespace UnityEngine; +/// using UnityEngine.InputSystem; +/// +/// // Example of using an InputActionMap named "Player" from a UnityEngine.MonoBehaviour implementing callback interface. +/// public class Example : MonoBehaviour, MyActions.IPlayerActions +/// { +/// private MyActions_Actions m_Actions; // Source code representation of asset. +/// private MyActions_Actions.PlayerActions m_Player; // Source code representation of action map. +/// +/// void Awake() +/// { +/// m_Actions = new MyActions_Actions(); // Create asset object. +/// m_Player = m_Actions.Player; // Extract action map object. +/// m_Player.AddCallbacks(this); // Register callback interface IPlayerActions. +/// } +/// +/// void OnDestroy() +/// { +/// m_Actions.Dispose(); // Destroy asset object. +/// } +/// +/// void OnEnable() +/// { +/// m_Player.Enable(); // Enable all actions within map. +/// } +/// +/// void OnDisable() +/// { +/// m_Player.Disable(); // Disable all actions within map. +/// } +/// +/// #region Interface implementation of MyActions.IPlayerActions +/// +/// // Invoked when "Move" action is either started, performed or canceled. +/// public void OnMove(InputAction.CallbackContext context) +/// { +/// Debug.Log($"OnMove: {context.ReadValue<Vector2>()}"); +/// } +/// +/// // Invoked when "Attack" action is either started, performed or canceled. +/// public void OnAttack(InputAction.CallbackContext context) +/// { +/// Debug.Log($"OnAttack: {context.ReadValue<float>()}"); +/// } +/// +/// #endregion +/// } +/// +/// +public partial class @GameInput: IInputActionCollection2, IDisposable +{ + /// + /// Provides access to the underlying asset instance. + /// + public InputActionAsset asset { get; } + + /// + /// Constructs a new instance. + /// + public @GameInput() + { + asset = InputActionAsset.FromJson(@"{ + ""name"": ""GameInputSO"", + ""maps"": [ + { + ""name"": ""Player"", + ""id"": ""f62a4b92-ef5e-4175-8f4c-c9075429d32c"", + ""actions"": [ + { + ""name"": ""Move"", + ""type"": ""Value"", + ""id"": ""6bc1aaf4-b110-4ff7-891e-5b9fe6f32c4d"", + ""expectedControlType"": ""Vector2"", + ""processors"": """", + ""interactions"": """", + ""initialStateCheck"": true + }, + { + ""name"": ""Look"", + ""type"": ""Value"", + ""id"": ""2690c379-f54d-45be-a724-414123833eb4"", + ""expectedControlType"": ""Vector2"", + ""processors"": """", + ""interactions"": """", + ""initialStateCheck"": true + }, + { + ""name"": ""Jump"", + ""type"": ""Button"", + ""id"": ""8c4abdf8-4099-493a-aa1a-129acec7c3df"", + ""expectedControlType"": """", + ""processors"": """", + ""interactions"": """", + ""initialStateCheck"": false + }, + { + ""name"": ""Sprint"", + ""type"": ""Value"", + ""id"": ""980e881e-182c-404c-8cbf-3d09fdb48fef"", + ""expectedControlType"": ""Button"", + ""processors"": """", + ""interactions"": """", + ""initialStateCheck"": true + }, + { + ""name"": ""Escape"", + ""type"": ""Button"", + ""id"": ""d0bfd212-2876-4c8e-b35e-cfb618a9dc0b"", + ""expectedControlType"": """", + ""processors"": """", + ""interactions"": """", + ""initialStateCheck"": false + }, + { + ""name"": ""InteractPrimary"", + ""type"": ""Button"", + ""id"": ""66b26e9d-c51a-4fb2-a4cc-3f44bdff3355"", + ""expectedControlType"": """", + ""processors"": """", + ""interactions"": """", + ""initialStateCheck"": false + }, + { + ""name"": ""InteractSecondary"", + ""type"": ""Button"", + ""id"": ""5cc4edbd-955c-4718-8bce-ce78d07abf3f"", + ""expectedControlType"": """", + ""processors"": """", + ""interactions"": """", + ""initialStateCheck"": false + }, + { + ""name"": ""Zoom"", + ""type"": ""PassThrough"", + ""id"": ""702f73cf-2f96-4624-871e-f1263393b8f5"", + ""expectedControlType"": """", + ""processors"": """", + ""interactions"": """", + ""initialStateCheck"": false + }, + { + ""name"": ""Toggle Walking"", + ""type"": ""Button"", + ""id"": ""4a6790ad-d534-44f4-bfde-3a550760bd39"", + ""expectedControlType"": """", + ""processors"": """", + ""interactions"": ""Press(behavior=1)"", + ""initialStateCheck"": false + } + ], + ""bindings"": [ + { + ""name"": ""WASD"", + ""id"": ""b7594ddb-26c9-4ba2-bd5a-901468929edc"", + ""path"": ""2DVector(mode=1)"", + ""interactions"": """", + ""processors"": """", + ""groups"": """", + ""action"": ""Move"", + ""isComposite"": true, + ""isPartOfComposite"": false + }, + { + ""name"": ""up"", + ""id"": ""2063a8b5-6a45-43de-851b-65f3d46e7b58"", + ""path"": ""/w"", + ""interactions"": """", + ""processors"": """", + ""groups"": ""KeyboardMouse"", + ""action"": ""Move"", + ""isComposite"": false, + ""isPartOfComposite"": true + }, + { + ""name"": ""down"", + ""id"": ""64e4d037-32e1-4fb9-80e4-fc7330404dfe"", + ""path"": ""/s"", + ""interactions"": """", + ""processors"": """", + ""groups"": ""KeyboardMouse"", + ""action"": ""Move"", + ""isComposite"": false, + ""isPartOfComposite"": true + }, + { + ""name"": ""left"", + ""id"": ""0fce8b11-5eab-4e4e-a741-b732e7b20873"", + ""path"": ""/a"", + ""interactions"": """", + ""processors"": """", + ""groups"": ""KeyboardMouse"", + ""action"": ""Move"", + ""isComposite"": false, + ""isPartOfComposite"": true + }, + { + ""name"": ""right"", + ""id"": ""7bdda0d6-57a8-47c8-8238-8aecf3110e47"", + ""path"": ""/d"", + ""interactions"": """", + ""processors"": """", + ""groups"": ""KeyboardMouse"", + ""action"": ""Move"", + ""isComposite"": false, + ""isPartOfComposite"": true + }, + { + ""name"": ""up"", + ""id"": ""bb94b405-58d3-4998-8535-d705c1218a98"", + ""path"": ""/upArrow"", + ""interactions"": """", + ""processors"": """", + ""groups"": ""KeyboardMouse"", + ""action"": ""Move"", + ""isComposite"": false, + ""isPartOfComposite"": true + }, + { + ""name"": ""down"", + ""id"": ""929d9071-7dd0-4368-9743-6793bb98087e"", + ""path"": ""/downArrow"", + ""interactions"": """", + ""processors"": """", + ""groups"": ""KeyboardMouse"", + ""action"": ""Move"", + ""isComposite"": false, + ""isPartOfComposite"": true + }, + { + ""name"": ""left"", + ""id"": ""28abadba-06ff-4d37-bb70-af2f1e35a3b9"", + ""path"": ""/leftArrow"", + ""interactions"": """", + ""processors"": """", + ""groups"": ""KeyboardMouse"", + ""action"": ""Move"", + ""isComposite"": false, + ""isPartOfComposite"": true + }, + { + ""name"": ""right"", + ""id"": ""45f115b6-9b4f-4ba8-b500-b94c93bf7d7e"", + ""path"": ""/rightArrow"", + ""interactions"": """", + ""processors"": """", + ""groups"": ""KeyboardMouse"", + ""action"": ""Move"", + ""isComposite"": false, + ""isPartOfComposite"": true + }, + { + ""name"": """", + ""id"": ""e2f9aa65-db06-4c5b-a2e9-41bc8acb9517"", + ""path"": ""/leftStick"", + ""interactions"": """", + ""processors"": ""StickDeadzone"", + ""groups"": ""Gamepad"", + ""action"": ""Move"", + ""isComposite"": false, + ""isPartOfComposite"": false + }, + { + ""name"": """", + ""id"": ""ed66cbff-2900-4a62-8896-696503cfcd31"", + ""path"": ""/delta"", + ""interactions"": """", + ""processors"": ""InvertVector2(invertX=false),ScaleVector2(x=0.05,y=0.05)"", + ""groups"": ""KeyboardMouse"", + ""action"": ""Look"", + ""isComposite"": false, + ""isPartOfComposite"": false + }, + { + ""name"": """", + ""id"": ""d1d171b6-19d8-47a6-ba3a-71b6a8e7b3c0"", + ""path"": ""/rightStick"", + ""interactions"": """", + ""processors"": ""InvertVector2(invertX=false),StickDeadzone,ScaleVector2(x=300,y=300)"", + ""groups"": ""Gamepad"", + ""action"": ""Look"", + ""isComposite"": false, + ""isPartOfComposite"": false + }, + { + ""name"": """", + ""id"": ""1bd55a0b-761e-4ae4-89ae-8ec127e08a29"", + ""path"": ""/space"", + ""interactions"": """", + ""processors"": """", + ""groups"": ""KeyboardMouse"", + ""action"": ""Jump"", + ""isComposite"": false, + ""isPartOfComposite"": false + }, + { + ""name"": """", + ""id"": ""9f973413-5e27-4239-acee-38c4a63feeba"", + ""path"": ""/buttonSouth"", + ""interactions"": """", + ""processors"": """", + ""groups"": ""Gamepad"", + ""action"": ""Jump"", + ""isComposite"": false, + ""isPartOfComposite"": false + }, + { + ""name"": """", + ""id"": ""dc65b89f-9bd3-43fb-92af-d0d87ba5faa4"", + ""path"": ""/leftShift"", + ""interactions"": """", + ""processors"": """", + ""groups"": ""KeyboardMouse"", + ""action"": ""Sprint"", + ""isComposite"": false, + ""isPartOfComposite"": false + }, + { + ""name"": """", + ""id"": ""c8fcd86e-dcfd-4f88-8e93-b638cdbf3320"", + ""path"": ""/leftTrigger"", + ""interactions"": """", + ""processors"": """", + ""groups"": ""Gamepad"", + ""action"": ""Sprint"", + ""isComposite"": false, + ""isPartOfComposite"": false + }, + { + ""name"": """", + ""id"": ""2253ad85-a0da-43df-ac0e-ee4d9e37f9fa"", + ""path"": ""/escape"", + ""interactions"": """", + ""processors"": """", + ""groups"": ""KeyboardMouse"", + ""action"": ""Escape"", + ""isComposite"": false, + ""isPartOfComposite"": false + }, + { + ""name"": """", + ""id"": ""ec4c5980-4d30-41c4-b1b4-658d52b3a103"", + ""path"": ""/leftButton"", + ""interactions"": """", + ""processors"": """", + ""groups"": ""KeyboardMouse"", + ""action"": ""InteractPrimary"", + ""isComposite"": false, + ""isPartOfComposite"": false + }, + { + ""name"": """", + ""id"": ""adcb95fb-24a3-4c13-a238-588970915d06"", + ""path"": ""/rightButton"", + ""interactions"": """", + ""processors"": """", + ""groups"": ""KeyboardMouse"", + ""action"": ""InteractSecondary"", + ""isComposite"": false, + ""isPartOfComposite"": false + }, + { + ""name"": """", + ""id"": ""18772126-eab8-4125-b643-22aa0566bc51"", + ""path"": ""/scroll/y"", + ""interactions"": """", + ""processors"": ""Clamp(min=-0.1,max=0.1)"", + ""groups"": """", + ""action"": ""Zoom"", + ""isComposite"": false, + ""isPartOfComposite"": false + }, + { + ""name"": """", + ""id"": ""fcac67ce-ed18-4457-b978-8eff197ccf91"", + ""path"": ""/dpad/y"", + ""interactions"": """", + ""processors"": ""Clamp(min=-0.01,max=0.01)"", + ""groups"": """", + ""action"": ""Zoom"", + ""isComposite"": false, + ""isPartOfComposite"": false + }, + { + ""name"": """", + ""id"": ""5edc2393-2264-49df-8e82-18f9cfa4e062"", + ""path"": ""/leftCtrl"", + ""interactions"": """", + ""processors"": """", + ""groups"": """", + ""action"": ""Toggle Walking"", + ""isComposite"": false, + ""isPartOfComposite"": false + } + ] + }, + { + ""name"": ""UI"", + ""id"": ""ebfdbacf-7468-4988-9497-b726572473ea"", + ""actions"": [ + { + ""name"": ""Cancel"", + ""type"": ""Button"", + ""id"": ""1c614fd1-b2d4-4a37-8a58-480ab69e09a5"", + ""expectedControlType"": """", + ""processors"": """", + ""interactions"": """", + ""initialStateCheck"": false + }, + { + ""name"": ""Submit"", + ""type"": ""Button"", + ""id"": ""8a983366-d7b9-4953-89d1-7f6e4392ecc6"", + ""expectedControlType"": """", + ""processors"": """", + ""interactions"": """", + ""initialStateCheck"": false + } + ], + ""bindings"": [ + { + ""name"": """", + ""id"": ""55447a8c-bc61-4ae9-98e4-ccdcdb2bd538"", + ""path"": ""*/{Cancel}"", + ""interactions"": """", + ""processors"": """", + ""groups"": """", + ""action"": ""Cancel"", + ""isComposite"": false, + ""isPartOfComposite"": false + }, + { + ""name"": """", + ""id"": ""9783ec4c-2684-44b8-b4dc-ca554c527049"", + ""path"": ""*/{Submit}"", + ""interactions"": """", + ""processors"": """", + ""groups"": """", + ""action"": ""Submit"", + ""isComposite"": false, + ""isPartOfComposite"": false + } + ] + } + ], + ""controlSchemes"": [ + { + ""name"": ""KeyboardMouse"", + ""bindingGroup"": ""KeyboardMouse"", + ""devices"": [ + { + ""devicePath"": """", + ""isOptional"": false, + ""isOR"": false + }, + { + ""devicePath"": """", + ""isOptional"": false, + ""isOR"": false + } + ] + }, + { + ""name"": ""Gamepad"", + ""bindingGroup"": ""Gamepad"", + ""devices"": [ + { + ""devicePath"": """", + ""isOptional"": true, + ""isOR"": false + }, + { + ""devicePath"": """", + ""isOptional"": true, + ""isOR"": false + }, + { + ""devicePath"": """", + ""isOptional"": true, + ""isOR"": false + } + ] + }, + { + ""name"": ""Xbox Controller"", + ""bindingGroup"": ""Xbox Controller"", + ""devices"": [] + }, + { + ""name"": ""PS4 Controller"", + ""bindingGroup"": ""PS4 Controller"", + ""devices"": [] + } + ] +}"); + // Player + m_Player = asset.FindActionMap("Player", throwIfNotFound: true); + m_Player_Move = m_Player.FindAction("Move", throwIfNotFound: true); + m_Player_Look = m_Player.FindAction("Look", throwIfNotFound: true); + m_Player_Jump = m_Player.FindAction("Jump", throwIfNotFound: true); + m_Player_Sprint = m_Player.FindAction("Sprint", throwIfNotFound: true); + m_Player_Escape = m_Player.FindAction("Escape", throwIfNotFound: true); + m_Player_InteractPrimary = m_Player.FindAction("InteractPrimary", throwIfNotFound: true); + m_Player_InteractSecondary = m_Player.FindAction("InteractSecondary", throwIfNotFound: true); + m_Player_Zoom = m_Player.FindAction("Zoom", throwIfNotFound: true); + m_Player_ToggleWalking = m_Player.FindAction("Toggle Walking", throwIfNotFound: true); + // UI + m_UI = asset.FindActionMap("UI", throwIfNotFound: true); + m_UI_Cancel = m_UI.FindAction("Cancel", throwIfNotFound: true); + m_UI_Submit = m_UI.FindAction("Submit", throwIfNotFound: true); + } + + ~@GameInput() + { + UnityEngine.Debug.Assert(!m_Player.enabled, "This will cause a leak and performance issues, GameInput.Player.Disable() has not been called."); + UnityEngine.Debug.Assert(!m_UI.enabled, "This will cause a leak and performance issues, GameInput.UI.Disable() has not been called."); + } + + /// + /// Destroys this asset and all associated instances. + /// + public void Dispose() + { + UnityEngine.Object.Destroy(asset); + } + + /// + public InputBinding? bindingMask + { + get => asset.bindingMask; + set => asset.bindingMask = value; + } + + /// + public ReadOnlyArray? devices + { + get => asset.devices; + set => asset.devices = value; + } + + /// + public ReadOnlyArray controlSchemes => asset.controlSchemes; + + /// + public bool Contains(InputAction action) + { + return asset.Contains(action); + } + + /// + public IEnumerator GetEnumerator() + { + return asset.GetEnumerator(); + } + + /// + IEnumerator IEnumerable.GetEnumerator() + { + return GetEnumerator(); + } + + /// + public void Enable() + { + asset.Enable(); + } + + /// + public void Disable() + { + asset.Disable(); + } + + /// + public IEnumerable bindings => asset.bindings; + + /// + public InputAction FindAction(string actionNameOrId, bool throwIfNotFound = false) + { + return asset.FindAction(actionNameOrId, throwIfNotFound); + } + + /// + public int FindBinding(InputBinding bindingMask, out InputAction action) + { + return asset.FindBinding(bindingMask, out action); + } + + // Player + private readonly InputActionMap m_Player; + private List m_PlayerActionsCallbackInterfaces = new List(); + private readonly InputAction m_Player_Move; + private readonly InputAction m_Player_Look; + private readonly InputAction m_Player_Jump; + private readonly InputAction m_Player_Sprint; + private readonly InputAction m_Player_Escape; + private readonly InputAction m_Player_InteractPrimary; + private readonly InputAction m_Player_InteractSecondary; + private readonly InputAction m_Player_Zoom; + private readonly InputAction m_Player_ToggleWalking; + /// + /// Provides access to input actions defined in input action map "Player". + /// + public struct PlayerActions + { + private @GameInput m_Wrapper; + + /// + /// Construct a new instance of the input action map wrapper class. + /// + public PlayerActions(@GameInput wrapper) { m_Wrapper = wrapper; } + /// + /// Provides access to the underlying input action "Player/Move". + /// + public InputAction @Move => m_Wrapper.m_Player_Move; + /// + /// Provides access to the underlying input action "Player/Look". + /// + public InputAction @Look => m_Wrapper.m_Player_Look; + /// + /// Provides access to the underlying input action "Player/Jump". + /// + public InputAction @Jump => m_Wrapper.m_Player_Jump; + /// + /// Provides access to the underlying input action "Player/Sprint". + /// + public InputAction @Sprint => m_Wrapper.m_Player_Sprint; + /// + /// Provides access to the underlying input action "Player/Escape". + /// + public InputAction @Escape => m_Wrapper.m_Player_Escape; + /// + /// Provides access to the underlying input action "Player/InteractPrimary". + /// + public InputAction @InteractPrimary => m_Wrapper.m_Player_InteractPrimary; + /// + /// Provides access to the underlying input action "Player/InteractSecondary". + /// + public InputAction @InteractSecondary => m_Wrapper.m_Player_InteractSecondary; + /// + /// Provides access to the underlying input action "Player/Zoom". + /// + public InputAction @Zoom => m_Wrapper.m_Player_Zoom; + /// + /// Provides access to the underlying input action "Player/ToggleWalking". + /// + public InputAction @ToggleWalking => m_Wrapper.m_Player_ToggleWalking; + /// + /// Provides access to the underlying input action map instance. + /// + public InputActionMap Get() { return m_Wrapper.m_Player; } + /// + public void Enable() { Get().Enable(); } + /// + public void Disable() { Get().Disable(); } + /// + public bool enabled => Get().enabled; + /// + /// Implicitly converts an to an instance. + /// + public static implicit operator InputActionMap(PlayerActions set) { return set.Get(); } + /// + /// Adds , and callbacks provided via on all input actions contained in this map. + /// + /// Callback instance. + /// + /// If is null or have already been added this method does nothing. + /// + /// + public void AddCallbacks(IPlayerActions instance) + { + if (instance == null || m_Wrapper.m_PlayerActionsCallbackInterfaces.Contains(instance)) return; + m_Wrapper.m_PlayerActionsCallbackInterfaces.Add(instance); + @Move.started += instance.OnMove; + @Move.performed += instance.OnMove; + @Move.canceled += instance.OnMove; + @Look.started += instance.OnLook; + @Look.performed += instance.OnLook; + @Look.canceled += instance.OnLook; + @Jump.started += instance.OnJump; + @Jump.performed += instance.OnJump; + @Jump.canceled += instance.OnJump; + @Sprint.started += instance.OnSprint; + @Sprint.performed += instance.OnSprint; + @Sprint.canceled += instance.OnSprint; + @Escape.started += instance.OnEscape; + @Escape.performed += instance.OnEscape; + @Escape.canceled += instance.OnEscape; + @InteractPrimary.started += instance.OnInteractPrimary; + @InteractPrimary.performed += instance.OnInteractPrimary; + @InteractPrimary.canceled += instance.OnInteractPrimary; + @InteractSecondary.started += instance.OnInteractSecondary; + @InteractSecondary.performed += instance.OnInteractSecondary; + @InteractSecondary.canceled += instance.OnInteractSecondary; + @Zoom.started += instance.OnZoom; + @Zoom.performed += instance.OnZoom; + @Zoom.canceled += instance.OnZoom; + @ToggleWalking.started += instance.OnToggleWalking; + @ToggleWalking.performed += instance.OnToggleWalking; + @ToggleWalking.canceled += instance.OnToggleWalking; + } + + /// + /// Removes , and callbacks provided via on all input actions contained in this map. + /// + /// + /// Calling this method when have not previously been registered has no side-effects. + /// + /// + private void UnregisterCallbacks(IPlayerActions instance) + { + @Move.started -= instance.OnMove; + @Move.performed -= instance.OnMove; + @Move.canceled -= instance.OnMove; + @Look.started -= instance.OnLook; + @Look.performed -= instance.OnLook; + @Look.canceled -= instance.OnLook; + @Jump.started -= instance.OnJump; + @Jump.performed -= instance.OnJump; + @Jump.canceled -= instance.OnJump; + @Sprint.started -= instance.OnSprint; + @Sprint.performed -= instance.OnSprint; + @Sprint.canceled -= instance.OnSprint; + @Escape.started -= instance.OnEscape; + @Escape.performed -= instance.OnEscape; + @Escape.canceled -= instance.OnEscape; + @InteractPrimary.started -= instance.OnInteractPrimary; + @InteractPrimary.performed -= instance.OnInteractPrimary; + @InteractPrimary.canceled -= instance.OnInteractPrimary; + @InteractSecondary.started -= instance.OnInteractSecondary; + @InteractSecondary.performed -= instance.OnInteractSecondary; + @InteractSecondary.canceled -= instance.OnInteractSecondary; + @Zoom.started -= instance.OnZoom; + @Zoom.performed -= instance.OnZoom; + @Zoom.canceled -= instance.OnZoom; + @ToggleWalking.started -= instance.OnToggleWalking; + @ToggleWalking.performed -= instance.OnToggleWalking; + @ToggleWalking.canceled -= instance.OnToggleWalking; + } + + /// + /// Unregisters and unregisters all input action callbacks via . + /// + /// + public void RemoveCallbacks(IPlayerActions instance) + { + if (m_Wrapper.m_PlayerActionsCallbackInterfaces.Remove(instance)) + UnregisterCallbacks(instance); + } + + /// + /// Replaces all existing callback instances and previously registered input action callbacks associated with them with callbacks provided via . + /// + /// + /// If is null, calling this method will only unregister all existing callbacks but not register any new callbacks. + /// + /// + /// + /// + public void SetCallbacks(IPlayerActions instance) + { + foreach (var item in m_Wrapper.m_PlayerActionsCallbackInterfaces) + UnregisterCallbacks(item); + m_Wrapper.m_PlayerActionsCallbackInterfaces.Clear(); + AddCallbacks(instance); + } + } + /// + /// Provides a new instance referencing this action map. + /// + public PlayerActions @Player => new PlayerActions(this); + + // UI + private readonly InputActionMap m_UI; + private List m_UIActionsCallbackInterfaces = new List(); + private readonly InputAction m_UI_Cancel; + private readonly InputAction m_UI_Submit; + /// + /// Provides access to input actions defined in input action map "UI". + /// + public struct UIActions + { + private @GameInput m_Wrapper; + + /// + /// Construct a new instance of the input action map wrapper class. + /// + public UIActions(@GameInput wrapper) { m_Wrapper = wrapper; } + /// + /// Provides access to the underlying input action "UI/Cancel". + /// + public InputAction @Cancel => m_Wrapper.m_UI_Cancel; + /// + /// Provides access to the underlying input action "UI/Submit". + /// + public InputAction @Submit => m_Wrapper.m_UI_Submit; + /// + /// Provides access to the underlying input action map instance. + /// + public InputActionMap Get() { return m_Wrapper.m_UI; } + /// + public void Enable() { Get().Enable(); } + /// + public void Disable() { Get().Disable(); } + /// + public bool enabled => Get().enabled; + /// + /// Implicitly converts an to an instance. + /// + public static implicit operator InputActionMap(UIActions set) { return set.Get(); } + /// + /// Adds , and callbacks provided via on all input actions contained in this map. + /// + /// Callback instance. + /// + /// If is null or have already been added this method does nothing. + /// + /// + public void AddCallbacks(IUIActions instance) + { + if (instance == null || m_Wrapper.m_UIActionsCallbackInterfaces.Contains(instance)) return; + m_Wrapper.m_UIActionsCallbackInterfaces.Add(instance); + @Cancel.started += instance.OnCancel; + @Cancel.performed += instance.OnCancel; + @Cancel.canceled += instance.OnCancel; + @Submit.started += instance.OnSubmit; + @Submit.performed += instance.OnSubmit; + @Submit.canceled += instance.OnSubmit; + } + + /// + /// Removes , and callbacks provided via on all input actions contained in this map. + /// + /// + /// Calling this method when have not previously been registered has no side-effects. + /// + /// + private void UnregisterCallbacks(IUIActions instance) + { + @Cancel.started -= instance.OnCancel; + @Cancel.performed -= instance.OnCancel; + @Cancel.canceled -= instance.OnCancel; + @Submit.started -= instance.OnSubmit; + @Submit.performed -= instance.OnSubmit; + @Submit.canceled -= instance.OnSubmit; + } + + /// + /// Unregisters and unregisters all input action callbacks via . + /// + /// + public void RemoveCallbacks(IUIActions instance) + { + if (m_Wrapper.m_UIActionsCallbackInterfaces.Remove(instance)) + UnregisterCallbacks(instance); + } + + /// + /// Replaces all existing callback instances and previously registered input action callbacks associated with them with callbacks provided via . + /// + /// + /// If is null, calling this method will only unregister all existing callbacks but not register any new callbacks. + /// + /// + /// + /// + public void SetCallbacks(IUIActions instance) + { + foreach (var item in m_Wrapper.m_UIActionsCallbackInterfaces) + UnregisterCallbacks(item); + m_Wrapper.m_UIActionsCallbackInterfaces.Clear(); + AddCallbacks(instance); + } + } + /// + /// Provides a new instance referencing this action map. + /// + public UIActions @UI => new UIActions(this); + private int m_KeyboardMouseSchemeIndex = -1; + /// + /// Provides access to the input control scheme. + /// + /// + public InputControlScheme KeyboardMouseScheme + { + get + { + if (m_KeyboardMouseSchemeIndex == -1) m_KeyboardMouseSchemeIndex = asset.FindControlSchemeIndex("KeyboardMouse"); + return asset.controlSchemes[m_KeyboardMouseSchemeIndex]; + } + } + private int m_GamepadSchemeIndex = -1; + /// + /// Provides access to the input control scheme. + /// + /// + public InputControlScheme GamepadScheme + { + get + { + if (m_GamepadSchemeIndex == -1) m_GamepadSchemeIndex = asset.FindControlSchemeIndex("Gamepad"); + return asset.controlSchemes[m_GamepadSchemeIndex]; + } + } + private int m_XboxControllerSchemeIndex = -1; + /// + /// Provides access to the input control scheme. + /// + /// + public InputControlScheme XboxControllerScheme + { + get + { + if (m_XboxControllerSchemeIndex == -1) m_XboxControllerSchemeIndex = asset.FindControlSchemeIndex("Xbox Controller"); + return asset.controlSchemes[m_XboxControllerSchemeIndex]; + } + } + private int m_PS4ControllerSchemeIndex = -1; + /// + /// Provides access to the input control scheme. + /// + /// + public InputControlScheme PS4ControllerScheme + { + get + { + if (m_PS4ControllerSchemeIndex == -1) m_PS4ControllerSchemeIndex = asset.FindControlSchemeIndex("PS4 Controller"); + return asset.controlSchemes[m_PS4ControllerSchemeIndex]; + } + } + /// + /// Interface to implement callback methods for all input action callbacks associated with input actions defined by "Player" which allows adding and removing callbacks. + /// + /// + /// + public interface IPlayerActions + { + /// + /// Method invoked when associated input action "Move" is either , or . + /// + /// + /// + /// + void OnMove(InputAction.CallbackContext context); + /// + /// Method invoked when associated input action "Look" is either , or . + /// + /// + /// + /// + void OnLook(InputAction.CallbackContext context); + /// + /// Method invoked when associated input action "Jump" is either , or . + /// + /// + /// + /// + void OnJump(InputAction.CallbackContext context); + /// + /// Method invoked when associated input action "Sprint" is either , or . + /// + /// + /// + /// + void OnSprint(InputAction.CallbackContext context); + /// + /// Method invoked when associated input action "Escape" is either , or . + /// + /// + /// + /// + void OnEscape(InputAction.CallbackContext context); + /// + /// Method invoked when associated input action "InteractPrimary" is either , or . + /// + /// + /// + /// + void OnInteractPrimary(InputAction.CallbackContext context); + /// + /// Method invoked when associated input action "InteractSecondary" is either , or . + /// + /// + /// + /// + void OnInteractSecondary(InputAction.CallbackContext context); + /// + /// Method invoked when associated input action "Zoom" is either , or . + /// + /// + /// + /// + void OnZoom(InputAction.CallbackContext context); + /// + /// Method invoked when associated input action "Toggle Walking" is either , or . + /// + /// + /// + /// + void OnToggleWalking(InputAction.CallbackContext context); + } + /// + /// Interface to implement callback methods for all input action callbacks associated with input actions defined by "UI" which allows adding and removing callbacks. + /// + /// + /// + public interface IUIActions + { + /// + /// Method invoked when associated input action "Cancel" is either , or . + /// + /// + /// + /// + void OnCancel(InputAction.CallbackContext context); + /// + /// Method invoked when associated input action "Submit" is either , or . + /// + /// + /// + /// + void OnSubmit(InputAction.CallbackContext context); + } +} diff --git a/Client/Assets/Scripts/Hotfix/GameLogic/GameInput.cs.meta b/Client/Assets/Scripts/Hotfix/GameLogic/GameInput.cs.meta new file mode 100644 index 0000000..be14373 --- /dev/null +++ b/Client/Assets/Scripts/Hotfix/GameLogic/GameInput.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 2fa6a9e6f9f9ffa489915ed5f963ac67 \ 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 39dc34a..e377981 100644 --- a/Client/Assets/Scripts/Hotfix/GameLogic/GameLogic.asmdef +++ b/Client/Assets/Scripts/Hotfix/GameLogic/GameLogic.asmdef @@ -18,7 +18,8 @@ "GUID:6055be8ebefd69e48b49212b09b47b2f", "GUID:760f1778adc613f49a4394fb41ff0bbc", "GUID:f318a940a77af754eb1172da9dc1b400", - "GUID:198eb6af143bbc4488e2779d96697e06" + "GUID:198eb6af143bbc4488e2779d96697e06", + "GUID:75469ad4d38634e559750d17036d5f7c" ], "includePlatforms": [], "excludePlatforms": [], diff --git a/Client/Assets/Scripts/Hotfix/GameLogic/HotfixEntry.cs b/Client/Assets/Scripts/Hotfix/GameLogic/HotfixEntry.cs index a2cc7d2..f69ea20 100644 --- a/Client/Assets/Scripts/Hotfix/GameLogic/HotfixEntry.cs +++ b/Client/Assets/Scripts/Hotfix/GameLogic/HotfixEntry.cs @@ -8,32 +8,26 @@ using System.Threading.Tasks; using AlicizaX; using YooAsset; using Cysharp.Threading.Tasks; +using Hotfix.GameLogic; using Luban; using UnityEngine.SceneManagement; namespace GameLogic { - public interface ITestEvent : IEvent - { - - } public static class HotfixEntry { - private static List _hotfixAssembly; public static List HotfixAssembly => _hotfixAssembly; + public static void Entrance(object[] objects) { Log.Info("HotFix Logic Entry!"); _hotfixAssembly = (List)objects[0]; - new GameObject().AddComponent(); } - - /// /// 加载二进制配置表 /// diff --git a/Client/Assets/Scripts/Hotfix/GameLogic/TestMono.cs b/Client/Assets/Scripts/Hotfix/GameLogic/TestMono.cs index 3cd1353..d4c25b2 100644 --- a/Client/Assets/Scripts/Hotfix/GameLogic/TestMono.cs +++ b/Client/Assets/Scripts/Hotfix/GameLogic/TestMono.cs @@ -1,7 +1,4 @@ -using System; -using AlicizaX.Event.Runtime; -using AlicizaX; -using AlicizaX.Resource.Runtime; + using Hotfix.GameLogic.TestWindow; using UnityEditor; using UnityEngine; diff --git a/Client/Assets/Scripts/Hotfix/GameLogic/TestWindow/UIHomeWindow.cs b/Client/Assets/Scripts/Hotfix/GameLogic/TestWindow/UIHomeWindow.cs index f59de17..6df9c1d 100644 --- a/Client/Assets/Scripts/Hotfix/GameLogic/TestWindow/UIHomeWindow.cs +++ b/Client/Assets/Scripts/Hotfix/GameLogic/TestWindow/UIHomeWindow.cs @@ -1,10 +1,20 @@ +using AlicizaX; using AlicizaX.UI.Runtime; +using GameLogic.Event.Generated; using GameLogic.UI; using UnityEngine; using AudioType = AlicizaX.Audio.Runtime.AudioType; namespace Hotfix.GameLogic.TestWindow { + [Prewarm(2)] + public readonly struct ModeChangedEvent : IEventArgs + { + } + public readonly struct ModeHGameChangedEvent : IEventArgs + { + } + [Window(UILayer.UI)] public class UIHomeWindow : UIWindow { @@ -12,13 +22,19 @@ namespace Hotfix.GameLogic.TestWindow { baseui.ImgBackGround.color = Color.gray; baseui.Btntest.onClick.AddListener(OnTestClick); + baseui.Btntest.BindHotKey(); } + private void OnTestClick() { - GameApp.Audio.Play(AudioType.UISound, "A1"); - Debug.Log("aaa"); - // GameApp.UI.ShowUI(); + Debug.Log("ShowUIA"); + GameApp.UI.ShowUI(); + } + + protected override void OnClose() + { + baseui.Btntest.UnBindHotKey(); } } @@ -29,12 +45,28 @@ namespace Hotfix.GameLogic.TestWindow { baseui.ImgBackGround.color = Color.yellow; baseui.Btntest.onClick.AddListener(OnTestClick); + baseui.Btntest.BindHotKey(); + } + + protected override void OnRegisterEvent(EventListenerProxy proxy) + { + proxy.Add(EventPublisher.Subscribe(OnModeChangedEvent)); + } + + public void OnModeChangedEvent(ModeChangedEvent args) + { } private void OnTestClick() { + Debug.Log("ShowB"); GameApp.UI.ShowUI(); } + + protected override void OnClose() + { + baseui.Btntest.UnBindHotKey(); + } } @@ -45,11 +77,18 @@ namespace Hotfix.GameLogic.TestWindow { baseui.ImgBackGround.color = Color.blue; baseui.Btntest.onClick.AddListener(OnTestClick); + baseui.Btntest.BindHotKey(); } private void OnTestClick() { CloseSelf(); + GameApp.UI.CloseUI(); + } + + protected override void OnClose() + { + baseui.Btntest.UnBindHotKey(); } } } diff --git a/Client/Assets/Scripts/Hotfix/GameLogic/UILoadUpdate.cs b/Client/Assets/Scripts/Hotfix/GameLogic/UILoadUpdate.cs index c08e285..fa02cb3 100644 --- a/Client/Assets/Scripts/Hotfix/GameLogic/UILoadUpdate.cs +++ b/Client/Assets/Scripts/Hotfix/GameLogic/UILoadUpdate.cs @@ -1,15 +1,10 @@ -using System; -using System.Collections.Generic; -using AlicizaX; -using AlicizaX.Event.Runtime; -using AlicizaX.Resource.Runtime; -using AlicizaX.UI.RecyclerView; + using AlicizaX.UI.Runtime; -using Cysharp.Threading.Tasks; using GameLogic.UI; using UnityEngine; -[Window(UILayer.UI)] + +[Window(UILayer.UI,false,160)] public class UILoadUpdate : UITabWindow { diff --git a/Client/Assets/Scripts/Hotfix/GameLogic/UITestCardWidget.cs b/Client/Assets/Scripts/Hotfix/GameLogic/UITestCardWidget.cs index 904bdb8..5dbffb0 100644 --- a/Client/Assets/Scripts/Hotfix/GameLogic/UITestCardWidget.cs +++ b/Client/Assets/Scripts/Hotfix/GameLogic/UITestCardWidget.cs @@ -5,4 +5,6 @@ namespace GameLogic.UI public class UITestCardWidget : UIWidget { } + + } diff --git a/Client/Assets/Scripts/Startup/Framework/LauncherUIHandler.cs b/Client/Assets/Scripts/Startup/Framework/LauncherUIHandler.cs index 51e2d6c..0a8de72 100644 --- a/Client/Assets/Scripts/Startup/Framework/LauncherUIHandler.cs +++ b/Client/Assets/Scripts/Startup/Framework/LauncherUIHandler.cs @@ -2,11 +2,10 @@ using System.Collections; using System.Collections.Generic; using AlicizaX.Resource.Runtime; -using AlicizaX.Event.Runtime; using AlicizaX.Localization.Runtime; using AlicizaX; using Cysharp.Threading.Tasks; -// using Unity.Startup.UI; +using AlicizaX.Resource.Runtime.Event.Generated; using UnityEngine; @@ -15,11 +14,11 @@ namespace Unity.Startup.Procedure public static class LauncherUIHandler { // private static UILoadUpdateWindow _uiLoadUpdateWindow; - + static EventRuntimeHandle eventRuntimeHandle; public static async UniTaskVoid Start() { // _uiLoadUpdateWindow = await GameApp.UI.ShowUIAsync(); - GameApp.Event.Subscribe(AssetDownloadProgressUpdateEventArgs.EventId, SetProgressUpdate); + EventPublisher.Subscribe(SetProgressUpdate); // GameApp.Event.Subscribe(AssetPatchStatesChangeEventArgs.EventId, SetPatchStates); await UniTask.CompletedTask; // TextAsset config = Resources.Load($"Localization/{AppBuilderSetting.Instance.Language.ToString()}"); @@ -30,9 +29,7 @@ namespace Unity.Startup.Procedure public static void Dispose() { - // GameApp.UI.CloseUI(); - // GameApp.Event.Unsubscribe(AssetPatchStatesChangeEventArgs.EventId, SetPatchStates); - GameApp.Event.Unsubscribe(AssetDownloadProgressUpdateEventArgs.EventId, SetProgressUpdate); + eventRuntimeHandle.Dispose(); } private static float _lastUpdateDownloadedSize; @@ -75,14 +72,9 @@ namespace Unity.Startup.Procedure // _uiLoadUpdateWindow.SetProgressText(v ); } - private static void SetPatchStates(object sender, GameEventArgs gameEventArgs) - { - // var message = (AssetPatchStatesChangeEventArgs)gameEventArgs; - // _uiLoadUpdateWindow.SetDescText(GameApp.Localization.GetString(message.CurrentStates.ToString())); - // Debug.Log(message.CurrentStates); - } - private static void SetProgressUpdate(object sender, GameEventArgs gameEventArgs) + + private static void SetProgressUpdate(AssetDownloadProgressUpdateEventArgs gameEventArgs) { var message = (AssetDownloadProgressUpdateEventArgs)gameEventArgs; _currentDownloadBytes = message.CurrentDownloadSizeBytes; diff --git a/Client/Assets/Scripts/Startup/Framework/Procedure/PatchUpdater/ProcedureDownloadWebFiles.cs b/Client/Assets/Scripts/Startup/Framework/Procedure/PatchUpdater/ProcedureDownloadWebFiles.cs index c110b8b..6b1639f 100644 --- a/Client/Assets/Scripts/Startup/Framework/Procedure/PatchUpdater/ProcedureDownloadWebFiles.cs +++ b/Client/Assets/Scripts/Startup/Framework/Procedure/PatchUpdater/ProcedureDownloadWebFiles.cs @@ -2,6 +2,7 @@ using Cysharp.Threading.Tasks; using AlicizaX.Resource.Runtime; using AlicizaX; +using AlicizaX.Resource.Runtime.Event.Generated; using UnityEngine; using YooAsset; @@ -39,12 +40,13 @@ namespace Unity.Startup.Procedure Log.Error("资源更新失败!"); return; } + SwitchState(UpdateProcedureState.ProcedurePatchDone); } private void OnDownloadProgressCallback(DownloadUpdateData data) { - GameApp.Event.Fire(this, AssetDownloadProgressUpdateEventArgs.Create(data.PackageName, data.TotalDownloadCount, data.CurrentDownloadCount, data.TotalDownloadBytes, data.CurrentDownloadBytes)); + EventPublisher.Publish(AssetDownloadProgressUpdateEventArgs.Create(data.PackageName, data.TotalDownloadCount, data.CurrentDownloadCount, data.TotalDownloadBytes, data.CurrentDownloadBytes)); } } } diff --git a/Client/Assets/Scripts/Startup/Framework/Procedure/ProcedureLauncherState.cs b/Client/Assets/Scripts/Startup/Framework/Procedure/ProcedureLauncherState.cs index 232830a..f6f0773 100644 --- a/Client/Assets/Scripts/Startup/Framework/Procedure/ProcedureLauncherState.cs +++ b/Client/Assets/Scripts/Startup/Framework/Procedure/ProcedureLauncherState.cs @@ -36,36 +36,7 @@ namespace Unity.Startup.Procedure private void InitlizeGameSetting() { - bool isWrited = Utility.PlayerPrefsX.GetBool(PrefsKey.Setting.WirtedSetting, false); - if (!isWrited) - { - WriteDefaultSetting(); - } - - InitSoundSettings(); _gameSettingInitFinish = true; } - - private void WriteDefaultSetting() - { - Utility.PlayerPrefsX.SetBool(PrefsKey.Setting.WirtedSetting, true); - Utility.PlayerPrefsX.SetBool(PrefsKey.Setting.MusicMuted, false); - Utility.PlayerPrefsX.SetFloat(PrefsKey.Setting.MusicVolume, 1f); - Utility.PlayerPrefsX.SetBool(PrefsKey.Setting.SoundMuted, false); - Utility.PlayerPrefsX.SetFloat(PrefsKey.Setting.SoundVolume, 1f); - Utility.PlayerPrefsX.SetBool(PrefsKey.Setting.UISoundMuted, false); - Utility.PlayerPrefsX.SetFloat(PrefsKey.Setting.UISoundVolume, 1f); - } - - - private void InitSoundSettings() - { - GameApp.Audio.MusicEnable = !Utility.PlayerPrefsX.GetBool(PrefsKey.Setting.MusicMuted, false); - GameApp.Audio.MusicVolume = Utility.PlayerPrefsX.GetFloat(PrefsKey.Setting.MusicVolume, 1f); - GameApp.Audio.SoundEnable = !Utility.PlayerPrefsX.GetBool(PrefsKey.Setting.SoundMuted, false); - GameApp.Audio.SoundVolume = Utility.PlayerPrefsX.GetFloat(PrefsKey.Setting.SoundVolume, 1f); - GameApp.Audio.UISoundEnable = !Utility.PlayerPrefsX.GetBool(PrefsKey.Setting.UISoundMuted, false); - GameApp.Audio.UISoundVolume = Utility.PlayerPrefsX.GetFloat(PrefsKey.Setting.UISoundVolume, 1f); - } } } diff --git a/Client/Assets/Test/GameBase.dll.bytes b/Client/Assets/Test/GameBase.dll.bytes index ec716f4..c66263d 100644 Binary files a/Client/Assets/Test/GameBase.dll.bytes and b/Client/Assets/Test/GameBase.dll.bytes differ diff --git a/Client/Assets/Test/GameBase.pdb.bytes b/Client/Assets/Test/GameBase.pdb.bytes index 63f4d5b..692f465 100644 Binary files a/Client/Assets/Test/GameBase.pdb.bytes and b/Client/Assets/Test/GameBase.pdb.bytes differ diff --git a/Client/Assets/Test/GameLib.dll.bytes b/Client/Assets/Test/GameLib.dll.bytes index 87312e8..6cdb2a7 100644 Binary files a/Client/Assets/Test/GameLib.dll.bytes and b/Client/Assets/Test/GameLib.dll.bytes differ diff --git a/Client/Assets/Test/GameLib.pdb.bytes b/Client/Assets/Test/GameLib.pdb.bytes index 4de2283..593f8f2 100644 Binary files a/Client/Assets/Test/GameLib.pdb.bytes and b/Client/Assets/Test/GameLib.pdb.bytes differ diff --git a/Client/Assets/Test/GameLogic.dll.bytes b/Client/Assets/Test/GameLogic.dll.bytes index fd576a6..0c7e8e1 100644 Binary files a/Client/Assets/Test/GameLogic.dll.bytes and b/Client/Assets/Test/GameLogic.dll.bytes differ diff --git a/Client/Assets/Test/GameLogic.pdb.bytes b/Client/Assets/Test/GameLogic.pdb.bytes index 7fc15c1..646ed40 100644 Binary files a/Client/Assets/Test/GameLogic.pdb.bytes and b/Client/Assets/Test/GameLogic.pdb.bytes differ diff --git a/Client/Assets/Test/GameProto.dll.bytes b/Client/Assets/Test/GameProto.dll.bytes index c323221..ca8a9fe 100644 Binary files a/Client/Assets/Test/GameProto.dll.bytes and b/Client/Assets/Test/GameProto.dll.bytes differ diff --git a/Client/Assets/Test/GameProto.pdb.bytes b/Client/Assets/Test/GameProto.pdb.bytes index 6154013..7926108 100644 Binary files a/Client/Assets/Test/GameProto.pdb.bytes and b/Client/Assets/Test/GameProto.pdb.bytes differ diff --git a/Client/Assets/UITestMono.cs b/Client/Assets/UITestMono.cs index 7b94ea0..1659bad 100644 --- a/Client/Assets/UITestMono.cs +++ b/Client/Assets/UITestMono.cs @@ -1,29 +1,15 @@ +using System; +using Sirenix.OdinInspector; using UnityEngine; +using UnityEngine.InputSystem; public class UITestMono : MonoBehaviour { - public UXButton btnTest; - public bool selected; + public UXButton button; - [Sirenix.OdinInspector.Button] - public void DoSelect() - { - btnTest.SetSelect(selected, true); - } - - // Start is called once before the first execution of Update after the MonoBehaviour is created - void Start() - { - btnTest.onValueChanged.AddListener(OnvalueChanged); - } - - private void OnvalueChanged(bool arg0) - { - Debug.Log($"ValueChanged {arg0}"); - } - - // Update is called once per frame - void Update() + [Button] + public void Select() { + button.Selected = true; } } diff --git a/Client/Packages/com.alicizax.unity.editor.extension b/Client/Packages/com.alicizax.unity.editor.extension index f432ee4..1c0cbb3 160000 --- a/Client/Packages/com.alicizax.unity.editor.extension +++ b/Client/Packages/com.alicizax.unity.editor.extension @@ -1 +1 @@ -Subproject commit f432ee445b50695eed6b508aca71dfeea53fcd57 +Subproject commit 1c0cbb362cddc7622fffb879f13f35b064be6769 diff --git a/Client/Packages/com.alicizax.unity.entry/Asset/Entry.prefab b/Client/Packages/com.alicizax.unity.entry/Asset/Entry.prefab index 72d2683..faaa06b 100644 --- a/Client/Packages/com.alicizax.unity.entry/Asset/Entry.prefab +++ b/Client/Packages/com.alicizax.unity.entry/Asset/Entry.prefab @@ -45,6 +45,7 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: uiRoot: {fileID: 4612363183729467837, guid: 9368ff38b2090b2468f8358242026e4b, type: 3} + _isOrthographic: 1 --- !u!1 &1516812642607394282 GameObject: m_ObjectHideFlags: 0 @@ -276,8 +277,6 @@ Transform: m_Children: - {fileID: 1933965801183527639} - {fileID: 1316740771005759728} - - {fileID: 1172762408459505014} - - {fileID: 5170167877536483258} - {fileID: 424925309774805088} - {fileID: 1226030177838128577} - {fileID: 7231588671532407876} @@ -620,94 +619,6 @@ MonoBehaviour: m_EditorClassIdentifier: m_CheckCanReleaseInterval: 30 m_AutoReleaseInterval: 60 ---- !u!1 &8527903851783246430 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 5170167877536483258} - - component: {fileID: 454459017733802404} - m_Layer: 0 - m_Name: Event - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &5170167877536483258 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8527903851783246430} - serializedVersion: 2 - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 425597497363353001} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &454459017733802404 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8527903851783246430} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 48602115335c4223a70dc35cd6b29bbd, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!1 &8951643211898284125 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1172762408459505014} - - component: {fileID: 1373859279789550255} - m_Layer: 0 - m_Name: EventKit - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &1172762408459505014 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8951643211898284125} - serializedVersion: 2 - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_ConstrainProportionsScale: 0 - m_Children: [] - m_Father: {fileID: 425597497363353001} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &1373859279789550255 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 8951643211898284125} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 7eec9f691e06464cbfc45f619c7fee9d, type: 3} - m_Name: - m_EditorClassIdentifier: --- !u!1 &8974750909375893034 GameObject: m_ObjectHideFlags: 0 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 b19c97f..241c780 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,11 +3,9 @@ "rootNamespace": "", "references": [ "GUID:75b6f2078d190f14dbda4a5b747d709c", - "GUID:2393d135922de5c4ab12e74f1e397920", "GUID:f318a940a77af754eb1172da9dc1b400", "GUID:be2f20a77f3232f44b9711ef43234aac", "GUID:56115dc8e38144842823f4ee0dcad88b", - "GUID:4041d17782e62754ba8777fe2dfb6b27", "GUID:000cc1eaf688c5246be5328cb0cf16c8", "GUID:0d00816689626d846bd06cd779413413", "GUID:198eb6af143bbc4488e2779d96697e06", @@ -27,6 +25,46 @@ "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" } ], "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 5489a6a..c9a410e 100644 --- a/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Audio.cs +++ b/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Audio.cs @@ -1,4 +1,5 @@ -using AlicizaX; +#if ALICIZAX_AUDIO_SUPPORT +using AlicizaX; using AlicizaX.Audio.Runtime; public static partial class GameApp @@ -21,3 +22,5 @@ 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 index 49c5473..4dfdbc5 100644 --- a/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Event.cs +++ b/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Event.cs @@ -1,4 +1,4 @@ - +#if ALICIZAX_EVENT_SUPPORT using AlicizaX.Event.Runtime; using AlicizaX; @@ -22,3 +22,5 @@ public static partial class GameApp internal static IEventModule _event; } + +#endif 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 b18194d..590acb8 100644 --- a/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Fsm.cs +++ b/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Fsm.cs @@ -1,4 +1,7 @@ -using AlicizaX; + #if ALICIZAX_FSM_SUPPORT + + +using AlicizaX; using AlicizaX.Fsm.Runtime; public static partial class GameApp @@ -21,3 +24,4 @@ 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 f21866b..d9c83fc 100644 --- a/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Localization.cs +++ b/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Localization.cs @@ -1,4 +1,5 @@ -using AlicizaX.Localization.Runtime; +#if ALICIZAX_LOCALIZATION_SUPPORT +using AlicizaX.Localization.Runtime; using AlicizaX; public static partial class GameApp @@ -21,3 +22,4 @@ public static partial class GameApp internal static ILocalizationModule _localization; } +#endif 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 eef1990..dac2b84 100644 --- a/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Resource.cs +++ b/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Resource.cs @@ -1,4 +1,5 @@ - +#if ALICIZAX_RESOURCE_SUPPORT + using AlicizaX.Resource.Runtime; using AlicizaX; @@ -22,3 +23,5 @@ 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 ea8a287..1ec7a0f 100644 --- a/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Scene.cs +++ b/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Scene.cs @@ -1,4 +1,5 @@ -using AlicizaX; +#if ALICIZAX_SCENE_SUPPORT +using AlicizaX; using AlicizaX.Scene.Runtime; public static partial class GameApp @@ -22,3 +23,5 @@ 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 256fbdf..f584403 100644 --- a/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Timer.cs +++ b/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.Timer.cs @@ -1,4 +1,5 @@ -using AlicizaX; +#if ALICIZAX_TIMER_SUPPORT +using AlicizaX; using AlicizaX.Timer.Runtime; public static partial class GameApp @@ -21,3 +22,5 @@ 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 f051607..c1cdb58 100644 --- a/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.UI.cs +++ b/Client/Packages/com.alicizax.unity.entry/Runtime/GameApp.UI.cs @@ -1,4 +1,5 @@ -using AlicizaX; +#if ALICIZAX_UI_SUPPORT +using AlicizaX; using AlicizaX.UI.Runtime; public static partial class GameApp @@ -21,3 +22,5 @@ public static partial class GameApp internal static IUIModule _ui; } + +#endif diff --git a/Client/Packages/com.alicizax.unity.entry/Runtime/GameAppStaticMemberReset.cs b/Client/Packages/com.alicizax.unity.entry/Runtime/GameAppStaticMemberReset.cs index d034471..8872db6 100644 --- a/Client/Packages/com.alicizax.unity.entry/Runtime/GameAppStaticMemberReset.cs +++ b/Client/Packages/com.alicizax.unity.entry/Runtime/GameAppStaticMemberReset.cs @@ -1,6 +1,4 @@ #if UNITY_EDITOR -using System.Reflection; -using AlicizaX.EventKit; using UnityEditor; internal static class GameAppStaticMemberReset @@ -19,18 +17,40 @@ internal static class GameAppStaticMemberReset private static void ResetAllEventContainers() { GameApp._base = null; +#if ALICIZAX_AUDIO_SUPPORT GameApp._audio = null; +#endif + +#if ALICIZAX_EVENT_SUPPORT GameApp._event = null; +#endif +#if ALICIZAX_FSM_SUPPORT GameApp._fsm = null; +#endif +#if ALICIZAX_LOCALIZATION_SUPPORT GameApp._localization = null; +#endif + #if ALICIZAX_NETWORK GameApp._network = null; #endif GameApp._objectPool = null; +#if ALICIZAX_RESOURCE_SUPPORT GameApp._resource = null; +#endif + +#if ALICIZAX_SCENE_SUPPORT GameApp._scene = null; +#endif + +#if ALICIZAX_TIMER_SUPPORT GameApp._timer = null; +#endif + +#if ALICIZAX_UI_SUPPORT GameApp._ui = null; +#endif + } } diff --git a/Client/Packages/com.alicizax.unity.event/Editor/AlicizaX.Event.Editor.asmdef b/Client/Packages/com.alicizax.unity.event/Editor/AlicizaX.Event.Editor.asmdef deleted file mode 100644 index d39b613..0000000 --- a/Client/Packages/com.alicizax.unity.event/Editor/AlicizaX.Event.Editor.asmdef +++ /dev/null @@ -1,20 +0,0 @@ -{ - "name": "AlicizaX.Event.Editor", - "rootNamespace": "", - "references": [ - "GUID:acfef7cabed3b0a42b25edb1cd4fa259", - "GUID:75b6f2078d190f14dbda4a5b747d709c", - "GUID:4041d17782e62754ba8777fe2dfb6b27" - ], - "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.event/Editor/AlicizaX.Event.Editor.asmdef.meta b/Client/Packages/com.alicizax.unity.event/Editor/AlicizaX.Event.Editor.asmdef.meta deleted file mode 100644 index d2218c6..0000000 --- a/Client/Packages/com.alicizax.unity.event/Editor/AlicizaX.Event.Editor.asmdef.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: b3fa6cbd56d754a4eb8f60ff911c0f15 -AssemblyDefinitionImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.event/Editor/Inspector.meta b/Client/Packages/com.alicizax.unity.event/Editor/Inspector.meta deleted file mode 100644 index 036b723..0000000 --- a/Client/Packages/com.alicizax.unity.event/Editor/Inspector.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 56fe0562bc9d4b20a2f72678cc7a67de -timeCreated: 1737380269 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.event/Editor/Inspector/EventComponentInspector.cs b/Client/Packages/com.alicizax.unity.event/Editor/Inspector/EventComponentInspector.cs deleted file mode 100644 index b55f920..0000000 --- a/Client/Packages/com.alicizax.unity.event/Editor/Inspector/EventComponentInspector.cs +++ /dev/null @@ -1,32 +0,0 @@ -using AlicizaX.Editor; -using AlicizaX.Event.Runtime; -using UnityEditor; - -namespace AlicizaX.Event.Editor -{ - [CustomEditor(typeof(EventComponent))] - internal sealed class EventComponentInspector : GameFrameworkInspector - { - public override void OnInspectorGUI() - { - base.OnInspectorGUI(); - - if (!EditorApplication.isPlaying) - { - EditorGUILayout.HelpBox("Available during runtime only.", MessageType.Info); - return; - } - - EventComponent t = (EventComponent)target; - - if (IsPrefabInHierarchy(t.gameObject)) - { - EditorGUILayout.LabelField("Event Handler Count", t.EventHandlerCount.ToString()); - EditorGUILayout.LabelField("Event Count", t.EventCount.ToString()); - } - - Repaint(); - } - - } -} diff --git a/Client/Packages/com.alicizax.unity.event/Editor/Inspector/EventComponentInspector.cs.meta b/Client/Packages/com.alicizax.unity.event/Editor/Inspector/EventComponentInspector.cs.meta deleted file mode 100644 index 0d573e3..0000000 --- a/Client/Packages/com.alicizax.unity.event/Editor/Inspector/EventComponentInspector.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: bb23c608d69039c4dab132437b577ba1 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.event/LICENSE.md b/Client/Packages/com.alicizax.unity.event/LICENSE.md deleted file mode 100644 index 4e6513a..0000000 --- a/Client/Packages/com.alicizax.unity.event/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.event/LICENSE.md.meta b/Client/Packages/com.alicizax.unity.event/LICENSE.md.meta deleted file mode 100644 index 26cb5e5..0000000 --- a/Client/Packages/com.alicizax.unity.event/LICENSE.md.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: e2023280b367bf64c88d97b455ace1f7 -TextScriptImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.event/Runtime/AlicizaX.Event.Runtime.asmdef b/Client/Packages/com.alicizax.unity.event/Runtime/AlicizaX.Event.Runtime.asmdef deleted file mode 100644 index e31cbbd..0000000 --- a/Client/Packages/com.alicizax.unity.event/Runtime/AlicizaX.Event.Runtime.asmdef +++ /dev/null @@ -1,16 +0,0 @@ -{ - "name": "AlicizaX.Event.Runtime", - "rootNamespace": "AlicizaX.Event.Runtime", - "references": [ - "GUID:75b6f2078d190f14dbda4a5b747d709c" - ], - "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.event/Runtime/AlicizaX.Event.Runtime.asmdef.meta b/Client/Packages/com.alicizax.unity.event/Runtime/AlicizaX.Event.Runtime.asmdef.meta deleted file mode 100644 index 8c0a507..0000000 --- a/Client/Packages/com.alicizax.unity.event/Runtime/AlicizaX.Event.Runtime.asmdef.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 4041d17782e62754ba8777fe2dfb6b27 -AssemblyDefinitionImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.event/Runtime/Event.meta b/Client/Packages/com.alicizax.unity.event/Runtime/Event.meta deleted file mode 100644 index 8263ea8..0000000 --- a/Client/Packages/com.alicizax.unity.event/Runtime/Event.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: ba9583e6d4f44519991805addb757f66 -timeCreated: 1737377121 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.event/Runtime/Event/EventModule.cs b/Client/Packages/com.alicizax.unity.event/Runtime/Event/EventModule.cs deleted file mode 100644 index 229fc59..0000000 --- a/Client/Packages/com.alicizax.unity.event/Runtime/Event/EventModule.cs +++ /dev/null @@ -1,149 +0,0 @@ -using System; -using AlicizaX; - -namespace AlicizaX.Event.Runtime -{ - /// - /// 事件管理器。 - /// - [UnityEngine.Scripting.Preserve] - internal sealed class EventModule : IEventModule - { - private readonly EventPool m_EventPool; - - /// - /// 初始化事件管理器的新实例。 - /// - public EventModule() - { - m_EventPool = new EventPool(EventPoolMode.AllowNoHandler | EventPoolMode.AllowMultiHandler); - } - - /// - /// 获取事件处理函数的数量。 - /// - public int EventHandlerCount - { - get { return m_EventPool.EventHandlerCount; } - } - - /// - /// 获取事件数量。 - /// - public int EventCount - { - get { return m_EventPool.EventCount; } - } - - /// - /// 获取游戏框架模块优先级。 - /// - /// 优先级较高的模块会优先轮询,并且关闭操作会后进行。 - public int Priority - { - get => 7; - } - - void IModuleAwake.Awake() - { - } - - /// - /// 事件管理器轮询。 - /// - /// 逻辑流逝时间,以秒为单位。 - /// 真实流逝时间,以秒为单位。 - void IModuleUpdate.Update(float elapseSeconds, float realElapseSeconds) - { - m_EventPool.Update(elapseSeconds, realElapseSeconds); - } - - - /// - /// 关闭并清理事件管理器。 - /// - void IModule.Dispose() - { - m_EventPool.Shutdown(); - } - - - /// - /// 获取事件处理函数的数量。 - /// - /// 事件类型编号。 - /// 事件处理函数的数量。 - public int Count(string id) - { - return m_EventPool.Count(id); - } - - /// - /// 检查是否存在事件处理函数。 - /// - /// 事件类型编号。 - /// 要检查的事件处理函数。 - /// 是否存在事件处理函数。 - public bool Check(string id, EventHandler handler) - { - return m_EventPool.Check(id, handler); - } - - /// - /// 订阅事件处理函数。 - /// - /// 事件类型编号。 - /// 要订阅的事件处理函数。 - public void Subscribe(string id, EventHandler handler) - { - m_EventPool.Subscribe(id, handler); - } - - /// - /// 取消订阅事件处理函数。 - /// - /// 事件类型编号。 - /// 要取消订阅的事件处理函数。 - public void Unsubscribe(string id, EventHandler handler) - { - m_EventPool.Unsubscribe(id, handler); - } - - /// - /// 设置默认事件处理函数。 - /// - /// 要设置的默认事件处理函数。 - public void SetDefaultHandler(EventHandler handler) - { - m_EventPool.SetDefaultHandler(handler); - } - - /// - /// 抛出事件,这个操作是线程安全的,即使不在主线程中抛出,也可保证在主线程中回调事件处理函数,但事件会在抛出后的下一帧分发。 - /// - /// 事件源。 - /// 事件参数。 - public void Fire(object sender, GameEventArgs e) - { - m_EventPool.Fire(sender, e); - } - - /// - /// 抛出事件立即模式,这个操作不是线程安全的,事件会立刻分发。 - /// - /// 事件源。 - /// 事件参数。 - public void FireNow(object sender, GameEventArgs e) - { - m_EventPool.FireNow(sender, e); - } - - public void CheckSubscribe(string id, EventHandler handler) - { - if (!Check(id, handler)) - { - Subscribe(id, handler); - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.event/Runtime/Event/EventModule.cs.meta b/Client/Packages/com.alicizax.unity.event/Runtime/Event/EventModule.cs.meta deleted file mode 100644 index 7b638cd..0000000 --- a/Client/Packages/com.alicizax.unity.event/Runtime/Event/EventModule.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 1267278369384852bd13cbf7f1e5b4a2 -timeCreated: 1712725897 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.event/Runtime/Event/IEventModule.cs b/Client/Packages/com.alicizax.unity.event/Runtime/Event/IEventModule.cs deleted file mode 100644 index f9329b1..0000000 --- a/Client/Packages/com.alicizax.unity.event/Runtime/Event/IEventModule.cs +++ /dev/null @@ -1,73 +0,0 @@ -using System; -using AlicizaX; - -namespace AlicizaX.Event.Runtime -{ - /// - /// 事件管理器接口。 - /// - [UnityEngine.Scripting.Preserve] - public interface IEventModule:IModule,IModuleUpdate,IModuleAwake - { - /// - /// 获取事件处理函数的数量。 - /// - int EventHandlerCount { get; } - - /// - /// 获取事件数量。 - /// - int EventCount { get; } - - /// - /// 获取事件处理函数的数量。 - /// - /// 事件类型编号。 - /// 事件处理函数的数量。 - int Count(string id); - - /// - /// 检查是否存在事件处理函数。 - /// - /// 事件类型编号。 - /// 要检查的事件处理函数。 - /// 是否存在事件处理函数。 - bool Check(string id, EventHandler handler); - - /// - /// 订阅事件处理函数。 - /// - /// 事件类型编号。 - /// 要订阅的事件处理函数。 - void Subscribe(string id, EventHandler handler); - - /// - /// 取消订阅事件处理函数。 - /// - /// 事件类型编号。 - /// 要取消订阅的事件处理函数。 - void Unsubscribe(string id, EventHandler handler); - - /// - /// 设置默认事件处理函数。 - /// - /// 要设置的默认事件处理函数。 - void SetDefaultHandler(EventHandler handler); - - /// - /// 抛出事件,这个操作是线程安全的,即使不在主线程中抛出,也可保证在主线程中回调事件处理函数,但事件会在抛出后的下一帧分发。 - /// - /// 事件源。 - /// 事件参数。 - void Fire(object sender, GameEventArgs e); - - /// - /// 抛出事件立即模式,这个操作不是线程安全的,事件会立刻分发。 - /// - /// 事件源。 - /// 事件参数。 - void FireNow(object sender, GameEventArgs e); - - void CheckSubscribe(string id, EventHandler handler); - } -} diff --git a/Client/Packages/com.alicizax.unity.event/Runtime/Event/IEventModule.cs.meta b/Client/Packages/com.alicizax.unity.event/Runtime/Event/IEventModule.cs.meta deleted file mode 100644 index 16135b4..0000000 --- a/Client/Packages/com.alicizax.unity.event/Runtime/Event/IEventModule.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 688ce87052f24e66ba57a17acf5ac6a5 -timeCreated: 1712725897 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.event/Runtime/EventArgs.meta b/Client/Packages/com.alicizax.unity.event/Runtime/EventArgs.meta deleted file mode 100644 index d457497..0000000 --- a/Client/Packages/com.alicizax.unity.event/Runtime/EventArgs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 1636d6b6161647198cfa1dfd4074d984 -timeCreated: 1737377121 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.event/Runtime/EventArgs/GameEventArgs.cs b/Client/Packages/com.alicizax.unity.event/Runtime/EventArgs/GameEventArgs.cs deleted file mode 100644 index a8362cf..0000000 --- a/Client/Packages/com.alicizax.unity.event/Runtime/EventArgs/GameEventArgs.cs +++ /dev/null @@ -1,12 +0,0 @@ -using AlicizaX; - -namespace AlicizaX.Event.Runtime -{ - /// - /// 游戏逻辑事件基类。 - /// - [UnityEngine.Scripting.Preserve] - public abstract class GameEventArgs : BaseEventArgs - { - } -} diff --git a/Client/Packages/com.alicizax.unity.event/Runtime/EventArgs/GameEventArgs.cs.meta b/Client/Packages/com.alicizax.unity.event/Runtime/EventArgs/GameEventArgs.cs.meta deleted file mode 100644 index 09c9ace..0000000 --- a/Client/Packages/com.alicizax.unity.event/Runtime/EventArgs/GameEventArgs.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 7fe2fdb2ef48411ba7597d0e3f6d2315 -timeCreated: 1712725897 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.event/Runtime/EventComponent.cs b/Client/Packages/com.alicizax.unity.event/Runtime/EventComponent.cs deleted file mode 100644 index fc68902..0000000 --- a/Client/Packages/com.alicizax.unity.event/Runtime/EventComponent.cs +++ /dev/null @@ -1,41 +0,0 @@ -using System; -using AlicizaX; -using UnityEngine; - -namespace AlicizaX.Event.Runtime -{ - /// - /// 事件组件。 - /// - [DisallowMultipleComponent] - [AddComponentMenu("Game Framework/Event")] - [UnityEngine.Scripting.Preserve] - public sealed class EventComponent : MonoBehaviour - { - private IEventModule _mEventModule = null; - - /// - /// 获取事件处理函数的数量。 - /// - public int EventHandlerCount - { - get { return _mEventModule.EventHandlerCount; } - } - - /// - /// 获取事件数量。 - /// - public int EventCount - { - get { return _mEventModule.EventCount; } - } - - /// - /// 游戏框架组件初始化。 - /// - private void Awake() - { - _mEventModule = ModuleSystem.RegisterModule(); - } - } -} diff --git a/Client/Packages/com.alicizax.unity.event/Runtime/EventComponent.cs.meta b/Client/Packages/com.alicizax.unity.event/Runtime/EventComponent.cs.meta deleted file mode 100644 index d4b5a19..0000000 --- a/Client/Packages/com.alicizax.unity.event/Runtime/EventComponent.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 48602115335c4223a70dc35cd6b29bbd -timeCreated: 1737377121 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.event/Runtime/link.xml b/Client/Packages/com.alicizax.unity.event/Runtime/link.xml deleted file mode 100644 index e625a71..0000000 --- a/Client/Packages/com.alicizax.unity.event/Runtime/link.xml +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.event/Runtime/link.xml.meta b/Client/Packages/com.alicizax.unity.event/Runtime/link.xml.meta deleted file mode 100644 index d25ba41..0000000 --- a/Client/Packages/com.alicizax.unity.event/Runtime/link.xml.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 2eb17046ff0f48a698b107981ae00392 -timeCreated: 1737098131 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.event/package.json b/Client/Packages/com.alicizax.unity.event/package.json deleted file mode 100644 index 1ec562b..0000000 --- a/Client/Packages/com.alicizax.unity.event/package.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "name": "com.alicizax.unity.event", - "displayName": "Aliciza X Event", - "category": "Aliciza X", - "description": "Aliciza X EventComponent", - "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.event/package.json.meta b/Client/Packages/com.alicizax.unity.event/package.json.meta deleted file mode 100644 index ca12ab2..0000000 --- a/Client/Packages/com.alicizax.unity.event/package.json.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: ab8d0d1b366a48c4d843ac40c40e01da -PackageManifestImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.eventkit/Editor/AlicizaX.EventKit.Editor.asmdef b/Client/Packages/com.alicizax.unity.eventkit/Editor/AlicizaX.EventKit.Editor.asmdef deleted file mode 100644 index ccc31ae..0000000 --- a/Client/Packages/com.alicizax.unity.eventkit/Editor/AlicizaX.EventKit.Editor.asmdef +++ /dev/null @@ -1,20 +0,0 @@ -{ - "name": "AlicizaX.EventKit.Editor", - "rootNamespace": "", - "references": [ - "GUID:acfef7cabed3b0a42b25edb1cd4fa259", - "GUID:75b6f2078d190f14dbda4a5b747d709c", - "GUID:2393d135922de5c4ab12e74f1e397920" - ], - "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.eventkit/Editor/AlicizaX.EventKit.Editor.asmdef.meta b/Client/Packages/com.alicizax.unity.eventkit/Editor/AlicizaX.EventKit.Editor.asmdef.meta deleted file mode 100644 index 829b6cd..0000000 --- a/Client/Packages/com.alicizax.unity.eventkit/Editor/AlicizaX.EventKit.Editor.asmdef.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 28bc23f8b89844048aafaf7ca5660b84 -AssemblyDefinitionImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.eventkit/Editor/EventContainerEditorReset.cs b/Client/Packages/com.alicizax.unity.eventkit/Editor/EventContainerEditorReset.cs deleted file mode 100644 index f046cce..0000000 --- a/Client/Packages/com.alicizax.unity.eventkit/Editor/EventContainerEditorReset.cs +++ /dev/null @@ -1,32 +0,0 @@ -#if UNITY_EDITOR -using UnityEditor; -using System; -using System.Reflection; - -namespace AlicizaX.EventKit -{ - [InitializeOnLoad] - public static class EventContainerEditorReset - { - static EventContainerEditorReset() - { - EditorApplication.playModeStateChanged += OnPlayModeStateChanged; - } - - private static void OnPlayModeStateChanged(PlayModeStateChange state) - { - if (state == PlayModeStateChange.ExitingPlayMode) - ResetAllEventContainers(); - } - - private static void ResetAllEventContainers() - { - foreach (var type in EventContainerRegistry.GetRegisteredTypes()) - { - MethodInfo resetMethod = type.GetMethod("Reset", BindingFlags.Public | BindingFlags.Static); - resetMethod?.Invoke(null, null); - } - } - } -} -#endif diff --git a/Client/Packages/com.alicizax.unity.eventkit/Editor/EventContainerEditorReset.cs.meta b/Client/Packages/com.alicizax.unity.eventkit/Editor/EventContainerEditorReset.cs.meta deleted file mode 100644 index ed6045f..0000000 --- a/Client/Packages/com.alicizax.unity.eventkit/Editor/EventContainerEditorReset.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 8603240031a44d8d985e1d18314cef37 -timeCreated: 1743592768 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.eventkit/Editor/EventPublisherComponentInspector.cs b/Client/Packages/com.alicizax.unity.eventkit/Editor/EventPublisherComponentInspector.cs deleted file mode 100644 index c2fb8de..0000000 --- a/Client/Packages/com.alicizax.unity.eventkit/Editor/EventPublisherComponentInspector.cs +++ /dev/null @@ -1,40 +0,0 @@ -using System; -using AlicizaX.Editor; -using AlicizaX.EventKit.Runtime; -using UnityEditor; -using UnityEngine; - -namespace AlicizaX.EventKit.Editor -{ - [CustomEditor(typeof(EventPublisherSetting))] - internal sealed class EventPublisherComponentInspector : GameFrameworkInspector - { - private const string Define = "Event_StrickCheck"; - private bool hasDefine; - - public override void OnInspectorGUI() - { - base.OnInspectorGUI(); - serializedObject.Update(); - EventPublisherSetting t = (EventPublisherSetting)target; - - EditorGUI.BeginDisabledGroup(EditorApplication.isPlayingOrWillChangePlaymode); - { - bool enableStrictCheck = EditorGUILayout.Toggle("Enable Strict Check", hasDefine); - if (enableStrictCheck != hasDefine) - { - hasDefine = true; - ScriptingDefineSymbols.AddScriptingDefineSymbol(Define); - } - } - EditorGUI.EndDisabledGroup(); - - serializedObject.ApplyModifiedProperties(); - } - - private void OnEnable() - { - hasDefine = ScriptingDefineSymbols.HasScriptingDefineSymbol(BuildTargetGroup.Standalone, Define); - } - } -} diff --git a/Client/Packages/com.alicizax.unity.eventkit/Editor/EventPublisherComponentInspector.cs.meta b/Client/Packages/com.alicizax.unity.eventkit/Editor/EventPublisherComponentInspector.cs.meta deleted file mode 100644 index f07d626..0000000 --- a/Client/Packages/com.alicizax.unity.eventkit/Editor/EventPublisherComponentInspector.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: e83000f2cedd4654a78735ac37b6a1aa -timeCreated: 1737376364 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.eventkit/LICENSE.md b/Client/Packages/com.alicizax.unity.eventkit/LICENSE.md deleted file mode 100644 index 4e6513a..0000000 --- a/Client/Packages/com.alicizax.unity.eventkit/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.eventkit/LICENSE.md.meta b/Client/Packages/com.alicizax.unity.eventkit/LICENSE.md.meta deleted file mode 100644 index ccd1ead..0000000 --- a/Client/Packages/com.alicizax.unity.eventkit/LICENSE.md.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: f1144ce08ce6d054bb4667eef8b5fcff -TextScriptImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.eventkit/Runtime.meta b/Client/Packages/com.alicizax.unity.eventkit/Runtime.meta deleted file mode 100644 index 883a337..0000000 --- a/Client/Packages/com.alicizax.unity.eventkit/Runtime.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 6893b29922a3c804b813358516af6027 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.eventkit/Runtime/AlicizaX.EventKit.Runtime.asmdef b/Client/Packages/com.alicizax.unity.eventkit/Runtime/AlicizaX.EventKit.Runtime.asmdef deleted file mode 100644 index c4d852f..0000000 --- a/Client/Packages/com.alicizax.unity.eventkit/Runtime/AlicizaX.EventKit.Runtime.asmdef +++ /dev/null @@ -1,17 +0,0 @@ -{ - "name": "AlicizaX.EventKit.Runtime", - "rootNamespace": "AlicizaX.EventKit.Runtime", - "references": [ - "GUID:75b6f2078d190f14dbda4a5b747d709c", - "GUID:f51ebe6a0ceec4240a699833d6309b23" - ], - "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.eventkit/Runtime/AlicizaX.EventKit.Runtime.asmdef.meta b/Client/Packages/com.alicizax.unity.eventkit/Runtime/AlicizaX.EventKit.Runtime.asmdef.meta deleted file mode 100644 index c45759a..0000000 --- a/Client/Packages/com.alicizax.unity.eventkit/Runtime/AlicizaX.EventKit.Runtime.asmdef.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 2393d135922de5c4ab12e74f1e397920 -AssemblyDefinitionImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core.meta b/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core.meta deleted file mode 100644 index 326bda2..0000000 --- a/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 0c819f41254149e58a08a206d18d5b4d -timeCreated: 1740728565 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/EventContainer.cs b/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/EventContainer.cs deleted file mode 100644 index 1c5d14b..0000000 --- a/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/EventContainer.cs +++ /dev/null @@ -1,176 +0,0 @@ -using System; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; -using Unity.IL2CPP.CompilerServices; - -namespace AlicizaX.EventKit -{ - [Il2CppSetOption(Option.NullChecks, false)] - [Il2CppSetOption(Option.DivideByZeroChecks, false)] - [Il2CppSetOption(Option.ArrayBoundsChecks, false)] - public static class EventContainer where TPayload : struct, IEventArgs - { - private const int InitialSize = 4; - private static Handler[] _handlers = new Handler[InitialSize]; - private static int[] _freeSlots = new int[InitialSize]; - private static int _freeCount = InitialSize; - private static int[] _activeIndices = new int[InitialSize]; - private static int _activeCount; - private static int _version; - -#if Event_StrickCheck - private static System.Collections.Generic.HashSet> _activeHandlers = new(); -#endif - - static EventContainer() - { - for (int i = 0; i < InitialSize; i++) - { - _freeSlots[i] = i; - } -#if UNITY_EDITOR - EventContainerRegistry.Register(typeof(EventContainer)); // 注册类型 -#endif - } - - [MethodImpl(MethodImplOptions.AggressiveInlining)] - public static void Reset() - { - _handlers = new Handler[InitialSize]; - _freeSlots = new int[InitialSize]; - _freeCount = InitialSize; - for (int i = 0; i < InitialSize; i++) - _freeSlots[i] = i; - _activeIndices = new int[InitialSize]; - _activeCount = 0; - _version = 0; -#if Event_StrickCheck - _activeHandlers?.Clear(); -#endif - } - - [Il2CppSetOption(Option.NullChecks, false)] - [Il2CppSetOption(Option.DivideByZeroChecks, false)] - [Il2CppSetOption(Option.ArrayBoundsChecks, false)] - [StructLayout(LayoutKind.Sequential, Pack = 4)] - private struct Handler - { - public Action Callback; - public int Version; - public int ActiveSlot; - } - - [Il2CppSetOption(Option.NullChecks, false)] - [Il2CppSetOption(Option.DivideByZeroChecks, false)] - [Il2CppSetOption(Option.ArrayBoundsChecks, false)] - [MethodImpl(MethodImplOptions.AggressiveInlining)] - public static EventRuntimeHandle Subscribe(Action callback) - { -#if Event_StrickCheck - if (_activeHandlers.Contains(callback)) - { - Log.Warning($"重复订阅事件处理程序: {callback.Method.Name}"); - } - else - { - _activeHandlers.Add(callback); - } -#endif - - int handlerIndex = GetFreeSlot(); - if (_activeCount >= _activeIndices.Length) - { - Array.Resize(ref _activeIndices, _activeIndices.Length * 2); - } - - int activeIndex = _activeCount++; - _activeIndices[activeIndex] = handlerIndex; - - int version = ++_version; - _handlers[handlerIndex] = new Handler - { - Callback = callback, - Version = version, - ActiveSlot = activeIndex - }; - - return new EventRuntimeHandle((i, v) => Unsubscribe(i, v), handlerIndex, version); - } - - [Il2CppSetOption(Option.NullChecks, false)] - [Il2CppSetOption(Option.DivideByZeroChecks, false)] - [Il2CppSetOption(Option.ArrayBoundsChecks, false)] - [MethodImpl(MethodImplOptions.AggressiveInlining)] - private static int GetFreeSlot() - { - if (_freeCount > 0) return _freeSlots[--_freeCount]; - - int newSize = _handlers.Length == 0 ? 64 : _handlers.Length * 2; - Array.Resize(ref _handlers, newSize); - Array.Resize(ref _freeSlots, newSize * 2); - - for (int i = newSize; i < newSize * 2; i++) - { - _freeSlots[_freeCount++] = i; - } - - return newSize - 1; - } - - [Il2CppSetOption(Option.NullChecks, false)] - [Il2CppSetOption(Option.DivideByZeroChecks, false)] - [Il2CppSetOption(Option.ArrayBoundsChecks, false)] - [MethodImpl(MethodImplOptions.AggressiveInlining)] - private static void Unsubscribe(int handlerIndex, int version) - { - ref Handler handler = ref _handlers[handlerIndex]; - if (handler.Version != version) return; - - int lastActiveIndex = --_activeCount; - int lastHandlerIndex = _activeIndices[lastActiveIndex]; - int currentActiveIndex = handler.ActiveSlot; - - _activeIndices[currentActiveIndex] = lastHandlerIndex; - _handlers[lastHandlerIndex].ActiveSlot = currentActiveIndex; - - handler.Callback = null; - handler.Version = 0; - - if (_freeCount >= _freeSlots.Length) - { - Array.Resize(ref _freeSlots, _freeSlots.Length * 2); - } - - _freeSlots[_freeCount++] = handlerIndex; -#if Event_StrickCheck - _activeHandlers.Remove(handler.Callback); -#endif - } - - - [Il2CppSetOption(Option.NullChecks, false)] - [Il2CppSetOption(Option.DivideByZeroChecks, false)] - [Il2CppSetOption(Option.ArrayBoundsChecks, false)] - [MethodImpl(MethodImplOptions.AggressiveInlining)] - public static void Publish(in TPayload payload) - { - int count = _activeCount; - int[] indices = _activeIndices; - Handler[] handlers = _handlers; - - int i = 0; - for (; i <= count - 4; i += 4) - { - handlers[indices[i]].Callback(payload); - handlers[indices[i + 1]].Callback(payload); - handlers[indices[i + 2]].Callback(payload); - handlers[indices[i + 3]].Callback(payload); - } - - for (; i < count; i++) - { - handlers[indices[i]].Callback(payload); - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/EventContainer.cs.meta b/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/EventContainer.cs.meta deleted file mode 100644 index 507c560..0000000 --- a/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/EventContainer.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: cbff9d3b8de14e70928996c189419369 -timeCreated: 1740460625 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/EventContainerRegistry.cs b/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/EventContainerRegistry.cs deleted file mode 100644 index 3659aa3..0000000 --- a/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/EventContainerRegistry.cs +++ /dev/null @@ -1,13 +0,0 @@ -#if UNITY_EDITOR -namespace AlicizaX.EventKit -{ - public static class EventContainerRegistry - { - private static readonly System.Collections.Generic.HashSet _registeredTypes = - new System.Collections.Generic.HashSet(); - - public static void Register(System.Type type) => _registeredTypes.Add(type); - public static System.Collections.Generic.IEnumerable GetRegisteredTypes() => _registeredTypes; - } -} -#endif diff --git a/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/EventContainerRegistry.cs.meta b/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/EventContainerRegistry.cs.meta deleted file mode 100644 index 6c884db..0000000 --- a/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/EventContainerRegistry.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: bb06277a410841b4b1f46fed37ef9f32 -timeCreated: 1743592733 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/EventPublisher.cs b/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/EventPublisher.cs deleted file mode 100644 index b7eb8c6..0000000 --- a/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/EventPublisher.cs +++ /dev/null @@ -1,37 +0,0 @@ -using System; -using System.Runtime.CompilerServices; -using Unity.IL2CPP.CompilerServices; - -namespace AlicizaX.EventKit -{ - public static class EventPublisher - { - [Il2CppSetOption(Option.NullChecks, false)] - [Il2CppSetOption(Option.DivideByZeroChecks, false)] - [Il2CppSetOption(Option.ArrayBoundsChecks, false)] - [MethodImpl(MethodImplOptions.AggressiveInlining)] - public static EventRuntimeHandle Subscribe(Action handler) where T : struct, IEventArgs - { - return EventContainer.Subscribe(handler); - } - - [Il2CppSetOption(Option.NullChecks, false)] - [Il2CppSetOption(Option.DivideByZeroChecks, false)] - [Il2CppSetOption(Option.ArrayBoundsChecks, false)] - [MethodImpl(MethodImplOptions.AggressiveInlining)] - public static void Publish(in T evt) where T : struct, IEventArgs - { - EventContainer.Publish(evt); - } - - [Il2CppSetOption(Option.NullChecks, false)] - [Il2CppSetOption(Option.DivideByZeroChecks, false)] - [Il2CppSetOption(Option.ArrayBoundsChecks, false)] - public static void Publish(Action init) where T : struct, IEventArgs - { - var evt = default(T); - init(evt); - Publish(in evt); - } - } -} diff --git a/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/EventPublisher.cs.meta b/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/EventPublisher.cs.meta deleted file mode 100644 index 0f35f57..0000000 --- a/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/EventPublisher.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: a548c70953eb4f869fa4616805c46be4 -timeCreated: 1740462944 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/IEventArgs.cs b/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/IEventArgs.cs deleted file mode 100644 index 672b896..0000000 --- a/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/IEventArgs.cs +++ /dev/null @@ -1,9 +0,0 @@ -using System; -using System.Runtime.CompilerServices; -using Unity.IL2CPP.CompilerServices; - -namespace AlicizaX.EventKit -{ - public interface IEventArgs { } - -} diff --git a/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/IEventArgs.cs.meta b/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/IEventArgs.cs.meta deleted file mode 100644 index f7570d8..0000000 --- a/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/IEventArgs.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: d19ae2130bb74733aac1747d6c07ec48 -timeCreated: 1740460602 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/EventPublisherSetting.cs b/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/EventPublisherSetting.cs deleted file mode 100644 index 1b5eb7f..0000000 --- a/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/EventPublisherSetting.cs +++ /dev/null @@ -1,14 +0,0 @@ -using System; -using AlicizaX; -using UnityEngine; - -namespace AlicizaX.EventKit.Runtime -{ - [DisallowMultipleComponent] - [AddComponentMenu("Game Framework/EventPublisher")] - [UnityEngine.Scripting.Preserve] - public sealed class EventPublisherSetting :MonoBehaviour - { - - } -} diff --git a/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/EventPublisherSetting.cs.meta b/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/EventPublisherSetting.cs.meta deleted file mode 100644 index 5e81f97..0000000 --- a/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/EventPublisherSetting.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 7eec9f691e06464cbfc45f619c7fee9d -timeCreated: 1737095521 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.eventkit/Runtime/link.xml b/Client/Packages/com.alicizax.unity.eventkit/Runtime/link.xml deleted file mode 100644 index c8c6c60..0000000 --- a/Client/Packages/com.alicizax.unity.eventkit/Runtime/link.xml +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.eventkit/Runtime/link.xml.meta b/Client/Packages/com.alicizax.unity.eventkit/Runtime/link.xml.meta deleted file mode 100644 index 6a65bc4..0000000 --- a/Client/Packages/com.alicizax.unity.eventkit/Runtime/link.xml.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: f4c0faa4b7600904abe47f4bf1a39a04 -timeCreated: 1737098131 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.eventkit/package.json b/Client/Packages/com.alicizax.unity.eventkit/package.json deleted file mode 100644 index c6cf87d..0000000 --- a/Client/Packages/com.alicizax.unity.eventkit/package.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "name": "com.alicizax.unity.eventkit", - "displayName": "Aliciza X EventKit", - "category": "Aliciza X EventKit", - "description": "Aliciza X EventKitComponent", - "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.eventkit/package.json.meta b/Client/Packages/com.alicizax.unity.eventkit/package.json.meta deleted file mode 100644 index 33638ed..0000000 --- a/Client/Packages/com.alicizax.unity.eventkit/package.json.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 030f98d0240510644afa487431223bfa -PackageManifestImporter: - 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 index 000cac5..4a2edcd 100644 --- a/Client/Packages/com.alicizax.unity.localization/Editor/AlicizaX.Localization.Editor.asmdef +++ b/Client/Packages/com.alicizax.unity.localization/Editor/AlicizaX.Localization.Editor.asmdef @@ -1,12 +1,7 @@ { "name": "AlicizaX.Localization.Editor", "rootNamespace": "AlicizaX.Localization.Editor", - "references": [ - "GUID:acfef7cabed3b0a42b25edb1cd4fa259", - "GUID:a19b414bea3b97240a91aeab9a8eab36", - "GUID:75b6f2078d190f14dbda4a5b747d709c", - "GUID:99a2a63c2a1143c4ba448165a98a5108" - ], + "references": [], "includePlatforms": [ "Editor" ], diff --git a/Client/Packages/com.alicizax.unity.localization/Editor/LocalizationEditor.cs b/Client/Packages/com.alicizax.unity.localization/Editor/LocalizationEditor.cs index a620076..0be75e8 100644 --- a/Client/Packages/com.alicizax.unity.localization/Editor/LocalizationEditor.cs +++ b/Client/Packages/com.alicizax.unity.localization/Editor/LocalizationEditor.cs @@ -1,9 +1,7 @@ -using UnityEngine; - -namespace AlicizaX.Localization.Editor +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 index bdada9d..e6d8083 100644 --- a/Client/Packages/com.alicizax.unity.localization/Editor/LocalizationEditor.cs.meta +++ b/Client/Packages/com.alicizax.unity.localization/Editor/LocalizationEditor.cs.meta @@ -1,2 +1,3 @@ fileFormatVersion: 2 -guid: 0b66d068ea5b690459d11b5e93bf2949 \ No newline at end of file +guid: 019b2b61e4894bdcb1c7c12a28d31460 +timeCreated: 1754047909 \ No newline at end of file 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 index 059143d..8bdd6aa 100644 --- a/Client/Packages/com.alicizax.unity.localization/Runtime/AlicizaX.Localization.Runtime.asmdef +++ b/Client/Packages/com.alicizax.unity.localization/Runtime/AlicizaX.Localization.Runtime.asmdef @@ -3,7 +3,7 @@ "rootNamespace": "AlicizaX.Localization.Runtime", "references": [ "GUID:75b6f2078d190f14dbda4a5b747d709c", - "GUID:4041d17782e62754ba8777fe2dfb6b27" + "GUID:2393d135922de5c4ab12e74f1e397920" ], "includePlatforms": [], "excludePlatforms": [], diff --git a/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Event.meta b/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Event.meta new file mode 100644 index 0000000..e9ce001 --- /dev/null +++ b/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Event.meta @@ -0,0 +1,3 @@ +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 new file mode 100644 index 0000000..1c7c5ed --- /dev/null +++ b/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Event/LocalizationChangeEvent.cs @@ -0,0 +1,20 @@ +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 new file mode 100644 index 0000000..9cda66a --- /dev/null +++ b/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Event/LocalizationChangeEvent.cs.meta @@ -0,0 +1,3 @@ +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 index f4a755c..655210e 100644 --- a/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/LocalizationComponent.cs +++ b/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/LocalizationComponent.cs @@ -1,8 +1,4 @@ -using System; -using System.Collections.Generic; -using AlicizaX.Event.Runtime; -using AlicizaX; -using UnityEngine; +using UnityEngine; namespace AlicizaX.Localization.Runtime { 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 index d86efdb..a5c4268 100644 --- a/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Manager/ILocalizationModule.cs +++ b/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Manager/ILocalizationModule.cs @@ -8,7 +8,7 @@ namespace AlicizaX.Localization.Runtime /// public interface ILocalizationModule : IModule, IModuleAwake { - public Language Language { get; set; } + public Language Language { get; } /// /// 根据字典主键获取字典内容字符串。 @@ -17,6 +17,9 @@ namespace AlicizaX.Localization.Runtime /// 要获取的字典内容字符串。 string GetString(string key); + void ChangedLanguage(Language language); + + /// /// 根据字典主键获取字典内容字符串。 /// 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 index c4cd61f..0219be0 100644 --- a/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Manager/LocalizationModule.cs +++ b/Client/Packages/com.alicizax.unity.localization/Runtime/Localization/Manager/LocalizationModule.cs @@ -1,6 +1,7 @@ using System; using System.Collections.Generic; using AlicizaX; +using AlicizaX.Localization.Runtime.Event; namespace AlicizaX.Localization.Runtime { @@ -11,8 +12,19 @@ namespace AlicizaX.Localization.Runtime public sealed partial class LocalizationModule : ILocalizationModule { private readonly Dictionary Dic = new(); + private Language _language; - public Language Language { get; set; } + public Language Language + { + get => _language; + } + + public void ChangedLanguage(Language language) + { + if (_language == language) return; + _language = language; + LocalizationChangeEvent.Publisher(_language); + } /// /// 根据字典主键获取字典内容字符串。 @@ -717,18 +729,9 @@ namespace AlicizaX.Localization.Runtime void IModuleAwake.Awake() { #if UNITY_EDITOR - Language = (Language)UnityEditor.EditorPrefs.GetInt(LocalizationComponent.PrefsKey, 1); + _language = (Language)UnityEditor.EditorPrefs.GetInt(LocalizationComponent.PrefsKey, 1); #else - bool hasDefaultLanguage = Utility.PlayerPrefsX.HasSetting(PrefsKey.Setting.Language); - if (!hasDefaultLanguage) - { - Language = AppBuilderSetting.Instance.Language; - Utility.PlayerPrefsX.SetInt(PrefsKey.Setting.Language, (int)Language); - } - else - { - Language = (Language)Utility.PlayerPrefsX.GetInt(PrefsKey.Setting.Language, (int)AppBuilderSetting.Instance.Language); - } + _language = AppBuilderSetting.Instance.Language; #endif } } diff --git a/Client/Packages/com.alicizax.unity.localization/package.json b/Client/Packages/com.alicizax.unity.localization/package.json index a50a55a..cc60817 100644 --- a/Client/Packages/com.alicizax.unity.localization/package.json +++ b/Client/Packages/com.alicizax.unity.localization/package.json @@ -16,5 +16,8 @@ "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.resource/Editor/Encryption/DefaultEncryption.cs b/Client/Packages/com.alicizax.unity.resource/Editor/Encryption/DefaultEncryption.cs index f1875d2..246d0dc 100644 --- a/Client/Packages/com.alicizax.unity.resource/Editor/Encryption/DefaultEncryption.cs +++ b/Client/Packages/com.alicizax.unity.resource/Editor/Encryption/DefaultEncryption.cs @@ -1,4 +1,6 @@ -namespace AlicizaX.Resource.Editor +using AlicizaX.Resource.Runtime; + +namespace AlicizaX.Resource.Editor { using System; using System.IO; @@ -33,14 +35,10 @@ public EncryptResult Encrypt(EncryptFileInfo fileInfo) { - if (fileInfo.BundleName.Contains("DLL")) - { - } - var fileData = File.ReadAllBytes(fileInfo.FileLoadPath); for (int i = 0; i < fileData.Length; i++) { - fileData[i] ^= KEY; + fileData[i] ^= BundleStream.KEY; } EncryptResult result = new EncryptResult(); 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 index 214b5e8..883f8a7 100644 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/AlicizaX.Resource.Runtime.asmdef +++ b/Client/Packages/com.alicizax.unity.resource/Runtime/AlicizaX.Resource.Runtime.asmdef @@ -4,7 +4,6 @@ "references": [ "GUID:75b6f2078d190f14dbda4a5b747d709c", "GUID:f51ebe6a0ceec4240a699833d6309b23", - "GUID:4041d17782e62754ba8777fe2dfb6b27", "GUID:e34a5702dd353724aa315fb8011f08c3", "GUID:b4c00b967a932af48b2e067403eecbe2" ], diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Update/EventArgs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/EventArgs.meta similarity index 100% rename from Client/Packages/com.alicizax.unity.resource/Runtime/Update/EventArgs.meta rename to Client/Packages/com.alicizax.unity.resource/Runtime/EventArgs.meta diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/EventArgs/AssetDownloadProgressUpdateEventArgs.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/EventArgs/AssetDownloadProgressUpdateEventArgs.cs new file mode 100644 index 0000000..dde68b4 --- /dev/null +++ b/Client/Packages/com.alicizax.unity.resource/Runtime/EventArgs/AssetDownloadProgressUpdateEventArgs.cs @@ -0,0 +1,55 @@ +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/Update/EventArgs/AssetDownloadProgressUpdateEventArgs.cs.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/EventArgs/AssetDownloadProgressUpdateEventArgs.cs.meta similarity index 100% rename from Client/Packages/com.alicizax.unity.resource/Runtime/Update/EventArgs/AssetDownloadProgressUpdateEventArgs.cs.meta rename to Client/Packages/com.alicizax.unity.resource/Runtime/EventArgs/AssetDownloadProgressUpdateEventArgs.cs.meta 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 index f3b6353..8cedd1b 100644 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.Services.cs +++ b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.Services.cs @@ -34,39 +34,64 @@ namespace AlicizaX.Resource.Runtime /// 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, 0, GetManagedReadBufferSize()); - return decryptResult; - } + /// + /// 同步方式获取解密的资源包对象 + /// + 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; + } - // AssetBundle解密方法 - 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, 0, 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; + } - public byte[] ReadFileData(DecryptFileInfo fileInfo) - { - throw new System.NotImplementedException(); - } + /// + /// 后备方式获取解密的资源包 + /// 注意:当正常解密方法失败后,会触发后备加载! + /// 说明:建议通过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; + } - public string ReadFileText(DecryptFileInfo fileInfo) - { - throw new System.NotImplementedException(); - } + /// + /// 获取解密的字节数据 + /// + byte[] IDecryptionServices.ReadFileData(DecryptFileInfo fileInfo) + { + throw new System.NotImplementedException(); + } - private static uint GetManagedReadBufferSize() - { - return 1024; - } + /// + /// 获取解密的文本数据 + /// + string IDecryptionServices.ReadFileText(DecryptFileInfo fileInfo) + { + throw new System.NotImplementedException(); + } + + private static uint GetManagedReadBufferSize() + { + return 1024; + } } /// @@ -74,29 +99,50 @@ namespace AlicizaX.Resource.Runtime /// class FileOffsetDecryption : IDecryptionServices { + /// + /// 同步方式获取解密的资源包对象 + /// 注意:加载流对象在资源包对象释放的时候会自动释放 + /// DecryptResult IDecryptionServices.LoadAssetBundle(DecryptFileInfo fileInfo) { DecryptResult decryptResult = new DecryptResult(); decryptResult.ManagedStream = null; - decryptResult.Result = AssetBundle.LoadFromFile(fileInfo.FileLoadPath, 0, GetFileOffset()); + decryptResult.Result = AssetBundle.LoadFromFile(fileInfo.FileLoadPath, fileInfo.FileLoadCRC, GetFileOffset()); return decryptResult; } - // AssetBundle解密方法 + /// + /// 异步方式获取解密的资源包对象 + /// 注意:加载流对象在资源包对象释放的时候会自动释放 + /// DecryptResult IDecryptionServices.LoadAssetBundleAsync(DecryptFileInfo fileInfo) { DecryptResult decryptResult = new DecryptResult(); decryptResult.ManagedStream = null; - decryptResult.CreateRequest = AssetBundle.LoadFromFileAsync(fileInfo.FileLoadPath, 0, GetFileOffset()); + decryptResult.CreateRequest = AssetBundle.LoadFromFileAsync(fileInfo.FileLoadPath, fileInfo.FileLoadCRC, GetFileOffset()); return decryptResult; } - public byte[] ReadFileData(DecryptFileInfo fileInfo) + /// + /// 后备方式获取解密的资源包对象 + /// + DecryptResult IDecryptionServices.LoadAssetBundleFallback(DecryptFileInfo fileInfo) + { + return new DecryptResult(); + } + + /// + /// 获取解密的字节数据 + /// + byte[] IDecryptionServices.ReadFileData(DecryptFileInfo fileInfo) { throw new System.NotImplementedException(); } - public string ReadFileText(DecryptFileInfo fileInfo) + /// + /// 获取解密的文本数据 + /// + string IDecryptionServices.ReadFileText(DecryptFileInfo fileInfo) { throw new System.NotImplementedException(); } @@ -108,9 +154,6 @@ namespace AlicizaX.Resource.Runtime } - /// - /// 资源文件解密流 - /// public class BundleStream : FileStream { public const byte KEY = 64; @@ -118,7 +161,6 @@ namespace AlicizaX.Resource.Runtime public BundleStream(string path, FileMode mode, FileAccess access, FileShare share) : base(path, mode, access, share) { } - public BundleStream(string path, FileMode mode) : base(path, mode) { } @@ -130,7 +172,6 @@ namespace AlicizaX.Resource.Runtime { array[i] ^= KEY; } - return index; } } diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.cs index e41ebf6..8a388b1 100644 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.cs +++ b/Client/Packages/com.alicizax.unity.resource/Runtime/Resource/ResourceModule.cs @@ -571,6 +571,12 @@ namespace AlicizaX.Resource.Runtime 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) @@ -595,6 +601,12 @@ namespace AlicizaX.Resource.Runtime 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) @@ -632,6 +644,13 @@ namespace AlicizaX.Resource.Runtime 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); @@ -673,6 +692,13 @@ namespace AlicizaX.Resource.Runtime 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); @@ -711,6 +737,12 @@ namespace AlicizaX.Resource.Runtime 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); @@ -767,6 +799,17 @@ namespace AlicizaX.Resource.Runtime 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); @@ -857,6 +900,17 @@ namespace AlicizaX.Resource.Runtime 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); diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Update.meta b/Client/Packages/com.alicizax.unity.resource/Runtime/Update.meta deleted file mode 100644 index 45bcd97..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Update.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 2a59a45cf21040ec8e0727092866678b -timeCreated: 1737449439 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity.resource/Runtime/Update/EventArgs/AssetDownloadProgressUpdateEventArgs.cs b/Client/Packages/com.alicizax.unity.resource/Runtime/Update/EventArgs/AssetDownloadProgressUpdateEventArgs.cs deleted file mode 100644 index f3a76e9..0000000 --- a/Client/Packages/com.alicizax.unity.resource/Runtime/Update/EventArgs/AssetDownloadProgressUpdateEventArgs.cs +++ /dev/null @@ -1,77 +0,0 @@ -using AlicizaX.Event.Runtime; -using AlicizaX; - -namespace AlicizaX.Resource.Runtime -{ - /// - /// 下载进度更新 - /// - [UnityEngine.Scripting.Preserve] - public sealed class AssetDownloadProgressUpdateEventArgs : GameEventArgs - { - /// - /// 包名称 - /// - public string PackageName { get; set; } - - /// - /// 总下载数量 - /// - public int TotalDownloadCount { get; private set; } - - /// - /// 当前下载数量 - /// - public int CurrentDownloadCount { get; private set; } - - /// - /// 总下载大小 - /// - public long TotalDownloadSizeBytes { get; private set; } - - /// - /// 当前下载大小 - /// - public long CurrentDownloadSizeBytes { get; private set; } - - public override void Clear() - { - PackageName = null; - TotalDownloadCount = 0; - CurrentDownloadCount = 0; - TotalDownloadSizeBytes = 0; - CurrentDownloadSizeBytes = 0; - } - - /// - /// 下载进度更新事件编号 - /// - public static readonly string EventId = typeof(AssetDownloadProgressUpdateEventArgs).FullName; - - public override string Id - { - get { return EventId; } - } - - - /// - /// 创建下载进度更新 - /// - /// 包名称 - /// 总下载数量 - /// 当前下载数量 - /// 总下载大小 - /// 当前下载大小 - /// - public static AssetDownloadProgressUpdateEventArgs Create(string packageName, int totalDownloadCount, int currentDownloadCount, long totalDownloadSizeBytes, long currentDownloadSizeBytes) - { - var assetDownloadProgressUpdate = MemoryPool.Acquire(); - assetDownloadProgressUpdate.TotalDownloadCount = totalDownloadCount; - assetDownloadProgressUpdate.CurrentDownloadCount = currentDownloadCount; - assetDownloadProgressUpdate.TotalDownloadSizeBytes = totalDownloadSizeBytes; - assetDownloadProgressUpdate.CurrentDownloadSizeBytes = currentDownloadSizeBytes; - assetDownloadProgressUpdate.PackageName = packageName; - return assetDownloadProgressUpdate; - } - } -} diff --git a/Client/Packages/com.alicizax.unity.ui b/Client/Packages/com.alicizax.unity.ui index 73123d3..3e8a724 160000 --- a/Client/Packages/com.alicizax.unity.ui +++ b/Client/Packages/com.alicizax.unity.ui @@ -1 +1 @@ -Subproject commit 73123d3647f3a767fea0e00086d57c016b1f9289 +Subproject commit 3e8a724271c8dd1dc00ea50eb011f3364fca777a diff --git a/Client/Packages/com.alicizax.unity.ui.extension b/Client/Packages/com.alicizax.unity.ui.extension index 2842e19..dab724f 160000 --- a/Client/Packages/com.alicizax.unity.ui.extension +++ b/Client/Packages/com.alicizax.unity.ui.extension @@ -1 +1 @@ -Subproject commit 2842e190060b86f88a32f66ee6d2c7033a73a6bc +Subproject commit dab724f74ea59a465f071b806e9ae427152e9869 diff --git a/Client/Packages/com.alicizax.unity/Editor/AlicizaX.Editor.asmdef b/Client/Packages/com.alicizax.unity/Editor/AlicizaX.Editor.asmdef index 4a5c9e3..593690c 100644 --- a/Client/Packages/com.alicizax.unity/Editor/AlicizaX.Editor.asmdef +++ b/Client/Packages/com.alicizax.unity/Editor/AlicizaX.Editor.asmdef @@ -2,8 +2,7 @@ "name": "AlicizaX.Editor", "rootNamespace": "", "references": [ - "GUID:75b6f2078d190f14dbda4a5b747d709c", - "GUID:2373f786d14518f44b0f475db77ba4de" + "GUID:75b6f2078d190f14dbda4a5b747d709c" ], "includePlatforms": [ "Editor" diff --git a/Client/Packages/com.alicizax.unity/Editor/HybridCLR.meta b/Client/Packages/com.alicizax.unity/Editor/HybridCLR.meta deleted file mode 100644 index 4ca6d5a..0000000 --- a/Client/Packages/com.alicizax.unity/Editor/HybridCLR.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 596231b03a2cf834d8b2833300d9f524 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Editor/HybridCLR/BuilderGenerate.cs b/Client/Packages/com.alicizax.unity/Editor/HybridCLR/BuilderGenerate.cs deleted file mode 100644 index c9c29ba..0000000 --- a/Client/Packages/com.alicizax.unity/Editor/HybridCLR/BuilderGenerate.cs +++ /dev/null @@ -1,20 +0,0 @@ -using System.IO; -using AlicizaX; -using UnityEditor; - -namespace AlicizaX.Editor -{ - public static class BuilderGenerate - { - - public static void GeneratAppBuilderSetting(Language language, bool debugMode, int resMode) - { - const string AppBuilderSettingPath = "Assets/Resources/AppBuilderSetting.bytes"; - AppBuilderSetting appBuilderSetting = new AppBuilderSetting(); - appBuilderSetting.Language = language; - appBuilderSetting.DebugMode = debugMode; - appBuilderSetting.ResMode = resMode; - File.WriteAllText(AppBuilderSettingPath, Utility.Json.ToJson(appBuilderSetting)); - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Editor/HybridCLR/BuilderGenerate.cs.meta b/Client/Packages/com.alicizax.unity/Editor/HybridCLR/BuilderGenerate.cs.meta deleted file mode 100644 index a618038..0000000 --- a/Client/Packages/com.alicizax.unity/Editor/HybridCLR/BuilderGenerate.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: c08b751d385441058a634280266803eb -timeCreated: 1737524480 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity/Editor/Misc/EventScriptingDefineSymbols.cs b/Client/Packages/com.alicizax.unity/Editor/Misc/EventScriptingDefineSymbols.cs new file mode 100644 index 0000000..9de3265 --- /dev/null +++ b/Client/Packages/com.alicizax.unity/Editor/Misc/EventScriptingDefineSymbols.cs @@ -0,0 +1,46 @@ +using AlicizaX.Editor; +using UnityEditor; +using UnityEngine; + +namespace AlicizaX.Editor +{ + internal static class EventScriptingDefineSymbols + { + private const string MenuPath = "Tools/AlicizaX/Enable Strict Check"; + private const string DefineSymbol = "Event_StrictCheck"; + + [MenuItem(MenuPath)] + private static void ToggleStrictCheck() + { + bool enabled = IsEnabled(); + SetEnabled(!enabled); + } + + [MenuItem(MenuPath, true)] + private static bool ToggleStrictCheckValidate() + { + Menu.SetChecked(MenuPath, IsEnabled()); + return true; + } + + private static bool IsEnabled() + { + return ScriptingDefineSymbols.HasScriptingDefineSymbol(EditorUserBuildSettings.selectedBuildTargetGroup, DefineSymbol); + } + + private static void SetEnabled(bool enabled) + { + var targetGroup = EditorUserBuildSettings.selectedBuildTargetGroup; + if (enabled) + { + ScriptingDefineSymbols.AddScriptingDefineSymbol(targetGroup, DefineSymbol); + } + else + { + ScriptingDefineSymbols.RemoveScriptingDefineSymbol(targetGroup, DefineSymbol); + } + + Debug.Log($"[EventKit] Strict Check {(enabled ? "Enabled" : "Disabled")}"); + } + } +} diff --git a/Client/Packages/com.alicizax.unity/Editor/Misc/EventScriptingDefineSymbols.cs.meta b/Client/Packages/com.alicizax.unity/Editor/Misc/EventScriptingDefineSymbols.cs.meta new file mode 100644 index 0000000..1ed3286 --- /dev/null +++ b/Client/Packages/com.alicizax.unity/Editor/Misc/EventScriptingDefineSymbols.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: a0f666b24d9c41c4a355f9a9a643928b +timeCreated: 1756782190 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity/Plugins/EventSourceGenerator.dll b/Client/Packages/com.alicizax.unity/Plugins/EventSourceGenerator.dll new file mode 100644 index 0000000..b800e52 Binary files /dev/null and b/Client/Packages/com.alicizax.unity/Plugins/EventSourceGenerator.dll differ diff --git a/Client/Packages/com.alicizax.unity/Plugins/EventSourceGenerator.dll.meta b/Client/Packages/com.alicizax.unity/Plugins/EventSourceGenerator.dll.meta new file mode 100644 index 0000000..d0ee933 --- /dev/null +++ b/Client/Packages/com.alicizax.unity/Plugins/EventSourceGenerator.dll.meta @@ -0,0 +1,52 @@ +fileFormatVersion: 2 +guid: e0f9fe588fe13b14ca28cddf735a2f0b +labels: +- RoslynAnalyzer +PluginImporter: + externalObjects: {} + serializedVersion: 3 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 1 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + Any: + enabled: 1 + settings: + Exclude Editor: 1 + Exclude Linux64: 0 + Exclude OSXUniversal: 0 + Exclude Win: 0 + Exclude Win64: 0 + Editor: + enabled: 0 + settings: + CPU: AnyCPU + DefaultValueInitialized: true + OS: AnyOS + Linux64: + enabled: 1 + settings: + CPU: AnyCPU + OSXUniversal: + enabled: 1 + settings: + CPU: AnyCPU + Win: + enabled: 1 + settings: + CPU: AnyCPU + Win64: + enabled: 1 + settings: + CPU: AnyCPU + WindowsStoreApps: + enabled: 0 + settings: + CPU: AnyCPU + userData: + assetBundleName: + assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/AlicizaX.Runtime.asmdef b/Client/Packages/com.alicizax.unity/Runtime/AlicizaX.Runtime.asmdef index c9e2dcf..e4dc82d 100644 --- a/Client/Packages/com.alicizax.unity/Runtime/AlicizaX.Runtime.asmdef +++ b/Client/Packages/com.alicizax.unity/Runtime/AlicizaX.Runtime.asmdef @@ -12,6 +12,12 @@ "precompiledReferences": [], "autoReferenced": true, "defineConstraints": [], - "versionDefines": [], + "versionDefines": [ + { + "name": "com.alicizax.unity.cysharp.zstring", + "expression": "2.3.0", + "define": "ZSTRING_SUPPORT" + } + ], "noEngineReferences": false } \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity/Runtime/Base/Event.meta b/Client/Packages/com.alicizax.unity/Runtime/Base/Event.meta deleted file mode 100644 index db935f2..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Base/Event.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 71df78781abe4068a2c8a8fbedca8acf -timeCreated: 1736415662 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity/Runtime/Base/Event/IEventBase.cs b/Client/Packages/com.alicizax.unity/Runtime/Base/Event/IEventBase.cs deleted file mode 100644 index 3f0ed50..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Base/Event/IEventBase.cs +++ /dev/null @@ -1,8 +0,0 @@ -using System; - -namespace AlicizaX -{ - public interface IEvent - { - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Base/Event/IEventBase.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Base/Event/IEventBase.cs.meta deleted file mode 100644 index 2d78e96..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Base/Event/IEventBase.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 421f7c10db9f44f4ba100040ad0baabc -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool.meta b/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool.meta deleted file mode 100644 index 8f77143..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 48751c35576345908f4dda6ef1133f4a -timeCreated: 1737376697 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool/BaseEventArgs.cs b/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool/BaseEventArgs.cs deleted file mode 100644 index 2109224..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool/BaseEventArgs.cs +++ /dev/null @@ -1,16 +0,0 @@ -namespace AlicizaX -{ - /// - /// 事件基类。 - /// - public abstract class BaseEventArgs : GameFrameworkEventArgs - { - /// - /// 获取事件ID。 - /// - public abstract string Id - { - get; - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool/BaseEventArgs.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool/BaseEventArgs.cs.meta deleted file mode 100644 index d51a9f9..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool/BaseEventArgs.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: dd577b63758c544d7878cb56583ace8b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool/EventPool.EventNode.cs b/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool/EventPool.EventNode.cs deleted file mode 100644 index 7b013f1..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool/EventPool.EventNode.cs +++ /dev/null @@ -1,50 +0,0 @@ -namespace AlicizaX -{ - public sealed partial class EventPool where T : BaseEventArgs - { - /// - /// 事件结点。 - /// - private sealed class EventNode : IMemory - { - private object _sender = null; - private T _eventArgs = null; - - /// - /// 发送者 - /// - public object Sender - { - get { return _sender; } - } - - /// - /// 事件参数 - /// - public T EventArgs - { - get { return _eventArgs; } - } - - /// - /// 创建事件节点 - /// - /// - /// - /// - public static EventNode Create(object sender, T eventArgs) - { - EventNode eventNodeNode = MemoryPool.Acquire(); - eventNodeNode._sender = sender; - eventNodeNode._eventArgs = eventArgs; - return eventNodeNode; - } - - public void Clear() - { - _sender = null; - _eventArgs = null; - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool/EventPool.EventNode.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool/EventPool.EventNode.cs.meta deleted file mode 100644 index 475eb25..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool/EventPool.EventNode.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 1c00abe73a3d34fd7a8c24ea2a6ff6ae -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool/EventPool.cs b/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool/EventPool.cs deleted file mode 100644 index 65a019b..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool/EventPool.cs +++ /dev/null @@ -1,319 +0,0 @@ -using System; -using System.Collections.Generic; - -namespace AlicizaX -{ - /// - /// 事件池。 - /// - /// 事件类型。 - public sealed partial class EventPool where T : BaseEventArgs - { - private readonly object _lock = new object(); - private readonly GameFrameworkMultiDictionary> _eventHandlers; - private readonly Queue _events; - private readonly Dictionary>> _cachedNodes; - private readonly Dictionary>> _tempNodes; - private readonly EventPoolMode _eventPoolMode; - private EventHandler _defaultHandler; - - /// - /// 初始化事件池的新实例。 - /// - /// 事件池模式。 - public EventPool(EventPoolMode mode) - { - _eventHandlers = new GameFrameworkMultiDictionary>(); - _events = new Queue(); - _cachedNodes = new Dictionary>>(); - _tempNodes = new Dictionary>>(); - _eventPoolMode = mode; - _defaultHandler = null; - } - - /// - /// 获取事件处理函数的数量。 - /// - public int EventHandlerCount - { - get - { - lock (_lock) - { - return _eventHandlers.Count; - } - } - } - - /// - /// 获取事件数量。 - /// - public int EventCount - { - get - { - lock (_lock) - { - return _events.Count; - } - } - } - - /// - /// 事件池轮询。 - /// - /// 逻辑流逝时间,以秒为单位。 - /// 真实流逝时间,以秒为单位。 - public void Update(float elapseSeconds, float realElapseSeconds) - { - lock (_lock) - { - while (_events.Count > 0) - { - EventNode eventNodeNode = _events.Dequeue(); - HandleEvent(eventNodeNode.Sender, eventNodeNode.EventArgs); - MemoryPool.Release(eventNodeNode); - } - } - } - - /// - /// 关闭并清理事件池。 - /// - public void Shutdown() - { - Clear(); - _eventHandlers.Clear(); - _cachedNodes.Clear(); - _tempNodes.Clear(); - _defaultHandler = null; - } - - /// - /// 清理事件。 - /// - public void Clear() - { - lock (_lock) - { - _events.Clear(); - } - } - - /// - /// 获取事件处理函数的数量。 - /// - /// 事件类型编号。 - /// 事件处理函数的数量。 - public int Count(string id) - { - lock (_lock) - { - if (_eventHandlers.TryGetValue(id, out var listRange)) - { - return listRange.Count; - } - - return 0; - } - } - - /// - /// 检查是否存在事件处理函数。 - /// - /// 事件类型编号。 - /// 要检查的事件处理函数。 - /// 是否存在事件处理函数。 - public bool Check(string id, EventHandler handler) - { - lock (_lock) - { - if (handler == null) - { - throw new GameFrameworkException("Event handler is invalid."); - } - - return _eventHandlers.Contains(id, handler); - } - } - - /// - /// 订阅事件处理函数。 - /// - /// 事件类型编号。 - /// 要订阅的事件处理函数。 - public void Subscribe(string id, EventHandler handler) - { - lock (_lock) - { - if (handler == null) - { - throw new GameFrameworkException("Event handler is invalid."); - } - - if (!_eventHandlers.Contains(id)) - { - _eventHandlers.Add(id, handler); - } - else if ((_eventPoolMode & EventPoolMode.AllowMultiHandler) != EventPoolMode.AllowMultiHandler) - { - throw new GameFrameworkException(Utility.Text.Format("Event '{0}' not allow multi handler.", id)); - } - else if ((_eventPoolMode & EventPoolMode.AllowDuplicateHandler) != EventPoolMode.AllowDuplicateHandler && Check(id, handler)) - { - throw new GameFrameworkException(Utility.Text.Format("Event '{0}' not allow duplicate handler.", id)); - } - else - { - _eventHandlers.Add(id, handler); - } - } - } - - /// - /// 取消订阅事件处理函数。 - /// - /// 事件类型编号。 - /// 要取消订阅的事件处理函数。 - public void Unsubscribe(string id, EventHandler handler) - { - lock (_lock) - { - if (handler == null) - { - throw new GameFrameworkException("Event handler is invalid."); - } - - if (_cachedNodes.Count > 0) - { - foreach (KeyValuePair>> cachedNode in _cachedNodes) - { - if (cachedNode.Value != null && cachedNode.Value.Value == handler) - { - _tempNodes.Add(cachedNode.Key, cachedNode.Value.Next); - } - } - - if (_tempNodes.Count > 0) - { - foreach (KeyValuePair>> cachedNode in _tempNodes) - { - _cachedNodes[cachedNode.Key] = cachedNode.Value; - } - - _tempNodes.Clear(); - } - } - - if (!_eventHandlers.Remove(id, handler)) - { - throw new GameFrameworkException(Utility.Text.Format("Event '{0}' not exists specified handler.", id)); - } - } - } - - /// - /// 设置默认事件处理函数。 - /// - /// 要设置的默认事件处理函数。 - public void SetDefaultHandler(EventHandler handler) - { - _defaultHandler = handler; - } - - /// - /// 抛出事件,这个操作是线程安全的,即使不在主线程中抛出,也可保证在主线程中回调事件处理函数,但事件会在抛出后的下一帧分发。 - /// - /// 事件源。 - /// 事件参数。 - public void Fire(object sender, T e) - { - lock (_lock) - { - if (e == null) - { - throw new GameFrameworkException("Event is invalid."); - } - - var eventNodeNode = EventNode.Create(sender, e); - lock (_events) - { - _events.Enqueue(eventNodeNode); - } - } - } - - /// - /// 抛出事件立即模式,这个操作不是线程安全的,事件会立刻分发。 - /// - /// 事件源。 - /// 事件参数。 - public void FireNow(object sender, T e) - { - lock (_lock) - { - if (e == null) - { - throw new GameFrameworkException("Event is invalid."); - } - - HandleEvent(sender, e); - } - } - - /// - /// 处理事件结点。 - /// - /// 事件源。 - /// 事件参数。 - private void HandleEvent(object sender, T e) - { - lock (_lock) - { - bool noHandlerException = false; - if (_eventHandlers.TryGetValue(e.Id, out var range)) - { - LinkedListNode> current = range.First; - while (current != null && current != range.Terminal) - { - _cachedNodes[e] = current.Next != range.Terminal ? current.Next : null; - try - { - current.Value?.Invoke(sender, e); - } - catch (Exception exception) - { - Log.Exception(exception); - } - - current = _cachedNodes[e]; - } - - _cachedNodes.Remove(e); - } - else if (_defaultHandler != null) - { - try - { - _defaultHandler(sender, e); - } - catch (Exception exception) - { - Log.Exception(exception); - } - } - else if ((_eventPoolMode & EventPoolMode.AllowNoHandler) == 0) - { - noHandlerException = true; - } - - MemoryPool.Release(e); - - if (noHandlerException) - { - throw new GameFrameworkException(Utility.Text.Format("Event '{0}' not allow no handler.", e.Id)); - } - } - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool/EventPool.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool/EventPool.cs.meta deleted file mode 100644 index e32bb26..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool/EventPool.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: eb4fb50ba60224c5180bc2aed4efeb71 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool/EventPoolMode.cs b/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool/EventPoolMode.cs deleted file mode 100644 index 1657cde..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool/EventPoolMode.cs +++ /dev/null @@ -1,31 +0,0 @@ -using System; - -namespace AlicizaX -{ - /// - /// 事件池模式。 - /// - [Flags] - public enum EventPoolMode : byte - { - /// - /// 默认事件池模式,即必须存在有且只有一个事件处理函数。 - /// - Default = 0, - - /// - /// 允许不存在事件处理函数。 - /// - AllowNoHandler = 1, - - /// - /// 允许存在多个事件处理函数。 - /// - AllowMultiHandler = 2, - - /// - /// 允许存在重复的事件处理函数。 - /// - AllowDuplicateHandler = 4 - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool/EventPoolMode.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool/EventPoolMode.cs.meta deleted file mode 100644 index 09d3a23..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool/EventPoolMode.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 10e1e3652121149a3becb11f91f7211c -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool/GameFrameworkEventArgs.cs b/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool/GameFrameworkEventArgs.cs deleted file mode 100644 index f4afa02..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool/GameFrameworkEventArgs.cs +++ /dev/null @@ -1,22 +0,0 @@ -using System; - -namespace AlicizaX -{ - /// - /// 游戏框架中包含事件数据的类的基类。 - /// - public abstract class GameFrameworkEventArgs : EventArgs, IMemory - { - /// - /// 初始化游戏框架中包含事件数据的类的新实例。 - /// - protected GameFrameworkEventArgs() - { - } - - /// - /// 清理引用。 - /// - public abstract void Clear(); - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool/GameFrameworkEventArgs.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool/GameFrameworkEventArgs.cs.meta deleted file mode 100644 index 594bc1f..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Base/EventPool/GameFrameworkEventArgs.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: e79b33a9fb1f45dc8a82b3e4c0a73560 -timeCreated: 1737376755 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity/Runtime/Constant/Constant.cs b/Client/Packages/com.alicizax.unity/Runtime/Constant/Constant.cs deleted file mode 100644 index 0f880e7..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Constant/Constant.cs +++ /dev/null @@ -1,22 +0,0 @@ -namespace AlicizaX -{ - /// - /// 常用设置相关常量。 - /// - public static partial class PrefsKey - { - public static class Setting - { - public const string WirtedSetting = "WirtedSetting"; - public const string Language = "Setting.Language"; - public const string SoundGroupMuted = "Setting.{0}Muted"; - public const string SoundGroupVolume = "Setting.{0}Volume"; - public const string MusicMuted = "Setting.MusicMuted"; - public const string MusicVolume = "Setting.MusicVolume"; - public const string SoundMuted = "Setting.SoundMuted"; - public const string SoundVolume = "Setting.SoundVolume"; - public const string UISoundMuted = "Setting.UISoundMuted"; - public const string UISoundVolume = "Setting.UISoundVolume"; - } - } -} diff --git a/Client/Packages/com.alicizax.unity/Runtime/Constant/Constant.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Constant/Constant.cs.meta deleted file mode 100644 index 344622b..0000000 --- a/Client/Packages/com.alicizax.unity/Runtime/Constant/Constant.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 91862a61e413450eacc144e834e5a35b -timeCreated: 1737623610 \ No newline at end of file diff --git a/Client/Packages/com.alicizax.unity/Runtime/Constant/Language.cs b/Client/Packages/com.alicizax.unity/Runtime/Constant/Language.cs index 4a4a209..df85b95 100644 --- a/Client/Packages/com.alicizax.unity/Runtime/Constant/Language.cs +++ b/Client/Packages/com.alicizax.unity/Runtime/Constant/Language.cs @@ -5,7 +5,6 @@ /// public enum Language : byte { - Unspecified, /// /// 简体中文。 @@ -21,5 +20,10 @@ /// 日语。 /// Japanese, + + /// + /// 俄语。 + /// + Russian, } } diff --git a/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event.meta b/Client/Packages/com.alicizax.unity/Runtime/Event.meta similarity index 100% rename from Client/Packages/com.alicizax.unity.eventkit/Runtime/Event.meta rename to Client/Packages/com.alicizax.unity/Runtime/Event.meta diff --git a/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/EventRuntimeHandle.cs b/Client/Packages/com.alicizax.unity/Runtime/Event/EventRuntimeHandle.cs similarity index 51% rename from Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/EventRuntimeHandle.cs rename to Client/Packages/com.alicizax.unity/Runtime/Event/EventRuntimeHandle.cs index 0e4a9dd..6438bfe 100644 --- a/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/EventRuntimeHandle.cs +++ b/Client/Packages/com.alicizax.unity/Runtime/Event/EventRuntimeHandle.cs @@ -1,21 +1,29 @@ -using System.Runtime.CompilerServices; +using System; +using System.Runtime.CompilerServices; using Unity.IL2CPP.CompilerServices; -namespace AlicizaX.EventKit +namespace AlicizaX { + public interface IEventArgs { } + + [AttributeUsage(AttributeTargets.Struct)] + public sealed class PrewarmAttribute : Attribute + { + public int Capacity { get; } + public PrewarmAttribute(int capacity) => Capacity = capacity; + } [Il2CppSetOption(Option.NullChecks, false)] [Il2CppSetOption(Option.DivideByZeroChecks, false)] [Il2CppSetOption(Option.ArrayBoundsChecks, false)] public readonly struct EventRuntimeHandle { - private readonly System.Action _unsubscribe; + private readonly Action _unsubscribe; private readonly int _index; private readonly int _version; - [MethodImpl(MethodImplOptions.AggressiveInlining)] - public EventRuntimeHandle(System.Action unsubscribe, int index, int version) + public EventRuntimeHandle(Action unsubscribe, int index, int version) { _unsubscribe = unsubscribe; _index = index; @@ -23,9 +31,6 @@ namespace AlicizaX.EventKit } [MethodImpl(MethodImplOptions.AggressiveInlining)] - public void Dispose() - { - _unsubscribe?.Invoke(_index, _version); - } + public void Dispose() => _unsubscribe?.Invoke(_index, _version); } } diff --git a/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/EventRuntimeHandle.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Event/EventRuntimeHandle.cs.meta similarity index 100% rename from Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/EventRuntimeHandle.cs.meta rename to Client/Packages/com.alicizax.unity/Runtime/Event/EventRuntimeHandle.cs.meta diff --git a/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/Il2CppSetOptionAttribute.cs b/Client/Packages/com.alicizax.unity/Runtime/Event/Il2CppSetOptionAttribute.cs similarity index 100% rename from Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/Il2CppSetOptionAttribute.cs rename to Client/Packages/com.alicizax.unity/Runtime/Event/Il2CppSetOptionAttribute.cs diff --git a/Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/Il2CppSetOptionAttribute.cs.meta b/Client/Packages/com.alicizax.unity/Runtime/Event/Il2CppSetOptionAttribute.cs.meta similarity index 100% rename from Client/Packages/com.alicizax.unity.eventkit/Runtime/Event/Core/Il2CppSetOptionAttribute.cs.meta rename to Client/Packages/com.alicizax.unity/Runtime/Event/Il2CppSetOptionAttribute.cs.meta diff --git a/Client/Packages/com.alicizax.unity/Runtime/Utility/Utility.Http.cs b/Client/Packages/com.alicizax.unity/Runtime/Utility/Utility.Http.cs index 11924ae..85f0b71 100644 --- a/Client/Packages/com.alicizax.unity/Runtime/Utility/Utility.Http.cs +++ b/Client/Packages/com.alicizax.unity/Runtime/Utility/Utility.Http.cs @@ -1,6 +1,6 @@ -using System; +#if ZSTRING_SUPPORT + using System.Collections.Generic; -using System.Threading; using Cysharp.Threading.Tasks; using UnityEngine; using UnityEngine.Networking; @@ -104,3 +104,4 @@ namespace AlicizaX } } } +#endif diff --git a/Client/Packages/manifest.json b/Client/Packages/manifest.json index 46f969f..40a6afb 100644 --- a/Client/Packages/manifest.json +++ b/Client/Packages/manifest.json @@ -4,7 +4,6 @@ "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.paps.unity-toolbar-extender-ui-toolkit": "http://101.34.252.46:3000/AlicizaX/com.paps.unity-toolbar-extender-ui-toolkit.git", "com.unity.ai.navigation": "2.0.6", "com.unity.editorcoroutines": "1.0.0", "com.unity.ide.rider": "3.0.34", diff --git a/Client/Packages/packages-lock.json b/Client/Packages/packages-lock.json index eca03a2..161988a 100644 --- a/Client/Packages/packages-lock.json +++ b/Client/Packages/packages-lock.json @@ -41,7 +41,9 @@ "version": "file:com.alicizax.unity.editor.extension", "depth": 0, "source": "embedded", - "dependencies": {} + "dependencies": { + "com.unity.serialization": "3.1.2" + } }, "com.alicizax.unity.entry": { "version": "file:com.alicizax.unity.entry", @@ -49,18 +51,6 @@ "source": "embedded", "dependencies": {} }, - "com.alicizax.unity.event": { - "version": "file:com.alicizax.unity.event", - "depth": 0, - "source": "embedded", - "dependencies": {} - }, - "com.alicizax.unity.eventkit": { - "version": "file:com.alicizax.unity.eventkit", - "depth": 0, - "source": "embedded", - "dependencies": {} - }, "com.alicizax.unity.focus-creative-games.luban": { "version": "file:com.alicizax.unity.focus-creative-games.luban", "depth": 0, @@ -77,7 +67,9 @@ "version": "file:com.alicizax.unity.localization", "depth": 0, "source": "embedded", - "dependencies": {} + "dependencies": { + "com.unity.serialization": "3.1.2" + } }, "com.alicizax.unity.network": { "version": "file:com.alicizax.unity.network", @@ -111,17 +103,6 @@ "source": "embedded", "dependencies": {} }, - "com.alicizax.unity.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.alicizax.unity.ui": { "version": "file:com.alicizax.unity.ui", "depth": 0, @@ -157,14 +138,16 @@ "dependencies": {}, "hash": "a2d206268922a2011851aedb053f3396f2243fc4" }, - "com.paps.unity-toolbar-extender-ui-toolkit": { - "version": "http://101.34.252.46:3000/AlicizaX/com.paps.unity-toolbar-extender-ui-toolkit.git", + "com.tuyoogame.yooasset": { + "version": "file:com.alicizax.unity.tuyoogame.yooasset", "depth": 0, - "source": "git", + "source": "embedded", "dependencies": { - "com.unity.serialization": "3.1.2" - }, - "hash": "da793070ba60e051230abdd5d174c774fb3d3b49" + "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", diff --git a/Client/ProjectSettings/EditorBuildSettings.asset b/Client/ProjectSettings/EditorBuildSettings.asset index 4e61185..8bf45f3 100644 --- a/Client/ProjectSettings/EditorBuildSettings.asset +++ b/Client/ProjectSettings/EditorBuildSettings.asset @@ -9,5 +9,5 @@ EditorBuildSettings: path: Assets/Scenes/Main.unity guid: 3a0b1916be2731d44840741d972ef135 m_configObjects: - com.unity.input.settings.actions: {fileID: -944628639613478452, guid: 052faaac586de48259a63d0c4782560b, type: 3} + com.unity.input.settings.actions: {fileID: -944628639613478452, guid: b4afa3a338f48c74ebb04c9ee13f9ab0, type: 3} m_UseUCBPForAssetBundles: 0 diff --git a/Client/ProjectSettings/EditorSettings.asset b/Client/ProjectSettings/EditorSettings.asset index 1b76ca0..d4db50d 100644 --- a/Client/ProjectSettings/EditorSettings.asset +++ b/Client/ProjectSettings/EditorSettings.asset @@ -25,7 +25,7 @@ EditorSettings: m_AsyncShaderCompilation: 1 m_PrefabModeAllowAutoSave: 1 m_EnterPlayModeOptionsEnabled: 1 - m_EnterPlayModeOptions: -1 + m_EnterPlayModeOptions: 0 m_GameObjectNamingDigits: 1 m_GameObjectNamingScheme: 0 m_AssetNamingUsesSpace: 1 diff --git a/Client/UserSettings/EditorUserSettings.asset b/Client/UserSettings/EditorUserSettings.asset index f40b188..0206018 100644 --- a/Client/UserSettings/EditorUserSettings.asset +++ b/Client/UserSettings/EditorUserSettings.asset @@ -9,34 +9,34 @@ EditorUserSettings: value: 18134705175a055722080a3115371d4a0d55006876786860616b0471b8b07a68ffab74f9ee2a3a30300cea1a11320d0beb1a0c25f7060f494b4cc80018eb09361fc211cb1f862d19c51d19dcc413d6ade0d8ddfcddf9f4d9d29195fcfde6ebeae6f0a9c9afa6f8c5b89ff7a1aacececac4eba4d7c9d28bda flags: 0 RecentlyUsedSceneGuid-0: - value: 0100005650505e0358570d2749770b444f4e4a7a7b2c73647f794537b0b76469 - flags: 0 - RecentlyUsedSceneGuid-1: value: 5753515207050c035d5c5f7447720b44104e4b292a7a746875784d62e4e26d68 flags: 0 - RecentlyUsedSceneGuid-2: + RecentlyUsedSceneGuid-1: value: 0154555f01030b02095c5f7746760d44434f407f2d7f76317d784d61b1e6313c flags: 0 - RecentlyUsedSceneGuid-3: + RecentlyUsedSceneGuid-2: value: 0004045001000a0b0e0f5f7449775d1146154f29787825652e784563e6b53669 flags: 0 - RecentlyUsedSceneGuid-4: + RecentlyUsedSceneGuid-3: value: 5a52050453545b59545f082143770d464e4f497c7c2e27672e2d1b35b2e4606c flags: 0 - RecentlyUsedSceneGuid-5: + RecentlyUsedSceneGuid-4: value: 5202055155065d0c0f0d597246770f45104f402e7f297e672f2d4d6abab2366b flags: 0 - RecentlyUsedSceneGuid-6: + RecentlyUsedSceneGuid-5: value: 5204045351045a025b5b542345770b45404f41787e7c25677c2f4563b7e26568 flags: 0 - RecentlyUsedSceneGuid-7: + RecentlyUsedSceneGuid-6: value: 5001560504060c590f5b0f7245725a44404f1d7c297e2233787e4a36b5e4666b flags: 0 + RecentlyUsedSceneGuid-7: + value: 0505045406565e080c59097440205d4444164f727d7d76367d7d1c63e3b9646d + flags: 0 RecentlyUsedSceneGuid-8: - value: 5a07065703500c59585e0e7748770d44444f4a737d2d7f35787d4f63e0b26668 + value: 50500404540c580d0f0b5e7543725b44424f4c7a7b7c7734747e4f36e4b1676d flags: 0 RecentlyUsedSceneGuid-9: - value: 50500404540c580d0f0b5e7543725b44424f4c7a7b7c7734747e4f36e4b1676d + value: 5a07065703500c59585e0e7748770d44444f4a737d2d7f35787d4f63e0b26668 flags: 0 vcSharedLogLevel: value: 0d5e400f0650 diff --git a/Client/UserSettings/Layouts/default-6000.dwlt b/Client/UserSettings/Layouts/default-6000.dwlt index 5a964cc..1a68b9b 100644 --- a/Client/UserSettings/Layouts/default-6000.dwlt +++ b/Client/UserSettings/Layouts/default-6000.dwlt @@ -14,16 +14,16 @@ MonoBehaviour: m_EditorClassIdentifier: m_PixelRect: serializedVersion: 2 - x: -429 - y: 238 + x: 0 + y: 43 width: 1920 height: 997 m_ShowMode: 4 - m_Title: Project + m_Title: Inspector m_RootView: {fileID: 2} m_MinSize: {x: 875, y: 300} m_MaxSize: {x: 10000, y: 10000} - m_Maximized: 0 + m_Maximized: 1 --- !u!114 &2 MonoBehaviour: m_ObjectHideFlags: 52 @@ -109,9 +109,9 @@ MonoBehaviour: m_EditorClassIdentifier: m_Children: - {fileID: 6} - - {fileID: 9} - - {fileID: 12} - - {fileID: 13} + - {fileID: 7} + - {fileID: 10} + - {fileID: 11} m_Position: serializedVersion: 2 x: 0 @@ -121,7 +121,7 @@ MonoBehaviour: m_MinSize: {x: 400, y: 100} m_MaxSize: {x: 32384, y: 16192} vertical: 0 - controlID: 161 + controlID: 168 draggingID: 0 --- !u!114 &6 MonoBehaviour: @@ -131,78 +131,26 @@ MonoBehaviour: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} - m_Name: + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: AnimatorControllerTool m_EditorClassIdentifier: - m_Children: - - {fileID: 7} - - {fileID: 8} + m_Children: [] m_Position: serializedVersion: 2 x: 0 y: 0 - width: 436 + width: 469 height: 941 - m_MinSize: {x: 100, y: 100} - m_MaxSize: {x: 8096, y: 16192} - vertical: 1 - controlID: 26 - draggingID: 0 + m_MinSize: {x: 101, y: 126} + m_MaxSize: {x: 4001, y: 4026} + m_ActualView: {fileID: 13} + m_Panes: + - {fileID: 13} + - {fileID: 14} + m_Selected: 0 + m_LastSelected: 1 --- !u!114 &7 -MonoBehaviour: - m_ObjectHideFlags: 52 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 1 - m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} - m_Name: SceneView - m_EditorClassIdentifier: - m_Children: [] - m_Position: - serializedVersion: 2 - x: 0 - y: 0 - width: 436 - height: 449 - m_MinSize: {x: 201, y: 226} - m_MaxSize: {x: 4001, y: 4026} - m_ActualView: {fileID: 16} - m_Panes: - - {fileID: 15} - - {fileID: 16} - m_Selected: 1 - m_LastSelected: 0 ---- !u!114 &8 -MonoBehaviour: - m_ObjectHideFlags: 52 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} - m_Name: GameView - m_EditorClassIdentifier: - m_Children: [] - m_Position: - serializedVersion: 2 - x: 0 - y: 449 - width: 436 - height: 492 - m_MinSize: {x: 51, y: 76} - m_MaxSize: {x: 4001, y: 4026} - m_ActualView: {fileID: 14} - m_Panes: - - {fileID: 14} - m_Selected: 0 - m_LastSelected: 0 ---- !u!114 &9 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -215,20 +163,20 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_Children: - - {fileID: 10} - - {fileID: 11} + - {fileID: 8} + - {fileID: 9} m_Position: serializedVersion: 2 - x: 436 + x: 469 y: 0 - width: 442 + width: 432 height: 941 m_MinSize: {x: 100, y: 100} m_MaxSize: {x: 8096, y: 16192} vertical: 1 - controlID: 71 + controlID: 81 draggingID: 0 ---- !u!114 &10 +--- !u!114 &8 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -245,16 +193,16 @@ MonoBehaviour: serializedVersion: 2 x: 0 y: 0 - width: 442 - height: 439 - m_MinSize: {x: 200, y: 200} - m_MaxSize: {x: 4000, y: 4000} - m_ActualView: {fileID: 17} + width: 432 + height: 363 + m_MinSize: {x: 202, y: 226} + m_MaxSize: {x: 4002, y: 4026} + m_ActualView: {fileID: 15} m_Panes: - - {fileID: 17} + - {fileID: 15} m_Selected: 0 m_LastSelected: 0 ---- !u!114 &11 +--- !u!114 &9 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -270,17 +218,18 @@ MonoBehaviour: m_Position: serializedVersion: 2 x: 0 - y: 439 - width: 442 - height: 502 - m_MinSize: {x: 100, y: 100} - m_MaxSize: {x: 4000, y: 4000} - m_ActualView: {fileID: 18} + y: 363 + width: 432 + height: 578 + m_MinSize: {x: 102, y: 126} + m_MaxSize: {x: 4002, y: 4026} + m_ActualView: {fileID: 16} m_Panes: - - {fileID: 18} + - {fileID: 16} + - {fileID: 12} m_Selected: 0 - m_LastSelected: 0 ---- !u!114 &12 + m_LastSelected: 1 +--- !u!114 &10 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -295,18 +244,18 @@ MonoBehaviour: m_Children: [] m_Position: serializedVersion: 2 - x: 878 + x: 901 y: 0 - width: 459 + width: 407 height: 941 m_MinSize: {x: 232, y: 276} m_MaxSize: {x: 10002, y: 10026} - m_ActualView: {fileID: 19} + m_ActualView: {fileID: 17} m_Panes: - - {fileID: 19} + - {fileID: 17} m_Selected: 0 m_LastSelected: 0 ---- !u!114 &13 +--- !u!114 &11 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -321,18 +270,18 @@ MonoBehaviour: m_Children: [] m_Position: serializedVersion: 2 - x: 1337 + x: 1308 y: 0 - width: 583 + width: 612 height: 941 m_MinSize: {x: 276, y: 76} m_MaxSize: {x: 4001, y: 4026} - m_ActualView: {fileID: 20} + m_ActualView: {fileID: 18} m_Panes: - - {fileID: 20} + - {fileID: 18} m_Selected: 0 m_LastSelected: 0 ---- !u!114 &14 +--- !u!114 &12 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -353,10 +302,10 @@ MonoBehaviour: m_TextWithWhitespace: "Game\u200B" m_Pos: serializedVersion: 2 - x: -429 - y: 723 - width: 435 - height: 466 + x: 469 + y: 442 + width: 430 + height: 552 m_SerializedDataModeController: m_DataMode: 0 m_PreferredDataMode: 0 @@ -374,7 +323,7 @@ MonoBehaviour: m_ShowGizmos: 0 m_TargetDisplay: 0 m_ClearColor: {r: 0, g: 0, b: 0, a: 0} - m_TargetSize: {x: 435, y: 245} + m_TargetSize: {x: 430, y: 242} m_TextureFilterMode: 0 m_TextureHideFlags: 61 m_RenderIMGUI: 1 @@ -389,10 +338,10 @@ MonoBehaviour: m_VRangeLocked: 0 hZoomLockedByDefault: 0 vZoomLockedByDefault: 0 - m_HBaseRangeMin: -217.5 - m_HBaseRangeMax: 217.5 - m_VBaseRangeMin: -122.5 - m_VBaseRangeMax: 122.5 + m_HBaseRangeMin: -215 + m_HBaseRangeMax: 215 + m_VBaseRangeMin: -121 + m_VBaseRangeMax: 121 m_HAllowExceedBaseRangeMin: 1 m_HAllowExceedBaseRangeMax: 1 m_VAllowExceedBaseRangeMin: 1 @@ -410,29 +359,29 @@ MonoBehaviour: serializedVersion: 2 x: 0 y: 21 - width: 435 - height: 445 + width: 430 + height: 531 m_Scale: {x: 1, y: 1} - m_Translation: {x: 217.5, y: 222.5} + m_Translation: {x: 215, y: 265.5} m_MarginLeft: 0 m_MarginRight: 0 m_MarginTop: 0 m_MarginBottom: 0 m_LastShownAreaInsideMargins: serializedVersion: 2 - x: -217.5 - y: -222.5 - width: 435 - height: 445 + x: -215 + y: -265.5 + width: 430 + height: 531 m_MinimalGUI: 1 m_defaultScale: 1 - m_LastWindowPixelSize: {x: 435, y: 466} + m_LastWindowPixelSize: {x: 430, y: 552} m_ClearInEditMode: 1 m_NoCameraWarning: 1 m_LowResolutionForAspectRatios: 01000000000000000000 m_XRRenderMode: 0 m_RenderTexture: {fileID: 0} ---- !u!114 &15 +--- !u!114 &13 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -454,9 +403,9 @@ MonoBehaviour: m_Pos: serializedVersion: 2 x: 0 - y: 79 - width: 454 - height: 337 + y: 24 + width: 468 + height: 915 m_SerializedDataModeController: m_DataMode: 0 m_PreferredDataMode: 0 @@ -471,6 +420,7 @@ MonoBehaviour: m_ViewTransforms: m_KeySerializationHelper: - {fileID: 6688734232031279982, guid: c103b1c0b339fe14eb5e4fea21d45a67, type: 2} + - {fileID: 528180310289601023, guid: 75db14477f59de44b96f358d16e02e73, type: 2} m_ValueSerializationHelper: - e00: 0.3205771 e01: 0 @@ -488,10 +438,26 @@ MonoBehaviour: e31: 0 e32: 0 e33: 1 + - e00: 0.3031579 + e01: 0 + e02: 0 + e03: -0.15789795 + e10: 0 + e11: 0.3031579 + e12: 0 + e13: 145.01053 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 m_PreviewAnimator: {fileID: 0} - m_AnimatorController: {fileID: 9100000, guid: c103b1c0b339fe14eb5e4fea21d45a67, type: 2} + m_AnimatorController: {fileID: 9100000, guid: 75db14477f59de44b96f358d16e02e73, type: 2} m_BreadCrumbs: - - m_Target: {fileID: 6688734232031279982, guid: c103b1c0b339fe14eb5e4fea21d45a67, type: 2} + - m_Target: {fileID: 528180310289601023, guid: 75db14477f59de44b96f358d16e02e73, type: 2} m_ScrollPosition: {x: 0, y: 0} stateMachineGraph: {fileID: 0} stateMachineGraphGUI: {fileID: 0} @@ -504,7 +470,7 @@ MonoBehaviour: m_CurrentEditor: 1 m_LayerEditor: m_SelectedLayerIndex: 0 ---- !u!114 &16 +--- !u!114 &14 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -525,10 +491,10 @@ MonoBehaviour: m_TextWithWhitespace: "Scene\u200B" m_Pos: serializedVersion: 2 - x: -429 - y: 274 - width: 435 - height: 423 + x: 0 + y: 79 + width: 468 + height: 915 m_SerializedDataModeController: m_DataMode: 0 m_PreferredDataMode: 0 @@ -1097,9 +1063,9 @@ MonoBehaviour: m_AudioPlay: 0 m_DebugDrawModesUseInteractiveLightBakingData: 0 m_Position: - m_Target: {x: 1000.9786, y: 1001.39417, z: 1.542775} + m_Target: {x: 1000.33374, y: 1002.3888, z: 2704.3777} speed: 2 - m_Value: {x: 1000.9786, y: 1001.39417, z: 1.542775} + m_Value: {x: 1000.33374, y: 1002.3888, z: 2704.3777} m_RenderMode: 0 m_CameraMode: drawMode: 0 @@ -1149,9 +1115,9 @@ MonoBehaviour: speed: 2 m_Value: {x: 0, y: 0, z: 0, w: 1} m_Size: - m_Target: 1.9412607 + m_Target: 9.350644 speed: 2 - m_Value: 1.9412607 + m_Value: 9.350644 m_Ortho: m_Target: 1 speed: 2 @@ -1172,7 +1138,7 @@ MonoBehaviour: m_LastSceneViewRotation: {x: -0.08717229, y: 0.89959055, z: -0.21045254, w: -0.3726226} m_LastSceneViewOrtho: 0 m_Viewpoint: - m_SceneView: {fileID: 16} + m_SceneView: {fileID: 14} m_CameraOverscanSettings: m_Opacity: 50 m_Scale: 1 @@ -1182,7 +1148,7 @@ MonoBehaviour: m_LastLockedObject: {fileID: 0} m_LastDebugDrawMode: 35 m_ViewIsLockedToObject: 0 ---- !u!114 &17 +--- !u!114 &15 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -1205,8 +1171,8 @@ MonoBehaviour: serializedVersion: 2 x: 1 y: 24 - width: 440 - height: 413 + width: 430 + height: 337 m_SerializedDataModeController: m_DataMode: 0 m_PreferredDataMode: 0 @@ -1221,9 +1187,9 @@ MonoBehaviour: m_SceneHierarchy: m_TreeViewState: scrollPos: {x: 0, y: 0} - m_SelectedIDs: 10c40000 + m_SelectedIDs: m_LastClickedID: 0 - m_ExpandedIDs: 96faffff98faffff + m_ExpandedIDs: 98faffff m_RenameOverlay: m_UserAcceptedRename: 0 m_Name: @@ -1240,7 +1206,7 @@ MonoBehaviour: m_OriginalEventType: 11 m_IsRenamingFilename: 0 m_TrimLeadingAndTrailingWhitespace: 0 - m_ClientGUIView: {fileID: 7} + m_ClientGUIView: {fileID: 6} m_SearchString: m_ExpandedScenes: [] m_CurrenRootInstanceID: 0 @@ -1248,7 +1214,7 @@ MonoBehaviour: m_IsLocked: 0 m_CurrentSortingName: TransformSorting m_WindowGUID: 85728a346145f5041b41bc3ce2f945c6 ---- !u!114 &18 +--- !u!114 &16 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -1270,9 +1236,9 @@ MonoBehaviour: m_Pos: serializedVersion: 2 x: 1 - y: 463 - width: 440 - height: 476 + y: 387 + width: 430 + height: 552 m_SerializedDataModeController: m_DataMode: 0 m_PreferredDataMode: 0 @@ -1284,7 +1250,7 @@ MonoBehaviour: m_SaveData: [] m_ContainerData: [] m_OverlaysVisible: 1 ---- !u!114 &19 +--- !u!114 &17 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -1305,9 +1271,9 @@ MonoBehaviour: m_TextWithWhitespace: "Project\u200B" m_Pos: serializedVersion: 2 - x: 879 + x: 902 y: 24 - width: 457 + width: 405 height: 915 m_SerializedDataModeController: m_DataMode: 0 @@ -1329,9 +1295,9 @@ MonoBehaviour: m_SceneHandles: m_ShowAllHits: 0 m_SkipHidden: 0 - m_SearchArea: 0 + m_SearchArea: 1 m_Folders: - - Packages/com.alicizax.unity.animationflow + - Packages/com.alicizax.unity.eventkit/Plugins m_Globs: [] m_ProductIds: m_AnyWithAssetOrigin: 0 @@ -1349,7 +1315,7 @@ MonoBehaviour: scrollPos: {x: 0, y: 0} m_SelectedIDs: e48c0000 m_LastClickedID: 36068 - m_ExpandedIDs: 000000001cc00000c0c20000c2c20000c4c20000c6c20000c8c20000cac20000ccc20000cec20000d0c20000d2c20000d4c20000d6c20000d8c20000dac20000dcc20000dec20000e0c20000e2c20000e4c20000e6c20000e8c20000eac20000ecc20000eec20000f0c20000f2c20000f4c20000f6c20000f8c20000fac20000fcc20000fec2000000c3000002c3000004c3000006c3000008c300000ac300000cc300000ec3000010c3000012c3000014c3000016c3000018c300001ac300001cc300001ec3000020c3000022c3000024c3000026c3000028c300002ac300002cc300002ec3000030c3000032c3000034c3000036c3000038c300003ac300003cc300003ec3000040c3000042c3000044c3000046c3000048c300004ac300004cc300004ec3000050c3000052c3000054c3000056c3000058c300005ac300005cc300005ec3000060c3000062c3000064c3000066c3000068c300006ac300006cc300006ec3000070c3000072c3000074c3000076c3000078c300007ac300007cc300007ec3000080c3000082c3000084c3000086c3000088c300008ac300008cc300008ec3000090c3000092c3000094c3000096c3000098c300009ac300009cc300009ec30000a0c30000a2c30000a4c30000a6c30000a8c30000aac30000acc30000aec30000b0c30000b2c30000 + m_ExpandedIDs: 0000000010c3000012c3000014c3000016c3000018c300001ac300001cc300001ec3000020c3000022c3000024c3000026c3000028c300002ac300002cc300002ec3000030c3000032c3000034c3000036c3000038c300003ac300003cc300003ec3000040c3000042c3000044c3000046c3000048c300004ac300004cc300004ec3000050c3000052c3000054c3000056c3000058c300005ac300005cc300005ec3000060c3000062c3000064c3000066c3000068c300006ac300006cc300006ec3000070c3000072c3000074c3000076c3000078c300007ac300007cc300007ec3000080c3000082c3000084c3000086c3000088c300008ac300008cc300008ec3000090c3000092c3000094c3000096c3000098c300009ac300009cc300009ec30000a0c30000a2c30000a4c30000a6c30000a8c30000aac30000acc30000aec30000b0c30000b2c30000b4c30000b6c30000b8c30000bac30000bcc30000bec30000c0c30000c2c30000c4c30000c6c30000c8c30000cac30000ccc30000cec30000d0c30000d2c30000d4c30000d6c30000d8c30000dac30000dcc30000dec30000e0c30000e2c30000e4c30000e6c30000e8c30000eac30000ecc30000eec30000f0c30000f2c30000f4c30000f6c30000f8c30000fac30000fcc30000fec3000000c4000002c4000004c4000006c4000008c400000ac400000cc400000ec4000010c4000012c4000014c4000016c40000 m_RenameOverlay: m_UserAcceptedRename: 0 m_Name: @@ -1375,27 +1341,27 @@ MonoBehaviour: m_Icon: {fileID: 0} m_ResourceFile: m_AssetTreeState: - scrollPos: {x: 0, y: 300} + scrollPos: {x: 0, y: 2363} m_SelectedIDs: m_LastClickedID: 0 - m_ExpandedIDs: ffffffff00000000c0c20000c2c20000c4c20000c6c20000c8c20000cac20000ccc20000cec20000d0c20000d2c20000d4c20000d6c20000d8c20000dac20000dcc20000dec20000e0c20000e2c20000e4c20000e6c20000e8c20000eac20000eec20000f0c20000f2c20000f4c20000f6c20000f8c20000fac20000fcc2000000c3000002c3000004c3000006c3000008c300000ac300000cc300000ec3000010c3000012c3000016c3000018c300001ac300001cc300001ec3000020c3000022c3000024c3000026c3000028c300002ac300002cc300002ec3000030c3000032c3000034c3000036c3000038c300003ac300003cc300003ec3000040c3000042c3000044c3000046c3000048c300004ac300004cc300004ec3000050c3000052c3000054c3000056c3000058c300005ac300005cc300005ec3000060c3000062c3000064c3000068c300006ac300006cc3000072c3000074c300007cc300007ec3000080c3000082c3000084c3000086c3000088c300008ac300008cc3000090c3000092c3000096c3000098c300009ac300009cc300009ec30000a0c30000a2c30000a4c30000a6c30000a8c30000aac30000acc30000aec30000b2c30000bec4000004c5000062c50000acc60000ffffff7f + m_ExpandedIDs: 0000000010c3000012c3000014c3000016c3000018c300001ac300001cc300001ec3000020c3000022c3000024c3000026c3000028c300002ac300002cc300002ec3000030c3000032c3000034c3000036c3000038c300003ac300003cc300003ec3000040c3000042c3000044c3000046c3000048c300004ac300004cc300004ec3000050c3000052c3000054c3000056c3000058c300005ac300005cc300005ec3000060c3000062c3000064c3000066c3000068c300006ac300006cc300006ec3000070c3000072c3000074c3000076c3000078c300007ac300007cc300007ec3000080c3000082c3000084c3000086c3000088c300008ac300008cc300008ec3000090c3000092c3000094c3000096c3000098c300009ac300009cc300009ec30000a0c30000a2c30000a4c30000a6c30000a8c30000aac30000acc30000aec30000b0c30000b2c30000b4c30000b6c30000b8c30000bac30000bcc30000bec30000c0c30000c2c30000c4c30000c6c30000c8c30000cac30000ccc30000cec30000d0c30000d2c30000d4c30000d6c30000d8c30000dac30000dcc30000dec30000e0c30000e2c30000e4c30000e6c30000e8c30000eac30000ecc30000eec30000f0c30000f2c30000f4c30000f6c30000f8c30000fac30000fcc30000fec3000000c4000002c4000004c4000006c4000008c400000ac400000cc400000ec4000010c4000012c4000014c4000016c40000 m_RenameOverlay: m_UserAcceptedRename: 0 - m_Name: LocalizationModule - m_OriginalName: LocalizationModule + m_Name: + m_OriginalName: m_EditFieldRect: serializedVersion: 2 x: 0 y: 0 width: 0 height: 0 - m_UserData: 41982 + m_UserData: 0 m_IsWaitingForDelay: 0 m_IsRenaming: 0 - m_OriginalEventType: 0 + m_OriginalEventType: 11 m_IsRenamingFilename: 1 m_TrimLeadingAndTrailingWhitespace: 0 - m_ClientGUIView: {fileID: 12} + m_ClientGUIView: {fileID: 10} m_SearchString: m_CreateAssetUtility: m_EndAction: {fileID: 0} @@ -1424,7 +1390,7 @@ MonoBehaviour: m_OriginalEventType: 11 m_IsRenamingFilename: 1 m_TrimLeadingAndTrailingWhitespace: 0 - m_ClientGUIView: {fileID: 13} + m_ClientGUIView: {fileID: 11} m_CreateAssetUtility: m_EndAction: {fileID: 0} m_InstanceID: 0 @@ -1436,7 +1402,7 @@ MonoBehaviour: m_GridSize: 96 m_SkipHiddenPackages: 0 m_DirectoriesAreaWidth: 115 ---- !u!114 &20 +--- !u!114 &18 MonoBehaviour: m_ObjectHideFlags: 52 m_CorrespondingSourceObject: {fileID: 0} @@ -1457,9 +1423,9 @@ MonoBehaviour: m_TextWithWhitespace: "Inspector\u200B" m_Pos: serializedVersion: 2 - x: 908 - y: 274 - width: 582 + x: 1309 + y: 24 + width: 611 height: 915 m_SerializedDataModeController: m_DataMode: 0 diff --git a/Client/UserSettings/Search.settings b/Client/UserSettings/Search.settings index 34c7730..a0bc120 100644 --- a/Client/UserSettings/Search.settings +++ b/Client/UserSettings/Search.settings @@ -9,7 +9,7 @@ onBoardingDoNotAskAgain = true showPackageIndexes = false showStatusBar = false scopes = { - "picker_window_position_offset.075BCD15" = "883;137;320;550" + "picker_window_position_offset.075BCD15" = "883;137;1335;550" "picker_visibility_flags.075BCD15" = "264" "picker_item_size.075BCD15" = "96" "picker_inspector.075BCD15" = "0" @@ -72,6 +72,9 @@ providers = { objectSelectors = { } recentSearches = [ + "cancel" + "cancelcancel" + "cancancel" "resource" "re" "editro"