diff --git a/Client/Assets/Bundles/UI/Window/UILoadUpdateWindow.prefab b/Client/Assets/Bundles/UI/Window/UILoadUpdateWindow.prefab index 4fc3aca..141dc3a 100644 --- a/Client/Assets/Bundles/UI/Window/UILoadUpdateWindow.prefab +++ b/Client/Assets/Bundles/UI/Window/UILoadUpdateWindow.prefab @@ -172,8 +172,6 @@ MonoBehaviour: m_Interactable: 1 m_TargetGraphic: {fileID: 3754033378428747194} m_ChildTransitions: [] - _hotkeyAction: {fileID: 0} - _hotkeyPressType: 0 hoverAudioClip: {fileID: 0} clickAudioClip: {fileID: 0} m_OnClick: @@ -190,10 +188,10 @@ GameObject: - component: {fileID: 2553447206821208227} - component: {fileID: 4801502739230327379} - component: {fileID: 1839643559262572090} - - component: {fileID: 1590262444720639052} - component: {fileID: 8270483239104722155} - component: {fileID: 4311531008057825966} - component: {fileID: -6194537545441247702} + - component: {fileID: 3099109932356522100} m_Layer: 5 m_Name: UILoadUpdateWindow m_TagString: Untagged @@ -217,6 +215,9 @@ RectTransform: - {fileID: 1704299463378025474} - {fileID: 7522346725214463714} - {fileID: 8283735009829128502} + - {fileID: 1128112804938978950} + - {fileID: 880493319326732103} + - {fileID: 1696040072402030555} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} @@ -264,19 +265,6 @@ MonoBehaviour: m_BlockingMask: serializedVersion: 2 m_Bits: 4294967295 ---- !u!114 &1590262444720639052 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 526598954257632073} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fdcda7a93f3c4639a0cb68dd00509bb1, type: 3} - m_Name: - m_EditorClassIdentifier: - hotButtons: [] --- !u!114 &8270483239104722155 MonoBehaviour: m_ObjectHideFlags: 0 @@ -289,10 +277,13 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 330876e70d2a63a46b715c69efd1c482, type: 3} m_Name: m_EditorClassIdentifier: - mImgBackGround: {fileID: 881789250053677664} + mBtnETest: {fileID: 8895701322442684031} + mBtnEscTest: {fileID: 1313948815334523535} + mBtnQTest: {fileID: 5924255160904700763} mBtnTest: {fileID: 8242433937099588481} - mTextTitl: {fileID: 7423448528652229462} + mImgBackGround: {fileID: 869083200632248838} mScrollViewTestList: {fileID: 3482583127883842067} + mTextTitl: {fileID: 7423448528652229462} --- !u!114 &4311531008057825966 MonoBehaviour: m_ObjectHideFlags: 0 @@ -337,7 +328,7 @@ MonoBehaviour: openEase: 4 closeEase: 3 targetRect: {fileID: 2553447206821208227} - canvasGroup: {fileID: 0} + canvasGroup: {fileID: 3099109932356522100} useUnscaledTime: 1 initializeAsClosed: 1 disableInteractionWhilePlaying: 1 @@ -346,6 +337,18 @@ MonoBehaviour: slideDistance: 120 toastDistance: 40 closedScale: 0.94 +--- !u!225 &3099109932356522100 +CanvasGroup: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 526598954257632073} + m_Enabled: 1 + m_Alpha: 1 + m_Interactable: 1 + m_BlocksRaycasts: 1 + m_IgnoreParentGroups: 0 --- !u!1 &541431694581587512 GameObject: m_ObjectHideFlags: 0 @@ -397,6 +400,146 @@ MonoBehaviour: m_EditorClassIdentifier: m_Padding: {x: 0, y: 0, z: 0, w: 0} m_Softness: {x: 0, y: 0} +--- !u!1 &779814128063416182 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 880493319326732103} + - component: {fileID: 6700951455244617094} + - component: {fileID: 2822390202442444410} + - component: {fileID: 5924255160904700763} + - component: {fileID: 3930950775368633970} + m_Layer: 5 + m_Name: Btn@QTest + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &880493319326732103 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 779814128063416182} + 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: 3755514048353667982} + m_Father: {fileID: 2553447206821208227} + 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: -524, y: 343.35} + m_SizeDelta: {x: 133.23, y: 59.31} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &6700951455244617094 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 779814128063416182} + m_CullTransparentMesh: 1 +--- !u!114 &2822390202442444410 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 779814128063416182} + 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: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + 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!114 &5924255160904700763 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 779814128063416182} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d7e92b092d584bb39e5239463f064cbe, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 2822390202442444410} + m_ChildTransitions: [] + hoverAudioClip: {fileID: 0} + clickAudioClip: {fileID: 0} + m_OnClick: + m_PersistentCalls: + m_Calls: [] +--- !u!114 &3930950775368633970 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 779814128063416182} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ad0e473486c04dc19b468f2b20675091, type: 3} + m_Name: + m_EditorClassIdentifier: + _component: {fileID: 5924255160904700763} + _hotkeyAction: {fileID: 5563413401719000613, guid: b603efb45eabf544d9f962c635627a64, type: 3} + _hotkeyPressType: 1 --- !u!1 &1375748845963470175 GameObject: m_ObjectHideFlags: 0 @@ -476,6 +619,146 @@ MonoBehaviour: m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: "\u6D4B\u8BD5\u5217\u8868" +--- !u!1 &1940697527380699443 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1696040072402030555} + - component: {fileID: 6280419766592809895} + - component: {fileID: 8616177127823499596} + - component: {fileID: 1313948815334523535} + - component: {fileID: 470617655293816926} + m_Layer: 5 + m_Name: Btn@EscTest + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1696040072402030555 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1940697527380699443} + 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: 5678835150633328060} + m_Father: {fileID: 2553447206821208227} + 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: 655, y: 440} + m_SizeDelta: {x: 133.23, y: 59.31} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &6280419766592809895 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1940697527380699443} + m_CullTransparentMesh: 1 +--- !u!114 &8616177127823499596 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1940697527380699443} + 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: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + 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!114 &1313948815334523535 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1940697527380699443} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d7e92b092d584bb39e5239463f064cbe, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 8616177127823499596} + m_ChildTransitions: [] + hoverAudioClip: {fileID: 0} + clickAudioClip: {fileID: 0} + m_OnClick: + m_PersistentCalls: + m_Calls: [] +--- !u!114 &470617655293816926 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1940697527380699443} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ad0e473486c04dc19b468f2b20675091, type: 3} + m_Name: + m_EditorClassIdentifier: + _component: {fileID: 1313948815334523535} + _hotkeyAction: {fileID: -3091621134156909817, guid: b603efb45eabf544d9f962c635627a64, type: 3} + _hotkeyPressType: 1 --- !u!1 &1985100731161123326 GameObject: m_ObjectHideFlags: 0 @@ -729,8 +1012,6 @@ MonoBehaviour: m_Interactable: 1 m_TargetGraphic: {fileID: 7970913169150773174} m_ChildTransitions: [] - _hotkeyAction: {fileID: 0} - _hotkeyPressType: 0 hoverAudioClip: {fileID: 0} clickAudioClip: {fileID: 0} m_OnClick: @@ -863,6 +1144,280 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: dragStopTime: 0 +--- !u!1 &3685237805443569815 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5793204507581307975} + - component: {fileID: 5107707324312045972} + - component: {fileID: 1628227162947622922} + m_Layer: 5 + m_Name: Text (TMP) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &5793204507581307975 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3685237805443569815} + 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: 1128112804938978950} + 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 &5107707324312045972 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3685237805443569815} + m_CullTransparentMesh: 1 +--- !u!114 &1628227162947622922 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3685237805443569815} + 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: E + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 7cdd102360e32234383f8e3f40da47a9, type: 2} + m_sharedMaterial: {fileID: -1232377485662373643, guid: 7cdd102360e32234383f8e3f40da47a9, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4281479730 + m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, 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: 30 + m_fontSizeBase: 30 + 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_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 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!1 &4920753690401047269 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1128112804938978950} + - component: {fileID: 7534574094014256106} + - component: {fileID: 5109020047380291030} + - component: {fileID: 8895701322442684031} + - component: {fileID: 6424774520077998524} + m_Layer: 5 + m_Name: Btn@ETest + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1128112804938978950 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4920753690401047269} + 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: 5793204507581307975} + m_Father: {fileID: 2553447206821208227} + 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: -182.28, y: 343.35} + m_SizeDelta: {x: 133.23, y: 59.31} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &7534574094014256106 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4920753690401047269} + m_CullTransparentMesh: 1 +--- !u!114 &5109020047380291030 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4920753690401047269} + 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: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + 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!114 &8895701322442684031 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4920753690401047269} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d7e92b092d584bb39e5239463f064cbe, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 5109020047380291030} + m_ChildTransitions: [] + hoverAudioClip: {fileID: 0} + clickAudioClip: {fileID: 0} + m_OnClick: + m_PersistentCalls: + m_Calls: [] +--- !u!114 &6424774520077998524 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4920753690401047269} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ad0e473486c04dc19b468f2b20675091, type: 3} + m_Name: + m_EditorClassIdentifier: + _component: {fileID: 8895701322442684031} + _hotkeyAction: {fileID: -4259428385912006275, guid: b603efb45eabf544d9f962c635627a64, type: 3} + _hotkeyPressType: 1 --- !u!1 &5796037856908370449 GameObject: m_ObjectHideFlags: 0 @@ -873,7 +1428,7 @@ GameObject: m_Component: - component: {fileID: 4895621795869014129} - component: {fileID: 8962701528649085434} - - component: {fileID: 881789250053677664} + - component: {fileID: 869083200632248838} m_Layer: 5 m_Name: Img@BackGround m_TagString: Untagged @@ -908,7 +1463,7 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5796037856908370449} m_CullTransparentMesh: 0 ---- !u!114 &881789250053677664 +--- !u!114 &869083200632248838 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -917,11 +1472,11 @@ MonoBehaviour: m_GameObject: {fileID: 5796037856908370449} m_Enabled: 1 m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Script: {fileID: 11500000, guid: af0993b503fa4dd1adf519458df05486, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} - m_Color: {r: 0, g: 0, b: 0, a: 1} + m_Color: {r: 0.3301887, g: 0.31617126, b: 0.31617126, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 @@ -938,6 +1493,179 @@ MonoBehaviour: 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!1 &6362975971206640055 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3755514048353667982} + - component: {fileID: 1711440318933260577} + - component: {fileID: 5671486881350814054} + m_Layer: 5 + m_Name: Text (TMP) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &3755514048353667982 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6362975971206640055} + 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: 880493319326732103} + 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 &1711440318933260577 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6362975971206640055} + m_CullTransparentMesh: 1 +--- !u!114 &5671486881350814054 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6362975971206640055} + 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: Q + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 7cdd102360e32234383f8e3f40da47a9, type: 2} + m_sharedMaterial: {fileID: -1232377485662373643, guid: 7cdd102360e32234383f8e3f40da47a9, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4281479730 + m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, 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: 30 + m_fontSizeBase: 30 + 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_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 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!1 &6907720724719909649 GameObject: m_ObjectHideFlags: 0 @@ -1072,3 +1800,137 @@ MonoBehaviour: m_hasFontAssetChanged: 0 m_baseMaterial: {fileID: 0} m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!1 &7689265027025726766 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5678835150633328060} + - component: {fileID: 1729177371934527716} + - component: {fileID: 5405865432273495193} + m_Layer: 5 + m_Name: Text (TMP) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &5678835150633328060 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7689265027025726766} + 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: 1696040072402030555} + 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 &1729177371934527716 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7689265027025726766} + m_CullTransparentMesh: 1 +--- !u!114 &5405865432273495193 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7689265027025726766} + 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: ESC + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 7cdd102360e32234383f8e3f40da47a9, type: 2} + m_sharedMaterial: {fileID: -1232377485662373643, guid: 7cdd102360e32234383f8e3f40da47a9, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4281479730 + m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, 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: 30 + m_fontSizeBase: 30 + 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_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 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} diff --git a/Client/Assets/Bundles/UI/Window/UILogicTestAlert.prefab b/Client/Assets/Bundles/UI/Window/UILogicTestAlert.prefab new file mode 100644 index 0000000..b7e123d --- /dev/null +++ b/Client/Assets/Bundles/UI/Window/UILogicTestAlert.prefab @@ -0,0 +1,720 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &2250200393461343296 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2269812296799592093} + - component: {fileID: 4967705687032036858} + - component: {fileID: 8671132774583373232} + m_Layer: 5 + m_Name: Text (TMP) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &2269812296799592093 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2250200393461343296} + 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: 1952737634300265141} + 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 &4967705687032036858 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2250200393461343296} + m_CullTransparentMesh: 1 +--- !u!114 &8671132774583373232 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2250200393461343296} + 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: ESC + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 7cdd102360e32234383f8e3f40da47a9, type: 2} + m_sharedMaterial: {fileID: -1232377485662373643, guid: 7cdd102360e32234383f8e3f40da47a9, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4281479730 + m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, 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: 24 + m_fontSizeBase: 24 + 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_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 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!1 &2311959964182908462 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1952737634300265141} + - component: {fileID: 4991061408298750992} + - component: {fileID: 7071825580151310782} + - component: {fileID: 8761522827132804065} + - component: {fileID: 8719642127045836727} + m_Layer: 5 + m_Name: Btn@EscTest + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1952737634300265141 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2311959964182908462} + 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: 2269812296799592093} + m_Father: {fileID: 8257909214662256014} + 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: -338, y: 189} + m_SizeDelta: {x: 160, y: 70.43} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &4991061408298750992 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2311959964182908462} + m_CullTransparentMesh: 1 +--- !u!114 &7071825580151310782 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2311959964182908462} + 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: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + 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!114 &8761522827132804065 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2311959964182908462} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d7e92b092d584bb39e5239463f064cbe, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 7071825580151310782} + m_ChildTransitions: [] + hoverAudioClip: {fileID: 0} + clickAudioClip: {fileID: 0} + m_OnClick: + m_PersistentCalls: + m_Calls: [] +--- !u!114 &8719642127045836727 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2311959964182908462} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ad0e473486c04dc19b468f2b20675091, type: 3} + m_Name: + m_EditorClassIdentifier: + _component: {fileID: 8761522827132804065} + _hotkeyAction: {fileID: -3091621134156909817, guid: b603efb45eabf544d9f962c635627a64, type: 3} + _hotkeyPressType: 1 +--- !u!1 &2463822960161463633 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3507794895457544733} + - component: {fileID: 8663509290114971407} + - component: {fileID: 1220648307684761898} + m_Layer: 5 + m_Name: Text (TMP) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &3507794895457544733 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2463822960161463633} + 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: 6065029552973930630} + 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 &8663509290114971407 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2463822960161463633} + m_CullTransparentMesh: 1 +--- !u!114 &1220648307684761898 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2463822960161463633} + 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: G + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 7cdd102360e32234383f8e3f40da47a9, type: 2} + m_sharedMaterial: {fileID: -1232377485662373643, guid: 7cdd102360e32234383f8e3f40da47a9, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4281479730 + m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, 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: 24 + m_fontSizeBase: 24 + 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_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 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!1 &3269233401169902524 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2302914967387190456} + - component: {fileID: 8880627474244438114} + - component: {fileID: 6046943012167044752} + m_Layer: 5 + m_Name: Image + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &2302914967387190456 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3269233401169902524} + 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: 8257909214662256014} + 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: 900, y: 500} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &8880627474244438114 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3269233401169902524} + m_CullTransparentMesh: 1 +--- !u!114 &6046943012167044752 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3269233401169902524} + 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: 0.4716981, g: 0.3048238, b: 0.3048238, 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 +--- !u!1 &3802536979087650729 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8257909214662256014} + - component: {fileID: 3538879237153299783} + - component: {fileID: 2650058657611945293} + - component: {fileID: 7349756297182561896} + m_Layer: 5 + m_Name: UILogicTestAlert + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &8257909214662256014 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3802536979087650729} + 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: 2302914967387190456} + - {fileID: 1952737634300265141} + - {fileID: 6065029552973930630} + 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 &3538879237153299783 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3802536979087650729} + 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: 31 + m_UpdateRectTransformForStandalone: 0 + m_SortingLayerID: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 +--- !u!114 &2650058657611945293 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3802536979087650729} + 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: 4294967295 +--- !u!114 &7349756297182561896 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3802536979087650729} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 03b1a1a765ce78b4ea4ee026785671f7, type: 3} + m_Name: + m_EditorClassIdentifier: + mBtnEscTest: {fileID: 8761522827132804065} + mBtnGTest: {fileID: 6868640316405957368} +--- !u!1 &6865905647236409969 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6065029552973930630} + - component: {fileID: 203961062154527688} + - component: {fileID: 8043258928828313028} + - component: {fileID: 6868640316405957368} + - component: {fileID: 8209225795803149929} + m_Layer: 5 + m_Name: Btn@GTest + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &6065029552973930630 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6865905647236409969} + 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: 3507794895457544733} + m_Father: {fileID: 8257909214662256014} + 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, y: 118} + m_SizeDelta: {x: 160, y: 70.43} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &203961062154527688 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6865905647236409969} + m_CullTransparentMesh: 1 +--- !u!114 &8043258928828313028 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6865905647236409969} + 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: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + 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!114 &6868640316405957368 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6865905647236409969} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d7e92b092d584bb39e5239463f064cbe, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 8043258928828313028} + m_ChildTransitions: [] + hoverAudioClip: {fileID: 0} + clickAudioClip: {fileID: 0} + m_OnClick: + m_PersistentCalls: + m_Calls: [] +--- !u!114 &8209225795803149929 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6865905647236409969} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ad0e473486c04dc19b468f2b20675091, type: 3} + m_Name: + m_EditorClassIdentifier: + _component: {fileID: 6868640316405957368} + _hotkeyAction: {fileID: -4328105232246941011, guid: b603efb45eabf544d9f962c635627a64, type: 3} + _hotkeyPressType: 1 diff --git a/Client/Assets/Bundles/UI/Window/UILogicTestAlert.prefab.meta b/Client/Assets/Bundles/UI/Window/UILogicTestAlert.prefab.meta new file mode 100644 index 0000000..ddbc389 --- /dev/null +++ b/Client/Assets/Bundles/UI/Window/UILogicTestAlert.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 6c71b0671f6a82747a5405628e110163 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Client/Assets/New Controls.inputactions b/Client/Assets/New Controls.inputactions new file mode 100644 index 0000000..3d71eef --- /dev/null +++ b/Client/Assets/New Controls.inputactions @@ -0,0 +1,233 @@ +{ + "name": "New Controls", + "maps": [ + { + "name": "Player", + "id": "512009e6-7638-4d62-8a35-3f35f90f2b43", + "actions": [ + { + "name": "ESC", + "type": "Button", + "id": "abdbc7da-3acd-4474-b223-39fdb1e3f2f2", + "expectedControlType": "Button", + "processors": "", + "interactions": "", + "initialStateCheck": false + }, + { + "name": "G", + "type": "Button", + "id": "c521c87b-a5fd-40b2-b2a6-05e6e7a65f14", + "expectedControlType": "Button", + "processors": "", + "interactions": "", + "initialStateCheck": false + }, + { + "name": "e", + "type": "Button", + "id": "7fc5f791-ccdb-4aff-a8ec-fbc58f988dfb", + "expectedControlType": "Button", + "processors": "", + "interactions": "", + "initialStateCheck": false + }, + { + "name": "Q", + "type": "Button", + "id": "6cd217db-56bc-4760-9f7b-b2e828d98e0f", + "expectedControlType": "Button", + "processors": "", + "interactions": "", + "initialStateCheck": false + }, + { + "name": "Move", + "type": "Value", + "id": "d8a5ae9d-2af1-4358-9655-485d53bf6610", + "expectedControlType": "Vector2", + "processors": "", + "interactions": "", + "initialStateCheck": true + }, + { + "name": "DDDD", + "type": "Value", + "id": "07534715-b34d-440b-a152-33ff41dfb432", + "expectedControlType": "Vector2", + "processors": "", + "interactions": "", + "initialStateCheck": true + } + ], + "bindings": [ + { + "name": "", + "id": "6cc43d82-d1f4-4fbe-8e7c-e64d4b013a8b", + "path": "/escape", + "interactions": "", + "processors": "", + "groups": "", + "action": "ESC", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "dce7cbf7-cf89-4bce-81ae-5b752b0f2158", + "path": "/g", + "interactions": "", + "processors": "", + "groups": "", + "action": "G", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "98f277b0-1524-403b-9c49-6623277bb0b1", + "path": "/e", + "interactions": "", + "processors": "", + "groups": "", + "action": "e", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "4b12483b-2ec0-4471-8892-1edbf91c6ec9", + "path": "/q", + "interactions": "", + "processors": "", + "groups": "", + "action": "Q", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "2D Vector", + "id": "364edce4-94de-400f-bd7d-a0e26c4b63a5", + "path": "2DVector", + "interactions": "", + "processors": "", + "groups": "", + "action": "Move", + "isComposite": true, + "isPartOfComposite": false + }, + { + "name": "up", + "id": "7ba2155e-a2e4-469d-b876-68e2cd891559", + "path": "", + "interactions": "", + "processors": "", + "groups": "", + "action": "Move", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "down", + "id": "78b77f29-f184-4d5e-9c66-25e55cbd20ad", + "path": "", + "interactions": "", + "processors": "", + "groups": "", + "action": "Move", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "left", + "id": "995e684a-0311-42ca-8e23-d2280c27aa94", + "path": "", + "interactions": "", + "processors": "", + "groups": "", + "action": "Move", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "right", + "id": "7a00e004-e18a-411c-9733-ab2928ec2fe3", + "path": "", + "interactions": "", + "processors": "", + "groups": "", + "action": "Move", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "", + "id": "3009f940-05cf-41c0-94a6-24c66c065a45", + "path": "/leftStick", + "interactions": "", + "processors": "", + "groups": "", + "action": "Move", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "Keyboard", + "id": "7f47550b-0ab6-4278-ad69-58cb97ddae4e", + "path": "2DVector", + "interactions": "", + "processors": "", + "groups": "", + "action": "DDDD", + "isComposite": true, + "isPartOfComposite": false + }, + { + "name": "up", + "id": "1536a548-2bb7-4c72-b313-652ccd127b9b", + "path": "/w", + "interactions": "", + "processors": "", + "groups": "", + "action": "DDDD", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "down", + "id": "624971f8-1550-4cba-9533-092f28a97187", + "path": "/s", + "interactions": "", + "processors": "", + "groups": "", + "action": "DDDD", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "left", + "id": "f7f4a643-75ef-4997-99a2-48cc4de3837e", + "path": "/a", + "interactions": "", + "processors": "", + "groups": "", + "action": "DDDD", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "right", + "id": "e845bdab-7d0b-4d4b-ab73-86df48423c39", + "path": "/d", + "interactions": "", + "processors": "", + "groups": "", + "action": "DDDD", + "isComposite": false, + "isPartOfComposite": true + } + ] + } + ], + "controlSchemes": [] +} \ No newline at end of file diff --git a/Client/Assets/New Controls.inputactions.meta b/Client/Assets/New Controls.inputactions.meta new file mode 100644 index 0000000..3dd67e5 --- /dev/null +++ b/Client/Assets/New Controls.inputactions.meta @@ -0,0 +1,14 @@ +fileFormatVersion: 2 +guid: b603efb45eabf544d9f962c635627a64 +ScriptedImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 2 + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 11500000, guid: 8404be70184654265930450def6a9037, type: 3} + generateWrapperCode: 0 + wrapperCodePath: + wrapperClassName: + wrapperCodeNamespace: diff --git a/Client/Assets/Scenes/Main.unity b/Client/Assets/Scenes/Main.unity index 0d41737..8ed21d2 100644 --- a/Client/Assets/Scenes/Main.unity +++ b/Client/Assets/Scenes/Main.unity @@ -166,6 +166,121 @@ Transform: m_Children: [] m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1770697516 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1770697520} + - component: {fileID: 1770697519} + - component: {fileID: 1770697518} + - component: {fileID: 1770697517} + m_Layer: 0 + m_Name: GameObject + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1770697517 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1770697516} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 330876e70d2a63a46b715c69efd1c482, type: 3} + m_Name: + m_EditorClassIdentifier: + mBtnETest: {fileID: 0} + mBtnEscTest: {fileID: 0} + mBtnQTest: {fileID: 0} + mBtnTest: {fileID: 0} + mImgBackGround: {fileID: 0} + mScrollViewTestList: {fileID: 0} + mTextTitl: {fileID: 0} +--- !u!114 &1770697518 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1770697516} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ad0e473486c04dc19b468f2b20675091, type: 3} + m_Name: + m_EditorClassIdentifier: + _component: {fileID: 1770697519} + _hotkeyAction: {fileID: -1316427639250784054, guid: b603efb45eabf544d9f962c635627a64, type: 3} + _hotkeyPressType: 1 +--- !u!114 &1770697519 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1770697516} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d7e92b092d584bb39e5239463f064cbe, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 0} + m_ChildTransitions: [] + hoverAudioClip: {fileID: 0} + clickAudioClip: {fileID: 0} + m_OnClick: + m_PersistentCalls: + m_Calls: [] +--- !u!4 &1770697520 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1770697516} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 998.3771, y: 1000.3188, z: 671.488} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1001 &7354943399308362261 PrefabInstance: m_ObjectHideFlags: 0 @@ -233,3 +348,4 @@ SceneRoots: m_Roots: - {fileID: 7354943399308362261} - {fileID: 954605702} + - {fileID: 1770697520} diff --git a/Client/Assets/Scripts/CustomeModule/InputGlyph/Core.meta b/Client/Assets/Scripts/CustomeModule/InputGlyph/Core.meta new file mode 100644 index 0000000..367b004 --- /dev/null +++ b/Client/Assets/Scripts/CustomeModule/InputGlyph/Core.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: bb7e653c16f0005419e1eb9226655176 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Client/Assets/Scripts/CustomeModule/InputGlyph/GlyphService.cs b/Client/Assets/Scripts/CustomeModule/InputGlyph/Core/GlyphService.cs similarity index 100% rename from Client/Assets/Scripts/CustomeModule/InputGlyph/GlyphService.cs rename to Client/Assets/Scripts/CustomeModule/InputGlyph/Core/GlyphService.cs diff --git a/Client/Assets/Scripts/CustomeModule/InputGlyph/GlyphService.cs.meta b/Client/Assets/Scripts/CustomeModule/InputGlyph/Core/GlyphService.cs.meta similarity index 100% rename from Client/Assets/Scripts/CustomeModule/InputGlyph/GlyphService.cs.meta rename to Client/Assets/Scripts/CustomeModule/InputGlyph/Core/GlyphService.cs.meta diff --git a/Client/Assets/Scripts/CustomeModule/InputGlyph/InputActionReader.cs b/Client/Assets/Scripts/CustomeModule/InputGlyph/Core/InputActionReader.cs similarity index 100% rename from Client/Assets/Scripts/CustomeModule/InputGlyph/InputActionReader.cs rename to Client/Assets/Scripts/CustomeModule/InputGlyph/Core/InputActionReader.cs diff --git a/Client/Assets/Scripts/CustomeModule/InputGlyph/InputActionReader.cs.meta b/Client/Assets/Scripts/CustomeModule/InputGlyph/Core/InputActionReader.cs.meta similarity index 100% rename from Client/Assets/Scripts/CustomeModule/InputGlyph/InputActionReader.cs.meta rename to Client/Assets/Scripts/CustomeModule/InputGlyph/Core/InputActionReader.cs.meta diff --git a/Client/Assets/Scripts/CustomeModule/InputGlyph/InputBindingManager.cs b/Client/Assets/Scripts/CustomeModule/InputGlyph/Core/InputBindingManager.cs similarity index 94% rename from Client/Assets/Scripts/CustomeModule/InputGlyph/InputBindingManager.cs rename to Client/Assets/Scripts/CustomeModule/InputGlyph/Core/InputBindingManager.cs index 04857c6..0f4d1ae 100644 --- a/Client/Assets/Scripts/CustomeModule/InputGlyph/InputBindingManager.cs +++ b/Client/Assets/Scripts/CustomeModule/InputGlyph/Core/InputBindingManager.cs @@ -95,7 +95,7 @@ public class InputBindingManager : MonoSingleton if (actions == null) { - Debug.LogError("InputBindingManager: InputActionAsset not assigned."); + Log.Error("InputBindingManager: InputActionAsset not assigned."); return; } @@ -107,7 +107,7 @@ public class InputBindingManager : MonoSingleton } catch (Exception ex) { - Debug.LogWarning($"[InputBindingManager] Failed to save default bindings: {ex.Message}"); + Log.Warning($"[InputBindingManager] Failed to save default bindings: {ex.Message}"); defaultBindingsJson = string.Empty; } @@ -123,13 +123,13 @@ public class InputBindingManager : MonoSingleton BindingsChanged?.Invoke(); if (debugMode) { - Debug.Log($"Loaded overrides from {SavePath}"); + Log.Info($"Loaded overrides from {SavePath}"); } } } catch (Exception ex) { - Debug.LogError("Failed to load overrides: " + ex); + Log.Error("Failed to load overrides: " + ex); } } @@ -193,7 +193,7 @@ public class InputBindingManager : MonoSingleton { actionLookup.Remove(actionName); ambiguousActionNames.Add(actionName); - Debug.LogWarning($"[InputBindingManager] Duplicate action name '{actionName}' detected. Use 'MapName/{actionName}' to resolve it."); + Log.Warning($"[InputBindingManager] Duplicate action name '{actionName}' detected. Use 'MapName/{actionName}' to resolve it."); } return; @@ -398,11 +398,11 @@ public class InputBindingManager : MonoSingleton if (instance.ambiguousActionNames.Contains(actionName)) { - Debug.LogError($"[InputBindingManager] Action name '{actionName}' is ambiguous. Use 'MapName/{actionName}' instead."); + Log.Error($"[InputBindingManager] Action name '{actionName}' is ambiguous. Use 'MapName/{actionName}' instead."); return null; } - Debug.LogError($"[InputBindingManager] Could not find action '{actionName}'"); + Log.Error($"[InputBindingManager] Could not find action '{actionName}'"); return null; } @@ -439,7 +439,7 @@ public class InputBindingManager : MonoSingleton int bindingIndex = Instance.FindBestBindingIndexForKeyboard(action, compositePartName); if (bindingIndex < 0) { - Debug.LogError($"[InputBindingManager] No suitable binding found for action '{actionName}' (part={compositePartName ?? ""})"); + Log.Error($"[InputBindingManager] No suitable binding found for action '{actionName}' (part={compositePartName ?? ""})"); return; } @@ -448,7 +448,7 @@ public class InputBindingManager : MonoSingleton Instance.OnRebindStart?.Invoke(); if (Instance.debugMode) { - Debug.Log("[InputBindingManager] Rebind started"); + Log.Info("[InputBindingManager] Rebind started"); } } @@ -501,14 +501,14 @@ public class InputBindingManager : MonoSingleton Instance.isApplyPending = false; if (Instance.debugMode) { - Debug.Log("[InputBindingManager] Apply confirmed and saved."); + Log.Info("[InputBindingManager] Apply confirmed and saved."); } return true; } catch (Exception ex) { - Debug.LogError("[InputBindingManager] Failed to apply binds: " + ex); + Log.Error("[InputBindingManager] Failed to apply binds: " + ex); Instance.OnApply?.Invoke(false, null); return false; } @@ -531,7 +531,7 @@ public class InputBindingManager : MonoSingleton Instance.OnApply?.Invoke(false, discardedContexts); if (Instance.debugMode) { - Debug.Log("[InputBindingManager] Prepared rebinds discarded."); + Log.Info("[InputBindingManager] Prepared rebinds discarded."); } } @@ -578,7 +578,7 @@ public class InputBindingManager : MonoSingleton { if (debugMode) { - Debug.Log("[InputBindingManager] Rebind completed"); + Log.Info("[InputBindingManager] Rebind completed"); } actions.Enable(); @@ -589,7 +589,7 @@ public class InputBindingManager : MonoSingleton { if (debugMode) { - Debug.Log("[InputBindingManager] Rebind cancelled"); + Log.Info("[InputBindingManager] Rebind cancelled"); } actions.Enable(); @@ -668,7 +668,7 @@ public class InputBindingManager : MonoSingleton OnRebindPrepare?.Invoke(context); if (debugMode) { - Debug.Log($"Prepared rebind: {context} -> {context.overridePath}"); + Log.Info($"Prepared rebind: {context} -> {context.overridePath}"); } } } @@ -682,12 +682,12 @@ public class InputBindingManager : MonoSingleton using (var sw = new StreamWriter(SavePath, false)) await sw.WriteAsync(json); if (debugMode) { - Debug.Log($"Overrides saved to {SavePath}"); + Log.Info($"Overrides saved to {SavePath}"); } } catch (Exception ex) { - Debug.LogError("Failed to save overrides: " + ex); + Log.Error("Failed to save overrides: " + ex); throw; } } @@ -722,12 +722,12 @@ public class InputBindingManager : MonoSingleton BindingsChanged?.Invoke(); if (debugMode) { - Debug.Log("Reset to default and saved."); + Log.Info("Reset to default and saved."); } } catch (Exception ex) { - Debug.LogError("Failed to reset defaults: " + ex); + Log.Error("Failed to reset defaults: " + ex); } } diff --git a/Client/Assets/Scripts/CustomeModule/InputGlyph/InputBindingManager.cs.meta b/Client/Assets/Scripts/CustomeModule/InputGlyph/Core/InputBindingManager.cs.meta similarity index 100% rename from Client/Assets/Scripts/CustomeModule/InputGlyph/InputBindingManager.cs.meta rename to Client/Assets/Scripts/CustomeModule/InputGlyph/Core/InputBindingManager.cs.meta diff --git a/Client/Assets/Scripts/CustomeModule/InputGlyph/InputDeviceWatcher.cs b/Client/Assets/Scripts/CustomeModule/InputGlyph/Core/InputDeviceWatcher.cs similarity index 100% rename from Client/Assets/Scripts/CustomeModule/InputGlyph/InputDeviceWatcher.cs rename to Client/Assets/Scripts/CustomeModule/InputGlyph/Core/InputDeviceWatcher.cs diff --git a/Client/Assets/Scripts/CustomeModule/InputGlyph/InputDeviceWatcher.cs.meta b/Client/Assets/Scripts/CustomeModule/InputGlyph/Core/InputDeviceWatcher.cs.meta similarity index 100% rename from Client/Assets/Scripts/CustomeModule/InputGlyph/InputDeviceWatcher.cs.meta rename to Client/Assets/Scripts/CustomeModule/InputGlyph/Core/InputDeviceWatcher.cs.meta diff --git a/Client/Assets/Scripts/CustomeModule/InputGlyph/Data.meta b/Client/Assets/Scripts/CustomeModule/InputGlyph/Data.meta new file mode 100644 index 0000000..ec7acce --- /dev/null +++ b/Client/Assets/Scripts/CustomeModule/InputGlyph/Data.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 096043edb2be8224f8564b40992f588b +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Client/Assets/Scripts/CustomeModule/InputGlyph/InputGlyphDatabase.cs b/Client/Assets/Scripts/CustomeModule/InputGlyph/Data/InputGlyphDatabase.cs similarity index 100% rename from Client/Assets/Scripts/CustomeModule/InputGlyph/InputGlyphDatabase.cs rename to Client/Assets/Scripts/CustomeModule/InputGlyph/Data/InputGlyphDatabase.cs diff --git a/Client/Assets/Scripts/CustomeModule/InputGlyph/InputGlyphDatabase.cs.meta b/Client/Assets/Scripts/CustomeModule/InputGlyph/Data/InputGlyphDatabase.cs.meta similarity index 100% rename from Client/Assets/Scripts/CustomeModule/InputGlyph/InputGlyphDatabase.cs.meta rename to Client/Assets/Scripts/CustomeModule/InputGlyph/Data/InputGlyphDatabase.cs.meta diff --git a/Client/Assets/Scripts/CustomeModule/InputGlyph/Editor/InputGlyphEditor.cs b/Client/Assets/Scripts/CustomeModule/InputGlyph/Editor/InputGlyphEditor.cs new file mode 100644 index 0000000..ed98e75 --- /dev/null +++ b/Client/Assets/Scripts/CustomeModule/InputGlyph/Editor/InputGlyphEditor.cs @@ -0,0 +1,303 @@ +using System; +using System.Collections.Generic; +using TMPro; +using UnityEditor; +using UnityEngine; +using UnityEngine.InputSystem; + +[CustomEditor(typeof(InputGlyph))] +[CanEditMultipleObjects] +public sealed class InputGlyphEditor : Editor +{ + private SerializedProperty _actionSourceMode; + private SerializedProperty _actionReference; + private SerializedProperty _hotkeyTrigger; + private SerializedProperty _actionName; + private SerializedProperty _compositePartName; + private SerializedProperty _outputMode; + private SerializedProperty _targetImage; + private SerializedProperty _targetText; + private SerializedProperty _categoryEvents; + + private GUIStyle _titleStyle; + private GUIStyle _sectionStyle; + private GUIStyle _hintStyle; + + private void OnEnable() + { + _actionSourceMode = serializedObject.FindProperty("actionSourceMode"); + _actionReference = serializedObject.FindProperty("actionReference"); + _hotkeyTrigger = serializedObject.FindProperty("hotkeyTrigger"); + _actionName = serializedObject.FindProperty("actionName"); + _compositePartName = serializedObject.FindProperty("compositePartName"); + _outputMode = serializedObject.FindProperty("outputMode"); + _targetImage = serializedObject.FindProperty("targetImage"); + _targetText = serializedObject.FindProperty("targetText"); + _categoryEvents = serializedObject.FindProperty("categoryEvents"); + BuildStyles(); + } + + public override void OnInspectorGUI() + { + serializedObject.Update(); + + DrawSourceSection(); + DrawOutputSection(); + DrawEventsSection(); + + serializedObject.ApplyModifiedProperties(); + } + + + private void DrawSourceSection() + { + InputAction resolvedAction = ResolveSelectedAction(); + + EditorGUILayout.BeginVertical(_sectionStyle); + EditorGUILayout.PropertyField(_actionSourceMode, new GUIContent("Reference Mode")); + DrawSourceFields(); + DrawResolvedActionInfo(resolvedAction); + DrawCompositePartField(resolvedAction); + EditorGUILayout.EndVertical(); + EditorGUILayout.Space(6f); + } + + private void DrawSourceFields() + { + InputGlyph.ActionSourceMode mode = (InputGlyph.ActionSourceMode)_actionSourceMode.enumValueIndex; + switch (mode) + { + case InputGlyph.ActionSourceMode.ActionReference: + EditorGUILayout.PropertyField(_actionReference, new GUIContent("Action Reference")); + EditorGUILayout.LabelField("Use a direct InputActionReference.", _hintStyle); + break; + case InputGlyph.ActionSourceMode.HotkeyTrigger: + EditorGUILayout.PropertyField(_hotkeyTrigger, new GUIContent("Hotkey Trigger")); + Component component = _hotkeyTrigger.objectReferenceValue as Component; + if (component != null && !(component is UnityEngine.UI.IHotkeyTrigger)) + { + EditorGUILayout.HelpBox("Hotkey Trigger must implement IHotkeyTrigger.", MessageType.Warning); + } + else + { + EditorGUILayout.LabelField("Reads the action from an external IHotkeyTrigger component.", _hintStyle); + } + + break; + case InputGlyph.ActionSourceMode.ActionName: + EditorGUILayout.PropertyField(_actionName, new GUIContent("Action Name")); + EditorGUILayout.LabelField("Supports ActionName or MapName/ActionName.", _hintStyle); + break; + } + } + + private void DrawOutputSection() + { + EditorGUILayout.BeginVertical(_sectionStyle); + EditorGUILayout.PropertyField(_outputMode, new GUIContent("Render Mode")); + DrawOutputFields(); + EditorGUILayout.EndVertical(); + EditorGUILayout.Space(6f); + } + + + private void DrawOutputFields() + { + InputGlyph.OutputMode mode = (InputGlyph.OutputMode)_outputMode.enumValueIndex; + switch (mode) + { + case InputGlyph.OutputMode.Image: + EditorGUILayout.PropertyField(_targetImage, new GUIContent("Target Image")); + EditorGUILayout.LabelField("Shows the resolved sprite on a Unity UI Image.", _hintStyle); + break; + case InputGlyph.OutputMode.Text: + EditorGUILayout.PropertyField(_targetText, new GUIContent("Target TMP Text")); + EditorGUILayout.LabelField("Uses the current TMP text as a template and replaces {0}.", _hintStyle); + TMP_Text text = _targetText.objectReferenceValue as TMP_Text; + if (text == null) + { + EditorGUILayout.HelpBox("If TMP_Text is empty, the component tries GetComponent().", MessageType.None); + } + + break; + } + } + + private void DrawEventsSection() + { + EditorGUILayout.BeginVertical(_sectionStyle); + EditorGUILayout.PropertyField(_categoryEvents, new GUIContent("Category Events"), true); + EditorGUILayout.EndVertical(); + } + + private void DrawResolvedActionInfo(InputAction action) + { + if (action == null) + { + return; + } + + string mapName = action.actionMap != null ? action.actionMap.name : ""; + EditorGUILayout.LabelField($"Resolved Action: {mapName}/{action.name}", _hintStyle); + } + + private void DrawCompositePartField(InputAction action) + { + List compositeParts = CollectCompositePartNames(action); + if (compositeParts.Count == 0) + { + if (!string.IsNullOrEmpty(_compositePartName.stringValue)) + { + _compositePartName.stringValue = string.Empty; + } + + return; + } + + string[] options = new string[compositeParts.Count + 1]; + options[0] = ""; + for (int i = 0; i < compositeParts.Count; i++) + { + options[i + 1] = compositeParts[i]; + } + + int selectedIndex = 0; + for (int i = 0; i < compositeParts.Count; i++) + { + if (string.Equals(compositeParts[i], _compositePartName.stringValue, StringComparison.OrdinalIgnoreCase)) + { + selectedIndex = i + 1; + break; + } + } + + int newIndex = EditorGUILayout.Popup(new GUIContent("Composite Part"), selectedIndex, options); + _compositePartName.stringValue = newIndex <= 0 ? string.Empty : compositeParts[newIndex - 1]; + EditorGUILayout.LabelField("Shown only when the resolved action contains composite bindings.", _hintStyle); + } + + private InputAction ResolveSelectedAction() + { + InputGlyph.ActionSourceMode mode = (InputGlyph.ActionSourceMode)_actionSourceMode.enumValueIndex; + switch (mode) + { + case InputGlyph.ActionSourceMode.ActionReference: + InputActionReference actionReference = _actionReference.objectReferenceValue as InputActionReference; + return actionReference != null ? actionReference.action : null; + case InputGlyph.ActionSourceMode.HotkeyTrigger: + Component component = _hotkeyTrigger.objectReferenceValue as Component; + if (component is UnityEngine.UI.IHotkeyTrigger trigger && trigger.HotkeyAction != null) + { + return trigger.HotkeyAction.action; + } + + return null; + case InputGlyph.ActionSourceMode.ActionName: + return ResolveActionByName(_actionName.stringValue); + default: + return null; + } + } + + private InputAction ResolveActionByName(string actionName) + { + if (string.IsNullOrWhiteSpace(actionName)) + { + return null; + } + + foreach (InputActionAsset asset in EnumerateInputActionAssets()) + { + if (asset == null) + { + continue; + } + + InputAction action = asset.FindAction(actionName, false); + if (action != null) + { + return action; + } + } + + return null; + } + + private IEnumerable EnumerateInputActionAssets() + { + HashSet visited = new HashSet(); + InputBindingManager[] managers = Resources.FindObjectsOfTypeAll(); + for (int i = 0; i < managers.Length; i++) + { + InputActionAsset asset = managers[i] != null ? managers[i].actions : null; + if (asset != null && visited.Add(asset)) + { + yield return asset; + } + } + + string[] guids = AssetDatabase.FindAssets("t:InputActionAsset"); + for (int i = 0; i < guids.Length; i++) + { + string path = AssetDatabase.GUIDToAssetPath(guids[i]); + InputActionAsset asset = AssetDatabase.LoadAssetAtPath(path); + if (asset != null && visited.Add(asset)) + { + yield return asset; + } + } + } + + private static List CollectCompositePartNames(InputAction action) + { + List parts = new List(); + if (action == null) + { + return parts; + } + + HashSet uniqueParts = new HashSet(StringComparer.OrdinalIgnoreCase); + for (int i = 0; i < action.bindings.Count; i++) + { + InputBinding binding = action.bindings[i]; + if (!binding.isPartOfComposite || string.IsNullOrWhiteSpace(binding.name)) + { + continue; + } + + if (uniqueParts.Add(binding.name)) + { + parts.Add(binding.name); + } + } + + return parts; + } + + private void BuildStyles() + { + if (_titleStyle == null) + { + _titleStyle = new GUIStyle(EditorStyles.boldLabel) + { + fontSize = 14 + }; + } + + if (_sectionStyle == null) + { + _sectionStyle = new GUIStyle(EditorStyles.helpBox) + { + padding = new RectOffset(12, 12, 10, 10) + }; + } + + if (_hintStyle == null) + { + _hintStyle = new GUIStyle(EditorStyles.miniLabel) + { + wordWrap = true + }; + } + } +} diff --git a/Client/Assets/Scripts/CustomeModule/InputGlyph/Editor/InputGlyphEditor.cs.meta b/Client/Assets/Scripts/CustomeModule/InputGlyph/Editor/InputGlyphEditor.cs.meta new file mode 100644 index 0000000..c790b7a --- /dev/null +++ b/Client/Assets/Scripts/CustomeModule/InputGlyph/Editor/InputGlyphEditor.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 72d9df70bb4f43f6a73be92b5f332871 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Client/Assets/Scripts/CustomeModule/InputGlyph/InputGlyph.cs b/Client/Assets/Scripts/CustomeModule/InputGlyph/InputGlyph.cs new file mode 100644 index 0000000..188e26a --- /dev/null +++ b/Client/Assets/Scripts/CustomeModule/InputGlyph/InputGlyph.cs @@ -0,0 +1,296 @@ +using System; +using System.Collections.Generic; +using AlicizaX; +using TMPro; +using UnityEngine; +using UnityEngine.Events; +using UnityEngine.InputSystem; +using UnityEngine.UI; + +[AddComponentMenu("UI/Input Glyph")] +public sealed class InputGlyph : InputGlyphBehaviourBase +{ + public enum ActionSourceMode + { + ActionReference, + HotkeyTrigger, + ActionName + } + + public enum OutputMode + { + Image, + Text + } + + [Serializable] + public sealed class DeviceCategoryEvent + { + public InputDeviceWatcher.InputDeviceCategory category; + public UnityEvent onMatched; + public UnityEvent onNotMatched; + } + + [Header("Source")] + [SerializeField] private ActionSourceMode actionSourceMode = ActionSourceMode.ActionReference; + [SerializeField] private InputActionReference actionReference; + [SerializeField] private Component hotkeyTrigger; + [SerializeField] private string actionName; + [SerializeField] private string compositePartName; + + [Header("Output")] + [SerializeField] private OutputMode outputMode = OutputMode.Image; + [SerializeField] private Image targetImage; + [SerializeField] private TMP_Text targetText; + + [Header("Platform Events")] + [SerializeField] private List categoryEvents = new(); + + private Sprite _cachedSprite; + private string _templateText; + private string _cachedFormattedText; + private string _cachedReplacementToken; + private bool _hasInvokedCategoryEvent; + private InputDeviceWatcher.InputDeviceCategory _lastInvokedCategory; + +#if UNITY_EDITOR + private void OnValidate() + { + AutoAssignHotkeyTrigger(); + AutoAssignTarget(); + } +#endif + + protected override void OnEnable() + { + AutoAssignHotkeyTrigger(); + AutoAssignTarget(); + CacheTemplateText(); + base.OnEnable(); + InvokeCategoryEvents(true); + } + + protected override void OnDeviceCategoryChanged( + InputDeviceWatcher.InputDeviceCategory previousCategory, + InputDeviceWatcher.InputDeviceCategory newCategory) + { + if (previousCategory == newCategory) + { + return; + } + + InvokeCategoryEvents(false); + } + + protected override void RefreshGlyph() + { + InputAction action = ResolveAction(); + switch (outputMode) + { + case OutputMode.Image: + RefreshImage(action); + break; + case OutputMode.Text: + RefreshText(action); + break; + } + } + + private void RefreshImage(InputAction action) + { + if (targetImage == null) + { + return; + } + + if (action == null) + { + ClearImage(); + return; + } + + bool hasSprite = GlyphService.TryGetUISpriteForActionPath(action, compositePartName, CurrentCategory, out Sprite sprite); + if (!hasSprite) + { + sprite = null; + } + + if (_cachedSprite != sprite || targetImage.sprite != sprite) + { + _cachedSprite = sprite; + targetImage.sprite = sprite; + } + } + + private void RefreshText(InputAction action) + { + if (targetText == null) + { + return; + } + + CacheTemplateText(); + if (action == null) + { + ResetText(); + return; + } + + string replacementToken; + if (GlyphService.TryGetTMPTagForActionPath(action, compositePartName, CurrentCategory, out string tag, out string displayFallback)) + { + replacementToken = tag; + } + else + { + replacementToken = displayFallback; + } + + if (string.IsNullOrEmpty(replacementToken)) + { + ResetText(); + return; + } + + string formattedText = Utility.Text.Format(_templateText, replacementToken); + if (_cachedReplacementToken == replacementToken + && _cachedFormattedText == formattedText + && targetText.text == formattedText) + { + return; + } + + _cachedReplacementToken = replacementToken; + if (_cachedFormattedText != formattedText || targetText.text != formattedText) + { + _cachedFormattedText = formattedText; + targetText.text = formattedText; + } + } + + private InputAction ResolveAction() + { + switch (actionSourceMode) + { + case ActionSourceMode.ActionReference: + return actionReference != null ? actionReference.action : null; + case ActionSourceMode.HotkeyTrigger: + return ResolveHotkeyAction(); + case ActionSourceMode.ActionName: + return InputBindingManager.TryGetAction(actionName, out InputAction action) ? action : null; + default: + return null; + } + } + + private InputAction ResolveHotkeyAction() + { + IHotkeyTrigger trigger = ResolveHotkeyTrigger(); + return trigger != null && trigger.HotkeyAction != null ? trigger.HotkeyAction.action : null; + } + + private IHotkeyTrigger ResolveHotkeyTrigger() + { + AutoAssignHotkeyTrigger(); + return hotkeyTrigger as IHotkeyTrigger; + } + + private void AutoAssignHotkeyTrigger() + { + if (actionSourceMode != ActionSourceMode.HotkeyTrigger || hotkeyTrigger != null) + { + return; + } + + if (TryGetComponent(typeof(IHotkeyTrigger), out Component component)) + { + hotkeyTrigger = component; + } + } + + private void AutoAssignTarget() + { + switch (outputMode) + { + case OutputMode.Image: + if (targetImage == null) + { + targetImage = GetComponent(); + } + + break; + case OutputMode.Text: + if (targetText == null) + { + targetText = GetComponent(); + } + + break; + } + } + + private void CacheTemplateText() + { + if (targetText == null) + { + return; + } + + if (string.IsNullOrEmpty(_templateText)) + { + _templateText = targetText.text; + } + } + + private void ResetText() + { + _cachedReplacementToken = null; + _cachedFormattedText = null; + if (targetText != null && targetText.text != _templateText) + { + targetText.text = _templateText; + } + } + + private void ClearImage() + { + _cachedSprite = null; + if (targetImage != null && targetImage.sprite != null) + { + targetImage.sprite = null; + } + } + + private void InvokeCategoryEvents(bool force) + { + if (!force && _hasInvokedCategoryEvent && _lastInvokedCategory == CurrentCategory) + { + return; + } + + _hasInvokedCategoryEvent = true; + _lastInvokedCategory = CurrentCategory; + if (categoryEvents == null) + { + return; + } + + for (int i = 0; i < categoryEvents.Count; i++) + { + DeviceCategoryEvent categoryEvent = categoryEvents[i]; + if (categoryEvent == null) + { + continue; + } + + if (categoryEvent.category == CurrentCategory) + { + categoryEvent.onMatched?.Invoke(); + } + else + { + categoryEvent.onNotMatched?.Invoke(); + } + } + } +} diff --git a/Client/Assets/Scripts/CustomeModule/InputGlyph/InputGlyph.cs.meta b/Client/Assets/Scripts/CustomeModule/InputGlyph/InputGlyph.cs.meta new file mode 100644 index 0000000..6473402 --- /dev/null +++ b/Client/Assets/Scripts/CustomeModule/InputGlyph/InputGlyph.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 211cfb186fc74ca694ec6f7f4b0fd933 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Client/Assets/Scripts/CustomeModule/InputGlyph/InputGlyphBehaviourBase.cs b/Client/Assets/Scripts/CustomeModule/InputGlyph/InputGlyphBehaviourBase.cs index 949f1ca..ad10127 100644 --- a/Client/Assets/Scripts/CustomeModule/InputGlyph/InputGlyphBehaviourBase.cs +++ b/Client/Assets/Scripts/CustomeModule/InputGlyph/InputGlyphBehaviourBase.cs @@ -20,7 +20,9 @@ public abstract class InputGlyphBehaviourBase : MonoBehaviour private void HandleDeviceChanged(InputDeviceWatcher.InputDeviceCategory category) { + InputDeviceWatcher.InputDeviceCategory previousCategory = CurrentCategory; CurrentCategory = category; + OnDeviceCategoryChanged(previousCategory, category); RefreshGlyph(); } @@ -29,5 +31,11 @@ public abstract class InputGlyphBehaviourBase : MonoBehaviour RefreshGlyph(); } + protected virtual void OnDeviceCategoryChanged( + InputDeviceWatcher.InputDeviceCategory previousCategory, + InputDeviceWatcher.InputDeviceCategory newCategory) + { + } + protected abstract void RefreshGlyph(); } diff --git a/Client/Assets/Scripts/CustomeModule/InputGlyph/InputGlyphIHotkeyTrigger.cs b/Client/Assets/Scripts/CustomeModule/InputGlyph/InputGlyphIHotkeyTrigger.cs deleted file mode 100644 index 61b1d13..0000000 --- a/Client/Assets/Scripts/CustomeModule/InputGlyph/InputGlyphIHotkeyTrigger.cs +++ /dev/null @@ -1,65 +0,0 @@ -using UnityEngine; -using UnityEngine.InputSystem; -using UnityEngine.UI; - -[RequireComponent(typeof(UXButton))] -public sealed class InputGlyphIHotkeyTrigger : InputGlyphBehaviourBase -{ - [SerializeField] private Component button; - [SerializeField] private string compositePartName; - [SerializeField] private Image targetImage; - - private Sprite _cachedSprite; - -#if UNITY_EDITOR - private void OnValidate() - { - if (button == null && TryGetComponent(typeof(IHotkeyTrigger), out Component c)) - { - button = c; - } - } -#endif - - protected override void OnEnable() - { - if (button == null && TryGetComponent(typeof(IHotkeyTrigger), out Component c)) - { - button = c; - } - - if (targetImage == null) - { - targetImage = GetComponent(); - } - - base.OnEnable(); - } - - protected override void RefreshGlyph() - { - InputActionReference actionReference = button != null ? (button as IHotkeyTrigger).HotkeyAction : null; - if (actionReference == null || actionReference.action == null || targetImage == null) - { - if (targetImage != null && _cachedSprite != null) - { - _cachedSprite = null; - targetImage.sprite = null; - } - - return; - } - - bool hasSprite = GlyphService.TryGetUISpriteForActionPath(actionReference, compositePartName, CurrentCategory, out Sprite sprite); - if (!hasSprite) - { - sprite = null; - } - - if (_cachedSprite != sprite) - { - _cachedSprite = sprite; - targetImage.sprite = sprite; - } - } -} diff --git a/Client/Assets/Scripts/CustomeModule/InputGlyph/InputGlyphIHotkeyTrigger.cs.meta b/Client/Assets/Scripts/CustomeModule/InputGlyph/InputGlyphIHotkeyTrigger.cs.meta deleted file mode 100644 index 9b528e2..0000000 --- a/Client/Assets/Scripts/CustomeModule/InputGlyph/InputGlyphIHotkeyTrigger.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: f24ff96430d042109462f373aed1f2cc -timeCreated: 1765870646 \ No newline at end of file diff --git a/Client/Assets/Scripts/CustomeModule/InputGlyph/InputGlyphImage.cs b/Client/Assets/Scripts/CustomeModule/InputGlyph/InputGlyphImage.cs deleted file mode 100644 index 087c4e8..0000000 --- a/Client/Assets/Scripts/CustomeModule/InputGlyph/InputGlyphImage.cs +++ /dev/null @@ -1,62 +0,0 @@ -using UnityEngine; -using UnityEngine.InputSystem; -using UnityEngine.UI; - -public sealed class InputGlyphImage : InputGlyphBehaviourBase -{ - [SerializeField] private InputActionReference actionReference; - [SerializeField] private string compositePartName; - [SerializeField] private Image targetImage; - [SerializeField] private bool hideIfMissing = false; - [SerializeField] private GameObject hideTargetObject; - - private Sprite _cachedSprite; - - protected override void OnEnable() - { - if (targetImage == null) - { - targetImage = GetComponent(); - } - - base.OnEnable(); - } - - protected override void RefreshGlyph() - { - if (actionReference == null || actionReference.action == null || targetImage == null) - { - if (targetImage != null && _cachedSprite != null) - { - _cachedSprite = null; - targetImage.sprite = null; - } - - ApplyVisibility(false); - return; - } - - bool hasSprite = GlyphService.TryGetUISpriteForActionPath(actionReference, compositePartName, CurrentCategory, out Sprite sprite); - if (_cachedSprite != sprite) - { - _cachedSprite = sprite; - targetImage.sprite = sprite; - } - - ApplyVisibility(hasSprite && sprite != null); - } - - private void ApplyVisibility(bool hasSprite) - { - if (hideTargetObject == null) - { - return; - } - - bool shouldBeActive = !hideIfMissing || hasSprite; - if (hideTargetObject.activeSelf != shouldBeActive) - { - hideTargetObject.SetActive(shouldBeActive); - } - } -} diff --git a/Client/Assets/Scripts/CustomeModule/InputGlyph/InputGlyphImage.cs.meta b/Client/Assets/Scripts/CustomeModule/InputGlyph/InputGlyphImage.cs.meta deleted file mode 100644 index 0cc0848..0000000 --- a/Client/Assets/Scripts/CustomeModule/InputGlyph/InputGlyphImage.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 9e40d0d4d3ba4745ac9893991c94131e -timeCreated: 1764917685 \ No newline at end of file diff --git a/Client/Assets/Scripts/CustomeModule/InputGlyph/InputGlyphText.cs b/Client/Assets/Scripts/CustomeModule/InputGlyph/InputGlyphText.cs deleted file mode 100644 index 40cdc5e..0000000 --- a/Client/Assets/Scripts/CustomeModule/InputGlyph/InputGlyphText.cs +++ /dev/null @@ -1,62 +0,0 @@ -using AlicizaX; -using TMPro; -using UnityEngine; -using UnityEngine.InputSystem; - -[RequireComponent(typeof(TextMeshProUGUI))] -public sealed class InputGlyphText : InputGlyphBehaviourBase -{ - [SerializeField] private InputActionReference actionReference; - [SerializeField] private string compositePartName; - - private TMP_Text _textField; - private string _templateText; - private string _cachedFormattedText; - private string _cachedReplacementToken; - - protected override void OnEnable() - { - if (_textField == null) - { - _textField = GetComponent(); - } - - if (string.IsNullOrEmpty(_templateText) && _textField != null) - { - _templateText = _textField.text; - } - - base.OnEnable(); - } - - protected override void RefreshGlyph() - { - if (actionReference == null || actionReference.action == null || _textField == null) - { - return; - } - - string replacementToken; - if (GlyphService.TryGetTMPTagForActionPath(actionReference, compositePartName, CurrentCategory, out string tag, out string displayFallback)) - { - replacementToken = tag; - } - else - { - replacementToken = displayFallback; - } - - if (_cachedReplacementToken == replacementToken) - { - return; - } - - _cachedReplacementToken = replacementToken; - string formattedText = Utility.Text.Format(_templateText, replacementToken); - if (_cachedFormattedText != formattedText) - { - _cachedFormattedText = formattedText; - _textField.text = formattedText; - } - } -} diff --git a/Client/Assets/Scripts/CustomeModule/InputGlyph/InputGlyphText.cs.meta b/Client/Assets/Scripts/CustomeModule/InputGlyph/InputGlyphText.cs.meta deleted file mode 100644 index 7347b32..0000000 --- a/Client/Assets/Scripts/CustomeModule/InputGlyph/InputGlyphText.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 215afdfefaef434db3618081810a0e3d -timeCreated: 1764917669 \ No newline at end of file diff --git a/Client/Assets/Scripts/Hotfix/GameLogic/UI/Generate/ui_UILoadUpdateWindow.cs b/Client/Assets/Scripts/Hotfix/GameLogic/UI/Generate/ui_UILoadUpdateWindow.cs index d3f90be..cc2dfbc 100644 --- a/Client/Assets/Scripts/Hotfix/GameLogic/UI/Generate/ui_UILoadUpdateWindow.cs +++ b/Client/Assets/Scripts/Hotfix/GameLogic/UI/Generate/ui_UILoadUpdateWindow.cs @@ -1,7 +1,7 @@ -using UnityEngine; -using UnityEngine.UI; +using AlicizaX.UI; using TMPro; -using AlicizaX.UI; +using UnityEngine; +using UnityEngine.UI; using AlicizaX.UI.Runtime; namespace Game.UI { @@ -12,21 +12,33 @@ namespace Game.UI #region Generated by Script Tool [SerializeField] - private Image mImgBackGround; - public Image ImgBackGround => mImgBackGround; + private UXButton mBtnETest; + public UXButton BtnETest => mBtnETest; + + [SerializeField] + private UXButton mBtnEscTest; + public UXButton BtnEscTest => mBtnEscTest; + + [SerializeField] + private UXButton mBtnQTest; + public UXButton BtnQTest => mBtnQTest; [SerializeField] private UXButton mBtnTest; public UXButton BtnTest => mBtnTest; [SerializeField] - private TextMeshProUGUI mTextTitl; - public TextMeshProUGUI TextTitl => mTextTitl; + private UXImage mImgBackGround; + public UXImage ImgBackGround => mImgBackGround; [SerializeField] private RecyclerView mScrollViewTestList; public RecyclerView ScrollViewTestList => mScrollViewTestList; + [SerializeField] + private TextMeshProUGUI mTextTitl; + public TextMeshProUGUI TextTitl => mTextTitl; + #endregion diff --git a/Client/Assets/Scripts/Hotfix/GameLogic/UI/Generate/ui_UILogicTestAlert.cs b/Client/Assets/Scripts/Hotfix/GameLogic/UI/Generate/ui_UILogicTestAlert.cs new file mode 100644 index 0000000..57736f9 --- /dev/null +++ b/Client/Assets/Scripts/Hotfix/GameLogic/UI/Generate/ui_UILogicTestAlert.cs @@ -0,0 +1,24 @@ +using UnityEngine; +using UnityEngine.UI; +using AlicizaX.UI.Runtime; +namespace Game.UI +{ + [UIRes(ui_UILogicTestAlert.ResTag, EUIResLoadType.AssetBundle)] + public class ui_UILogicTestAlert : UIHolderObjectBase + { + public const string ResTag = "UILogicTestAlert"; + #region Generated by Script Tool + + [SerializeField] + private UXButton mBtnEscTest; + public UXButton BtnEscTest => mBtnEscTest; + + [SerializeField] + private UXButton mBtnGTest; + public UXButton BtnGTest => mBtnGTest; + + #endregion + + + } +} diff --git a/Client/Assets/Scripts/Hotfix/GameLogic/UI/Generate/ui_UILogicTestAlert.cs.meta b/Client/Assets/Scripts/Hotfix/GameLogic/UI/Generate/ui_UILogicTestAlert.cs.meta new file mode 100644 index 0000000..d0e0f22 --- /dev/null +++ b/Client/Assets/Scripts/Hotfix/GameLogic/UI/Generate/ui_UILogicTestAlert.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 03b1a1a765ce78b4ea4ee026785671f7 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Client/Assets/Scripts/Hotfix/GameLogic/UI/UILoadUpdate.cs b/Client/Assets/Scripts/Hotfix/GameLogic/UI/UILoadUpdate.cs index 20113f0..a3590f1 100644 --- a/Client/Assets/Scripts/Hotfix/GameLogic/UI/UILoadUpdate.cs +++ b/Client/Assets/Scripts/Hotfix/GameLogic/UI/UILoadUpdate.cs @@ -6,6 +6,7 @@ using AlicizaX.UI.Runtime; using Cysharp.Threading.Tasks; using Game.UI; using GameLogic.Event; +using GameLogic.UI; using UnityEngine; public class TestData : ISimpleViewData @@ -29,7 +30,28 @@ public class UILoadUpdate : UITabWindow { testDataList.Add(new TestData() { Name = $"TestProp:{i}" }); } + _list.Data = testDataList; + + baseui.BtnQTest.onClick.AddListener(OnBtnQTestClick); + baseui.BtnEscTest.onClick.AddListener(OnBtnEscTestClick); + baseui.BtnETest.onClick.AddListener(OnBtnETestClick); + } + + private void OnBtnETestClick() + { + Log.Info("Btn E Click"); + } + + private void OnBtnEscTestClick() + { + Log.Info("Btn Esc Click"); + CloseSelf(); + } + + private void OnBtnQTestClick() + { + Log.Info("Btn Q Click"); } @@ -48,24 +70,6 @@ public class UILoadUpdate : UITabWindow private void OnTestClick() { - // int index = Random.Range(0, 99); - // Debug.Log(index); - // list.RecyclerView.ScrollTo(index, true); - } - - - protected override void OnOpen() - { - Debug.Log("OnOpen"); - } - - protected override void OnClose() - { - Debug.Log("OnClose"); - } - - protected override void OnDestroy() - { - Debug.Log("OnDestroy"); + GameApp.UI.ShowUISync(); } } diff --git a/Client/Assets/Scripts/Hotfix/GameLogic/UI/UILogicTestAlert.cs b/Client/Assets/Scripts/Hotfix/GameLogic/UI/UILogicTestAlert.cs new file mode 100644 index 0000000..b545e87 --- /dev/null +++ b/Client/Assets/Scripts/Hotfix/GameLogic/UI/UILogicTestAlert.cs @@ -0,0 +1,29 @@ +using AlicizaX; +using AlicizaX.UI.Runtime; +using Game.UI; + +namespace GameLogic.UI +{ + [UIUpdate] + [Window(UILayer.Tips, false, 3)] + public class UILogicTestAlert : UITabWindow + { + protected override void OnInitialize() + { + baseui.BtnEscTest.onClick.AddListener(OnBtnEscTestClick); + + baseui.BtnGTest.onClick.AddListener(OnBtnGTestClick); + } + + private void OnBtnGTestClick() + { + Log.Info("Alert G Click"); + } + + private void OnBtnEscTestClick() + { + Log.Info("Alert ESC Click"); + CloseSelf(); + } + } +} diff --git a/Client/Assets/Scripts/Hotfix/GameLogic/UI/UILogicTestAlert.cs.meta b/Client/Assets/Scripts/Hotfix/GameLogic/UI/UILogicTestAlert.cs.meta new file mode 100644 index 0000000..7264c9d --- /dev/null +++ b/Client/Assets/Scripts/Hotfix/GameLogic/UI/UILogicTestAlert.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 20e52127e6b741c8b3b93665f603692b +timeCreated: 1773976819 \ No newline at end of file diff --git a/Client/Bundles/StandaloneWindows64/DefaultPackage/Simulate/DefaultPackage_Simulate.bytes b/Client/Bundles/StandaloneWindows64/DefaultPackage/Simulate/DefaultPackage_Simulate.bytes index 84c904d..0d5e2d3 100644 Binary files a/Client/Bundles/StandaloneWindows64/DefaultPackage/Simulate/DefaultPackage_Simulate.bytes and b/Client/Bundles/StandaloneWindows64/DefaultPackage/Simulate/DefaultPackage_Simulate.bytes differ diff --git a/Client/Bundles/StandaloneWindows64/DefaultPackage/Simulate/DefaultPackage_Simulate.hash b/Client/Bundles/StandaloneWindows64/DefaultPackage/Simulate/DefaultPackage_Simulate.hash index 39decb9..805d598 100644 --- a/Client/Bundles/StandaloneWindows64/DefaultPackage/Simulate/DefaultPackage_Simulate.hash +++ b/Client/Bundles/StandaloneWindows64/DefaultPackage/Simulate/DefaultPackage_Simulate.hash @@ -1 +1 @@ -034249e9 \ No newline at end of file +1c55ee5a \ No newline at end of file diff --git a/Client/Bundles/StandaloneWindows64/DefaultPackage/Simulate/DefaultPackage_Simulate.json b/Client/Bundles/StandaloneWindows64/DefaultPackage/Simulate/DefaultPackage_Simulate.json index a9e5450..42f388b 100644 --- a/Client/Bundles/StandaloneWindows64/DefaultPackage/Simulate/DefaultPackage_Simulate.json +++ b/Client/Bundles/StandaloneWindows64/DefaultPackage/Simulate/DefaultPackage_Simulate.json @@ -10,7 +10,7 @@ "BuildPipeline": "EditorSimulateBuildPipeline", "PackageName": "DefaultPackage", "PackageVersion": "Simulate", - "PackageNote": "2026/3/11 11:40:21", + "PackageNote": "2026/3/20 11:28:53", "AssetList": [ { "Address": "Click", @@ -54,96 +54,6 @@ "BundleID": 1, "DependBundleIDs": [] }, - { - "Address": "AlicizaX.Framework.Runtime.dll", - "AssetPath": "Assets/Bundles/DLL/AlicizaX.Framework.Runtime.dll.bytes", - "AssetGUID": "", - "AssetTags": [ - "DLL" - ], - "BundleID": 3, - "DependBundleIDs": [] - }, - { - "Address": "GameBase.dll", - "AssetPath": "Assets/Bundles/DLL/GameBase.dll.bytes", - "AssetGUID": "", - "AssetTags": [ - "DLL" - ], - "BundleID": 3, - "DependBundleIDs": [] - }, - { - "Address": "GameLib.dll", - "AssetPath": "Assets/Bundles/DLL/GameLib.dll.bytes", - "AssetGUID": "", - "AssetTags": [ - "DLL" - ], - "BundleID": 3, - "DependBundleIDs": [] - }, - { - "Address": "GameLogic.dll", - "AssetPath": "Assets/Bundles/DLL/GameLogic.dll.bytes", - "AssetGUID": "", - "AssetTags": [ - "DLL" - ], - "BundleID": 3, - "DependBundleIDs": [] - }, - { - "Address": "GameProto.dll", - "AssetPath": "Assets/Bundles/DLL/GameProto.dll.bytes", - "AssetGUID": "", - "AssetTags": [ - "DLL" - ], - "BundleID": 3, - "DependBundleIDs": [] - }, - { - "Address": "mscorlib.dll", - "AssetPath": "Assets/Bundles/DLL/mscorlib.dll.bytes", - "AssetGUID": "", - "AssetTags": [ - "DLL" - ], - "BundleID": 3, - "DependBundleIDs": [] - }, - { - "Address": "System.Core.dll", - "AssetPath": "Assets/Bundles/DLL/System.Core.dll.bytes", - "AssetGUID": "", - "AssetTags": [ - "DLL" - ], - "BundleID": 3, - "DependBundleIDs": [] - }, - { - "Address": "UniTask.Runtime.dll", - "AssetPath": "Assets/Bundles/DLL/UniTask.Runtime.dll.bytes", - "AssetGUID": "", - "AssetTags": [ - "DLL" - ], - "BundleID": 3, - "DependBundleIDs": [] - }, - { - "Address": "Unity.InputSystem.dll", - "AssetPath": "Assets/Bundles/DLL/Unity.InputSystem.dll.bytes", - "AssetGUID": "", - "AssetTags": [ - "DLL" - ], - "BundleID": 3, - "DependBundleIDs": [] - }, { "Address": "Map1000", "AssetPath": "Assets/Bundles/Scenes/Map1000.unity", @@ -151,7 +61,7 @@ "AssetTags": [ "Scenes" ], - "BundleID": 4, + "BundleID": 3, "DependBundleIDs": [] }, { @@ -171,6 +81,16 @@ "AssetTags": [ "UI" ], + "BundleID": 4, + "DependBundleIDs": [] + }, + { + "Address": "UILogicTestAlert", + "AssetPath": "Assets/Bundles/UI/Window/UILogicTestAlert.prefab", + "AssetGUID": "", + "AssetTags": [ + "UI" + ], "BundleID": 5, "DependBundleIDs": [] } @@ -214,18 +134,6 @@ ], "DependBundleIDs": [] }, - { - "BundleName": "assets_bundles_dll.bundle", - "UnityCRC": 0, - "FileHash": "ba45bd2617fcfa1e64a95d7741dc8012", - "FileCRC": 0, - "FileSize": 4342272, - "Encrypted": false, - "Tags": [ - "DLL" - ], - "DependBundleIDs": [] - }, { "BundleName": "assets_bundles_scenes_map1000.bundle", "UnityCRC": 0, @@ -243,7 +151,19 @@ "UnityCRC": 0, "FileHash": "82253a65841b8f1db612149ec8c9a317", "FileCRC": 0, - "FileSize": 30683, + "FileSize": 57247, + "Encrypted": false, + "Tags": [ + "UI" + ], + "DependBundleIDs": [] + }, + { + "BundleName": "assets_bundles_ui_window_uilogictestalert.bundle", + "UnityCRC": 0, + "FileHash": "cf84038a2a1620e6ff49815bcd8e6a73", + "FileCRC": 0, + "FileSize": 21629, "Encrypted": false, "Tags": [ "UI" diff --git a/Client/Packages/com.alicizax.unity.ui.extension b/Client/Packages/com.alicizax.unity.ui.extension index e7b0f64..4364f46 160000 --- a/Client/Packages/com.alicizax.unity.ui.extension +++ b/Client/Packages/com.alicizax.unity.ui.extension @@ -1 +1 @@ -Subproject commit e7b0f64c056f6ad66a2b08a5b5b7feb2b31a5d2c +Subproject commit 4364f4673d24c4a27062c46526ca5f6687675f5e diff --git a/Client/ProjectSettings/UIGenerateConfiguration.asset b/Client/ProjectSettings/UIGenerateConfiguration.asset index eb8c22b..6230a48 100644 --- a/Client/ProjectSettings/UIGenerateConfiguration.asset +++ b/Client/ProjectSettings/UIGenerateConfiguration.asset @@ -21,45 +21,47 @@ MonoBehaviour: - ViewHolder UIElementRegexConfigs: - uiElementRegex: Rect - componentType: RectTransform + componentType: UnityEngine.RectTransform - uiElementRegex: Obj componentType: GameObject - uiElementRegex: Tf - componentType: Transform + componentType: UnityEngine.Transform - uiElementRegex: Btn - componentType: UXButton + componentType: UnityEngine.UI.UXButton - uiElementRegex: Slider - componentType: Slider + componentType: UnityEngine.UI.Slider - uiElementRegex: Img componentType: UnityEngine.UI.UXImage - uiElementRegex: RImg - componentType: RawImage + componentType: UnityEngine.UI.RawImage - uiElementRegex: Scrollbar - componentType: Scrollbar + componentType: UnityEngine.UI.Scrollbar - uiElementRegex: ScrollRect - componentType: ScrollRect + componentType: UnityEngine.UI.ScrollRect - uiElementRegex: GLayout - componentType: GridLayoutGroup + componentType: UnityEngine.UI.GridLayoutGroup - uiElementRegex: HLayout - componentType: HorizontalLayoutGroup + componentType: UnityEngine.UI.HorizontalLayoutGroup - uiElementRegex: VLayout - componentType: VerticalLayoutGroup + componentType: UnityEngine.UI.VerticalLayoutGroup - uiElementRegex: Text componentType: TMPro.TextMeshProUGUI - uiElementRegex: TogGroup - componentType: UXGroup + componentType: UnityEngine.UI.UXGroup - uiElementRegex: Mask2D - componentType: RectMask2D + componentType: UnityEngine.UI.RectMask2D - uiElementRegex: Video - componentType: Video.VideoPlayer + componentType: UnityEngine.Video.VideoPlayer - uiElementRegex: Input componentType: TMPro.TMP_InputField - uiElementRegex: CanvasGroup - componentType: CanvasGroup + componentType: UnityEngine.CanvasGroup - uiElementRegex: ScrollView - componentType: RecyclerView + componentType: AlicizaX.UI.RecyclerView - uiElementRegex: Drag - componentType: UXDraggable + componentType: UnityEngine.UI.UXDraggable + - uiElementRegex: Img + componentType: UnityEngine.UI.Image UIScriptGenerateConfigs: - ProjectName: MainProject NameSpace: Game.UI