diff --git a/Assets/UnityTest/ZXL/Scene/Main.unity b/Assets/UnityTest/ZXL/Scene/Main.unity index 71db6f4..ceab88f 100644 --- a/Assets/UnityTest/ZXL/Scene/Main.unity +++ b/Assets/UnityTest/ZXL/Scene/Main.unity @@ -5183,74 +5183,6 @@ MeshFilter: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 229802570} m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} ---- !u!1 &231014769 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 231014772} - - component: {fileID: 231014771} - - component: {fileID: 231014770} - m_Layer: 0 - m_Name: EventSystem - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 0 ---- !u!114 &231014770 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 231014769} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 4f231c4fb786f3946a6b90b886c48677, type: 3} - m_Name: - m_EditorClassIdentifier: - m_SendPointerHoverToParent: 1 - m_HorizontalAxis: Horizontal - m_VerticalAxis: Vertical - m_SubmitButton: Submit - m_CancelButton: Cancel - m_InputActionsPerSecond: 10 - m_RepeatDelay: 0.5 - m_ForceModuleActive: 0 ---- !u!114 &231014771 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 231014769} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3} - m_Name: - m_EditorClassIdentifier: - m_FirstSelected: {fileID: 0} - m_sendNavigationEvents: 1 - m_DragThreshold: 10 ---- !u!4 &231014772 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 231014769} - 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: 0} - m_RootOrder: 3 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &237420625 GameObject: m_ObjectHideFlags: 0 @@ -5614,6 +5546,39 @@ PrefabInstance: objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: e738288ee1be25e48b81fa4c06bce9c4, type: 3} +--- !u!1 &283256684 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 6108324229913133521, guid: e738288ee1be25e48b81fa4c06bce9c4, + type: 3} + m_PrefabInstance: {fileID: 283256683} + m_PrefabAsset: {fileID: 0} +--- !u!114 &283256685 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 283256684} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d9f5daed90054fcfbe709bd096377f32, type: 3} + m_Name: + m_EditorClassIdentifier: + objectName: "\u4E59\u7094\u74F6\u5F00\u5173" + desc: +--- !u!114 &283256686 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 283256684} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d0b148fe25e99eb48b9724523833bab1, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Delegates: [] --- !u!1 &288661143 GameObject: m_ObjectHideFlags: 0 @@ -11532,6 +11497,129 @@ PrefabInstance: objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 12ff962fdd1e1e94b9b1e98f083c46a8, type: 3} +--- !u!1 &458096947 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 458096948} + - component: {fileID: 458096951} + - component: {fileID: 458096950} + - component: {fileID: 458096949} + m_Layer: 0 + m_Name: btn_Sure + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &458096948 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 458096947} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: -138} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 1605446088} + m_Father: {fileID: 2015201661} + m_RootOrder: 1 + 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: -220} + m_SizeDelta: {x: 541.6, y: 208.4} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &458096949 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 458096947} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, 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: 2 + 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: 21300000, guid: d5c3f25f09e46fd4ca50f263622a20d7, + type: 3} + 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: 458096950} + m_OnClick: + m_PersistentCalls: + m_Calls: [] +--- !u!114 &458096950 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 458096947} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 21300000, guid: 7223cdadb35e58d419a93df5a303d60d, type: 3} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &458096951 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 458096947} + m_CullTransparentMesh: 1 --- !u!1001 &461131878 PrefabInstance: m_ObjectHideFlags: 0 @@ -15728,6 +15816,74 @@ Transform: type: 3} m_PrefabInstance: {fileID: 616033229} m_PrefabAsset: {fileID: 0} +--- !u!1 &622440433 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 622440436} + - component: {fileID: 622440435} + - component: {fileID: 622440434} + m_Layer: 0 + m_Name: EventSystem + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &622440434 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 622440433} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4f231c4fb786f3946a6b90b886c48677, type: 3} + m_Name: + m_EditorClassIdentifier: + m_SendPointerHoverToParent: 1 + m_HorizontalAxis: Horizontal + m_VerticalAxis: Vertical + m_SubmitButton: Submit + m_CancelButton: Cancel + m_InputActionsPerSecond: 10 + m_RepeatDelay: 0.5 + m_ForceModuleActive: 0 +--- !u!114 &622440435 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 622440433} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3} + m_Name: + m_EditorClassIdentifier: + m_FirstSelected: {fileID: 0} + m_sendNavigationEvents: 1 + m_DragThreshold: 10 +--- !u!4 &622440436 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 622440433} + 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: 0} + m_RootOrder: 7 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &626275754 stripped Transform: m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: ab28dd81c76996e4c8125421c2e6f7b1, @@ -16028,6 +16184,82 @@ Animator: m_AllowConstantClipSamplingOptimization: 1 m_KeepAnimatorStateOnDisable: 0 m_WriteDefaultValuesOnDisable: 0 +--- !u!1 &677358884 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 677358885} + - component: {fileID: 677358887} + - component: {fileID: 677358886} + m_Layer: 0 + m_Name: Image + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &677358885 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 677358884} + 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: 2015201661} + m_RootOrder: 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!114 &677358886 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 677358884} + 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: 0 + 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!222 &677358887 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 677358884} + m_CullTransparentMesh: 1 --- !u!1001 &684227577 PrefabInstance: m_ObjectHideFlags: 0 @@ -17951,7 +18183,7 @@ Transform: m_Children: - {fileID: 461131880} m_Father: {fileID: 0} - m_RootOrder: 6 + m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &733604855 MonoBehaviour: @@ -33834,7 +34066,7 @@ GameObject: - component: {fileID: 1583988381} m_Layer: 0 m_Name: Camera - m_TagString: Untagged + m_TagString: MainCamera m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 @@ -33897,13 +34129,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1583988380} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 611.692, y: 289.0545, z: 4.4913} + m_LocalRotation: {x: 0.007552769, y: 0.99219316, z: -0.09854922, w: 0.07605114} + m_LocalPosition: {x: 5.319154, y: 1.7538759, z: -1.6928493} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 5 + m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1593517583 GameObject: @@ -35767,6 +35999,142 @@ Transform: m_Father: {fileID: 1593517584} m_RootOrder: 13 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1605446087 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1605446088} + - component: {fileID: 1605446090} + - component: {fileID: 1605446089} + m_Layer: 0 + m_Name: Text (TMP) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1605446088 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1605446087} + 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: 458096948} + m_RootOrder: 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!114 &1605446089 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1605446087} + 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: "\u786E\u5B9A" + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 014e502fc4660764d976404e57d9f903, type: 2} + m_sharedMaterial: {fileID: 2929829565043403201, guid: 014e502fc4660764d976404e57d9f903, + type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4294967295 + m_fontColor: {r: 1, g: 1, b: 1, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 80 + m_fontSizeBase: 80 + 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!222 &1605446090 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1605446087} + m_CullTransparentMesh: 1 --- !u!1001 &1613137117 PrefabInstance: m_ObjectHideFlags: 0 @@ -40296,7 +40664,7 @@ Transform: m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 7 + m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1758695643 MonoBehaviour: @@ -40634,6 +41002,74 @@ PrefabInstance: objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: bdabe9e3cbd16cc448e15f3c5cb2acdc, type: 3} +--- !u!4 &1795006799 stripped +Transform: + m_CorrespondingSourceObject: {fileID: -977436756020020076, guid: bdabe9e3cbd16cc448e15f3c5cb2acdc, + type: 3} + m_PrefabInstance: {fileID: 1795006798} + m_PrefabAsset: {fileID: 0} +--- !u!1 &1795006800 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 4430694249172072071, guid: bdabe9e3cbd16cc448e15f3c5cb2acdc, + type: 3} + m_PrefabInstance: {fileID: 1795006798} + m_PrefabAsset: {fileID: 0} +--- !u!114 &1795006801 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1795006800} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d9f5daed90054fcfbe709bd096377f32, type: 3} + m_Name: + m_EditorClassIdentifier: + objectName: "\u7535\u8111\u5C4F\u5E55" + desc: +--- !u!114 &1795006802 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1795006800} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d0b148fe25e99eb48b9724523833bab1, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Delegates: + - eventID: 4 + callback: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 1795006801} + m_TargetAssemblyTypeName: UnityTest.ZXL.ObjectComponent, Assembly-CSharp + m_MethodName: Clicked + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 +--- !u!65 &1795006805 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1795006800} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 0.17990646, y: 0.6141314, z: 0.40004998} + m_Center: {x: 0.00000047683716, y: 0.00000047683716, z: -0.00000008195639} --- !u!1001 &1847803444 PrefabInstance: m_ObjectHideFlags: 0 @@ -40794,7 +41230,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!4 &1864616516 Transform: m_ObjectHideFlags: 0 @@ -40809,7 +41245,7 @@ Transform: m_Children: - {fileID: 448449844} m_Father: {fileID: 0} - m_RootOrder: 4 + m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1872876344 stripped GameObject: @@ -45416,6 +45852,108 @@ Transform: type: 3} m_PrefabInstance: {fileID: 1084725419} m_PrefabAsset: {fileID: 0} +--- !u!1 &2015201660 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2015201661} + - component: {fileID: 2015201664} + - component: {fileID: 2015201663} + - component: {fileID: 2015201662} + m_Layer: 0 + m_Name: Canvas + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &2015201661 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2015201660} + m_LocalRotation: {x: 0.57765424, y: -0.50699943, z: -0.4213843, w: 0.4813549} + m_LocalPosition: {x: 0, y: 0, z: 0.0034} + m_LocalScale: {x: 0.00030875, y: 0.00034, z: 0.0001} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 677358885} + - {fileID: 458096948} + m_Father: {fileID: 1795006799} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 7.402, y: -100.544, z: -91.3} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0.0131, y: 0.0014} + m_SizeDelta: {x: 1920, y: 1080} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &2015201662 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2015201660} + 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: 65335 +--- !u!114 &2015201663 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2015201660} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UiScaleMode: 0 + m_ReferencePixelsPerUnit: 100 + m_ScaleFactor: 1 + m_ReferenceResolution: {x: 800, y: 600} + m_ScreenMatchMode: 0 + m_MatchWidthOrHeight: 0 + m_PhysicalUnit: 3 + m_FallbackScreenDPI: 96 + m_DefaultSpriteDPI: 96 + m_DynamicPixelsPerUnit: 1 + m_PresetInfoIsWorld: 1 +--- !u!223 &2015201664 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2015201660} + m_Enabled: 1 + serializedVersion: 3 + m_RenderMode: 2 + m_Camera: {fileID: 0} + m_PlaneDistance: 100 + m_PixelPerfect: 0 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingBucketNormalizedSize: 0 + m_AdditionalShaderChannelsFlag: 25 + m_SortingLayerID: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 --- !u!64 &2022437377 MeshCollider: m_ObjectHideFlags: 0 diff --git a/Assets/UnityTest/ZXL/Scripts/CommonHelper.cs b/Assets/UnityTest/ZXL/Scripts/CommonHelper.cs index a9c053c..a589a5f 100644 --- a/Assets/UnityTest/ZXL/Scripts/CommonHelper.cs +++ b/Assets/UnityTest/ZXL/Scripts/CommonHelper.cs @@ -87,6 +87,42 @@ namespace UnityTest.ZXL } Debug.Log($"End Play {clipName} Clip"); + action?.Invoke(); + } + + /// + /// 计时器(伪) + /// + /// + /// + /// + public static System.Collections.IEnumerator WaitTime(float time, Action action) + { + bool isOver = false; + + Debug.Log($"Start "); + float f = 0; + while (!isOver) + { + yield return null; + + f += Time.deltaTime; + if (f >= time) + isOver = true; + } + + Debug.Log($"End "); + action?.Invoke(); + } + + public static void ShowOrHideObject(this GameObject self, bool isShow) + { + self.SetActive(isShow); + } + + public static void ShowOrHideObject(this Transform self, bool isShow) + { + self.gameObject.SetActive(isShow); } } } \ No newline at end of file diff --git a/Assets/UnityTest/ZXL/Scripts/Event.meta b/Assets/UnityTest/ZXL/Scripts/Event.meta new file mode 100644 index 0000000..762c910 --- /dev/null +++ b/Assets/UnityTest/ZXL/Scripts/Event.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 40daa70d1d0f83f47a5711e8faa60d71 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/UnityTest/ZXL/Scripts/Event/Args.meta b/Assets/UnityTest/ZXL/Scripts/Event/Args.meta new file mode 100644 index 0000000..8e05708 --- /dev/null +++ b/Assets/UnityTest/ZXL/Scripts/Event/Args.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 6297d660dd4347a1a93279238f6c9316 +timeCreated: 1694077294 \ No newline at end of file diff --git a/Assets/UnityTest/ZXL/Scripts/Event/Args/BaseEventArgs.cs b/Assets/UnityTest/ZXL/Scripts/Event/Args/BaseEventArgs.cs new file mode 100644 index 0000000..4f6a8cd --- /dev/null +++ b/Assets/UnityTest/ZXL/Scripts/Event/Args/BaseEventArgs.cs @@ -0,0 +1,18 @@ +using System; + +namespace Mono.Event +{ + /// + /// 事件基类。 + /// + public abstract class BaseEventArgs : EventArgs + { + /// + /// 获取类型编号。 + /// + public abstract int Id + { + get; + } + } +} \ No newline at end of file diff --git a/Assets/UnityTest/ZXL/Scripts/Event/Args/BaseEventArgs.cs.meta b/Assets/UnityTest/ZXL/Scripts/Event/Args/BaseEventArgs.cs.meta new file mode 100644 index 0000000..2b9d020 --- /dev/null +++ b/Assets/UnityTest/ZXL/Scripts/Event/Args/BaseEventArgs.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 51763402f543443090e6c335c24a5a15 +timeCreated: 1694056337 \ No newline at end of file diff --git a/Assets/UnityTest/ZXL/Scripts/Event/Args/GameEventArgs.cs b/Assets/UnityTest/ZXL/Scripts/Event/Args/GameEventArgs.cs new file mode 100644 index 0000000..ecf7888 --- /dev/null +++ b/Assets/UnityTest/ZXL/Scripts/Event/Args/GameEventArgs.cs @@ -0,0 +1,9 @@ +namespace Mono.Event +{ + /// + /// 游戏逻辑事件基类。 + /// + public abstract class GameEventArgs : BaseEventArgs + { + } +} \ No newline at end of file diff --git a/Assets/UnityTest/ZXL/Scripts/Event/Args/GameEventArgs.cs.meta b/Assets/UnityTest/ZXL/Scripts/Event/Args/GameEventArgs.cs.meta new file mode 100644 index 0000000..82bea3a --- /dev/null +++ b/Assets/UnityTest/ZXL/Scripts/Event/Args/GameEventArgs.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: be436ea68fd24d7c91b1f7888129c510 +timeCreated: 1694056284 \ No newline at end of file diff --git a/Assets/UnityTest/ZXL/Scripts/Event/Args/UpgradeEventArgs.cs b/Assets/UnityTest/ZXL/Scripts/Event/Args/UpgradeEventArgs.cs new file mode 100644 index 0000000..d66cb99 --- /dev/null +++ b/Assets/UnityTest/ZXL/Scripts/Event/Args/UpgradeEventArgs.cs @@ -0,0 +1,17 @@ +namespace Mono.Event +{ + public class UpgradeEventArgs : GameEventArgs + { + public static readonly int EventId = typeof(UpgradeEventArgs).GetHashCode(); + public override int Id => EventId; + + public long entityId; + public int level; + + public UpgradeEventArgs(long entityId, int level) + { + this.entityId = entityId; + this.level = level; + } + } +} \ No newline at end of file diff --git a/Assets/UnityTest/ZXL/Scripts/Event/Args/UpgradeEventArgs.cs.meta b/Assets/UnityTest/ZXL/Scripts/Event/Args/UpgradeEventArgs.cs.meta new file mode 100644 index 0000000..e8bc2c4 --- /dev/null +++ b/Assets/UnityTest/ZXL/Scripts/Event/Args/UpgradeEventArgs.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 9888c12b92484a4bb5578a4c98b74211 +timeCreated: 1694133232 \ No newline at end of file diff --git a/Assets/UnityTest/ZXL/Scripts/Event/EventComponent.cs b/Assets/UnityTest/ZXL/Scripts/Event/EventComponent.cs new file mode 100644 index 0000000..8e10fe1 --- /dev/null +++ b/Assets/UnityTest/ZXL/Scripts/Event/EventComponent.cs @@ -0,0 +1,18 @@ +using System; +using Mono.Event; +using UnityEngine; + +class EventComponent : MonoBehaviour +{ + private Mono.Event.EventManager _manager= EventManager.Instance; + + private void Update() + { + _manager.Update(); + } + + private void OnDisable() + { + _manager = null; + } +} \ No newline at end of file diff --git a/Assets/UnityTest/ZXL/Scripts/Event/EventComponent.cs.meta b/Assets/UnityTest/ZXL/Scripts/Event/EventComponent.cs.meta new file mode 100644 index 0000000..77d79b4 --- /dev/null +++ b/Assets/UnityTest/ZXL/Scripts/Event/EventComponent.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 8a012e93f6ba495b86c794a7d832bed8 +timeCreated: 1694074707 \ No newline at end of file diff --git a/Assets/UnityTest/ZXL/Scripts/Event/EventManager.cs b/Assets/UnityTest/ZXL/Scripts/Event/EventManager.cs new file mode 100644 index 0000000..fbabc7c --- /dev/null +++ b/Assets/UnityTest/ZXL/Scripts/Event/EventManager.cs @@ -0,0 +1,186 @@ +using System; +using System.Collections.Generic; + +namespace Mono.Event +{ + public class EventManager + { + private static EventManager instance; + + public static EventManager Instance + { + get + { + if (instance == null) + { + instance = new EventManager(); + } + + return instance; + } + } + + private readonly Dictionary>> m_EventPool; + private EventHandler m_DefaultHandler; + private Queue m_EventInfos; + private Queue> _cache; + + public EventManager() + { + m_EventInfos = new Queue(); + _cache = new Queue>(); + m_EventPool = new Dictionary>>(); + } + + public int EventHandlerCount + { + get { return m_EventPool.Count; } + } + + public int EventCount + { + get { return m_EventPool.Count; } + } + + public int Count(int id) + { + if (!m_EventPool.TryGetValue(id, out var list)) + { + return 0; + } + + return list.Count; + } + + public bool Check(int id, EventHandler handler) + { + if (handler == null) + { + throw new Exception("Event handler is invalid."); + } + + if (!m_EventPool.TryGetValue(id, out var list) || list.Count == 0) + { + return false; + } + + return list.Contains(handler); + } + + public void Subscribe(int id, EventHandler handler) + { + if (handler == null) + { + throw new Exception("Event handler is invalid."); + } + + if (!m_EventPool.TryGetValue(id, out var list)) + { + m_EventPool[id] = list = new List>(); + } + + list.Add(handler); + } + + public void Unsubscribe(int id, EventHandler handler) + { + if (handler == null) + { + throw new Exception("Event handler is invalid."); + } + + if (!m_EventPool.TryGetValue(id, out var list)) + { + throw new Exception($"Event '{id}' not exists specified handler."); + } + + if (list.Count == 0) + { + throw new Exception($"Event '{id}' not exists specified handler."); + } + + var indexOf = list.IndexOf(handler); + if (indexOf == -1) + { + throw new Exception($"Event '{id}' not exists specified handler."); + } + + list.RemoveAt(indexOf); + if (list.Count == 0) + { + m_EventPool.Remove(id); + } + } + + public void SetDefaultHandler(EventHandler handler) + { + m_DefaultHandler = handler; + } + + struct EventInfo + { + public object sender { get; } + public GameEventArgs args { get; } + + public EventInfo(object sender, GameEventArgs args) + { + this.sender = sender; + this.args = args; + } + } + + public void Fire(object sender, GameEventArgs e) + { + if (e == null) + { + throw new Exception("Event is invalid."); + } + + m_EventInfos.Enqueue(new EventInfo(sender, e)); + } + + public void FireNow(object sender, GameEventArgs e) + { + if (e == null) + { + throw new Exception("Event is invalid."); + } + + HandleEvent(sender, e); + } + + public void Update() + { + while (m_EventInfos.Count > 0) + { + var eventInfo = m_EventInfos.Dequeue(); + HandleEvent(eventInfo.sender, eventInfo.args); + } + } + + private void HandleEvent(object sender, GameEventArgs e) + { + if (!m_EventPool.TryGetValue(e.Id, out var list) || list.Count == 0) + { + if (m_DefaultHandler != null) + { + m_DefaultHandler(sender, e); + return; + } + else + throw new ArgumentException(string.Format("Event '{0}' not allow no handler.", e.Id)); + } + + foreach (var eventHandler in list) + { + _cache.Enqueue(eventHandler); + } + + while (_cache.Count > 0) + { + var eventHandler = _cache.Dequeue(); + eventHandler.Invoke(sender, e); + } + } + } +} \ No newline at end of file diff --git a/Assets/UnityTest/ZXL/Scripts/Event/EventManager.cs.meta b/Assets/UnityTest/ZXL/Scripts/Event/EventManager.cs.meta new file mode 100644 index 0000000..96cffd7 --- /dev/null +++ b/Assets/UnityTest/ZXL/Scripts/Event/EventManager.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 33bba6db72b149f4bf4214acad7f7bac +timeCreated: 1694056099 \ No newline at end of file diff --git a/Assets/UnityTest/ZXL/Scripts/ObjectComponent.cs b/Assets/UnityTest/ZXL/Scripts/ObjectComponent.cs new file mode 100644 index 0000000..c7d28d9 --- /dev/null +++ b/Assets/UnityTest/ZXL/Scripts/ObjectComponent.cs @@ -0,0 +1,38 @@ +using Sirenix.OdinInspector; +using UnityEngine; +using UnityEngine.EventSystems; +using UnityEngine.UI.Extensions; + +namespace UnityTest.ZXL +{ + public class ObjectComponent : MonoBehaviour,IPointerClickHandler + { + /// + /// 当前物体的名字(可能存在名字对不上的情况,需要进行深度查找) + /// + public string objectName; + + /// + /// 描述 + /// + public string desc; + + public void Clicked() + { + Debug.Log($"点击了{objectName}"); + } + +#if UNITY_EDITOR + [Button] + void Add() + { + var component = gameObject.GetOrAddComponent(); + // component.OnPointerClick(); + } +#endif + public void OnPointerClick(PointerEventData eventData) + { + Clicked(); + } + } +} \ No newline at end of file diff --git a/Assets/UnityTest/ZXL/Scripts/ObjectComponent.cs.meta b/Assets/UnityTest/ZXL/Scripts/ObjectComponent.cs.meta new file mode 100644 index 0000000..7399401 --- /dev/null +++ b/Assets/UnityTest/ZXL/Scripts/ObjectComponent.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: d9f5daed90054fcfbe709bd096377f32 +timeCreated: 1694562028 \ No newline at end of file diff --git a/Assets/UnityTest/ZXL/Scripts/ObjectDataComponent.cs b/Assets/UnityTest/ZXL/Scripts/ObjectDataComponent.cs index 55d6d22..1cbee15 100644 --- a/Assets/UnityTest/ZXL/Scripts/ObjectDataComponent.cs +++ b/Assets/UnityTest/ZXL/Scripts/ObjectDataComponent.cs @@ -15,4 +15,13 @@ namespace UnityTest.ZXL public string uiName; public GameObject ui; } + + public enum HighlightObject + { + 乙炔气瓶开关, + 电脑屏幕, + 湿抹布, + 警示牌, + 应急处理表, + } } \ No newline at end of file