AR骑行和对战

This commit is contained in:
lishuo 2022-08-17 18:28:28 +08:00
parent 341d386196
commit 3bcb3ee83e
51 changed files with 146686 additions and 4950 deletions

View File

@ -2,7 +2,7 @@
%TAG !u! tag:unity3d.com,2011: %TAG !u! tag:unity3d.com,2011:
--- !u!1107 &-8337007608510410168 --- !u!1107 &-8337007608510410168
AnimatorStateMachine: AnimatorStateMachine:
serializedVersion: 5 serializedVersion: 6
m_ObjectHideFlags: 1 m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
@ -42,7 +42,7 @@ AnimatorStateMachine:
m_DefaultState: {fileID: 4337543228220508350} m_DefaultState: {fileID: 4337543228220508350}
--- !u!1102 &-7209952864988691809 --- !u!1102 &-7209952864988691809
AnimatorState: AnimatorState:
serializedVersion: 5 serializedVersion: 6
m_ObjectHideFlags: 1 m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
@ -71,7 +71,7 @@ AnimatorState:
m_TimeParameter: m_TimeParameter:
--- !u!1102 &-7110948734893641493 --- !u!1102 &-7110948734893641493
AnimatorState: AnimatorState:
serializedVersion: 5 serializedVersion: 6
m_ObjectHideFlags: 1 m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
@ -204,7 +204,7 @@ AnimatorStateTransition:
m_CanTransitionToSelf: 1 m_CanTransitionToSelf: 1
--- !u!1102 &-5166529910487830129 --- !u!1102 &-5166529910487830129
AnimatorState: AnimatorState:
serializedVersion: 5 serializedVersion: 6
m_ObjectHideFlags: 1 m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
@ -284,7 +284,7 @@ AnimatorStateTransition:
m_CanTransitionToSelf: 1 m_CanTransitionToSelf: 1
--- !u!1102 &-2278438292350793016 --- !u!1102 &-2278438292350793016
AnimatorState: AnimatorState:
serializedVersion: 5 serializedVersion: 6
m_ObjectHideFlags: 1 m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
@ -360,7 +360,7 @@ AnimatorController:
m_Controller: {fileID: 9100000} m_Controller: {fileID: 9100000}
--- !u!1102 &372171977578010894 --- !u!1102 &372171977578010894
AnimatorState: AnimatorState:
serializedVersion: 5 serializedVersion: 6
m_ObjectHideFlags: 1 m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
@ -512,7 +512,7 @@ AnimatorStateTransition:
m_CanTransitionToSelf: 1 m_CanTransitionToSelf: 1
--- !u!1102 &4337543228220508350 --- !u!1102 &4337543228220508350
AnimatorState: AnimatorState:
serializedVersion: 5 serializedVersion: 6
m_ObjectHideFlags: 1 m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}
@ -539,7 +539,7 @@ AnimatorState:
m_TimeParameter: m_TimeParameter:
--- !u!1102 &4518970819921576205 --- !u!1102 &4518970819921576205
AnimatorState: AnimatorState:
serializedVersion: 5 serializedVersion: 6
m_ObjectHideFlags: 1 m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0} m_PrefabInstance: {fileID: 0}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 0517162e1df19834c8803b77a4989974
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 9100000
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 8fd1c81403ffecf42872c962a12ef459
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 6cae07749732f9d4aa6831e43ea65d68
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 8316bc64da5e36b46a4179ef3992a6ea
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 22aa2149ea8cdb24cbddcb85d68d195e
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because it is too large Load Diff

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: 2fe2d472537f7874797d676190b7255a guid: 8dbea9aad771f804bb1069a7f3f6dd0f
PrefabImporter: PrefabImporter:
externalObjects: {} externalObjects: {}
userData: userData:

File diff suppressed because it is too large Load Diff

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: 1857b202bf5b0dd41b6f7f76b5c837f8 guid: 6579aed2843b76a45a4f02f7dc441443
PrefabImporter: PrefabImporter:
externalObjects: {} externalObjects: {}
userData: userData:

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 1857b202bf5b0dd41b6f7f76b5c837f8
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 2fe2d472537f7874797d676190b7255a
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -5216,6 +5216,11 @@ PrefabInstance:
propertyPath: m_SizeDelta.x propertyPath: m_SizeDelta.x
value: 0 value: 0
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 4262002137616777671, guid: 3a88f1158e6bd6a4ba0d3f37f99e9ea3,
type: 3}
propertyPath: m_Texture
value:
objectReference: {fileID: 8400000, guid: 4c5d51d5defac9346b0426fbc6682e85, type: 2}
- target: {fileID: 4262002137616777671, guid: 3a88f1158e6bd6a4ba0d3f37f99e9ea3, - target: {fileID: 4262002137616777671, guid: 3a88f1158e6bd6a4ba0d3f37f99e9ea3,
type: 3} type: 3}
propertyPath: m_Material propertyPath: m_Material
@ -5666,6 +5671,11 @@ PrefabInstance:
propertyPath: m_SizeDelta.x propertyPath: m_SizeDelta.x
value: 0 value: 0
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 4262002137616777671, guid: 3a88f1158e6bd6a4ba0d3f37f99e9ea3,
type: 3}
propertyPath: m_Texture
value:
objectReference: {fileID: 8400000, guid: 706421433917b654abc144d5bf85da77, type: 2}
- target: {fileID: 4262002137616777671, guid: 3a88f1158e6bd6a4ba0d3f37f99e9ea3, - target: {fileID: 4262002137616777671, guid: 3a88f1158e6bd6a4ba0d3f37f99e9ea3,
type: 3} type: 3}
propertyPath: m_Material propertyPath: m_Material
@ -5851,6 +5861,11 @@ PrefabInstance:
propertyPath: m_SizeDelta.x propertyPath: m_SizeDelta.x
value: 0 value: 0
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 4262002137616777671, guid: 3a88f1158e6bd6a4ba0d3f37f99e9ea3,
type: 3}
propertyPath: m_Texture
value:
objectReference: {fileID: 8400000, guid: 80b1b34aa3237e147a91685cbd7df512, type: 2}
- target: {fileID: 4262002137616777671, guid: 3a88f1158e6bd6a4ba0d3f37f99e9ea3, - target: {fileID: 4262002137616777671, guid: 3a88f1158e6bd6a4ba0d3f37f99e9ea3,
type: 3} type: 3}
propertyPath: m_Material propertyPath: m_Material
@ -6041,6 +6056,11 @@ PrefabInstance:
propertyPath: m_SizeDelta.x propertyPath: m_SizeDelta.x
value: 0 value: 0
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 4262002137616777671, guid: 3a88f1158e6bd6a4ba0d3f37f99e9ea3,
type: 3}
propertyPath: m_Texture
value:
objectReference: {fileID: 8400000, guid: 5ab185c6c7e24694db7ccfa2ccb3cc1a, type: 2}
- target: {fileID: 4262002137616777671, guid: 3a88f1158e6bd6a4ba0d3f37f99e9ea3, - target: {fileID: 4262002137616777671, guid: 3a88f1158e6bd6a4ba0d3f37f99e9ea3,
type: 3} type: 3}
propertyPath: m_Material propertyPath: m_Material
@ -6226,6 +6246,11 @@ PrefabInstance:
propertyPath: m_SizeDelta.x propertyPath: m_SizeDelta.x
value: 0 value: 0
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 4262002137616777671, guid: 3a88f1158e6bd6a4ba0d3f37f99e9ea3,
type: 3}
propertyPath: m_Texture
value:
objectReference: {fileID: 8400000, guid: dd3ed920abe40ed4d80d199167b8f376, type: 2}
- target: {fileID: 4262002137616777671, guid: 3a88f1158e6bd6a4ba0d3f37f99e9ea3, - target: {fileID: 4262002137616777671, guid: 3a88f1158e6bd6a4ba0d3f37f99e9ea3,
type: 3} type: 3}
propertyPath: m_Material propertyPath: m_Material

View File

@ -661,7 +661,6 @@ GameObject:
- component: {fileID: 1429559310958506576} - component: {fileID: 1429559310958506576}
- component: {fileID: 1429559310958506578} - component: {fileID: 1429559310958506578}
- component: {fileID: 1429559310958506579} - component: {fileID: 1429559310958506579}
- component: {fileID: 1429559310958506581}
- component: {fileID: 5945260196368435023} - component: {fileID: 5945260196368435023}
m_Layer: 5 m_Layer: 5
m_Name: Text m_Name: Text
@ -730,22 +729,6 @@ MonoBehaviour:
m_VerticalOverflow: 0 m_VerticalOverflow: 0
m_LineSpacing: 1 m_LineSpacing: 1
m_Text: LV.4 m_Text: LV.4
--- !u!114 &1429559310958506581
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1429559310958506577}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97bc2ebab6563400c95b036136d26ea6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Inverse: 0
m_MaskInteraction: 85
m_UseStencil: 1
m_RaycastFilter: 0
--- !u!114 &5945260196368435023 --- !u!114 &5945260196368435023
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -770,7 +753,6 @@ GameObject:
- component: {fileID: 1429559311417417473} - component: {fileID: 1429559311417417473}
- component: {fileID: 1429559311417417475} - component: {fileID: 1429559311417417475}
- component: {fileID: 1429559311417417472} - component: {fileID: 1429559311417417472}
- component: {fileID: 1429559311417417474}
- component: {fileID: 5393912659149242882} - component: {fileID: 5393912659149242882}
m_Layer: 5 m_Layer: 5
m_Name: Text m_Name: Text
@ -839,22 +821,6 @@ MonoBehaviour:
m_VerticalOverflow: 0 m_VerticalOverflow: 0
m_LineSpacing: 1 m_LineSpacing: 1
m_Text: LV.2 m_Text: LV.2
--- !u!114 &1429559311417417474
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1429559311417417534}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97bc2ebab6563400c95b036136d26ea6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Inverse: 0
m_MaskInteraction: 85
m_UseStencil: 1
m_RaycastFilter: 0
--- !u!114 &5393912659149242882 --- !u!114 &5393912659149242882
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -956,7 +922,6 @@ GameObject:
- component: {fileID: 1429559311438022001} - component: {fileID: 1429559311438022001}
- component: {fileID: 1429559311438022003} - component: {fileID: 1429559311438022003}
- component: {fileID: 1429559311438022000} - component: {fileID: 1429559311438022000}
- component: {fileID: 1429559311438022002}
- component: {fileID: 1969115851814221465} - component: {fileID: 1969115851814221465}
m_Layer: 5 m_Layer: 5
m_Name: Text m_Name: Text
@ -1025,22 +990,6 @@ MonoBehaviour:
m_VerticalOverflow: 0 m_VerticalOverflow: 0
m_LineSpacing: 1 m_LineSpacing: 1
m_Text: LV.3 m_Text: LV.3
--- !u!114 &1429559311438022002
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1429559311438021998}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97bc2ebab6563400c95b036136d26ea6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Inverse: 0
m_MaskInteraction: 85
m_UseStencil: 1
m_RaycastFilter: 0
--- !u!114 &1969115851814221465 --- !u!114 &1969115851814221465
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -1065,7 +1014,6 @@ GameObject:
- component: {fileID: 1429559311568624303} - component: {fileID: 1429559311568624303}
- component: {fileID: 1429559311568624305} - component: {fileID: 1429559311568624305}
- component: {fileID: 1429559311568624302} - component: {fileID: 1429559311568624302}
- component: {fileID: 1429559311568624304}
- component: {fileID: 8705045441853972928} - component: {fileID: 8705045441853972928}
m_Layer: 5 m_Layer: 5
m_Name: Text m_Name: Text
@ -1134,22 +1082,6 @@ MonoBehaviour:
m_VerticalOverflow: 0 m_VerticalOverflow: 0
m_LineSpacing: 1 m_LineSpacing: 1
m_Text: LV.1 m_Text: LV.1
--- !u!114 &1429559311568624304
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1429559311568624300}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97bc2ebab6563400c95b036136d26ea6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Inverse: 0
m_MaskInteraction: 85
m_UseStencil: 1
m_RaycastFilter: 0
--- !u!114 &8705045441853972928 --- !u!114 &8705045441853972928
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -1174,7 +1106,6 @@ GameObject:
- component: {fileID: 1429559312205511051} - component: {fileID: 1429559312205511051}
- component: {fileID: 1429559312205511053} - component: {fileID: 1429559312205511053}
- component: {fileID: 1429559312205511050} - component: {fileID: 1429559312205511050}
- component: {fileID: 1429559312205511052}
- component: {fileID: 4422988388417818063} - component: {fileID: 4422988388417818063}
m_Layer: 5 m_Layer: 5
m_Name: Text m_Name: Text
@ -1243,22 +1174,6 @@ MonoBehaviour:
m_VerticalOverflow: 0 m_VerticalOverflow: 0
m_LineSpacing: 1 m_LineSpacing: 1
m_Text: HC m_Text: HC
--- !u!114 &1429559312205511052
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1429559312205511048}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97bc2ebab6563400c95b036136d26ea6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Inverse: 0
m_MaskInteraction: 85
m_UseStencil: 1
m_RaycastFilter: 0
--- !u!114 &4422988388417818063 --- !u!114 &4422988388417818063
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -1690,7 +1605,6 @@ GameObject:
- component: {fileID: 1561963667172470244} - component: {fileID: 1561963667172470244}
- component: {fileID: 5980349432888802299} - component: {fileID: 5980349432888802299}
- component: {fileID: 4681475915644533501} - component: {fileID: 4681475915644533501}
- component: {fileID: 1231262206036010953}
m_Layer: 5 m_Layer: 5
m_Name: line00 m_Name: line00
m_TagString: Untagged m_TagString: Untagged
@ -1754,22 +1668,6 @@ MonoBehaviour:
m_FillOrigin: 0 m_FillOrigin: 0
m_UseSpriteMesh: 0 m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1 m_PixelsPerUnitMultiplier: 1
--- !u!114 &1231262206036010953
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2531465259114863209}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97bc2ebab6563400c95b036136d26ea6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Inverse: 0
m_MaskInteraction: 85
m_UseStencil: 1
m_RaycastFilter: 0
--- !u!1 &2619940535986648586 --- !u!1 &2619940535986648586
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -1781,7 +1679,6 @@ GameObject:
- component: {fileID: 2619940535986648585} - component: {fileID: 2619940535986648585}
- component: {fileID: 2619940535986648591} - component: {fileID: 2619940535986648591}
- component: {fileID: 2619940535986648584} - component: {fileID: 2619940535986648584}
- component: {fileID: 2619940535986648590}
- component: {fileID: 6916478057208669070} - component: {fileID: 6916478057208669070}
m_Layer: 5 m_Layer: 5
m_Name: Text m_Name: Text
@ -1850,22 +1747,6 @@ MonoBehaviour:
m_VerticalOverflow: 0 m_VerticalOverflow: 0
m_LineSpacing: 1 m_LineSpacing: 1
m_Text: FLAT m_Text: FLAT
--- !u!114 &2619940535986648590
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2619940535986648586}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97bc2ebab6563400c95b036136d26ea6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Inverse: 0
m_MaskInteraction: 85
m_UseStencil: 1
m_RaycastFilter: 0
--- !u!114 &6916478057208669070 --- !u!114 &6916478057208669070
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -2372,7 +2253,6 @@ GameObject:
- component: {fileID: 1225495726092536297} - component: {fileID: 1225495726092536297}
- component: {fileID: 8904234860186367652} - component: {fileID: 8904234860186367652}
- component: {fileID: 741383687698517461} - component: {fileID: 741383687698517461}
- component: {fileID: 3369533650645990172}
m_Layer: 5 m_Layer: 5
m_Name: Template m_Name: Template
m_TagString: Untagged m_TagString: Untagged
@ -2481,22 +2361,6 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
scrollSpeed: 10 scrollSpeed: 10
--- !u!114 &3369533650645990172
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3344798044730818033}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97bc2ebab6563400c95b036136d26ea6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Inverse: 0
m_MaskInteraction: 85
m_UseStencil: 1
m_RaycastFilter: 0
--- !u!1 &3729561503460600236 --- !u!1 &3729561503460600236
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -2692,7 +2556,6 @@ GameObject:
- component: {fileID: 905536587046769240} - component: {fileID: 905536587046769240}
- component: {fileID: 7350713559632145685} - component: {fileID: 7350713559632145685}
- component: {fileID: 1718446436582004324} - component: {fileID: 1718446436582004324}
- component: {fileID: 1429559311976359838}
m_Layer: 5 m_Layer: 5
m_Name: Template m_Name: Template
m_TagString: Untagged m_TagString: Untagged
@ -2801,22 +2664,6 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
scrollSpeed: 10 scrollSpeed: 10
--- !u!114 &1429559311976359838
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3745822250017908288}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97bc2ebab6563400c95b036136d26ea6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Inverse: 0
m_MaskInteraction: 85
m_UseStencil: 1
m_RaycastFilter: 0
--- !u!1 &3980532922793874755 --- !u!1 &3980532922793874755
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -3309,7 +3156,6 @@ GameObject:
- component: {fileID: 4167844826616894169} - component: {fileID: 4167844826616894169}
- component: {fileID: 4167844826616894164} - component: {fileID: 4167844826616894164}
- component: {fileID: 4167844826616894167} - component: {fileID: 4167844826616894167}
- component: {fileID: 4167844826616894166}
m_Layer: 5 m_Layer: 5
m_Name: line2 m_Name: line2
m_TagString: Untagged m_TagString: Untagged
@ -3373,22 +3219,6 @@ MonoBehaviour:
m_FillOrigin: 0 m_FillOrigin: 0
m_UseSpriteMesh: 0 m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1 m_PixelsPerUnitMultiplier: 1
--- !u!114 &4167844826616894166
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4167844826616894168}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97bc2ebab6563400c95b036136d26ea6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Inverse: 0
m_MaskInteraction: 85
m_UseStencil: 1
m_RaycastFilter: 0
--- !u!1 &4167844827205442558 --- !u!1 &4167844827205442558
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -3400,7 +3230,6 @@ GameObject:
- component: {fileID: 4167844827205442559} - component: {fileID: 4167844827205442559}
- component: {fileID: 4167844827205442557} - component: {fileID: 4167844827205442557}
- component: {fileID: 4167844827205442556} - component: {fileID: 4167844827205442556}
- component: {fileID: 4167844827205442554}
- component: {fileID: 4167844827205442546} - component: {fileID: 4167844827205442546}
m_Layer: 5 m_Layer: 5
m_Name: Button m_Name: Button
@ -3465,22 +3294,6 @@ MonoBehaviour:
m_FillOrigin: 0 m_FillOrigin: 0
m_UseSpriteMesh: 0 m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1 m_PixelsPerUnitMultiplier: 1
--- !u!114 &4167844827205442554
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4167844827205442558}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97bc2ebab6563400c95b036136d26ea6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Inverse: 0
m_MaskInteraction: 85
m_UseStencil: 1
m_RaycastFilter: 0
--- !u!114 &4167844827205442546 --- !u!114 &4167844827205442546
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -3792,7 +3605,6 @@ GameObject:
- component: {fileID: 4853418147711016675} - component: {fileID: 4853418147711016675}
- component: {fileID: 4853418147711016677} - component: {fileID: 4853418147711016677}
- component: {fileID: 4853418147711016674} - component: {fileID: 4853418147711016674}
- component: {fileID: 4853418147711016676}
m_Layer: 5 m_Layer: 5
m_Name: Text m_Name: Text
m_TagString: Untagged m_TagString: Untagged
@ -3860,22 +3672,6 @@ MonoBehaviour:
m_VerticalOverflow: 0 m_VerticalOverflow: 0
m_LineSpacing: 1 m_LineSpacing: 1
m_Text: 3D m_Text: 3D
--- !u!114 &4853418147711016676
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4853418147711016672}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97bc2ebab6563400c95b036136d26ea6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Inverse: 0
m_MaskInteraction: 85
m_UseStencil: 1
m_RaycastFilter: 0
--- !u!1 &4853418148442413175 --- !u!1 &4853418148442413175
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -3975,7 +3771,6 @@ GameObject:
- component: {fileID: 4853418148453060628} - component: {fileID: 4853418148453060628}
- component: {fileID: 4853418148453060630} - component: {fileID: 4853418148453060630}
- component: {fileID: 4853418148453060631} - component: {fileID: 4853418148453060631}
- component: {fileID: 4853418148453060617}
m_Layer: 5 m_Layer: 5
m_Name: Gou m_Name: Gou
m_TagString: Untagged m_TagString: Untagged
@ -4039,22 +3834,6 @@ MonoBehaviour:
m_FillOrigin: 0 m_FillOrigin: 0
m_UseSpriteMesh: 0 m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1 m_PixelsPerUnitMultiplier: 1
--- !u!114 &4853418148453060617
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4853418148453060629}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97bc2ebab6563400c95b036136d26ea6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Inverse: 0
m_MaskInteraction: 85
m_UseStencil: 1
m_RaycastFilter: 0
--- !u!1 &4853418148479202717 --- !u!1 &4853418148479202717
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -4066,7 +3845,6 @@ GameObject:
- component: {fileID: 4853418148479202716} - component: {fileID: 4853418148479202716}
- component: {fileID: 4853418148479202718} - component: {fileID: 4853418148479202718}
- component: {fileID: 4853418148479202719} - component: {fileID: 4853418148479202719}
- component: {fileID: 4853418148479202705}
- component: {fileID: 1036497913850961667} - component: {fileID: 1036497913850961667}
m_Layer: 5 m_Layer: 5
m_Name: Text m_Name: Text
@ -4135,22 +3913,6 @@ MonoBehaviour:
m_VerticalOverflow: 0 m_VerticalOverflow: 0
m_LineSpacing: 1 m_LineSpacing: 1
m_Text: Favorite m_Text: Favorite
--- !u!114 &4853418148479202705
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4853418148479202717}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97bc2ebab6563400c95b036136d26ea6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Inverse: 0
m_MaskInteraction: 85
m_UseStencil: 1
m_RaycastFilter: 0
--- !u!114 &1036497913850961667 --- !u!114 &1036497913850961667
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -4340,7 +4102,6 @@ GameObject:
- component: {fileID: 2068962248675101361} - component: {fileID: 2068962248675101361}
- component: {fileID: 4517557211376928917} - component: {fileID: 4517557211376928917}
- component: {fileID: 8275327971858597461} - component: {fileID: 8275327971858597461}
- component: {fileID: 7155673232822736579}
m_Layer: 5 m_Layer: 5
m_Name: Label m_Name: Label
m_TagString: Untagged m_TagString: Untagged
@ -4421,22 +4182,6 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
key: key:
--- !u!114 &7155673232822736579
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4951052648640690816}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97bc2ebab6563400c95b036136d26ea6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Inverse: 0
m_MaskInteraction: 85
m_UseStencil: 1
m_RaycastFilter: 0
--- !u!1 &4976321847170018841 --- !u!1 &4976321847170018841
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -4449,7 +4194,6 @@ GameObject:
- component: {fileID: 8652581546663444308} - component: {fileID: 8652581546663444308}
- component: {fileID: 3777352587783084344} - component: {fileID: 3777352587783084344}
- component: {fileID: 3240734978614877925} - component: {fileID: 3240734978614877925}
- component: {fileID: 4853418146790805965}
- component: {fileID: 4709470891637890102} - component: {fileID: 4709470891637890102}
m_Layer: 5 m_Layer: 5
m_Name: Text m_Name: Text
@ -4531,22 +4275,6 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
key: key:
--- !u!114 &4853418146790805965
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4976321847170018841}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97bc2ebab6563400c95b036136d26ea6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Inverse: 0
m_MaskInteraction: 85
m_UseStencil: 1
m_RaycastFilter: 0
--- !u!114 &4709470891637890102 --- !u!114 &4709470891637890102
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -5067,7 +4795,6 @@ GameObject:
- component: {fileID: 2226141154447078805} - component: {fileID: 2226141154447078805}
- component: {fileID: 549790744084946562} - component: {fileID: 549790744084946562}
- component: {fileID: 5261821097843933672} - component: {fileID: 5261821097843933672}
- component: {fileID: 7155673232822736578}
m_Layer: 5 m_Layer: 5
m_Name: Arrow m_Name: Arrow
m_TagString: Untagged m_TagString: Untagged
@ -5131,22 +4858,6 @@ MonoBehaviour:
m_FillOrigin: 0 m_FillOrigin: 0
m_UseSpriteMesh: 0 m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1 m_PixelsPerUnitMultiplier: 1
--- !u!114 &7155673232822736578
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5464789140640568869}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97bc2ebab6563400c95b036136d26ea6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Inverse: 0
m_MaskInteraction: 85
m_UseStencil: 1
m_RaycastFilter: 0
--- !u!1 &5548228236796360269 --- !u!1 &5548228236796360269
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -5939,7 +5650,6 @@ GameObject:
- component: {fileID: 5897143235756338798} - component: {fileID: 5897143235756338798}
- component: {fileID: 5897143235756338796} - component: {fileID: 5897143235756338796}
- component: {fileID: 5897143235756338797} - component: {fileID: 5897143235756338797}
- component: {fileID: 5897143235756338803}
m_Layer: 5 m_Layer: 5
m_Name: Gou m_Name: Gou
m_TagString: Untagged m_TagString: Untagged
@ -6003,22 +5713,6 @@ MonoBehaviour:
m_FillOrigin: 0 m_FillOrigin: 0
m_UseSpriteMesh: 0 m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1 m_PixelsPerUnitMultiplier: 1
--- !u!114 &5897143235756338803
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5897143235756338799}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97bc2ebab6563400c95b036136d26ea6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Inverse: 0
m_MaskInteraction: 85
m_UseStencil: 1
m_RaycastFilter: 0
--- !u!1 &5899460369825533945 --- !u!1 &5899460369825533945
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -6264,7 +5958,6 @@ GameObject:
- component: {fileID: 6045749279305270692} - component: {fileID: 6045749279305270692}
- component: {fileID: 8459334574793808192} - component: {fileID: 8459334574793808192}
- component: {fileID: 848916676143250497} - component: {fileID: 848916676143250497}
- component: {fileID: 4931435313610764894}
m_Layer: 5 m_Layer: 5
m_Name: line3 m_Name: line3
m_TagString: Untagged m_TagString: Untagged
@ -6328,22 +6021,6 @@ MonoBehaviour:
m_FillOrigin: 0 m_FillOrigin: 0
m_UseSpriteMesh: 0 m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1 m_PixelsPerUnitMultiplier: 1
--- !u!114 &4931435313610764894
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6108687169446096376}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97bc2ebab6563400c95b036136d26ea6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Inverse: 0
m_MaskInteraction: 85
m_UseStencil: 1
m_RaycastFilter: 0
--- !u!1 &6216688916544654740 --- !u!1 &6216688916544654740
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -6355,7 +6032,6 @@ GameObject:
- component: {fileID: 248857899902283300} - component: {fileID: 248857899902283300}
- component: {fileID: 1887560886041740595} - component: {fileID: 1887560886041740595}
- component: {fileID: 6094908572077873753} - component: {fileID: 6094908572077873753}
- component: {fileID: 1429559311976359905}
m_Layer: 5 m_Layer: 5
m_Name: Arrow m_Name: Arrow
m_TagString: Untagged m_TagString: Untagged
@ -6419,22 +6095,6 @@ MonoBehaviour:
m_FillOrigin: 0 m_FillOrigin: 0
m_UseSpriteMesh: 0 m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1 m_PixelsPerUnitMultiplier: 1
--- !u!114 &1429559311976359905
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6216688916544654740}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97bc2ebab6563400c95b036136d26ea6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Inverse: 0
m_MaskInteraction: 85
m_UseStencil: 1
m_RaycastFilter: 0
--- !u!1 &6336925162522053144 --- !u!1 &6336925162522053144
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -6717,7 +6377,6 @@ GameObject:
- component: {fileID: 82937608756433152} - component: {fileID: 82937608756433152}
- component: {fileID: 2531409183793468196} - component: {fileID: 2531409183793468196}
- component: {fileID: 8018403598796316132} - component: {fileID: 8018403598796316132}
- component: {fileID: 1429559311976359904}
m_Layer: 5 m_Layer: 5
m_Name: Label m_Name: Label
m_TagString: Untagged m_TagString: Untagged
@ -6798,22 +6457,6 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
key: key:
--- !u!114 &1429559311976359904
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6423651778393776433}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97bc2ebab6563400c95b036136d26ea6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Inverse: 0
m_MaskInteraction: 85
m_UseStencil: 1
m_RaycastFilter: 0
--- !u!1 &6470237566337987207 --- !u!1 &6470237566337987207
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -6953,7 +6596,6 @@ GameObject:
- component: {fileID: 6653062727056844769} - component: {fileID: 6653062727056844769}
- component: {fileID: 6653062727056844771} - component: {fileID: 6653062727056844771}
- component: {fileID: 6653062727056844768} - component: {fileID: 6653062727056844768}
- component: {fileID: 6653062727056844770}
m_Layer: 5 m_Layer: 5
m_Name: line0 m_Name: line0
m_TagString: Untagged m_TagString: Untagged
@ -7017,22 +6659,6 @@ MonoBehaviour:
m_FillOrigin: 0 m_FillOrigin: 0
m_UseSpriteMesh: 0 m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1 m_PixelsPerUnitMultiplier: 1
--- !u!114 &6653062727056844770
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6653062727056844702}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97bc2ebab6563400c95b036136d26ea6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Inverse: 0
m_MaskInteraction: 85
m_UseStencil: 1
m_RaycastFilter: 0
--- !u!1 &6653062727127522755 --- !u!1 &6653062727127522755
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -7542,7 +7168,6 @@ GameObject:
- component: {fileID: 6653062728066858165} - component: {fileID: 6653062728066858165}
- component: {fileID: 6653062728066858167} - component: {fileID: 6653062728066858167}
- component: {fileID: 6653062728066858164} - component: {fileID: 6653062728066858164}
- component: {fileID: 6653062728066858166}
- component: {fileID: 5962350034651268072} - component: {fileID: 5962350034651268072}
m_Layer: 5 m_Layer: 5
m_Name: DistanceText m_Name: DistanceText
@ -7611,22 +7236,6 @@ MonoBehaviour:
m_VerticalOverflow: 0 m_VerticalOverflow: 0
m_LineSpacing: 1 m_LineSpacing: 1
m_Text: Distance m_Text: Distance
--- !u!114 &6653062728066858166
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6653062728066858162}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97bc2ebab6563400c95b036136d26ea6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Inverse: 0
m_MaskInteraction: 85
m_UseStencil: 1
m_RaycastFilter: 0
--- !u!114 &5962350034651268072 --- !u!114 &5962350034651268072
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -7889,7 +7498,6 @@ GameObject:
- component: {fileID: 6653062728799582121} - component: {fileID: 6653062728799582121}
- component: {fileID: 6653062728799582122} - component: {fileID: 6653062728799582122}
- component: {fileID: 6653062728799582123} - component: {fileID: 6653062728799582123}
- component: {fileID: 6653062728799582120}
- component: {fileID: 1962162995673140223} - component: {fileID: 1962162995673140223}
m_Layer: 5 m_Layer: 5
m_Name: DifficultyText m_Name: DifficultyText
@ -7958,22 +7566,6 @@ MonoBehaviour:
m_VerticalOverflow: 0 m_VerticalOverflow: 0
m_LineSpacing: 1 m_LineSpacing: 1
m_Text: Difficulty m_Text: Difficulty
--- !u!114 &6653062728799582120
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6653062728799582118}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 97bc2ebab6563400c95b036136d26ea6, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Inverse: 0
m_MaskInteraction: 85
m_UseStencil: 1
m_RaycastFilter: 0
--- !u!114 &1962162995673140223 --- !u!114 &1962162995673140223
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -9985,15 +9577,15 @@ PrefabInstance:
m_RemovedComponents: m_RemovedComponents:
- {fileID: 7793409217181307314, guid: a1999d0576fee6248a9c5a507ae8d10e, type: 3} - {fileID: 7793409217181307314, guid: a1999d0576fee6248a9c5a507ae8d10e, type: 3}
m_SourcePrefab: {fileID: 100100000, guid: a1999d0576fee6248a9c5a507ae8d10e, type: 3} m_SourcePrefab: {fileID: 100100000, guid: a1999d0576fee6248a9c5a507ae8d10e, type: 3}
--- !u!1 &1500710352127235982 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 2638424933752433026, guid: a1999d0576fee6248a9c5a507ae8d10e,
type: 3}
m_PrefabInstance: {fileID: 3480729881595313676}
m_PrefabAsset: {fileID: 0}
--- !u!224 &1500710352127235983 stripped --- !u!224 &1500710352127235983 stripped
RectTransform: RectTransform:
m_CorrespondingSourceObject: {fileID: 2638424933752433027, guid: a1999d0576fee6248a9c5a507ae8d10e, m_CorrespondingSourceObject: {fileID: 2638424933752433027, guid: a1999d0576fee6248a9c5a507ae8d10e,
type: 3} type: 3}
m_PrefabInstance: {fileID: 3480729881595313676} m_PrefabInstance: {fileID: 3480729881595313676}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
--- !u!1 &1500710352127235982 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 2638424933752433026, guid: a1999d0576fee6248a9c5a507ae8d10e,
type: 3}
m_PrefabInstance: {fileID: 3480729881595313676}
m_PrefabAsset: {fileID: 0}

View File

@ -661,7 +661,7 @@ CanvasRenderer:
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 313551262} m_GameObject: {fileID: 313551262}
m_CullTransparentMesh: 0 m_CullTransparentMesh: 0
--- !u!21 &671919931 --- !u!21 &413758122
Material: Material:
serializedVersion: 6 serializedVersion: 6
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -841,7 +841,7 @@ Camera:
m_Depth: 0 m_Depth: 0
m_CullingMask: m_CullingMask:
serializedVersion: 2 serializedVersion: 2
m_Bits: 1847 m_Bits: 4919
m_RenderingPath: -1 m_RenderingPath: -1
m_TargetTexture: {fileID: 8400000, guid: 5ab185c6c7e24694db7ccfa2ccb3cc1a, type: 2} m_TargetTexture: {fileID: 8400000, guid: 5ab185c6c7e24694db7ccfa2ccb3cc1a, type: 2}
m_TargetDisplay: 0 m_TargetDisplay: 0
@ -1196,7 +1196,7 @@ Camera:
m_Depth: 0 m_Depth: 0
m_CullingMask: m_CullingMask:
serializedVersion: 2 serializedVersion: 2
m_Bits: 1847 m_Bits: 9015
m_RenderingPath: -1 m_RenderingPath: -1
m_TargetTexture: {fileID: 8400000, guid: 4c5d51d5defac9346b0426fbc6682e85, type: 2} m_TargetTexture: {fileID: 8400000, guid: 4c5d51d5defac9346b0426fbc6682e85, type: 2}
m_TargetDisplay: 0 m_TargetDisplay: 0
@ -1270,7 +1270,7 @@ Camera:
m_Depth: 0 m_Depth: 0
m_CullingMask: m_CullingMask:
serializedVersion: 2 serializedVersion: 2
m_Bits: 1847 m_Bits: 2871
m_RenderingPath: -1 m_RenderingPath: -1
m_TargetTexture: {fileID: 8400000, guid: 5ab185c6c7e24694db7ccfa2ccb3cc1a, type: 2} m_TargetTexture: {fileID: 8400000, guid: 5ab185c6c7e24694db7ccfa2ccb3cc1a, type: 2}
m_TargetDisplay: 0 m_TargetDisplay: 0
@ -1436,7 +1436,7 @@ Camera:
m_Depth: 0 m_Depth: 0
m_CullingMask: m_CullingMask:
serializedVersion: 2 serializedVersion: 2
m_Bits: 1847 m_Bits: 17207
m_RenderingPath: -1 m_RenderingPath: -1
m_TargetTexture: {fileID: 8400000, guid: 706421433917b654abc144d5bf85da77, type: 2} m_TargetTexture: {fileID: 8400000, guid: 706421433917b654abc144d5bf85da77, type: 2}
m_TargetDisplay: 0 m_TargetDisplay: 0
@ -1537,44 +1537,7 @@ Transform:
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_RootOrder: 6 m_RootOrder: 6
m_LocalEulerAnglesHint: {x: 0, y: -3.896, z: 0} m_LocalEulerAnglesHint: {x: 0, y: -3.896, z: 0}
--- !u!1 &1378474435 --- !u!21 &1038216837
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1378474436}
m_Layer: 5
m_Name: GameObject
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &1378474436
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1378474435}
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_Children:
- {fileID: 154299662}
- {fileID: 1426339559}
m_Father: {fileID: 273807004}
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: 0}
m_SizeDelta: {x: 1600, y: 900}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!21 &1407102072
Material: Material:
serializedVersion: 6 serializedVersion: 6
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -1660,6 +1623,43 @@ Material:
- _Color: {r: 1, g: 1, b: 1, a: 1} - _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1} - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _WidthHeightRadius: {r: 50, g: 50, b: 50, a: 0} - _WidthHeightRadius: {r: 50, g: 50, b: 50, a: 0}
--- !u!1 &1378474435
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1378474436}
m_Layer: 5
m_Name: GameObject
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &1378474436
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1378474435}
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_Children:
- {fileID: 154299662}
- {fileID: 1426339559}
m_Father: {fileID: 273807004}
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: 0}
m_SizeDelta: {x: 1600, y: 900}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!1001 &1426339558 --- !u!1001 &1426339558
PrefabInstance: PrefabInstance:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -2155,7 +2155,7 @@ Camera:
m_Depth: 0 m_Depth: 0
m_CullingMask: m_CullingMask:
serializedVersion: 2 serializedVersion: 2
m_Bits: 1847 m_Bits: 33591
m_RenderingPath: -1 m_RenderingPath: -1
m_TargetTexture: {fileID: 8400000, guid: dd3ed920abe40ed4d80d199167b8f376, type: 2} m_TargetTexture: {fileID: 8400000, guid: dd3ed920abe40ed4d80d199167b8f376, type: 2}
m_TargetDisplay: 0 m_TargetDisplay: 0

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -28,6 +28,8 @@ namespace Assets.Scripts.Apis.Models
/// ///
/// </summary> /// </summary>
public int? CompetitionId { get; set; } public int? CompetitionId { get; set; }
public int? RoomId { get; set; }
/// <summary> /// <summary>
/// ///
/// </summary> /// </summary>

View File

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

View File

@ -0,0 +1,97 @@
using Assets.Scenes.Ride.Scripts;
using System;
using System.Linq;
using UnityEngine;
using UnityEngine.UI;
namespace Assets.Scripts.Scenes.Scripts
{
class GameRoomPlayerList : MonoBehaviour
{
private CyclingController manager { get; set; }
protected GameObject nearByItem;
protected GameObject nearByMajorItem;
public Transform parent;
private Text num;
private void Start()
{
manager = FindObjectOfType<CyclingController>();
nearByMajorItem = Resources.Load<GameObject>("UI/Prefab/Match/CompetitionRankingMajorItem");
nearByItem = Resources.Load<GameObject>("UI/Prefab/Match/CompetitionRankingItem");
num = transform.Find("Head/OnlineUserNum").GetComponent<Text>();
}
private void InitData()
{
Utils.DestroyChildren(parent);
manager = FindObjectOfType<CyclingController>();
var list = MapUDPService.GetOnlineUsers(App.RouteIdParam, manager.roomId).OrderByDescending(c=>c.EndDistance);
int index = 1;
num.text = list.Count().ToString();
foreach (var item in list)
{
GameObject prefabItem = item.IsSelf ? nearByMajorItem : nearByItem;
GameObject newObj = (GameObject)Instantiate(prefabItem, parent);
var competitionRankingItem = newObj.GetComponent<CompetitionRankingItem>();
competitionRankingItem.setUserId(item.Id);
#if UNITY_IOS || UNITY_ANDROID
competitionRankingItem.SetRank(index);
#else
competitionRankingItem.SetRank(index);
#endif
competitionRankingItem.setName(item.Name);
competitionRankingItem.setRatio(item.WeightKg.ToString("f2") + "W/KG");
competitionRankingItem.setSpeed(item.Speed.ToString() + "KM/H");
competitionRankingItem.setHead(item.HeadImage);
var countryTexture = manager.GetCountryImageByName(item.Country);
competitionRankingItem.setCountry(countryTexture);
var near = Math.Round((item.EndDistance - manager.currentPlayer.TotalDistance) * 1000);
competitionRankingItem.setDistance(manager.currentPlayer.UserId == item.Id ? "0M" : near.ToString() + "M");
#if UNITY_IOS || UNITY_ANDROID
competitionRankingItem.transform.SetSiblingIndex(index);
#else
competitionRankingItem.transform.SetSiblingIndex(index);
#endif
index++;
}
}
float timer = 0f;
private void Update()
{
timer -= Time.deltaTime;
while (timer < 0)
{
InitData();
//if (manager.currentPlayer == null)
//var totalDitance = manager.GetMapData().TotalDistance;
//var currentDistance = manager.currentPlayer.TotalDistance;
////var currenList = GetComponentsInChildren<ListItem>(true);
//var list = MapUDPService.GetOnlineUsers(App.RouteIdParam, manager.cyclingController.recorderData.RoomId);
//var currentPlayerInfo = list.Where(c => c.Id.ToString() == manager.currentPlayer.UserId.ToString()).FirstOrDefault();
//list = list.Where(c => c.Id != App.CurrentUser.Id).ToList();
//var currentPlayer = FindObjectOfType<AbstractPlayer>();
//foreach (ListItem o in currenList)
//{
// if (currentPlayer.UserId.ToString() == o.Id)
// continue;
// var needUpdate = list.Where(c => c.Id.ToString() == o.Id).FirstOrDefault();
// if (needUpdate != null && currentPlayerInfo != null)
// {
// var left = Math.Round((needUpdate.EndDistance - currentPlayerInfo.EndDistance) * 1000);
// o.UpdateItem(needUpdate.Name, left.ToString() + "M", needUpdate.Id.ToString());
// o.gameObject.SetActive(true);
// }
// else
// {
// o.gameObject.SetActive(false);
// }
//}
timer += 1f;
}
}
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: e0c6a7cf3e8b68c48bf9e6c13a25a97a
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,282 @@
using Assets.Scenes.Ride.Scripts.Model.CyclingModels;
using Assets.Scripts;
using Assets.Scripts.UI.UIEffect;
using System.Linq;
using UnityEngine;
using UnityEngine.EventSystems;
using UnityEngine.SceneManagement;
using UnityEngine.UI;
using DG.Tweening;
using System;
using Facebook.Unity;
namespace Assets.Scenes.Ride.Scripts
{
public class GameRoomResultScript : MonoBehaviour
{
CyclingController cyclingController;
RawImage Head;
Text Ranking;
Text Timer;
GameObject Mine { get; set; }
GameObject TitleImage { get; set; }
GameObject WatchTitle { get; set; }
GameObject RankingPanel { get; set; }
GameObject ShareButton { get; set; }
GameObject ToolBarPanel { get; set; }
GameObject WeChatButton { get; set; }
GameObject WeChatGpButton { get; set; }
RawImage TopHead { get; set; }
RawImage SecondHead { get; set; }
RawImage ThirdHead { get; set; }
Image Top { get; set; }
Sprite SpriteTop { get; set; }
Sprite SpriteSecond { get; set; }
Sprite SpriteThrid { get; set; }
Text RankingTitle { get; set; }
Text TimerTitle { get; set; }
Text CloseTime { get; set; }
Text CloseTitle { get; set; }
private void Awake()
{
cyclingController = FindObjectOfType<CyclingController>();
var closeBtn = transform.Find("Close").gameObject;
Head = transform.Find("Mine/Head").GetComponent<RawImage>();
Ranking = transform.Find("Mine/Ranking").GetComponent<Text>();
RankingTitle = transform.Find("Mine/RankingTitle").GetComponent<Text>();
TimerTitle = transform.Find("Mine/TimerTitle").GetComponent<Text>();
Timer = transform.Find("Mine/Timer").GetComponent<Text>();
Top = transform.Find("Mine/TOP").GetComponent<Image>();
Mine = transform.Find("Mine").gameObject;
RankingPanel = transform.Find("Ranking").gameObject;
TopHead = transform.Find("Ranking/TopHead").GetComponent<RawImage>();
SecondHead = transform.Find("Ranking/SecondHead").GetComponent<RawImage>();
ThirdHead = transform.Find("Ranking/ThirdHead").GetComponent<RawImage>();
TitleImage = transform.Find("TitleImage").gameObject;
WatchTitle = transform.Find("WatchTitle").gameObject;
CloseTitle = transform.Find("CloseTitle").GetComponent<Text>();
CloseTime = transform.Find("CloseTime").GetComponent<Text>();
#if UNITY_IOS || UNITY_ANDROID
ShareButton = transform.Find("ShareButton").gameObject;
ToolBarPanel = transform.Find("ToolBarPanel").gameObject;
WeChatButton = transform.Find("ToolBarPanel/WeChatButton").gameObject;
WeChatGpButton = transform.Find("ToolBarPanel/GoogleButton").gameObject;
UIManager.AddEvent(WeChatButton, UnityEngine.EventSystems.EventTriggerType.PointerClick, ShareWechat);
UIManager.AddEvent(WeChatGpButton, UnityEngine.EventSystems.EventTriggerType.PointerClick, ShareWechatGp);
var fbButton = transform.Find("ToolBarPanel/FaceBookButton").gameObject;
UIManager.AddEvent(fbButton, EventTriggerType.PointerClick, shareFb);
#endif
SpriteTop = Resources.Load<Sprite>("Images/Ride/Match/top-1");
SpriteSecond = Resources.Load<Sprite>("Images/Ride/Match/top-2");
SpriteThrid = Resources.Load<Sprite>("Images/Ride/Match/top-3");
UIManager.AddEvent(closeBtn, UnityEngine.EventSystems.EventTriggerType.PointerClick, Close);
}
float time = 1;
private void Update()
{
//var model = cyclingController.cyclingController as GameModel;
//if (model != null)
//{
///var s = model.EndCountDown();
//显示关门时间
//var isshow = s.Item3 && s.Item1 >= 0 && !cyclingController.isWatch;
//CloseTime.text = Helper.FormatTicks(s.Item1);
//CloseTitle.gameObject.SetActive(isshow);
//CloseTime.gameObject.SetActive(isshow);
//}
time -= Time.deltaTime;
while (time < 0)
{
Refresh();
time += 1;
}
}
private Color RED = new Color(0.9764706f, 0.1882353f, 0.5254902f);
private Color SHALLOW_RED = new Color(1f, 0.454902f, 0.5215687f);
private Color PURPLE = new Color(0.1568628f, 0.4431373f, 0.8745098f);
private Color SHALLOW_PURPLE = new Color(0.3843137f, 0.7764706f, 1f);
private Color BLUE = new Color(0.4352941f, 0.3333333f, 0.9372549f);
private Color SHALLOW_BLUE = new Color(0.772549f, 0.5529412f, 1f);
private Color WHITE = new Color(1f, 1f, 1f);
public void Refresh()
{
if (cyclingController.cyclingController is GameModel model)
{
var list = model?.mapWorkoutRecordRankings;
if (list == null) return;
var parent = transform.Find("ScrollView/Viewport/Content");
Mine.SetActive(!cyclingController.isWatch);
RankingPanel.SetActive(cyclingController.isWatch);
TitleImage.SetActive(!cyclingController.isWatch);
WatchTitle.SetActive(cyclingController.isWatch);
if (model.FirstEndTime.HasValue)
{
var gap = model.FirstEndTime.Value - UIManager.Now.GetDateTime();
var seconds = (int)Math.Floor(gap.TotalSeconds);
CloseTime.text = Helper.FormatTicks(seconds);
CloseTitle.gameObject.SetActive(true);
CloseTime.gameObject.SetActive(true);
}
if (!cyclingController.isWatch)
{
//当前用户排名
var currentRanking = list.Where(c => c.UserId == cyclingController.currentPlayer.UserId).FirstOrDefault();
if (currentRanking != null)
{
Utils.DisplayImage(Head, currentRanking.WxHeadImg, true);
Ranking.text = currentRanking.Rank.ToString().PadLeft(3, '0');
Timer.text = currentRanking.TotalTime;
var uigradient = Mine.transform.GetComponent<UIGradient>();
if (currentRanking.Rank <= 3)
{
TimerTitle.color = WHITE;
RankingTitle.color = WHITE;
}
if (currentRanking.Rank == 1)
{
uigradient.color1 = RED;
uigradient.color2 = SHALLOW_RED;
Top.sprite = SpriteTop;
Top.gameObject.SetActive(true);
}
if (currentRanking.Rank == 2)
{
uigradient.color1 = PURPLE;
uigradient.color2 = SHALLOW_PURPLE;
Top.sprite = SpriteSecond;
Top.gameObject.SetActive(true);
}
if (currentRanking.Rank == 3)
{
uigradient.color1 = BLUE;
uigradient.color2 = SHALLOW_BLUE;
Top.sprite = SpriteThrid;
Top.gameObject.SetActive(true);
}
}
}
else
{
//观察者模式左边显示前三名
var topList = list.OrderBy(c => c.Rank).Take(3);
foreach (var item in topList)
{
if (item.Rank == 1)
{
Utils.DisplayImage(TopHead, item.WxHeadImg, true);
var name = TopHead.transform.Find("Name").GetComponent<Text>();
name.text = item.NickName;
TopHead.gameObject.SetActive(true);
}
if (item.Rank == 2)
{
Utils.DisplayImage(SecondHead, item.WxHeadImg, true);
var name = SecondHead.transform.Find("Name").GetComponent<Text>();
name.text = item.NickName;
SecondHead.gameObject.SetActive(true);
}
if (item.Rank == 3)
{
Utils.DisplayImage(ThirdHead, item.WxHeadImg, true);
var name = ThirdHead.transform.Find("Name").GetComponent<Text>();
name.text = item.NickName;
ThirdHead.gameObject.SetActive(true);
}
}
}
//排名列表
var rankingList = FindObjectsOfType<FinalRankingItemScript>();
foreach (var item in list)
{
var finalRankingItemScript = rankingList.Where(c => c.UserId == item.UserId).FirstOrDefault();
//没有就创建
if (finalRankingItemScript == null)
{
#if UNITY_IOS || UNITY_ANDROID
var finalRankingItem = Instantiate(Resources.Load<GameObject>("UI/Prefab/Match/Mobile/FinalRankingItem"), parent);
#else
var finalRankingItem = Instantiate(Resources.Load<GameObject>("UI/Prefab/Match/FinalRankingItem"), parent);
#endif
finalRankingItemScript = finalRankingItem.GetComponent<FinalRankingItemScript>();
}
//有就更新
finalRankingItemScript.setGap(item.Gap);
//finalRankingItemScript.setSource(item.de);
finalRankingItemScript.setUserId(item.UserId, item.WxHeadImg);
finalRankingItemScript.setRanking(item.Rank);
finalRankingItemScript.setHeartRate(item.HeartRate);
finalRankingItemScript.setName(item.NickName);
finalRankingItemScript.setPower(item.Power.ToString());
finalRankingItemScript.setRatio(item.WeightKG);
finalRankingItemScript.setTimer(item.TotalTime);
finalRankingItemScript.transform.SetSiblingIndex(item.Rank);
}
}
}
private void Close(BaseEventData baseEventData)
{
this.gameObject.SetActive(false);
this.Destroy();
SceneManager.LoadScene("MainScene");
//App.MainSceneParam["Name"] = "RaceHomePanel";
}
private void OpenShare(BaseEventData baseEventData)
{
((RectTransform)ToolBarPanel.transform).pivot = new Vector2(0, ((RectTransform)ToolBarPanel.transform).pivot.y);
ShareButton.SetActive(false);
ToolBarPanel.transform.DOScaleX(1, 1);
}
private void ShareWechat(BaseEventData baseEventData)
{
if (!App.weChatController.IsWeChatAppInstalled())
{
App.weChatController.ShareWebpageToWX(0, $"{App.CurrentUser.WebHost}Mine/MatchPreview?id={cyclingController.competitionId}&Token={App.CurrentUser.cookie}", cyclingController.competition.Title, "By " + App.CurrentUser.Nickname, null);
}
else
{
Utils.showToast(null, "未安装微信");
}
}
private void shareFb(BaseEventData arg0)
{
//cyclingController.competition.Title, "By " + App.CurrentUser.Nickname, null)
FB.ShareLink(contentURL: new Uri($"{App.CurrentUser.WebHost}Mine/MatchPreview?id={cyclingController.competitionId}&Token={App.CurrentUser.cookie}"),
contentTitle: cyclingController.competition.Title,
contentDescription: "By " + App.CurrentUser.Nickname,
photoURL: new Uri(cyclingController.competition.CoverImage));
}
private void ShareWechatGp(BaseEventData baseEventData)
{
if (App.weChatController.IsWeChatAppInstalled())
{
App.weChatController.ShareWebpageToWX(1, $"{App.CurrentUser.WebHost}Mine/MatchPreview?id={cyclingController.competitionId}&Token={App.CurrentUser.cookie}", cyclingController.competition.Title, "By " + App.CurrentUser.Nickname, null);
}
else
{
Utils.showToast(null, "未安装微信");
}
}
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 180198074f4b2344d8fd96e8e068324b
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,260 @@
using UnityEngine;
using DG.Tweening;
using Assets.Scenes.Ride.Scripts.Model;
using UnityEngine.EventSystems;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
using Assets.Scenes.Ride.Scripts.Model.CyclingModels;
using System;
namespace Assets.Scenes.Ride.Scripts
{
public class GameRoomUIManager : BaseUIManager
{
protected override void Awake()
{
base.Awake();
}
GameObject countDownPanel { get; set; }
Text title { get; set; }
Text timer { get; set; }
GameObject raceViewBtn { get; set; }
GameObject timerIcon { get; set; }
GameModel model { get; set; }
protected override void Start()
{
base.Start();
reviewPanel.SetActive(false);
//隐藏单人骑行时间
var spilitLineH2 = uipanel.transform.Find("ComputerPanel/SpilitLineH2").gameObject;
raceViewBtn = uipanel.transform.Find("RaceViewButton").gameObject;
#if UNITY_IOS || UNITY_ANDROID
timerIcon = uipanel.transform.Find("ComputerPanel/TimerIcon").gameObject;
timerIcon.SetActive(false);
#else
viewButton.gameObject.SetActive(false);
#endif
UIManager.AddEvent(raceViewBtn, UnityEngine.EventSystems.EventTriggerType.PointerClick, ChangeView);
spilitLineH2.SetActive(false);
//timerTxt.gameObject.SetActive(false);
//timerTxtTitle.gameObject.SetActive(false);
//观察者模式隐藏坡度
if (mainController.isWatch)
{
nextSlopePanel.SetActive(false);
currentSlopePanel.SetActive(false);
}
altitudeGraph.gameObject.SetActive(false);
//暂停按钮禁用
pauseButton.interactable = false;
InitGameObject();
}
protected override void Update()
{
base.Update();
CountDown();
}
//开始游戏触发事件
public void StartRide(BaseEventData baseEventData)
{
this.StartRide();
}
public void StartRide(int seconds)
{
mainController.SetCyclingModel(CyclingModel.GameRoom);
count = seconds;
startPanel.SetActive(false);
startBtn.gameObject.SetActive(false);
countDownTxt.gameObject.SetActive(true);
countDownTxt.text = count.ToString();
}
bool canStart = false;
GameObject watchPanel { get; set; }
//开始骑行-加个5秒钟倒计时
public override void StartRide()
{
}
public void InitGameObject()
{
miniMap.SetActive(false); //隐藏小地图
#if UNITY_IOS || UNITY_ANDROID
countDownPanel = Instantiate(Resources.Load<GameObject>("UI/Prefab/Match/Mobile/CountDownPanel"), uipanel.transform);
title = countDownPanel.transform.Find("Title").GetComponent<Text>();
timer = countDownPanel.transform.Find("Timer").GetComponent<Text>();
competitionRankingList = Instantiate(Resources.Load<GameObject>("UI/Prefab/Match/Mobile/CompetitionRankingPanel"), uipanel.transform);
topRankPanel = Instantiate(Resources.Load<GameObject>("UI/Prefab/Match/Mobile/TopRankPanel"), uipanel.transform);
watchPanel = Instantiate(Resources.Load<GameObject>("UI/Prefab/Match/Mobile/WatcherPanel"), uipanel.transform);
#else
//countDownPanel = Instantiate(Resources.Load<GameObject>("UI/Prefab/Match/CountDownPanel"), uipanel.transform);
//title = countDownPanel.transform.Find("Title").GetComponent<Text>();
//timer = countDownPanel.transform.Find("Timer").GetComponent<Text>();
competitionRankingList = Instantiate(Resources.Load<GameObject>("UI/Prefab/GameRoom/GameRoomRankingPanel"), uipanel.transform);
topRankPanel = Instantiate(Resources.Load<GameObject>("UI/Prefab/Match/TopRankPanel"), uipanel.transform);
//watchPanel = Instantiate(Resources.Load<GameObject>("UI/Prefab/Match/WatcherPanel"), uipanel.transform);
#endif
}
private void CountDown()
{
//倒计时开始对战
if (count > 0)
{
timeRemaining -= Time.deltaTime;
if (timeRemaining <= 0)//定时器
{
count--;
if (count == 0)
{
mainController.SetStart();
var canvasGroup = countDownTxt.transform.GetComponent<CanvasGroup>();
canvasGroup.DOFade(0, 1).onComplete += () => {
countDownTxt.gameObject.SetActive(false);
canvasGroup.alpha = 1;
};
}
if (count == 1 && mainController.cyclingModel == CyclingModel.Single)
{
reviewPanel.GetComponent<CanvasGroup>().DOFade(0, 1).onComplete += () => {
reviewPanel.gameObject.SetActive(false);
};
}
countDownTxt.transform.DOPunchScale(new Vector3(1.2f, 1.2f, 1.2f), 1, 1, 1);
timeRemaining = 1.0f;
}
}
countDownTxt.text = count == 0 ? App.GetLocalString("GO!") : count.ToString();
model = mainController.cyclingController as GameModel;
//第一名诞生开始倒计时,倒计时结束自动保存
if (model != null && model.FirstEndTime.HasValue && !FirstCompleted && App.CurrentUser.Id != model.FirstUserId)
{
FirstCompleted = true;
var gap = model.FirstEndTime.Value - UIManager.Now.GetDateTime();
var seconds = Math.Floor(gap.TotalSeconds);
UIManager.ShowGameRoomCountDownPanel((int)seconds, () =>
{
SaveRide(null);
}, true);
}
if (mainController.isQuit && !Saved)
{
Saved = true;
ShowResultList();
FindObjectOfType<GameRoomCountDownController>()?.Close();
}
}
private bool FirstCompleted;
private bool Saved;
public override void SaveRide(BaseEventData baseEventData)
{
//观察者退出
if (mainController.isWatch)
{
SceneManager.LoadScene("MainScene");
return;
}
//参赛者保存并弹出赛事结果
if (!mainController.isQuit)
{
mainController.SetQuit();
playerController.Upload();
quitPanel.SetActive(false);
transform.Find("ModalPanel").gameObject.SetActive(false);
}
ShowResultList();//保存显示当前排名
}
public override void ContinueRide()
{
//mainController.SetCyclingModel(CyclingModel.GameRoom);
}
public override void PauseRide(BaseEventData baseEventData)
{
return;
}
//实时显示当前比赛排名
GameObject competitionRankingList;
public void ShowCurrentRanking()
{
if (competitionRankingList == null)
{
#if UNITY_IOS || UNITY_ANDROID
competitionRankingList = Instantiate(Resources.Load<GameObject>("UI/Prefab/Match/Mobile/CompetitionRankingPanel"), uipanel.transform);
#else
competitionRankingList = Instantiate(Resources.Load<GameObject>("UI/Prefab/GameRoom/GameRoomRankingPanel"), uipanel.transform);
#endif
}
if (topRankPanel == null)
{
#if UNITY_IOS || UNITY_ANDROID
topRankPanel = Instantiate(Resources.Load<GameObject>("UI/Prefab/Match/Mobile/TopRankPanel"), uipanel.transform);
#else
topRankPanel = Instantiate(Resources.Load<GameObject>("UI/Prefab/Match/TopRankPanel"), uipanel.transform);
#endif
}
}
GameObject competitionResultPanel;
GameObject topRankPanel;
//实时刷新显示比赛结果
public void ShowResultList()
{
if (competitionResultPanel == null)
{
#if UNITY_IOS || UNITY_ANDROID
competitionResultPanel = Instantiate(Resources.Load<GameObject>("UI/Prefab/Match/Mobile/GameRoomResultPanel"), uipanel.transform);
#else
competitionResultPanel = Instantiate(Resources.Load<GameObject>("UI/Prefab/GameRoom/GameRoomResultPanel"), uipanel.transform);
#endif
}
}
//极简模式
public override void ClearPanel(BaseEventData baseEventData)
{
if (clearLock)
{
base.ClearPanel(baseEventData);
//countDownPanel.transform.DOLocalMove(new Vector3(countDownPanel.transform.localPosition.x + isSimple * -430f, countDownPanel.transform.localPosition.y, countDownPanel.transform.localPosition.z), 1);
topRankPanel.transform.DOLocalMove(new Vector3(topRankPanel.transform.localPosition.x + isSimple * -430f, topRankPanel.transform.localPosition.y, topRankPanel.transform.localPosition.z), 1);
competitionRankingList.transform.DOLocalMove(new Vector3(competitionRankingList.transform.localPosition.x + isSimple * 430f, competitionRankingList.transform.localPosition.y, competitionRankingList.transform.localPosition.z), 1);
//watchPanel.transform.DOLocalMove(new Vector3(watchPanel.transform.localPosition.x, watchPanel.transform.localPosition.y + isSimple * 260f, watchPanel.transform.localPosition.z), 1);
}
}
public void SetMobileViewButton(bool enabled)
{
#if UNITY_IOS || UNITY_ANDROID
//viewButton.enabled = enabled;
viewButton.interactable = enabled;
#endif
}
protected override void StopRide(BaseEventData baseEventData)
{
if (mainController.isWatch)
{
UIManager.ShowConfirm("Quit", "Do you want to quit?", async () =>
{
SceneManager.LoadScene("MainScene");
UIManager.CloseConfirm();
});
}
//参赛者:提醒是否退出并保存赛事结果
else
{
base.StopRide(baseEventData);
}
}
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 0821b0665a03be14c90fc2250e9b1d4c
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -153,20 +153,27 @@ namespace Assets.Scenes.Ride.Scripts
//人物动画控制 //人物动画控制
if (characterAnimator != null) if (characterAnimator != null)
{ {
characterAnimator.SetFloat("Speed", (float)speed); //characterAnimator.SetFloat("Speed", (float)speed);
characterAnimator.SetFloat("Slope", (float)currentSlope); //characterAnimator.SetFloat("Slope", (float)currentSlope);
if (currentSlope > 6) if (characterAnimator != null)
{
characterAnimator.speed = 0.45f;
}
else
{
characterAnimator.speed = 0.65f;
}
if (speed > 40)
{ {
characterAnimator.speed = 0.75f; //characterAnimator.SetFloat("preSpeed", (float)preSpeed);
characterAnimator.SetFloat("speed", (float)speed);
characterAnimator.SetFloat("grade", (float)currentSlope);
characterAnimator.SetFloat("power", (float)power);
} }
//if (currentSlope > 6)
// {
// characterAnimator.speed = 0.45f;
//}
// else
// {
// characterAnimator.speed = 0.65f;
//}
//if (speed > 40)
//{
// characterAnimator.speed = 0.75f;
//}
//if (totalDistance >= mapData.TotalDistance) //if (totalDistance >= mapData.TotalDistance)
//{ //{
@ -327,7 +334,7 @@ namespace Assets.Scenes.Ride.Scripts
{ {
if (prePos != nextPos) if (prePos != nextPos)
{ {
Quaternion neededRotation = Quaternion.LookRotation(prePos - nextPos); Quaternion neededRotation = Quaternion.LookRotation(nextPos-prePos);
float t = 0; float t = 0;
while (t < 1.0f) while (t < 1.0f)

View File

@ -53,7 +53,7 @@ public class CyclingController : DeviceServiceMonoBase
public BaseCycling cyclingController { get; set; } public BaseCycling cyclingController { get; set; }
private int routeId; private int routeId;
public int competitionId { get; set; } public int competitionId { get; set; }
public int roomId { get; set; }
private MapApi mapApi; private MapApi mapApi;
public DateTime startTime { get; set; } public DateTime startTime { get; set; }
public DateTime endTime; public DateTime endTime;
@ -90,6 +90,7 @@ public class CyclingController : DeviceServiceMonoBase
mapApi = ConfigHelper.mapApi; mapApi = ConfigHelper.mapApi;
routeId = App.RouteIdParam > 0 ? App.RouteIdParam : 2633; routeId = App.RouteIdParam > 0 ? App.RouteIdParam : 2633;
competitionId = App.CompetionId; competitionId = App.CompetionId;
roomId = App.gameRoomDetail?.RoomId ??0;
App.CompetionId = 0;//清空比赛参数 App.CompetionId = 0;//清空比赛参数
//处理异常中断的骑行 //处理异常中断的骑行
@ -104,10 +105,8 @@ public class CyclingController : DeviceServiceMonoBase
void OnDestroy() void OnDestroy()
{ {
//MapUDPService.Dispose();
TouchKit.removeAllGestureRecognizers(); TouchKit.removeAllGestureRecognizers();
Resources.UnloadUnusedAssets(); Resources.UnloadUnusedAssets();
GC.Collect();
} }
Transform target; Transform target;
GameObject watcher; GameObject watcher;
@ -242,21 +241,23 @@ public class CyclingController : DeviceServiceMonoBase
HandleTouchAndInput(); HandleTouchAndInput();
StartCoroutine(Ping()); StartCoroutine(Ping());
//进入对战房间
if (App.gameRoomDetail != null)
{
this.cyclingModel = CyclingModel.GameRoom;
StartCoroutine(InitGameRoom());
}
//进入比赛 //进入比赛
if (competitionId > 0) else if(competitionId > 0)
{ {
this.cyclingModel = CyclingModel.Competition; this.cyclingModel = CyclingModel.Competition;
StartCoroutine(InitRace()); StartCoroutine(InitRace());
return;
} }
//进入单人骑行 //进入单人骑行
if (routeId > 0) else if(routeId > 0)
{ {
StartCoroutine(Init()); StartCoroutine(Init());
return;
} }
} }
private IEnumerator Ping() private IEnumerator Ping()
{ {
@ -566,7 +567,7 @@ public class CyclingController : DeviceServiceMonoBase
} }
private IEnumerator Init() private IEnumerator Init()
{ {
yield return null; //new WaitForSeconds(1); yield return null;
mapRoute = mapApi.GetById(routeId).data; mapRoute = mapApi.GetById(routeId).data;
loadingController.Init();//初始化loading页面 loadingController.Init();//初始化loading页面
loadingController.AddProcess(10); loadingController.AddProcess(10);
@ -575,7 +576,19 @@ public class CyclingController : DeviceServiceMonoBase
MapUDPService.Init();//初始化TCP MapUDPService.Init();//初始化TCP
loadingController.AddProcess(10); loadingController.AddProcess(10);
} }
//初始对战
private IEnumerator InitGameRoom()
{
yield return null;
mapRoute = mapApi.GetById(routeId).data;
loadingController.Init();
loadingController.AddProcess(10);
InitGameRoomData();
InitGameRoomObject();
loadingController.AddProcess(10);
}
//初始比赛 //初始比赛
private IEnumerator InitRace() private IEnumerator InitRace()
{ {
@ -641,6 +654,30 @@ public class CyclingController : DeviceServiceMonoBase
} }
} }
private void InitGameRoomData()
{
mapData = mapApi.GetData(routeId);//获取路书地理数据
route = new Route(mapData, mapRoute);
loadingController.AddProcess(10);
#region
selectParamModel = new RouteResultParam
{
CompetitionId = 0,
ContinueIndex = 0,
ContinueMark = "",
GlobalContinue = false,
EndDistance = 0,
RankingsId = new List<string>(),
OnlineUserId = 0,
RouteId = App.RouteIdParam,
};
#endregion
double endDistance = selectParamModel.EndDistance;
//计算上次骑行距离调整地图中心点
coordiantes = Along(endDistance);
}
private void InitRaceData() private void InitRaceData()
{ {
mapData = mapApi.GetData(routeId);//获取路书地理数据 mapData = mapApi.GetData(routeId);//获取路书地理数据
@ -680,6 +717,27 @@ public class CyclingController : DeviceServiceMonoBase
map.OnTileFinished += Map_OnTileFinished; map.OnTileFinished += Map_OnTileFinished;
mapPos = map.transform.position; mapPos = map.transform.position;
} }
private void InitGameRoomObject()
{
#if !(UNITY_IOS || UNITY_ANDROID)
minicamera.SetActive(true);
map.gameObject.SetActive(true);
player.SetActive(true);
UIObject.SetActive(true);
singleUIManager = UIObject.AddComponent<GameRoomUIManager>();
map.OnTileFinished += Map_OnTileFinished;
mapPos = map.transform.position;
//为了解决比赛观看模式下,切换观看用户之前跨度过大导致地图海拔信息不完整的问题
RangeAroundTransformTileProviderOptions options = new RangeAroundTransformTileProviderOptions
{
targetTransform = target,
visibleBuffer = 2,
disposeBuffer = 2
};
map.SetExtent(MapExtentType.RangeAroundTransform, options);
map.SetExtentOptions(options);
#endif
}
private void InitRaceGameObject() private void InitRaceGameObject()
{ {
@ -1207,14 +1265,13 @@ public BaseUIManager singleUIManager;
public void Save(double totalDistance) public void Save(double totalDistance)
{ {
ClearTempFile(); ClearTempFile();
cyclingController.recorderData.EndTime = UIManager.Now.GetDateTime(); cyclingController.recorderData.EndTime = UIManager.Now.GetDateTime();
isQuit = true; isQuit = true;
isStart = false; isStart = false;
//string recordId = Guid.NewGuid().ToString();
//var path = Helper.GetDataDir("MapWorkoutRecords/"+ recordId);
var path = PFConstants.MapWorkoutRecordFolder + "/" + recordId; var path = PFConstants.MapWorkoutRecordFolder + "/" + recordId;
Helper.CreateDirectoryIfNotExsit(path); Helper.CreateDirectoryIfNotExsit(path);
string imageFileName = path +"/"+ Guid.NewGuid().ToString() + ".png"; string imageFileName = path +"/"+ Guid.NewGuid().ToString() + ".png";
CaptureCamera(Camera.main, new Rect(Screen.width * 0f, Screen.height * 0f, Screen.width * 0.5f, Screen.height * 0.5f), imageFileName); CaptureCamera(Camera.main, new Rect(Screen.width * 0f, Screen.height * 0f, Screen.width * 0.5f, Screen.height * 0.5f), imageFileName);
cyclingController.recorderData.StartTime = startTime; cyclingController.recorderData.StartTime = startTime;
@ -1226,7 +1283,7 @@ public BaseUIManager singleUIManager;
cyclingController.recorderData.DeviceNumber = DeviceNumber; cyclingController.recorderData.DeviceNumber = DeviceNumber;
RankingId =cyclingController.recorderData.SaveWithLocalRecordAysnc(cyclingModel, selectParamModel, imageFileName, recordId, path); RankingId =cyclingController.recorderData.SaveWithLocalRecordAysnc(cyclingModel, selectParamModel, imageFileName, recordId, path);
//显示骑行结果(如果是比赛模式显示比赛最终排名) //显示骑行结果(如果是比赛模式显示比赛最终排名)
if (cyclingModel != CyclingModel.Competition) if (cyclingModel != CyclingModel.Competition && cyclingModel != CyclingModel.GameRoom)
{ {
resultPanel.SetActive(true); resultPanel.SetActive(true);
var rs = resultPanel.GetComponent<ResultPanelScript>(); var rs = resultPanel.GetComponent<ResultPanelScript>();
@ -1267,10 +1324,7 @@ public BaseUIManager singleUIManager;
protected void CaptureCamera(Camera camera, Rect rect,string fileName) protected void CaptureCamera(Camera camera, Rect rect,string fileName)
{ {
byte[] bytes = CaptureCameraReturnByte(camera, rect); byte[] bytes = CaptureCameraReturnByte(camera, rect);
//var path = Helper.GetDataDir("MapWorkoutRecords/images");
//string filename = path + "/" + Guid.NewGuid().ToString() + ".png";
System.IO.File.WriteAllBytes(fileName, bytes); System.IO.File.WriteAllBytes(fileName, bytes);
//Debug.Log(string.Format("截屏了一张照片: {0}", filename));
} }
public Vector2d GetCenterCoordinate() public Vector2d GetCenterCoordinate()

View File

@ -39,7 +39,7 @@ namespace Assets.Scenes.Ride.Scripts
return ((GeographicPosition)((GeoJSON.Net.Geometry.Point)pt1.Geometry).Coordinates); return ((GeographicPosition)((GeoJSON.Net.Geometry.Point)pt1.Geometry).Coordinates);
} }
public double Bearing(double[] p1, double[] p2) public static double Bearing(double[] p1, double[] p2)
{ {
var pt1 = Turf.Point(p1); var pt1 = Turf.Point(p1);
var pt2 = Turf.Point(p2); var pt2 = Turf.Point(p2);

View File

@ -159,9 +159,10 @@ namespace Assets.Scripts.Scenes.VideoRide
} }
protected CustomRange pre { get; set; } protected CustomRange pre { get; set; }
protected CustomRange next { get; set; } public CustomRange next { get; set; }
protected float t { get; set; } protected float t { get; set; }
protected Vector3 currentRotation;
protected virtual void Turn() protected virtual void Turn()
{ {
//控制人物的转向 //控制人物的转向
@ -179,12 +180,13 @@ namespace Assets.Scripts.Scenes.VideoRide
break; break;
} }
} }
t = next.KeyFrame - pre.KeyFrame == 0 ? 1 : (float)(currentFrame - pre.KeyFrame) / (float)(next.KeyFrame - pre.KeyFrame);
var p = new Vector3(0, pre.RotationY, pre.RotationZ); var p = new Vector3(0, pre.RotationY, pre.RotationZ);
var q = new Vector3(0, next.RotationY, next.RotationZ); var q = new Vector3(0, next.RotationY, next.RotationZ);
t = next.KeyFrame - pre.KeyFrame == 0 ? 1 : (float)(currentFrame - pre.KeyFrame) / (float)(next.KeyFrame - pre.KeyFrame); currentRotation = Vector3.Lerp(p, q, t);
var rt = Vector3.Lerp(p, q, t); transform.DORotate(currentRotation, 0, RotateMode.Fast);
transform.DORotate(rt, 0, RotateMode.Fast);
} }
//计算人物当前属性 //计算人物当前属性
@ -280,7 +282,6 @@ namespace Assets.Scripts.Scenes.VideoRide
decimal right = (decimal)sumDistance; decimal right = (decimal)sumDistance;
if (left <= right) if (left <= right)
{ {
Debug.Log($"当前索引{i}");
currentIndex = i; currentIndex = i;
break; break;
} }

View File

@ -1,5 +1,7 @@
using System; using System;
using System.Collections.Generic;
using System.Linq; using System.Linq;
using Assets.Scenes.Ride.Scripts;
using DG.Tweening; using DG.Tweening;
using UnityEngine; using UnityEngine;
@ -10,9 +12,21 @@ namespace Assets.Scripts.Scenes.VideoRide
public Transform target; public Transform target;
public double diff; public double diff;
public int frames; public int frames;
private void Start()
{
base.Start();
ydic.Add(0, -1);
ydic.Add(1555, 0);
}
protected override void Update() protected override void Update()
{ {
base.Update(); base.Update();
//如果当前用户是被观察则控制视频播放
if (manager.CurrentPlayer.UserId == UserId)
{
manager.Play(manager.CurrentPlayer.totalDistance);
}
} }
//计算 //计算
@ -24,22 +38,72 @@ namespace Assets.Scripts.Scenes.VideoRide
//var left = totalDistance % mapData.TotalDistance; //var left = totalDistance % mapData.TotalDistance;
//var right = current.totalDistance % mapData.TotalDistance; //var right = current.totalDistance % mapData.TotalDistance;
//diff = (left - right) * 1000; //diff = (left - right) * 1000;
if (Math.Abs(diff) > 100) if (Math.Abs(diff*1000) > 150)
{ {
Destroy(); Destroy();
} }
} }
} }
private const int rate = 20;// z轴与帧数的比例 1 20 private const int zrate = 20;// z轴与帧数的比例 1 20 与真实距离 1:2
private const int yrate = 3;// y轴与帧数的比例 1 3
private const int xrate = 20;// x轴与帧数的比例 1 20
private Dictionary<int, float> ydic = new Dictionary<int, float>();
//人物向前超车 右边超车 //人物向前超车 右边超车
protected override void Turn() protected override void Turn()
{ {
base.Turn(); base.Turn();
//计算前后位移
var current = manager.CurrentPlayer; var current = manager.CurrentPlayer;
var interval = this.currentFrame - manager.GetCurrentFrame(); var interval = this.currentFrame - manager.GetCurrentFrame();
var z = current.transform.position.z + interval / rate; var z = current.transform.position.z + interval / zrate;//diff * 500;//
transform.DOMoveZ((float)z, 1f); transform.DOMoveZ((float)z,1f);
//计算上下位移
var targetIndex = manager.CurrentPlayer.currentIndex;
var pointList = mapData.List;
var currentHeight = pointList[currentIndex].Elevation;//当前海拔,
var targetHeight = pointList[targetIndex].Elevation;//目标海拔
var heightOffset = (currentHeight - targetHeight);
var maxEl = pointList.Max(c => c.Elevation);
var minEl = pointList.Min(c => c.Elevation);
var y = diff != 0 ? heightOffset / (diff * 1000) * z-1 : 0;
var target = manager.CurrentPlayer.transform;
if (diff > 0)
{
var h = heightOffset / (diff*1000);
var height = h * (z - target.position.z) - 1;
//if (heightOffset < 0)
//{
// heightOffset *= 2;
//}
//else
//{
// heightOffset /= 100;
//}
if (height != 0)
{
transform.DOMoveY((float)height, 1f);
}
else
{
transform.DOMoveY(-1, 1f);
}
}
////计算左右倾斜角度
var targetLatlon = manager.CurrentPlayer.currentlatLon; //目标gps
var bearing = TurfHelper.Bearing(targetLatlon.ToArray(), currentlatLon.ToArray());
//currentRotation.y += (float)bearing;
//transform.DORotate(currentRotation, 1, RotateMode.Fast);
//计算左右位移
//x =(z - z1)/tanp + x1;
bearing = (next.RotationY + manager.CurrentPlayer.next.RotationY) * Math.PI / 180;//转化为弧度值
var x =(z - target.position.z) * Math.Tan(bearing) + target.position.x;
Debug.Log($"当前海拔差{heightOffset} 当前角度{bearing} 距离{(z - target.position.z)}*Tanbearing{Math.Tanh(bearing)}+目标x{target.position.x}=当前x{x}");
transform.DOMoveX((float)x, 1f);
//x轴位移 //x轴位移
//var x = bearing + current.bearing; //var x = bearing + current.bearing;
//transform.DOMove(new Vector3(x, transform.position.y, (float)z), 1); // ((float)z, 1f); //transform.DOMove(new Vector3(x, transform.position.y, (float)z), 1); // ((float)z, 1f);
@ -85,7 +149,7 @@ namespace Assets.Scripts.Scenes.VideoRide
{ {
var result = manager.mockDirection.Where(c => c.Start < currentFrame && c.End > currentFrame).FirstOrDefault(); var result = manager.mockDirection.Where(c => c.Start < currentFrame && c.End > currentFrame).FirstOrDefault();
bearing = result?.RotationY ?? 0; bearing = result?.RotationY ?? 0;
animator.SetFloat("bearing", bearing); //animator.SetFloat("bearing", bearing);
} }
} }
protected override int GetCurrentFrame() protected override int GetCurrentFrame()

View File

@ -74,7 +74,7 @@ namespace Assets.Scripts.Scenes.VideoRide
public DateTime startTime { get; set; } public DateTime startTime { get; set; }
public int FrameKM { get; private set; }//一米对应的帧数 public int FrameKM { get; private set; }//一米对应的帧数
public CyclingModel cyclingModel; public CyclingModel cyclingModel;
public BaseCycling cyclingController; public BaseCycling cyclingController { get; set; }
public List<CustomRange> mockDirection = new List<CustomRange>(); public List<CustomRange> mockDirection = new List<CustomRange>();
private double endDistance { get; set; } private double endDistance { get; set; }
public List<float> slots = new List<float>(); public List<float> slots = new List<float>();
@ -140,7 +140,6 @@ namespace Assets.Scripts.Scenes.VideoRide
yield return null; yield return null;
videoLoading.Init();//初始化loading页面 videoLoading.Init();//初始化loading页面
} }
public int GetFrameKm() public int GetFrameKm()
{ {
var s = mediaPlayer.Info.GetDurationFrames(); var s = mediaPlayer.Info.GetDurationFrames();
@ -158,15 +157,16 @@ namespace Assets.Scripts.Scenes.VideoRide
if (cyclingController == null) if (cyclingController == null)
return; return;
cyclingController.Run(null); cyclingController.Run(null);
var onlineRiders = cyclingController.riders; //TODO:发布单人骑行暂时注释
try //var onlineRiders = cyclingController.riders;
{ //try
CreateOnlineUser(onlineRiders); //{
} // CreateOnlineUser(onlineRiders);
catch (Exception e) //}
{ //catch (Exception e)
Debug.Log(e.Message); //{
} // Debug.Log(e.Message);
//}
timer += 1f; timer += 1f;
} }
} }
@ -186,6 +186,8 @@ namespace Assets.Scripts.Scenes.VideoRide
//创建当前线路其他选手 //创建当前线路其他选手
private void CreateOnlineUser(List<BaseRider> list) private void CreateOnlineUser(List<BaseRider> list)
{ {
if (list == null)
return;
//观察者模式随机选择当前骑行的人作为观察对象 //观察者模式随机选择当前骑行的人作为观察对象
if (_aRMode == ARMode.INSPECT && CurrentPlayer == null) if (_aRMode == ARMode.INSPECT && CurrentPlayer == null)
{ {
@ -243,7 +245,7 @@ namespace Assets.Scripts.Scenes.VideoRide
if (currentPlayerInfo != null) if (currentPlayerInfo != null)
{ {
var diff = item.EndDistance % mapData.TotalDistance - currentPlayerInfo.EndDistance % mapData.TotalDistance; var diff = item.EndDistance % mapData.TotalDistance - currentPlayerInfo.EndDistance % mapData.TotalDistance;
if (Math.Abs(diff * 1000) <= 100) if (Math.Abs(diff * 1000) <= 150)
{ {
GameObject obj; GameObject obj;
if (currentPlayerInfo.Sex == 1) if (currentPlayerInfo.Sex == 1)
@ -274,6 +276,10 @@ namespace Assets.Scripts.Scenes.VideoRide
InitCurrentPlayer(); InitCurrentPlayer();
ContinueAsync(); ContinueAsync();
} }
else
{
SetCyclingModel(CyclingModel.Single);
}
} }
//初始化人物模型 //初始化人物模型
public void InitCurrentPlayer() public void InitCurrentPlayer()
@ -365,7 +371,9 @@ namespace Assets.Scripts.Scenes.VideoRide
private void MockDirection() private void MockDirection()
{ {
var arr = mapRoute.ARConfig.Replace("\r\n", " ").Split(' '); //var arr = mapRoute.ARConfig.Replace("\r\n", " ").Split(' ');
var text = Resources.Load<TextAsset>("UI/direction");
var arr = text.text.Replace("\r\n", " ").Split(' ');
foreach (var item in arr) foreach (var item in arr)
{ {
if (string.IsNullOrEmpty(item)) if (string.IsNullOrEmpty(item))
@ -521,7 +529,8 @@ namespace Assets.Scripts.Scenes.VideoRide
{ {
var mapApi = ConfigHelper.mapApi; var mapApi = ConfigHelper.mapApi;
int routeId = App.RouteIdParam; int routeId = App.RouteIdParam;
mapData = mapApi.GetData(routeId,20);//获取路书地理数据 if(routeId > 0)
mapData = mapApi.GetData(routeId,0);//获取路书地理数据
} }
return mapData; return mapData;
} }

View File

@ -270,12 +270,12 @@ namespace Assets.Scripts.Scenes.VideoRide
//进入观察模式 //进入观察模式
private void WatchHandler(BaseEventData data) private void WatchHandler(BaseEventData data)
{ {
manager.SetCurrentMode(VideoGameManager.ARMode.INSPECT);
var canvasGroup = transform.GetComponent<CanvasGroup>(); var canvasGroup = transform.GetComponent<CanvasGroup>();
var ui = manager.GetCanvasTransform(); var ui = manager.GetCanvasTransform();
canvasGroup.DOFade(0, 1).onComplete += () => { canvasGroup.DOFade(0, 1).onComplete += () => {
gameObject.SetActive(false); gameObject.SetActive(false);
ui.Find("Panel").gameObject.SetActive(true); ui.gameObject.SetActive(true);
manager.SetCurrentMode(VideoGameManager.ARMode.INSPECT);
}; };
} }
protected void Cancel(BaseEventData baseEvent) protected void Cancel(BaseEventData baseEvent)

View File

@ -72,7 +72,10 @@ namespace Assets.Scripts.Scenes.VideoRide
{ {
mapName.text = manager.GetMapRoute().Name; mapName.text = manager.GetMapRoute().Name;
#if UNITY_EDITOR
infoText.gameObject.SetActive(true);
infoText.text = $"帧数:{manager.GetCurrentFrame()}"; infoText.text = $"帧数:{manager.GetCurrentFrame()}";
#endif
if (manager.CurrentPlayer != null) if (manager.CurrentPlayer != null)
{ {
power.text = Math.Round(manager.CurrentPlayer.power).ToString(); power.text = Math.Round(manager.CurrentPlayer.power).ToString();
@ -230,6 +233,8 @@ namespace Assets.Scripts.Scenes.VideoRide
} }
public void SaveAndShowResult() public void SaveAndShowResult()
{ {
if (manager._aRMode == VideoGameManager.ARMode.INSPECT)
SceneManager.LoadScene("MainScene");
videoPlayer = FindObjectOfType<VideoPlayer>(); videoPlayer = FindObjectOfType<VideoPlayer>();
videoPlayer?.Upload(); videoPlayer?.Upload();
//show result //show result

View File

@ -11,7 +11,7 @@ class GameRoomPlayerPanel : MonoBehaviour
public Text ftpTxt; public Text ftpTxt;
public RawImage head; public RawImage head;
public GameObject player;
public GameObject owner; public GameObject owner;
public GameObject playerModal; public GameObject playerModal;
public GameObject notInUseModal; public GameObject notInUseModal;
@ -74,6 +74,20 @@ class GameRoomPlayerPanel : MonoBehaviour
owner.SetActive(isOwner); owner.SetActive(isOwner);
IsOwner = isOwner; IsOwner = isOwner;
ready.SetActive(!isOwner && Status == 1); ready.SetActive(!isOwner && Status == 1);
//生成3d人物
if (sex == 1)
{
player = Instantiate(Resources.Load<GameObject>("UI/Prefab/GameRoom/GameRoomPlayer"));
}
else
{
player = Instantiate(Resources.Load<GameObject>("UI/Prefab/GameRoom/GameRoomPlayer_NV"));
}
player.layer = 9 + sort;
foreach (Transform item in player.GetComponentInChildren<Transform>())
{
item.gameObject.layer = player.layer;
}
} }
public void UpdatePlayer(int userId, string userName, string headUrl, double weight, float ftp, bool isOwner, int Status,int sex) public void UpdatePlayer(int userId, string userName, string headUrl, double weight, float ftp, bool isOwner, int Status,int sex)
@ -108,6 +122,7 @@ class GameRoomPlayerPanel : MonoBehaviour
UserId = 0; UserId = 0;
notInUseModal.SetActive(false); notInUseModal.SetActive(false);
inviteModal.SetActive(true); inviteModal.SetActive(true);
player?.Destroy();
} }
public void NotInUse() public void NotInUse()
{ {

View File

@ -12,7 +12,7 @@ using System;
public class GameRoomResult : MonoBehaviour public class GameRoomResult : MonoBehaviour
{ {
VideoGameManager manager; CyclingController manager;
RawImage Head; RawImage Head;
Text Ranking; Text Ranking;
Text Timer; Text Timer;
@ -38,7 +38,7 @@ public class GameRoomResult : MonoBehaviour
Text CloseTitle { get; set; } Text CloseTitle { get; set; }
private void Awake() private void Awake()
{ {
manager = FindObjectOfType<VideoGameManager>(); manager = FindObjectOfType<CyclingController>();
var closeBtn = transform.Find("Close").gameObject; var closeBtn = transform.Find("Close").gameObject;
Head = transform.Find("Mine/Head").GetComponent<RawImage>(); Head = transform.Find("Mine/Head").GetComponent<RawImage>();
Ranking = transform.Find("Mine/Ranking").GetComponent<Text>(); Ranking = transform.Find("Mine/Ranking").GetComponent<Text>();
@ -119,7 +119,7 @@ public class GameRoomResult : MonoBehaviour
CloseTime.gameObject.SetActive(true); CloseTime.gameObject.SetActive(true);
} }
//当前用户排名 //当前用户排名
var currentRanking = list.Where(c => c.UserId == manager.CurrentPlayer.UserId).FirstOrDefault(); var currentRanking = list.Where(c => c.UserId == manager.currentPlayer.UserId).FirstOrDefault();
if (currentRanking != null) if (currentRanking != null)
{ {
Utils.DisplayImage(Head, currentRanking.WxHeadImg, true); Utils.DisplayImage(Head, currentRanking.WxHeadImg, true);

View File

@ -272,7 +272,15 @@ public class MapItem : MonoBehaviour, IPointerExitHandler, IPointerEnterHandler,
App.MainSceneParam["Name"] = "MapListPanel"; App.MainSceneParam["Name"] = "MapListPanel";
} }
} }
SceneManager.LoadScene("Ride"); //判断是否启用了AR骑行
if (map.EnableAR)
{
SceneManager.LoadScene("VideoPlay");
}
else
{
SceneManager.LoadScene("Ride");
}
//foreach (var item in Utils.propTextureCache) //foreach (var item in Utils.propTextureCache)
//{ //{
// DestroyImmediate(item.Value); // DestroyImmediate(item.Value);

View File

@ -31,6 +31,11 @@ public class GameRoomCountDownController : PFUIPanel
endCount.gameObject.SetActive(isEnd); endCount.gameObject.SetActive(isEnd);
} }
public override void Close()
{
base.Close();
}
float timer = 0f; float timer = 0f;
private void Update() private void Update()
{ {

View File

@ -865,7 +865,7 @@ public class GameRoomListController : PFUIPanel
private async void GetList() private async void GetList()
{ {
if (isEnd) return; if (isEnd) return;
var res = await ConfigHelper.mapApi.GetList(pageIndex, pageSize, ftname, distance, string.Join(",", hands), is3d, sort, sortDire, isEnableAR:isEnableAR); var res = await ConfigHelper.mapApi.GetList(pageIndex, pageSize, ftname, distance, string.Join(",", hands), is3d, sort, sortDire, isEnableAR:false);//isEnableAR TODO:临时禁用AR地图
if (res.result) if (res.result)
{ {
if (res.data.Count == 0) if (res.data.Count == 0)

View File

@ -107,7 +107,7 @@ public class GameRoomLoadingController : PFUIPanel
} }
//判断是否进入骑行场景 //判断是否进入骑行场景
var startTime = GameRoom.StartTime; var startTime = GameRoom.StartTime;
var singleUi = FindObjectOfType<SingleUIManager>(); var singleUi = FindObjectOfType<GameRoomUIManager>();
if (startTime.HasValue) if (startTime.HasValue)
{ {
var dateTime = UIManager.Now.GetDateTime(); var dateTime = UIManager.Now.GetDateTime();

View File

@ -258,6 +258,7 @@ public class Davinci : MonoBehaviour
if (duplicate) if (duplicate)
{ {
Debug.Log("[Davinci] Start Duplicate."); Debug.Log("[Davinci] Start Duplicate.");
finish();
return; return;
} }
try try

View File

@ -27,7 +27,14 @@ public class StartRideModal : PFUIPanel
if (map != null) if (map != null)
{ {
App.RouteIdParam = map.Id; App.RouteIdParam = map.Id;
SceneManager.LoadScene("Ride"); if (map.EnableAR)
{
SceneManager.LoadScene("VideoPlay");
}
else
{
SceneManager.LoadScene("Ride");
}
} }
}); });
} }

View File

@ -265,7 +265,7 @@ public class TestVideoController : MonoBehaviour
var t = next.KeyFrame - pre.KeyFrame == 0? 1 : (float)(currentFrame - pre.KeyFrame) / (float)(next.KeyFrame - pre.KeyFrame); var t = next.KeyFrame - pre.KeyFrame == 0? 1 : (float)(currentFrame - pre.KeyFrame) / (float)(next.KeyFrame - pre.KeyFrame);
var rt = Vector3.Lerp(p, q, t); var rt = Vector3.Lerp(p, q, t);
Player.DORotate(rt, 0, RotateMode.Fast); Player.DORotate(rt, 0, RotateMode.Fast);
//控制人物的前后左右 //控制人物的前后左右上下
var l = new Vector3(pre.PositionX, pre.PositionY, pre.PositionZ); var l = new Vector3(pre.PositionX, pre.PositionY, pre.PositionZ);
var s = new Vector3(next.PositionX, next.PositionY, next.PositionZ); var s = new Vector3(next.PositionX, next.PositionY, next.PositionZ);
var pos = Vector3.Lerp(l, s, t); var pos = Vector3.Lerp(l, s, t);
@ -390,6 +390,15 @@ public class TestVideoController : MonoBehaviour
var frame = GetCurrentFrame() + 1; var frame = GetCurrentFrame() + 1;
SeekToFrame(frame); SeekToFrame(frame);
} }
//控制人物上下
if (Input.GetKey(KeyCode.UpArrow))
{
setHeroState(UP);
}
if (Input.GetKey(KeyCode.DownArrow))
{
setHeroState(DOWN);
}
} }
private void PlayOrPause() private void PlayOrPause()
{ {
@ -463,6 +472,8 @@ public class TestVideoController : MonoBehaviour
public const int HERO_RIGHT = 1; public const int HERO_RIGHT = 1;
public const int HERO_DOWN = 2; public const int HERO_DOWN = 2;
public const int HERO_LEFT = 3; public const int HERO_LEFT = 3;
public const int UP = 4;
public const int DOWN = 5;
//人物当前行走的方向状态 //人物当前行走的方向状态
public int state = 0; public int state = 0;
@ -488,6 +499,12 @@ public class TestVideoController : MonoBehaviour
case HERO_RIGHT: case HERO_RIGHT:
transformValue = (-Vector3.left) * Time.deltaTime; transformValue = (-Vector3.left) * Time.deltaTime;
break; break;
case UP:
transformValue = (Vector3.up) * Time.deltaTime;
break;
case DOWN:
transformValue = (Vector3.down) * Time.deltaTime;
break;
} }
////移动人物 ////移动人物
Player.Translate(transformValue * moveSpeed, Space.World); Player.Translate(transformValue * moveSpeed, Space.World);

View File

@ -0,0 +1,21 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1200 &1
AutoStreamingSettings:
m_ObjectHideFlags: 0
serializedVersion: 2
mSearchMode: 15
mCustomSearchFile:
mTextureSearchString:
mMeshSearchString:
mTextures: []
mAudios: []
mMeshes: []
mScenes: []
mConfigCCD:
useCCD: 0
cosKey:
projectGuid:
bucketUuid:
bucketName:
badgeName:

View File

@ -1,2 +1,2 @@
m_EditorVersion: 2019.4.22f1c1 m_EditorVersion: 2019.4.40f1c1
m_EditorVersionWithRevision: 2019.4.22f1c1 (ea76eba460f9) m_EditorVersionWithRevision: 2019.4.40f1c1 (bcafa7f80565)