This commit is contained in:
shenjianxing 2024-12-17 15:13:25 +08:00
commit 7a9c979c93
24 changed files with 5008 additions and 1438 deletions

File diff suppressed because one or more lines are too long

View File

@ -96,7 +96,7 @@ MonoBehaviour:
m_SelectOnDown: {fileID: 0} m_SelectOnDown: {fileID: 0}
m_SelectOnLeft: {fileID: 0} m_SelectOnLeft: {fileID: 0}
m_SelectOnRight: {fileID: 0} m_SelectOnRight: {fileID: 0}
m_Transition: 0 m_Transition: 1
m_Colors: m_Colors:
m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
@ -247,7 +247,7 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0} m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: -10, y: 0} m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 20, y: 0} m_SizeDelta: {x: 20, y: 0}
m_Pivot: {x: 0.5, y: 0.5} m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &1533862122612184391 --- !u!222 &1533862122612184391
@ -298,9 +298,9 @@ GameObject:
m_Component: m_Component:
- component: {fileID: 6209105154302590224} - component: {fileID: 6209105154302590224}
- component: {fileID: 1018611022561700134} - component: {fileID: 1018611022561700134}
- component: {fileID: 852279141555856138} - component: {fileID: 5354884400402312983}
m_Layer: 5 m_Layer: 5
m_Name: VoiceTitleTxt m_Name: Title
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
@ -322,7 +322,7 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1} m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 10, y: -2.5} m_AnchoredPosition: {x: 30.5, y: -2.5}
m_SizeDelta: {x: 84, y: 24} m_SizeDelta: {x: 84, y: 24}
m_Pivot: {x: 0, y: 1} m_Pivot: {x: 0, y: 1}
--- !u!222 &1018611022561700134 --- !u!222 &1018611022561700134
@ -333,7 +333,7 @@ CanvasRenderer:
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1059165242730687285} m_GameObject: {fileID: 1059165242730687285}
m_CullTransparentMesh: 1 m_CullTransparentMesh: 1
--- !u!114 &852279141555856138 --- !u!114 &5354884400402312983
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
@ -342,7 +342,7 @@ MonoBehaviour:
m_GameObject: {fileID: 1059165242730687285} m_GameObject: {fileID: 1059165242730687285}
m_Enabled: 1 m_Enabled: 1
m_EditorHideFlags: 0 m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
m_Material: {fileID: 0} m_Material: {fileID: 0}
@ -353,20 +353,75 @@ MonoBehaviour:
m_OnCullStateChanged: m_OnCullStateChanged:
m_PersistentCalls: m_PersistentCalls:
m_Calls: [] m_Calls: []
m_FontData: m_text: "\u97F3\u91CF\u8C03\u8282"
m_Font: {fileID: 12800000, guid: 20ebdb412ee9aec4a9d3005965d9c962, type: 3} m_isRightToLeft: 0
m_FontSize: 16 m_fontAsset: {fileID: 11400000, guid: 97936a7b3a86809479ac89371e95b079, type: 2}
m_FontStyle: 0 m_sharedMaterial: {fileID: 168401102475399263, guid: 97936a7b3a86809479ac89371e95b079, type: 2}
m_BestFit: 0 m_fontSharedMaterials: []
m_MinSize: 1 m_fontMaterial: {fileID: 0}
m_MaxSize: 40 m_fontMaterials: []
m_Alignment: 5 m_fontColor32:
m_AlignByGeometry: 0 serializedVersion: 2
m_RichText: 1 rgba: 4294967295
m_HorizontalOverflow: 0 m_fontColor: {r: 1, g: 1, b: 1, a: 1}
m_VerticalOverflow: 0 m_enableVertexGradient: 0
m_LineSpacing: 1 m_colorMode: 3
m_Text: "\u97F3\u91CF\u8C03\u8282" 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: 16
m_fontSizeBase: 16
m_fontWeight: 400
m_enableAutoSizing: 0
m_fontSizeMin: 18
m_fontSizeMax: 72
m_fontStyle: 0
m_HorizontalAlignment: 1
m_VerticalAlignment: 256
m_textAlignment: 65535
m_characterSpacing: 0
m_wordSpacing: 0
m_lineSpacing: 0
m_lineSpacingMax: 0
m_paragraphSpacing: 0
m_charWidthMaxAdj: 0
m_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 &1227205627944467820 --- !u!1 &1227205627944467820
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -377,9 +432,9 @@ GameObject:
m_Component: m_Component:
- component: {fileID: 3610739904553749486} - component: {fileID: 3610739904553749486}
- component: {fileID: 2711321231329760142} - component: {fileID: 2711321231329760142}
- component: {fileID: 2085883640586172949} - component: {fileID: 3171427112951001981}
m_Layer: 5 m_Layer: 5
m_Name: VoiceTitleTxt m_Name: Title
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
@ -401,7 +456,7 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1} m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 26.8, y: -1.3} m_AnchoredPosition: {x: 30.5, y: -1.3}
m_SizeDelta: {x: 84, y: 24} m_SizeDelta: {x: 84, y: 24}
m_Pivot: {x: 0, y: 1} m_Pivot: {x: 0, y: 1}
--- !u!222 &2711321231329760142 --- !u!222 &2711321231329760142
@ -412,7 +467,7 @@ CanvasRenderer:
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1227205627944467820} m_GameObject: {fileID: 1227205627944467820}
m_CullTransparentMesh: 1 m_CullTransparentMesh: 1
--- !u!114 &2085883640586172949 --- !u!114 &3171427112951001981
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
@ -421,7 +476,7 @@ MonoBehaviour:
m_GameObject: {fileID: 1227205627944467820} m_GameObject: {fileID: 1227205627944467820}
m_Enabled: 1 m_Enabled: 1
m_EditorHideFlags: 0 m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
m_Material: {fileID: 0} m_Material: {fileID: 0}
@ -432,20 +487,75 @@ MonoBehaviour:
m_OnCullStateChanged: m_OnCullStateChanged:
m_PersistentCalls: m_PersistentCalls:
m_Calls: [] m_Calls: []
m_FontData: m_text: "\u9F20\u6807\u7075\u654F\u5EA6"
m_Font: {fileID: 12800000, guid: 20ebdb412ee9aec4a9d3005965d9c962, type: 3} m_isRightToLeft: 0
m_FontSize: 16 m_fontAsset: {fileID: 11400000, guid: 97936a7b3a86809479ac89371e95b079, type: 2}
m_FontStyle: 0 m_sharedMaterial: {fileID: 168401102475399263, guid: 97936a7b3a86809479ac89371e95b079, type: 2}
m_BestFit: 0 m_fontSharedMaterials: []
m_MinSize: 1 m_fontMaterial: {fileID: 0}
m_MaxSize: 40 m_fontMaterials: []
m_Alignment: 5 m_fontColor32:
m_AlignByGeometry: 0 serializedVersion: 2
m_RichText: 1 rgba: 4294967295
m_HorizontalOverflow: 0 m_fontColor: {r: 1, g: 1, b: 1, a: 1}
m_VerticalOverflow: 0 m_enableVertexGradient: 0
m_LineSpacing: 1 m_colorMode: 3
m_Text: "\u9F20\u6807\u7075\u654F\u5EA6" 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: 16
m_fontSizeBase: 16
m_fontWeight: 400
m_enableAutoSizing: 0
m_fontSizeMin: 18
m_fontSizeMax: 72
m_fontStyle: 0
m_HorizontalAlignment: 1
m_VerticalAlignment: 256
m_textAlignment: 65535
m_characterSpacing: 0
m_wordSpacing: 0
m_lineSpacing: 0
m_lineSpacingMax: 0
m_paragraphSpacing: 0
m_charWidthMaxAdj: 0
m_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 &1275590828871288331 --- !u!1 &1275590828871288331
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -728,7 +838,7 @@ GameObject:
- component: {fileID: 152345463390248703} - component: {fileID: 152345463390248703}
- component: {fileID: 5351155271023079358} - component: {fileID: 5351155271023079358}
m_Layer: 5 m_Layer: 5
m_Name: VoiceSub m_Name: MouseSub
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
@ -810,7 +920,7 @@ MonoBehaviour:
m_SelectOnDown: {fileID: 0} m_SelectOnDown: {fileID: 0}
m_SelectOnLeft: {fileID: 0} m_SelectOnLeft: {fileID: 0}
m_SelectOnRight: {fileID: 0} m_SelectOnRight: {fileID: 0}
m_Transition: 0 m_Transition: 1
m_Colors: m_Colors:
m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
@ -900,9 +1010,12 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: d2b923f7f3ffdcf4db062775624d68c7, type: 3} m_Script: {fileID: 11500000, guid: d2b923f7f3ffdcf4db062775624d68c7, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
VoiceAdd: {fileID: 2100336022956059246} VoiceAdd: {fileID: 8735959289855947581}
VoiceSub: {fileID: 152345463390248703} VoiceSub: {fileID: 4530650070634106211}
VoiceSlider: {fileID: 8119715466832897254} VoiceSlider: {fileID: 5072613571010848122}
MouseAdd: {fileID: 2100336022956059246}
MouseSub: {fileID: 152345463390248703}
MouseSlider: {fileID: 8119715466832897254}
ConfirmBtn: {fileID: 6524482453755872407} ConfirmBtn: {fileID: 6524482453755872407}
--- !u!1 &3339019753780316093 --- !u!1 &3339019753780316093
GameObject: GameObject:
@ -938,7 +1051,7 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0} m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: -10, y: 0} m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 20, y: 0} m_SizeDelta: {x: 20, y: 0}
m_Pivot: {x: 0.5, y: 0.5} m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &4488483345967552713 --- !u!222 &4488483345967552713
@ -1065,7 +1178,7 @@ GameObject:
- component: {fileID: 2100336022956059246} - component: {fileID: 2100336022956059246}
- component: {fileID: 1277082606188721936} - component: {fileID: 1277082606188721936}
m_Layer: 5 m_Layer: 5
m_Name: VoiceAdd m_Name: MouseAdd
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
@ -1147,7 +1260,7 @@ MonoBehaviour:
m_SelectOnDown: {fileID: 0} m_SelectOnDown: {fileID: 0}
m_SelectOnLeft: {fileID: 0} m_SelectOnLeft: {fileID: 0}
m_SelectOnRight: {fileID: 0} m_SelectOnRight: {fileID: 0}
m_Transition: 0 m_Transition: 1
m_Colors: m_Colors:
m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
@ -1187,7 +1300,7 @@ MonoBehaviour:
MarkType: 0 MarkType: 0
CustomComponentName: CustomComponentName:
CustomComment: CustomComment:
mComponentName: mComponentName: UnityEngine.UI.Button
--- !u!1 &4566101257233310026 --- !u!1 &4566101257233310026
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -1505,7 +1618,7 @@ GameObject:
- component: {fileID: 8119715466832897254} - component: {fileID: 8119715466832897254}
- component: {fileID: 400563257442405132} - component: {fileID: 400563257442405132}
m_Layer: 5 m_Layer: 5
m_Name: VoiceSlider m_Name: MouseSlider
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
@ -1577,10 +1690,10 @@ MonoBehaviour:
m_FillRect: {fileID: 4260347516208239176} m_FillRect: {fileID: 4260347516208239176}
m_HandleRect: {fileID: 8825168004229886871} m_HandleRect: {fileID: 8825168004229886871}
m_Direction: 0 m_Direction: 0
m_MinValue: 0 m_MinValue: 0.01
m_MaxValue: 1 m_MaxValue: 0.1
m_WholeNumbers: 0 m_WholeNumbers: 0
m_Value: 0.36 m_Value: 0.0983
m_OnValueChanged: m_OnValueChanged:
m_PersistentCalls: m_PersistentCalls:
m_Calls: [] m_Calls: []
@ -1775,7 +1888,7 @@ MonoBehaviour:
m_SelectOnDown: {fileID: 0} m_SelectOnDown: {fileID: 0}
m_SelectOnLeft: {fileID: 0} m_SelectOnLeft: {fileID: 0}
m_SelectOnRight: {fileID: 0} m_SelectOnRight: {fileID: 0}
m_Transition: 0 m_Transition: 1
m_Colors: m_Colors:
m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
@ -1815,7 +1928,7 @@ MonoBehaviour:
MarkType: 0 MarkType: 0
CustomComponentName: CustomComponentName:
CustomComment: CustomComment:
mComponentName: mComponentName: UnityEngine.UI.Button
--- !u!1 &7441298961810434495 --- !u!1 &7441298961810434495
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -1994,7 +2107,7 @@ MonoBehaviour:
MarkType: 0 MarkType: 0
CustomComponentName: CustomComponentName:
CustomComment: CustomComment:
mComponentName: mComponentName: UnityEngine.UI.Slider
--- !u!1 &8015440409360597658 --- !u!1 &8015440409360597658
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0

File diff suppressed because it is too large Load Diff

View File

@ -322,189 +322,6 @@ PrefabInstance:
m_AddedGameObjects: [] m_AddedGameObjects: []
m_AddedComponents: [] m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 8889464cdda7d244ba7b9e4f5907bd4d, type: 3} m_SourcePrefab: {fileID: 100100000, guid: 8889464cdda7d244ba7b9e4f5907bd4d, type: 3}
--- !u!1 &961739749
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 961739753}
- component: {fileID: 961739752}
- component: {fileID: 961739751}
- component: {fileID: 961739750}
- component: {fileID: 961739755}
- component: {fileID: 961739754}
m_Layer: 0
m_Name: Main Camera
m_TagString: MainCamera
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!114 &961739750
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 961739749}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: a79441f348de89743a2939f4d699eac1, type: 3}
m_Name:
m_EditorClassIdentifier:
m_RenderShadows: 1
m_RequiresDepthTextureOption: 2
m_RequiresOpaqueTextureOption: 2
m_CameraType: 0
m_Cameras: []
m_RendererIndex: -1
m_VolumeLayerMask:
serializedVersion: 2
m_Bits: 1
m_VolumeTrigger: {fileID: 0}
m_VolumeFrameworkUpdateModeOption: 2
m_RenderPostProcessing: 1
m_Antialiasing: 1
m_AntialiasingQuality: 2
m_StopNaN: 0
m_Dithering: 1
m_ClearDepth: 1
m_AllowXRRendering: 1
m_AllowHDROutput: 1
m_UseScreenCoordOverride: 0
m_ScreenSizeOverride: {x: 0, y: 0, z: 0, w: 0}
m_ScreenCoordScaleBias: {x: 0, y: 0, z: 0, w: 0}
m_RequiresDepthTexture: 0
m_RequiresColorTexture: 0
m_Version: 2
m_TaaSettings:
quality: 3
frameInfluence: 0.1
jitterScale: 1
mipBias: 0
varianceClampScale: 0.9
contrastAdaptiveSharpening: 0
--- !u!81 &961739751
AudioListener:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 961739749}
m_Enabled: 1
--- !u!20 &961739752
Camera:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 961739749}
m_Enabled: 1
serializedVersion: 2
m_ClearFlags: 1
m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0}
m_projectionMatrixMode: 1
m_GateFitMode: 2
m_FOVAxisMode: 0
m_Iso: 200
m_ShutterSpeed: 0.005
m_Aperture: 16
m_FocusDistance: 10
m_FocalLength: 50
m_BladeCount: 5
m_Curvature: {x: 2, y: 11}
m_BarrelClipping: 0.25
m_Anamorphism: 0
m_SensorSize: {x: 36, y: 24}
m_LensShift: {x: 0, y: 0}
m_NormalizedViewPortRect:
serializedVersion: 2
x: 0
y: 0
width: 1
height: 1
near clip plane: 0.3
far clip plane: 1000
field of view: 60
orthographic: 0
orthographic size: 5
m_Depth: -1
m_CullingMask:
serializedVersion: 2
m_Bits: 4294967295
m_RenderingPath: -1
m_TargetTexture: {fileID: 0}
m_TargetDisplay: 0
m_TargetEye: 3
m_HDR: 1
m_AllowMSAA: 1
m_AllowDynamicResolution: 0
m_ForceIntoRT: 0
m_OcclusionCulling: 1
m_StereoConvergence: 10
m_StereoSeparation: 0.022
--- !u!224 &961739753
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 961739749}
m_LocalRotation: {x: -0, y: 0.9897472, z: -0.14283024, w: 0}
m_LocalPosition: {x: 0, y: 0, z: -4.319}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 16.423, y: 180, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: -3.942, y: 3.24}
m_SizeDelta: {x: 100, y: 100}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &961739754
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 961739749}
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!223 &961739755
Canvas:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 961739749}
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_VertexColorAlwaysGammaSpace: 0
m_AdditionalShaderChannelsFlag: 0
m_UpdateRectTransformForStandalone: 0
m_SortingLayerID: 0
m_SortingOrder: 0
m_TargetDisplay: 0
--- !u!1 &1160234425 --- !u!1 &1160234425
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -560,5 +377,4 @@ SceneRoots:
m_Roots: m_Roots:
- {fileID: 203844589} - {fileID: 203844589}
- {fileID: 1160234427} - {fileID: 1160234427}
- {fileID: 961739753}
- {fileID: 665975543} - {fileID: 665975543}

View File

@ -0,0 +1,18 @@
using QFramework;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class APPSetting
{
public PlayerPrefsFloatProperty MouseMoveSpeed { get; set; }
public static string MOUSE_MOVE_SPEED = "MOUSE_MOVE_SPEED";
public APPSetting()
{
MouseMoveSpeed = new PlayerPrefsFloatProperty(MOUSE_MOVE_SPEED, 0.05f);
}
}

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: f1171000fe9743340adf844ab2ab81ab guid: 5b014c524ce32d8478defdd928528507
MonoImporter: MonoImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 2 serializedVersion: 2

View File

@ -145,6 +145,10 @@ public class ActionHelper
var strAction = (XMLTool.StringListAction)act; var strAction = (XMLTool.StringListAction)act;
return CameraSwitchAction.Allocate(strAction.args[0], strAction.args[1], strAction.args[2], strAction.args[3], strAction.args[4], strAction.args[5], strAction.args[6]); return CameraSwitchAction.Allocate(strAction.args[0], strAction.args[1], strAction.args[2], strAction.args[3], strAction.args[4], strAction.args[5], strAction.args[6]);
} }
case "LockCamera":
{
return LockCameraAction.Allocate(act.Value);
}
} }
break; break;
case XMLTool.Condition condition: case XMLTool.Condition condition:

View File

@ -0,0 +1,74 @@
using System;
using UnityEngine;
namespace QFramework
{
internal class LockCameraAction : IAction
{
public System.Action OnFinished { get; set; }
private LockCameraAction()
{
}
private static readonly SimpleObjectPool<LockCameraAction> mPool =
new SimpleObjectPool<LockCameraAction>(() => new LockCameraAction(), null, 10);
string isLock;
public static LockCameraAction Allocate(string isLock, System.Action OnFinished = null)
{
var retNode = mPool.Allocate();
retNode.ActionID = ActionKit.ID_GENERATOR++;
retNode.Deinited = false;
retNode.Reset();
retNode.isLock = isLock;
retNode.OnFinished = OnFinished;
return retNode;
}
public ulong ActionID { get; set; }
public ActionStatus Status { get; set; }
public void OnStart()
{
bool cameraLock = false;
bool.TryParse(isLock, out cameraLock);
FreeCameraController.instance.SetLock(cameraLock);
}
public void OnExecute(float dt)
{
this.Finish();
OnFinished?.Invoke();
}
public void OnFinish()
{
}
public void Reset()
{
Status = ActionStatus.NotStart;
Paused = false;
}
public bool Paused { get; set; }
public void Deinit()
{
if (!Deinited)
{
OnFinished = null;
Deinited = true;
mPool.Recycle(this);
}
}
public bool Deinited { get; set; }
}
}

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: 7c8bcf7c81a2e3b40a5b5ef855d5b722 guid: b3aa7c1b51454fe49a1a1646c5236be6
MonoImporter: MonoImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 2 serializedVersion: 2

View File

@ -1,11 +0,0 @@
using QFramework;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class AppContext : Architecture<AppContext>
{
protected override void Init()
{
}
}

View File

@ -0,0 +1,108 @@
using UnityEngine;
public class FreeCameraController : MonoBehaviour
{
public static FreeCameraController instance;
// 相机移动速度
public float moveSpeed = 5.0f; // 降低了移动速度
// 相机旋转速度
public float rotateSpeed = 0.05f; // 降低了旋转速度
// X轴旋转的最大范围
public float xRotationLimit = 80.0f;
// Y轴旋转的最大范围
//public float yRotationLimit = 180.0f;
//public float minRotationLimitY = -1;
//public float maxRotationLimitY = -1;
// 是否启用碰撞检测
public bool enableCollision = false; // 默认关闭碰撞检测,根据需要开启
private Vector3 lastMousePosition;
private bool isDragging = false;
private float xRotation = 0.0f;
private float yRotation = 0.0f;
public bool isLock = false;
private void Awake()
{
instance = this;
DontDestroyOnLoad(this);
Global.appSetting.MouseMoveSpeed.RegisterWithInitValue(v => rotateSpeed = v);
}
void Update()
{
if (isLock == false)
{
// 相机移动
float horizontal = Input.GetAxis("Horizontal") * moveSpeed * Time.deltaTime;
float vertical = Input.GetAxis("Vertical") * moveSpeed * Time.deltaTime;
Vector3 move = transform.right * horizontal + transform.forward * vertical;
transform.position += move;
// 相机旋转
if (Input.GetMouseButtonDown(1))
{
lastMousePosition = Input.mousePosition;
isDragging = true;
SyncRotation();
}
if (Input.GetMouseButtonUp(1))
{
isDragging = false;
}
if (isDragging)
{
Vector3 mouseDelta = Input.mousePosition - lastMousePosition; // 反转了鼠标差值
lastMousePosition = Input.mousePosition;
xRotation -= mouseDelta.y * rotateSpeed; // 反转了X轴旋转方向
yRotation += mouseDelta.x * rotateSpeed;
// 限制 X 轴旋转范围
xRotation = Mathf.Clamp(xRotation, -xRotationLimit, xRotationLimit);
//// 限制 Y 轴旋转范围
//if (minRotationLimitY!=-1&&maxRotationLimitY!=-1)
//{
// yRotation = Mathf.Clamp(yRotation, minRotationLimitY, maxRotationLimitY);
//}
transform.rotation = Quaternion.Euler(xRotation, yRotation, 0);
}
}
}
// 公共方法:旋转相机到指定方向
public void LookAtPos(Vector3 direction)
{
Quaternion targetRotation = Quaternion.LookRotation(direction);
transform.rotation = targetRotation;
SyncRotation();
}
public void Rotate(Vector3 eulerAngels)
{
transform.eulerAngles = eulerAngels;
SyncRotation();
}
public void SyncRotation()
{
Vector3 currentRotation = transform.eulerAngles;
xRotation = currentRotation.x;
yRotation = currentRotation.y;
transform.eulerAngles = currentRotation;
//minRotationLimitY = currentRotation.y - yRotationLimit / 2;
//maxRotationLimitY = currentRotation.y + yRotationLimit / 2;
}
public void SetLock(bool isLock)
{
this.isLock = isLock;
}
}

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: a0a5a98a325af5e438058b6a2ac853df guid: 0a0782d2b4482d547ad00c06c17202a4
MonoImporter: MonoImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 2 serializedVersion: 2

View File

@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: 9c01f2815492c944090a79c7314cccc6
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,16 +0,0 @@
// Generate Id:d2d1da68-c3e5-49ea-97bc-bb83df3376bf
using UnityEngine;
// 1.请在菜单 编辑器扩展/Namespace Settings 里设置命名空间
// 2.命名空间更改后,生成代码之后,需要把逻辑代码文件(非 Designer的命名空间手动更改
namespace QFramework.Example
{
public partial class UICameraView
{
public UnityEngine.UI.Button Near;
public UnityEngine.UI.Button Normal;
}
}

View File

@ -1,20 +0,0 @@
using UnityEngine;
using QFramework;
// 1.请在菜单 编辑器扩展/Namespace Settings 里设置命名空间
// 2.命名空间更改后,生成代码之后,需要把逻辑代码文件(非 Designer的命名空间手动更改
namespace QFramework.Example
{
public partial class UICameraView : ViewController
{
void Start()
{
}
//public void Set
}
}

View File

@ -16,6 +16,10 @@ public class Global : Singleton<Global>
public static string deviceIconsPath = dataPath + "/DeviceIcons/"; public static string deviceIconsPath = dataPath + "/DeviceIcons/";
public static string audioPath = dataPath + "/Audio/"; public static string audioPath = dataPath + "/Audio/";
public static string appXmlPath = dataPath + "/App.xml"; public static string appXmlPath = dataPath + "/App.xml";
public static APPSetting appSetting { get; } = new APPSetting();
public enum AppType public enum AppType
{ {
UnKnow = 1 << 0, UnKnow = 1 << 0,

View File

@ -63,6 +63,7 @@ namespace QFramework.Example
protected override void OnHide() protected override void OnHide()
{ {
AudioKit.StopVoice();
} }
protected override void OnClose() protected override void OnClose()

View File

@ -21,14 +21,12 @@ namespace QFramework.Example
{ {
Hide(); Hide();
Global.appTpe = Global.AppType.Study; Global.appTpe = Global.AppType.Study;
AppContext.Interface.RegisterSystem(new StudySystem());
UIKit.OpenPanelAsync<UIModuleSelect>().ToAction().StartGlobal(); UIKit.OpenPanelAsync<UIModuleSelect>().ToAction().StartGlobal();
}); });
ExamBtn.onClick.AddListener(() => ExamBtn.onClick.AddListener(() =>
{ {
Hide(); Hide();
Global.appTpe = Global.AppType.Exam; Global.appTpe = Global.AppType.Exam;
AppContext.Interface.RegisterSystem(new ExamSystem());
UIKit.OpenPanelAsync<UIModuleSelect>().ToAction().StartGlobal(); UIKit.OpenPanelAsync<UIModuleSelect>().ToAction().StartGlobal();
}); });
} }

View File

@ -5,7 +5,7 @@ using QFramework;
namespace QFramework.Example namespace QFramework.Example
{ {
// Generate Id:0e522be9-ecd5-4d1e-abce-df32bb60fd4b // Generate Id:b2f3cf3c-e3c6-4957-b964-f4c204beae24
public partial class UISetting public partial class UISetting
{ {
public const string Name = "UISetting"; public const string Name = "UISetting";
@ -17,6 +17,12 @@ namespace QFramework.Example
[SerializeField] [SerializeField]
public UnityEngine.UI.Slider VoiceSlider; public UnityEngine.UI.Slider VoiceSlider;
[SerializeField] [SerializeField]
public UnityEngine.UI.Button MouseAdd;
[SerializeField]
public UnityEngine.UI.Button MouseSub;
[SerializeField]
public UnityEngine.UI.Slider MouseSlider;
[SerializeField]
public UnityEngine.UI.Button ConfirmBtn; public UnityEngine.UI.Button ConfirmBtn;
private UISettingData mPrivateData = null; private UISettingData mPrivateData = null;
@ -26,6 +32,9 @@ namespace QFramework.Example
VoiceAdd = null; VoiceAdd = null;
VoiceSub = null; VoiceSub = null;
VoiceSlider = null; VoiceSlider = null;
MouseAdd = null;
MouseSub = null;
MouseSlider = null;
ConfirmBtn = null; ConfirmBtn = null;
mData = null; mData = null;

View File

@ -1,6 +1,7 @@
using UnityEngine; using UnityEngine;
using UnityEngine.UI; using UnityEngine.UI;
using QFramework; using QFramework;
using UnityEngine.EventSystems;
namespace QFramework.Example namespace QFramework.Example
{ {
@ -20,9 +21,37 @@ namespace QFramework.Example
AudioKit.Settings.MusicVolume.Value = volume; AudioKit.Settings.MusicVolume.Value = volume;
}); });
Global.appSetting.MouseMoveSpeed.RegisterWithInitValue(v => MouseSlider.value = v).UnRegisterWhenGameObjectDestroyed(this);
MouseSlider.onValueChanged.AddListener(speed =>
{
Global.appSetting.MouseMoveSpeed.Value = speed;
});
VoiceAdd.onClick.AddListener(() => OnVolumeChange(0.1f));
VoiceSub.onClick.AddListener(() => OnVolumeChange(-0.1f));
MouseAdd.onClick.AddListener(() => OnMouseSpeedChange(0.01f));
MouseSub.onClick.AddListener(() => OnMouseSpeedChange(-0.01f));
ConfirmBtn.onClick.AddListener(Hide); ConfirmBtn.onClick.AddListener(Hide);
} }
public void OnMouseSpeedChange(float value)
{
if (Global.appSetting.MouseMoveSpeed.Value > 0.01f && Global.appSetting.MouseMoveSpeed.Value < 0.1f)
{
Global.appSetting.MouseMoveSpeed.Value += value;
}
}
public void OnVolumeChange(float value)
{
if (AudioKit.Settings.MusicVolume.Value > 0.1f && AudioKit.Settings.MusicVolume.Value < 1f)
{
AudioKit.Settings.MusicVolume.Value += value;
}
}
protected override void OnOpen(IUIData uiData = null) protected override void OnOpen(IUIData uiData = null)
{ {
} }

View File

@ -58,6 +58,7 @@ namespace QFramework.Example
protected override void OnHide() protected override void OnHide()
{ {
AudioKit.StopVoice();
} }
protected override void OnClose() protected override void OnClose()

View File

@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: 5f43f33ac59957640b8da293459625d8
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -633,8 +633,6 @@
<Action type="Btns" value="下一步,上一步,确定,取消"></Action> <Action type="Btns" value="下一步,上一步,确定,取消"></Action>
<Action type="CameraSwitch" nearPos="-3.543,3.007,-1.463" nearRot="27.9597,270,2.899792E-06" normalPos="-3.206,3.24,-1.425" normalRot="27.9597,270,2.899792E-06" isNear="false"></Action> <Action type="CameraSwitch" nearPos="-3.543,3.007,-1.463" nearRot="27.9597,270,2.899792E-06" normalPos="-3.206,3.24,-1.425" normalRot="27.9597,270,2.899792E-06" isNear="false"></Action>
<Action type="SetScore" name="术前准备器械准备" value="6.5"></Action> <Action type="SetScore" name="术前准备器械准备" value="6.5"></Action>
<!--<Action type="Move" value="Main Camera" to="-3.206,3.24,-1.425" time="0"></Action>
<Action type="Rotate" value="Main Camera" to="27.9597,270,2.899792E-06" time="0"></Action>-->
<Action type="Hint" value="请在右侧物品栏中,点选当前实训所需的器械" time="-1" icon="true" audio="Q001.mp3"></Action> <Action type="Hint" value="请在右侧物品栏中,点选当前实训所需的器械" time="-1" icon="true" audio="Q001.mp3"></Action>
<Action type="UITools" devices="创巾钳,直止血钳,弯止血钳,组织钳,尖剪,钝剪,持针钳,无齿镊,手术刀柄3号,刀片23号,肠钳,肾形盘,器械盒,S拉钩,铁锤,撬骨板,咬骨钳,骨刀,手术刀柄4号,手术刀片16号" answers="创巾钳,直止血钳,弯止血钳,组织钳,尖剪,钝剪,持针钳,无齿镊,手术刀柄3号,刀片23号,肠钳,肾形盘,器械盒,S拉钩" <Action type="UITools" devices="创巾钳,直止血钳,弯止血钳,组织钳,尖剪,钝剪,持针钳,无齿镊,手术刀柄3号,刀片23号,肠钳,肾形盘,器械盒,S拉钩,铁锤,撬骨板,咬骨钳,骨刀,手术刀柄4号,手术刀片16号" answers="创巾钳,直止血钳,弯止血钳,组织钳,尖剪,钝剪,持针钳,无齿镊,手术刀柄3号,刀片23号,肠钳,肾形盘,器械盒,S拉钩"
setActive="true" setActive="true"
@ -685,8 +683,8 @@
<Start> <Start>
<Action type="Sequence"> <Action type="Sequence">
<Action type="SetScore" name="术前准备耗材准备" value="15.5"></Action> <Action type="SetScore" name="术前准备耗材准备" value="15.5"></Action>
<Action type="Move" value="Main Camera" to="-5.532,3.438,-4" time="0"></Action> <Action type="Move" value="FlyCamera" to="-5.532,3.438,-4" time="0"></Action>
<Action type="Rotate" value="Main Camera" to="28.81702,180,0" time="0"></Action> <Action type="Rotate" value="FlyCamera" to="28.81702,180,0" time="0"></Action>
<Action type="Hint" value="请在右侧物品栏中,点选当前实训所需的耗材" time="-1" icon="true" audio="q001.mp3"></Action> <Action type="Hint" value="请在右侧物品栏中,点选当前实训所需的耗材" time="-1" icon="true" audio="q001.mp3"></Action>
<Action type="UITools" <Action type="UITools"
devices="电动剃毛刀,医用外科罩,无菌敷料,纱布绷带,24G静脉留置针,一次性注射器,纸胶带,弹性粘性绷带,大胶带,刷手毛刷,宠物电子体温计,一次性注射器1,肝素帽,创巾,保定保温毛巾,带针PGA缝线,听诊器,一次性手术帽,一次性手术衣,一次性外科灭菌手套,无菌擦手纸,无菌纱布,酒精棉球,碘伏棉球,T管,冲洗管,钢丝,骨钉,骨蜡" devices="电动剃毛刀,医用外科罩,无菌敷料,纱布绷带,24G静脉留置针,一次性注射器,纸胶带,弹性粘性绷带,大胶带,刷手毛刷,宠物电子体温计,一次性注射器1,肝素帽,创巾,保定保温毛巾,带针PGA缝线,听诊器,一次性手术帽,一次性手术衣,一次性外科灭菌手套,无菌擦手纸,无菌纱布,酒精棉球,碘伏棉球,T管,冲洗管,钢丝,骨钉,骨蜡"
@ -714,8 +712,8 @@
<Start> <Start>
<Action type="Sequence"> <Action type="Sequence">
<Action type="UIShow" value="UITools" isShow="false"></Action> <Action type="UIShow" value="UITools" isShow="false"></Action>
<Action type="Move" value="Main Camera" to="-3.206,3.24,-1.425" time="0"></Action> <Action type="Move" value="FlyCamera" to="-3.206,3.24,-1.425" time="0"></Action>
<Action type="Rotate" value="Main Camera" to="27.9597,270,2.899792E-06" time="0"></Action> <Action type="Rotate" value="FlyCamera" to="27.9597,270,2.899792E-06" time="0"></Action>
<Action type="Btns" value="下一步"></Action> <Action type="Btns" value="下一步"></Action>
<Condition type="UIClick" value="UIRoot/Common/UIBtns/BtnContent/下一步"></Condition> <Condition type="UIClick" value="UIRoot/Common/UIBtns/BtnContent/下一步"></Condition>
<Action type="NextOperation"></Action> <Action type="NextOperation"></Action>
@ -726,50 +724,71 @@
</Operation> </Operation>
<Operation moduleType="Study"> <Operation moduleType="Study">
<Step name="内容介绍"> <Step name="术前准备">
<Step name="学习目的"> <Step name="器械准备">
<Reset> <Reset>
<Action type="Log" value="1-1步重置"></Action>
</Reset> </Reset>
<Start> <Start>
<Action type="Sequence"> <Action type="Sequence">
<Action type="TextTip" value="通过学习假死仔猪急救知识,拯救初生濒临死亡仔猪,可提高猪场的出栏量,增加经济效益。" audio="Z001.mp3" btns="确定"/> <Action type="LockCamera" value="true" />
<Condition type="UIClick" value="UIRoot/PopUI/UITextTip/Mask/Connt/BtnContent/确定"></Condition> <Action type="TextTip" value="这里是文字描述" audio="q001.mp3" btns="确定,取消"/>
<Action type="Move" value="FlyCamera" to="-3.206,3.24,-1.425" time="0"></Action>
<Action type="Rotate" value="FlyCamera" to="27.9597,270,2.899792E-06" time="0"></Action>
<Action type="Btns" value="下一步"></Action>
<Condition type="UIClick" value="UIRoot/Common/UIBtns/BtnContent/下一步"></Condition>
<Action type="NextOperation"></Action> <Action type="NextOperation"></Action>
</Action> </Action>
</Start> </Start>
</Step> </Step>
<Step name="假死猪的特征"> <Step name="药品准备">
<Reset>
</Reset>
<Start>
<Action type="Sequence">
<Action type="TextTip" value="①刚出生3min内的仔猪没有呼吸或呼吸微弱皮温触摸正常精神差四肢轻微抖动无法站立。严重情况类似昏睡状态有微弱心跳或脐带跳动此种表现为经典假死猪的症状。
②出生仔猪无呼吸,轻轻拍打无反应,皮温触摸与常温接近,无心跳或脐带无跳动则为死胎。" audio="Z002.mp3" btns="确定"/>
<Condition type="UIClick" value="UIRoot/PopUI/UITextTip/Mask/Connt/BtnContent/确定"></Condition>
<Action type="NextOperation"></Action>
</Action>
</Start>
</Step>
<Step name="假死仔猪发生的原因归纳">
<Reset> <Reset>
<Action type="Log" value="1-2步重置"></Action> <Action type="Log" value="1-2步重置"></Action>
</Reset> </Reset>
<Start> <Start>
<Action type="Sequence"> <Action type="Sequence">
<Action type="TextTip" value="①母猪产程过长正常母猪分娩产程4~6h平均20min分娩一头如超过30min未继续分娩而仔猪脐带已断裂则有可能出现胎儿窒息假死情况。 <Action type="Move" value="FlyCamera" to="-3.942,3.24,-4.319" time="0"></Action>
②母猪体格过肥,影响母猪产程,导致胎儿出生后发生假死情况。 <Action type="Rotate" value="FlyCamera" to="16.42331,180,0" time="0"></Action>
③母猪怀孕35天后饲喂量大于2.4kg/天至114天分娩导致仔猪个体过大无法顺利分娩。 <Action type="Btns" value="下一步"></Action>
④先天性原因,母体产道畸形或初产母猪产道狭窄,导致仔猪难产。 <Condition type="UIClick" value="UIRoot/Common/UIBtns/BtnContent/下一步"></Condition>
⑤新出生后仔猪被胎衣包裹时间较长,未被及时发现而发生窒息。" audio="Z003.mp3" btns="确定"/>
<Condition type="UIClick" value="UIRoot/PopUI/UITextTip/Mask/Connt/BtnContent/确定"></Condition>
<Action type="NextOperation"></Action> <Action type="NextOperation"></Action>
</Action> </Action>
</Start> </Start>
</Step> </Step>
</Step>
<Step name="操作准备"> <Step name="耗材准备">
<Step name="物品准备">
<Reset> <Reset>
<Action type="Log" value="1-2步重置"></Action>
</Reset>
<Start>
<Action type="Sequence">
<Action type="Move" value="FlyCamera" to="-5.532,3.438,-4" time="0"></Action>
<Action type="Rotate" value="FlyCamera" to="28.81702,180,0" time="0"></Action>
<Action type="Btns" value="下一步"></Action>
<Condition type="UIClick" value="UIRoot/Common/UIBtns/BtnContent/下一步"></Condition>
<Action type="NextOperation"></Action>
</Action>
</Start>
</Step>
<Step name="主刀人员准备">
<Reset>
</Reset>
<Start>
<Action type="Sequence">
<Action type="Move" value="FlyCamera" to="-3.102,1.519,0.357" time="0"></Action>
<Action type="Rotate" value="FlyCamera" to="0,90,0" time="0"></Action>
<Action type="Btns" value="下一步"></Action>
<Condition type="UIClick" value="UIRoot/Common/UIBtns/BtnContent/下一步"></Condition>
<Action type="NextOperation"></Action>
</Action>
</Start>
<Finished>
<Action type="Log" value="2-1步完成"></Action>
</Finished>
</Step>
<Step name="第一助手准备">
<Reset>
<Action type="Log" value="2-1步重置"></Action>
</Reset> </Reset>
<Start> <Start>
<Action type="Sequence"> <Action type="Sequence">
@ -778,6 +797,116 @@
<Action type="NextOperation"></Action> <Action type="NextOperation"></Action>
</Action> </Action>
</Start> </Start>
<Finished>
<Action type="Log" value="2-1步完成"></Action>
</Finished>
</Step>
<Step name="第二助手准备">
<Reset>
<Action type="Log" value="2-1步重置"></Action>
</Reset>
<Start>
<Action type="Sequence">
<Action type="Btns" value="下一步"></Action>
<Condition type="UIClick" value="UIRoot/Common/UIBtns/BtnContent/下一步"></Condition>
<Action type="NextOperation"></Action>
</Action>
</Start>
<Finished>
<Action type="Log" value="2-1步完成"></Action>
</Finished>
</Step>
<Step name="麻醉监护人员准备">
<Reset>
<Action type="Log" value="2-1步重置"></Action>
</Reset>
<Start>
<Action type="Sequence">
<Action type="Btns" value="下一步"></Action>
<Condition type="UIClick" value="UIRoot/Common/UIBtns/BtnContent/下一步"></Condition>
<Action type="NextOperation"></Action>
</Action>
</Start>
<Finished>
<Action type="Log" value="2-1步完成"></Action>
</Finished>
</Step>
<Step name="手术动物准备">
<Reset>
<Action type="Log" value="2-1步重置"></Action>
</Reset>
<Start>
<Action type="Sequence">
<Action type="Btns" value="下一步"></Action>
<Condition type="UIClick" value="UIRoot/Common/UIBtns/BtnContent/下一步"></Condition>
<Action type="NextOperation"></Action>
</Action>
</Start>
<Finished>
<Action type="Log" value="2-1步完成"></Action>
</Finished>
</Step>
<Step name="术部剃毛准备">
<Reset>
<Action type="Log" value="2-1步重置"></Action>
</Reset>
<Start>
<Action type="Sequence">
<Action type="Btns" value="下一步"></Action>
<Condition type="UIClick" value="UIRoot/Common/UIBtns/BtnContent/下一步"></Condition>
<Action type="NextOperation"></Action>
</Action>
</Start>
<Finished>
<Action type="Log" value="2-1步完成"></Action>
</Finished>
</Step>
<Step name="术部备皮准备">
<Reset>
<Action type="Log" value="2-1步重置"></Action>
</Reset>
<Start>
<Action type="Sequence">
<Action type="Btns" value="下一步"></Action>
<Condition type="UIClick" value="UIRoot/Common/UIBtns/BtnContent/下一步"></Condition>
<Action type="NextOperation"></Action>
</Action>
</Start>
<Finished>
<Action type="Log" value="2-1步完成"></Action>
</Finished>
</Step>
<Step name="术部消毒准备">
<Reset>
<Action type="Log" value="2-1步重置"></Action>
</Reset>
<Start>
<Action type="Sequence">
<Action type="Btns" value="下一步"></Action>
<Condition type="UIClick" value="UIRoot/Common/UIBtns/BtnContent/下一步"></Condition>
<Action type="NextOperation"></Action>
</Action>
</Start>
<Finished>
<Action type="Log" value="2-1步完成"></Action>
</Finished>
</Step>
<Step name="手术室准备">
<Reset>
<Action type="Log" value="2-1步重置"></Action>
</Reset>
<Start>
<Action type="Sequence">
<Action type="Btns" value="下一步"></Action>
<Condition type="UIClick" value="UIRoot/Common/UIBtns/BtnContent/下一步"></Condition>
<Action type="NextOperation"></Action>
</Action>
</Start>
<Finished>
<Action type="Log" value="2-1步完成"></Action>
</Finished>
</Step> </Step>
</Step> </Step>
</Operation> </Operation>

View File

@ -49,6 +49,8 @@
<Condition type="Var" name="变量名" value="1"></Condition> <Condition type="Var" name="变量名" value="1"></Condition>
<!--文字弹窗 按钮可以多个 点击事件使用UIClick--> <!--文字弹窗 按钮可以多个 点击事件使用UIClick-->
<Action type="TextTip" value="这里是文字描述" audio="q001.mp3" btns="确定,取消"/> <Action type="TextTip" value="这里是文字描述" audio="q001.mp3" btns="确定,取消"/>
<!--锁定镜头 value为是否锁定-->
<Action type="LockCamera" value="true" />
<Module> <Module>
<!--场景名字--> <!--场景名字-->
<Scene>Scene</Scene> <Scene>Scene</Scene>