Commit 66300151 by 张树文

删除传送门功能

1 parent 544fe28c
Showing with 717 additions and 4074 deletions
......@@ -45,29 +45,23 @@
"__id__": 70
},
{
"__id__": 82
},
{
"__id__": 107
},
{
"__id__": 123
"__id__": 95
}
],
"_active": true,
"_components": [
{
"__id__": 128
"__id__": 100
},
{
"__id__": 129
"__id__": 101
},
{
"__id__": 130
"__id__": 102
}
],
"_prefab": {
"__id__": 131
"__id__": 103
},
"_opacity": 255,
"_color": {
......@@ -2465,7 +2459,7 @@
},
{
"__type__": "cc.Node",
"_name": "ButtonsLayout",
"_name": "AutoPlayNode",
"_objFlags": 0,
"_parent": {
"__id__": 1
......@@ -2473,19 +2467,25 @@
"_children": [
{
"__id__": 71
},
{
"__id__": 78
},
{
"__id__": 85
}
],
"_active": true,
"_components": [
{
"__id__": 79
"__id__": 92
},
{
"__id__": 80
"__id__": 93
}
],
"_prefab": {
"__id__": 81
"__id__": 94
},
"_opacity": 255,
"_color": {
......@@ -2497,20 +2497,20 @@
},
"_contentSize": {
"__type__": "cc.Size",
"width": 76,
"height": 99
"width": 300,
"height": 100
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.5,
"x": 1,
"y": 0.5
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
317,
197,
340,
-570,
0,
0,
0,
......@@ -2536,7 +2536,7 @@
},
{
"__type__": "cc.Node",
"_name": "RollBackBtn",
"_name": "ReviewButton",
"_objFlags": 0,
"_parent": {
"__id__": 70
......@@ -2549,11 +2549,11 @@
"_active": true,
"_components": [
{
"__id__": 76
"__id__": 75
}
],
"_prefab": {
"__id__": 78
"__id__": 77
},
"_opacity": 255,
"_color": {
......@@ -2565,8 +2565,8 @@
},
"_contentSize": {
"__type__": "cc.Size",
"width": 76,
"height": 99
"width": 100,
"height": 100
},
"_anchorPoint": {
"__type__": "cc.Vec2",
......@@ -2577,7 +2577,7 @@
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
-250,
0,
0,
0,
......@@ -2586,7 +2586,7 @@
1,
1,
1,
1
0
]
},
"_eulerAngles": {
......@@ -2604,8 +2604,8 @@
},
{
"__type__": "cc.Node",
"_name": "Background",
"_objFlags": 512,
"_name": "ReviewIconSprite",
"_objFlags": 0,
"_parent": {
"__id__": 71
},
......@@ -2614,13 +2614,10 @@
"_components": [
{
"__id__": 73
},
{
"__id__": 74
}
],
"_prefab": {
"__id__": 75
"__id__": 74
},
"_opacity": 255,
"_color": {
......@@ -2632,8 +2629,8 @@
},
"_contentSize": {
"__type__": "cc.Size",
"width": 76,
"height": 99
"width": 62,
"height": 93
},
"_anchorPoint": {
"__type__": "cc.Vec2",
......@@ -2653,7 +2650,7 @@
1,
1,
1,
0
1
]
},
"_eulerAngles": {
......@@ -2685,9 +2682,9 @@
"_srcBlendFactor": 770,
"_dstBlendFactor": 771,
"_spriteFrame": {
"__uuid__": "e46fb0ce-9d6a-4b98-98cc-3983e39c7bc7"
"__uuid__": "b6657c26-a60a-41b3-8a72-8e497af6eaa3"
},
"_type": 1,
"_type": 0,
"_sizeMode": 1,
"_fillType": 0,
"_fillCenter": {
......@@ -2702,33 +2699,6 @@
"_id": ""
},
{
"__type__": "cc.Widget",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 72
},
"_enabled": true,
"alignMode": 0,
"_target": null,
"_alignFlags": 45,
"_left": 0,
"_right": 0,
"_top": 0,
"_bottom": 0,
"_verticalCenter": 0,
"_horizontalCenter": 0,
"_isAbsLeft": true,
"_isAbsRight": true,
"_isAbsTop": true,
"_isAbsBottom": true,
"_isAbsHorizontalCenter": true,
"_isAbsVerticalCenter": true,
"_originalWidth": 100,
"_originalHeight": 40,
"_id": ""
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
......@@ -2736,7 +2706,7 @@
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "d6/5G9rO1JQZJKHAE3Ksm1",
"fileId": "63ilEVBz1KH5X4ScVPJIVm",
"sync": false
},
{
......@@ -2753,7 +2723,7 @@
"zoomScale": 1.2,
"clickEvents": [
{
"__id__": 77
"__id__": 76
}
],
"_N$interactable": true,
......@@ -2802,9 +2772,7 @@
"b": 120,
"a": 200
},
"_N$normalSprite": {
"__uuid__": "152b9a5c-c309-46cf-a227-d71ef3682577"
},
"_N$normalSprite": null,
"_N$pressedSprite": {
"__uuid__": "e9ec654c-97a2-4787-9325-e6a10375219a"
},
......@@ -2820,9 +2788,7 @@
"_N$disabledSprite": {
"__uuid__": "29158224-f8dd-4661-a796-1ffab537140e"
},
"_N$target": {
"__id__": 72
},
"_N$target": null,
"_id": ""
},
{
......@@ -2832,7 +2798,7 @@
},
"component": "",
"_componentId": "cde0eYIOglPmryVmu4xFcNP",
"handler": "onRollBackBtnClick",
"handler": "onReviewButtonClick",
"customEventData": ""
},
{
......@@ -2843,176 +2809,29 @@
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "51UFqm+6FLD6xDzyx6NRl9",
"sync": false
},
{
"__type__": "cc.Layout",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 70
},
"_enabled": true,
"_layoutSize": {
"__type__": "cc.Size",
"width": 76,
"height": 99
},
"_resize": 1,
"_N$layoutType": 2,
"_N$cellSize": {
"__type__": "cc.Size",
"width": 40,
"height": 40
},
"_N$startAxis": 0,
"_N$paddingLeft": 0,
"_N$paddingRight": 0,
"_N$paddingTop": 0,
"_N$paddingBottom": 0,
"_N$spacingX": 0,
"_N$spacingY": 30,
"_N$verticalDirection": 1,
"_N$horizontalDirection": 0,
"_N$affectedByScale": false,
"_id": ""
},
{
"__type__": "cc.Widget",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 70
},
"_enabled": true,
"alignMode": 1,
"_target": null,
"_alignFlags": 33,
"_left": 0,
"_right": 5,
"_top": 393.5,
"_bottom": 0,
"_verticalCenter": 0,
"_horizontalCenter": 0,
"_isAbsLeft": true,
"_isAbsRight": true,
"_isAbsTop": true,
"_isAbsBottom": true,
"_isAbsHorizontalCenter": true,
"_isAbsVerticalCenter": true,
"_originalWidth": 0,
"_originalHeight": 0,
"_id": ""
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "absBg2e51NW78RLxxPz1nJ",
"fileId": "1dGlLMTZZKpKZRpTw30d69",
"sync": false
},
{
"__type__": "cc.Node",
"_name": "AutoPlayNode",
"_name": "SkipButton",
"_objFlags": 0,
"_parent": {
"__id__": 1
"__id__": 70
},
"_children": [
{
"__id__": 83
},
{
"__id__": 90
},
{
"__id__": 97
"__id__": 79
}
],
"_active": true,
"_components": [
{
"__id__": 104
},
{
"__id__": 105
}
],
"_prefab": {
"__id__": 106
},
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 300,
"height": 100
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 1,
"y": 0.5
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
340,
-570,
0,
0,
0,
0,
1,
1,
1,
1
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": ""
},
{
"__type__": "cc.Node",
"_name": "ReviewButton",
"_objFlags": 0,
"_parent": {
"__id__": 82
},
"_children": [
{
"__id__": 84
}
],
"_active": true,
"_components": [
{
"__id__": 87
}
],
"_prefab": {
"__id__": 89
"__id__": 84
},
"_opacity": 255,
"_color": {
......@@ -3036,7 +2855,7 @@
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
-250,
-150,
0,
0,
0,
......@@ -3063,20 +2882,20 @@
},
{
"__type__": "cc.Node",
"_name": "ReviewIconSprite",
"_name": "SkipIconSprite",
"_objFlags": 0,
"_parent": {
"__id__": 83
"__id__": 78
},
"_children": [],
"_active": true,
"_components": [
{
"__id__": 85
"__id__": 80
}
],
"_prefab": {
"__id__": 86
"__id__": 81
},
"_opacity": 255,
"_color": {
......@@ -3089,7 +2908,7 @@
"_contentSize": {
"__type__": "cc.Size",
"width": 62,
"height": 93
"height": 94
},
"_anchorPoint": {
"__type__": "cc.Vec2",
......@@ -3130,7 +2949,7 @@
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 84
"__id__": 79
},
"_enabled": true,
"_materials": [
......@@ -3141,7 +2960,7 @@
"_srcBlendFactor": 770,
"_dstBlendFactor": 771,
"_spriteFrame": {
"__uuid__": "b6657c26-a60a-41b3-8a72-8e497af6eaa3"
"__uuid__": "3851572b-705e-4224-ad3d-823bd9158197"
},
"_type": 0,
"_sizeMode": 1,
......@@ -3165,7 +2984,7 @@
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "63ilEVBz1KH5X4ScVPJIVm",
"fileId": "0buDqaaZ5IyLPmeOXWLtb0",
"sync": false
},
{
......@@ -3173,7 +2992,7 @@
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 83
"__id__": 78
},
"_enabled": true,
"_normalMaterial": null,
......@@ -3182,7 +3001,7 @@
"zoomScale": 1.2,
"clickEvents": [
{
"__id__": 88
"__id__": 83
}
],
"_N$interactable": true,
......@@ -3257,7 +3076,7 @@
},
"component": "",
"_componentId": "cde0eYIOglPmryVmu4xFcNP",
"handler": "onReviewButtonClick",
"handler": "onSkipButtonClick",
"customEventData": ""
},
{
......@@ -3268,29 +3087,29 @@
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "1dGlLMTZZKpKZRpTw30d69",
"fileId": "81xcvD51VH4ZSd5t5iyWAf",
"sync": false
},
{
"__type__": "cc.Node",
"_name": "SkipButton",
"_name": "AutoPlayButton",
"_objFlags": 0,
"_parent": {
"__id__": 82
"__id__": 70
},
"_children": [
{
"__id__": 91
"__id__": 86
}
],
"_active": true,
"_components": [
{
"__id__": 94
"__id__": 89
}
],
"_prefab": {
"__id__": 96
"__id__": 91
},
"_opacity": 255,
"_color": {
......@@ -3314,7 +3133,7 @@
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
-150,
-50,
0,
0,
0,
......@@ -3341,20 +3160,20 @@
},
{
"__type__": "cc.Node",
"_name": "SkipIconSprite",
"_name": "AutoIconSprite",
"_objFlags": 0,
"_parent": {
"__id__": 90
"__id__": 85
},
"_children": [],
"_active": true,
"_components": [
{
"__id__": 92
"__id__": 87
}
],
"_prefab": {
"__id__": 93
"__id__": 88
},
"_opacity": 255,
"_color": {
......@@ -3366,8 +3185,8 @@
},
"_contentSize": {
"__type__": "cc.Size",
"width": 62,
"height": 94
"width": 59,
"height": 95
},
"_anchorPoint": {
"__type__": "cc.Vec2",
......@@ -3408,7 +3227,7 @@
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 91
"__id__": 86
},
"_enabled": true,
"_materials": [
......@@ -3419,7 +3238,7 @@
"_srcBlendFactor": 770,
"_dstBlendFactor": 771,
"_spriteFrame": {
"__uuid__": "3851572b-705e-4224-ad3d-823bd9158197"
"__uuid__": "30836006-6c67-4b01-a094-eaae32dc71e6"
},
"_type": 0,
"_sizeMode": 1,
......@@ -3443,7 +3262,7 @@
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "0buDqaaZ5IyLPmeOXWLtb0",
"fileId": "39HasPy/pHOqwaLk+kth6N",
"sync": false
},
{
......@@ -3451,7 +3270,7 @@
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 90
"__id__": 85
},
"_enabled": true,
"_normalMaterial": null,
......@@ -3460,7 +3279,7 @@
"zoomScale": 1.2,
"clickEvents": [
{
"__id__": 95
"__id__": 90
}
],
"_N$interactable": true,
......@@ -3535,7 +3354,7 @@
},
"component": "",
"_componentId": "cde0eYIOglPmryVmu4xFcNP",
"handler": "onSkipButtonClick",
"handler": "onAutoPlayButtonClick",
"customEventData": ""
},
{
......@@ -3546,93 +3365,101 @@
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "81xcvD51VH4ZSd5t5iyWAf",
"fileId": "2bd7Y6E2pCP6GGuihubFLG",
"sync": false
},
{
"__type__": "cc.Node",
"_name": "AutoPlayButton",
"__type__": "cc.Layout",
"_name": "",
"_objFlags": 0,
"_parent": {
"__id__": 82
},
"_children": [
{
"__id__": 98
}
],
"_active": true,
"_components": [
{
"__id__": 101
}
],
"_prefab": {
"__id__": 103
},
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
"node": {
"__id__": 70
},
"_contentSize": {
"_enabled": true,
"_layoutSize": {
"__type__": "cc.Size",
"width": 100,
"width": 300,
"height": 100
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.5,
"y": 0.5
"_resize": 1,
"_N$layoutType": 1,
"_N$cellSize": {
"__type__": "cc.Size",
"width": 40,
"height": 40
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
-50,
0,
0,
0,
0,
0,
1,
1,
1,
0
]
"_N$startAxis": 0,
"_N$paddingLeft": 0,
"_N$paddingRight": 0,
"_N$paddingTop": 0,
"_N$paddingBottom": 0,
"_N$spacingX": 0,
"_N$spacingY": 0,
"_N$verticalDirection": 1,
"_N$horizontalDirection": 0,
"_N$affectedByScale": false,
"_id": ""
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
{
"__type__": "cc.Widget",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 70
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_enabled": true,
"alignMode": 1,
"_target": null,
"_alignFlags": 36,
"_left": 0,
"_right": 20,
"_top": 0,
"_bottom": 20,
"_verticalCenter": 0,
"_horizontalCenter": 0,
"_isAbsLeft": true,
"_isAbsRight": true,
"_isAbsTop": true,
"_isAbsBottom": true,
"_isAbsHorizontalCenter": true,
"_isAbsVerticalCenter": true,
"_originalWidth": 0,
"_originalHeight": 0,
"_id": ""
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "0cxc9yCZxCU4mrNUmn5uhj",
"sync": false
},
{
"__type__": "cc.Node",
"_name": "AutoIconSprite",
"_name": "EffectBackground",
"_objFlags": 0,
"_parent": {
"__id__": 97
"__id__": 1
},
"_children": [],
"_active": true,
"_active": false,
"_components": [
{
"__id__": 99
"__id__": 96
},
{
"__id__": 97
},
{
"__id__": 98
}
],
"_prefab": {
"__id__": 100
"__id__": 99
},
"_opacity": 255,
"_color": {
......@@ -3644,8 +3471,8 @@
},
"_contentSize": {
"__type__": "cc.Size",
"width": 59,
"height": 95
"width": 720,
"height": 1280
},
"_anchorPoint": {
"__type__": "cc.Vec2",
......@@ -3686,7 +3513,7 @@
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 98
"__id__": 95
},
"_enabled": true,
"_materials": [
......@@ -3697,10 +3524,10 @@
"_srcBlendFactor": 770,
"_dstBlendFactor": 771,
"_spriteFrame": {
"__uuid__": "30836006-6c67-4b01-a094-eaae32dc71e6"
"__uuid__": "a23235d1-15db-4b95-8439-a2e005bfff91"
},
"_type": 0,
"_sizeMode": 1,
"_sizeMode": 0,
"_fillType": 0,
"_fillCenter": {
"__type__": "cc.Vec2",
......@@ -3714,6 +3541,43 @@
"_id": ""
},
{
"__type__": "cc.Widget",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 95
},
"_enabled": true,
"alignMode": 1,
"_target": null,
"_alignFlags": 45,
"_left": 0,
"_right": 0,
"_top": 0,
"_bottom": 0,
"_verticalCenter": 0,
"_horizontalCenter": 0,
"_isAbsLeft": true,
"_isAbsRight": true,
"_isAbsTop": true,
"_isAbsBottom": true,
"_isAbsHorizontalCenter": true,
"_isAbsVerticalCenter": true,
"_originalWidth": 40,
"_originalHeight": 36,
"_id": ""
},
{
"__type__": "cc.BlockInputEvents",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 95
},
"_enabled": true,
"_id": ""
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
......@@ -3721,909 +3585,36 @@
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "39HasPy/pHOqwaLk+kth6N",
"fileId": "12v3EeXh9DgI6njztQPnr0",
"sync": false
},
{
"__type__": "cc.Button",
"__type__": "cc.Widget",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 97
"__id__": 1
},
"_enabled": true,
"_normalMaterial": null,
"_grayMaterial": null,
"duration": 0.1,
"zoomScale": 1.2,
"clickEvents": [
{
"__id__": 102
}
],
"_N$interactable": true,
"_N$enableAutoGrayEffect": false,
"_N$transition": 3,
"transition": 3,
"_N$normalColor": {
"__type__": "cc.Color",
"r": 230,
"g": 230,
"b": 230,
"a": 255
},
"_N$pressedColor": {
"__type__": "cc.Color",
"r": 200,
"g": 200,
"b": 200,
"a": 255
},
"pressedColor": {
"__type__": "cc.Color",
"r": 200,
"g": 200,
"b": 200,
"a": 255
},
"_N$hoverColor": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"hoverColor": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_N$disabledColor": {
"__type__": "cc.Color",
"r": 120,
"g": 120,
"b": 120,
"a": 200
},
"_N$normalSprite": null,
"_N$pressedSprite": {
"__uuid__": "e9ec654c-97a2-4787-9325-e6a10375219a"
},
"pressedSprite": {
"__uuid__": "e9ec654c-97a2-4787-9325-e6a10375219a"
},
"_N$hoverSprite": {
"__uuid__": "f0048c10-f03e-4c97-b9d3-3506e1d58952"
},
"hoverSprite": {
"__uuid__": "f0048c10-f03e-4c97-b9d3-3506e1d58952"
},
"_N$disabledSprite": {
"__uuid__": "29158224-f8dd-4661-a796-1ffab537140e"
},
"_N$target": null,
"_id": ""
},
{
"__type__": "cc.ClickEvent",
"target": {
"__id__": 1
},
"component": "",
"_componentId": "cde0eYIOglPmryVmu4xFcNP",
"handler": "onAutoPlayButtonClick",
"customEventData": ""
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "2bd7Y6E2pCP6GGuihubFLG",
"sync": false
},
{
"__type__": "cc.Layout",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 82
},
"_enabled": true,
"_layoutSize": {
"__type__": "cc.Size",
"width": 300,
"height": 100
},
"_resize": 1,
"_N$layoutType": 1,
"_N$cellSize": {
"__type__": "cc.Size",
"width": 40,
"height": 40
},
"_N$startAxis": 0,
"_N$paddingLeft": 0,
"_N$paddingRight": 0,
"_N$paddingTop": 0,
"_N$paddingBottom": 0,
"_N$spacingX": 0,
"_N$spacingY": 0,
"_N$verticalDirection": 1,
"_N$horizontalDirection": 0,
"_N$affectedByScale": false,
"_id": ""
},
{
"__type__": "cc.Widget",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 82
},
"_enabled": true,
"alignMode": 1,
"_target": null,
"_alignFlags": 36,
"_left": 0,
"_right": 20,
"_top": 0,
"_bottom": 20,
"_verticalCenter": 0,
"_horizontalCenter": 0,
"_isAbsLeft": true,
"_isAbsRight": true,
"_isAbsTop": true,
"_isAbsBottom": true,
"_isAbsHorizontalCenter": true,
"_isAbsVerticalCenter": true,
"_originalWidth": 0,
"_originalHeight": 0,
"_id": ""
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "0cxc9yCZxCU4mrNUmn5uhj",
"sync": false
},
{
"__type__": "cc.Node",
"_name": "ScrollViewRoot",
"_objFlags": 0,
"_parent": {
"__id__": 1
},
"_children": [
{
"__id__": 108
}
],
"_active": false,
"_components": [
{
"__id__": 118
},
{
"__id__": 119
},
{
"__id__": 120
}
],
"_prefab": {
"__id__": 122
},
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 720,
"height": 1280
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.5,
"y": 0.5
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
0,
0,
0,
0,
0,
1,
1,
1,
1
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": ""
},
{
"__type__": "cc.Node",
"_name": "ScrollView",
"_objFlags": 0,
"_parent": {
"__id__": 107
},
"_children": [
{
"__id__": 109
}
],
"_active": true,
"_components": [
{
"__id__": 115
},
{
"__id__": 116
}
],
"_prefab": {
"__id__": 117
},
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 280,
"height": 613
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0,
"y": 1
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
75,
280,
0,
0,
0,
0,
1,
1,
1,
1
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": ""
},
{
"__type__": "cc.Node",
"_name": "view",
"_objFlags": 512,
"_parent": {
"__id__": 108
},
"_children": [
{
"__id__": 110
}
],
"_active": true,
"_components": [
{
"__id__": 113
}
],
"_prefab": {
"__id__": 114
},
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 280,
"height": 500
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0,
"y": 1
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
-75,
0,
0,
0,
0,
1,
1,
1,
1
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": ""
},
{
"__type__": "cc.Node",
"_name": "content",
"_objFlags": 512,
"_parent": {
"__id__": 109
},
"_children": [],
"_active": true,
"_components": [
{
"__id__": 111
}
],
"_prefab": {
"__id__": 112
},
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 280,
"height": 500
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.2,
"y": 1
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
-75,
0,
0,
0,
0,
1,
1,
1,
1
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": ""
},
{
"__type__": "cc.Layout",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 110
},
"_enabled": true,
"_layoutSize": {
"__type__": "cc.Size",
"width": 280,
"height": 500
},
"_resize": 1,
"_N$layoutType": 2,
"_N$cellSize": {
"__type__": "cc.Size",
"width": 40,
"height": 40
},
"_N$startAxis": 0,
"_N$paddingLeft": 0,
"_N$paddingRight": 0,
"_N$paddingTop": 0,
"_N$paddingBottom": 0,
"_N$spacingX": 0,
"_N$spacingY": 20,
"_N$verticalDirection": 1,
"_N$horizontalDirection": 0,
"_N$affectedByScale": false,
"_id": ""
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "31+YS9mlZDFKdyT20C7l2w",
"sync": false
},
{
"__type__": "cc.Mask",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 109
},
"_enabled": true,
"_materials": [
{
"__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432"
}
],
"_spriteFrame": null,
"_type": 0,
"_segments": 64,
"_N$alphaThreshold": 0,
"_N$inverted": false,
"_id": ""
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "431NDOwFRLyKzjTDC2a9Dt",
"sync": false
},
{
"__type__": "cc.Sprite",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 108
},
"_enabled": true,
"_materials": [
{
"__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432"
}
],
"_srcBlendFactor": 770,
"_dstBlendFactor": 771,
"_spriteFrame": {
"__uuid__": "8a28ef11-f91d-4b1f-978d-136b44068f85"
},
"_type": 1,
"_sizeMode": 1,
"_fillType": 0,
"_fillCenter": {
"__type__": "cc.Vec2",
"x": 0,
"y": 0
},
"_fillStart": 0,
"_fillRange": 0,
"_isTrimmedMode": true,
"_atlas": null,
"_id": ""
},
{
"__type__": "cc.ScrollView",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 108
},
"_enabled": true,
"horizontal": false,
"vertical": true,
"inertia": true,
"brake": 0.75,
"elastic": false,
"bounceDuration": 0.23,
"scrollEvents": [],
"cancelInnerEvents": true,
"_N$content": {
"__id__": 110
},
"content": {
"__id__": 110
},
"_N$horizontalScrollBar": null,
"_N$verticalScrollBar": null,
"_id": ""
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "5aV6dR/iVLeaO/Y3sRmcTq",
"sync": false
},
{
"__type__": "cc.BlockInputEvents",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 107
},
"_enabled": true,
"_id": ""
},
{
"__type__": "cc.Widget",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 107
},
"_enabled": true,
"alignMode": 1,
"_target": null,
"_alignFlags": 45,
"_left": 0,
"_right": 0,
"_top": 0,
"_bottom": 0,
"_verticalCenter": 0,
"_horizontalCenter": 0,
"_isAbsLeft": true,
"_isAbsRight": true,
"_isAbsTop": true,
"_isAbsBottom": true,
"_isAbsHorizontalCenter": true,
"_isAbsVerticalCenter": true,
"_originalWidth": 0,
"_originalHeight": 0,
"_id": ""
},
{
"__type__": "cc.Button",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 107
},
"_enabled": true,
"_normalMaterial": null,
"_grayMaterial": null,
"duration": 0.1,
"zoomScale": 1.2,
"clickEvents": [
{
"__id__": 121
}
],
"_N$interactable": true,
"_N$enableAutoGrayEffect": false,
"_N$transition": 0,
"transition": 0,
"_N$normalColor": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_N$pressedColor": {
"__type__": "cc.Color",
"r": 211,
"g": 211,
"b": 211,
"a": 255
},
"pressedColor": {
"__type__": "cc.Color",
"r": 211,
"g": 211,
"b": 211,
"a": 255
},
"_N$hoverColor": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"hoverColor": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_N$disabledColor": {
"__type__": "cc.Color",
"r": 124,
"g": 124,
"b": 124,
"a": 255
},
"_N$normalSprite": null,
"_N$pressedSprite": null,
"pressedSprite": null,
"_N$hoverSprite": null,
"hoverSprite": null,
"_N$disabledSprite": null,
"_N$target": null,
"_id": ""
},
{
"__type__": "cc.ClickEvent",
"target": {
"__id__": 1
},
"component": "",
"_componentId": "cde0eYIOglPmryVmu4xFcNP",
"handler": "onRollBackBtnClick",
"customEventData": ""
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "f5VKXNAa9KHr7WzY5HQBaR",
"sync": false
},
{
"__type__": "cc.Node",
"_name": "EffectBackground",
"_objFlags": 0,
"_parent": {
"__id__": 1
},
"_children": [],
"_active": false,
"_components": [
{
"__id__": 124
},
{
"__id__": 125
},
{
"__id__": 126
}
],
"_prefab": {
"__id__": 127
},
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 720,
"height": 1280
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.5,
"y": 0.5
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
0,
0,
0,
0,
0,
1,
1,
1,
1
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": ""
},
{
"__type__": "cc.Sprite",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 123
},
"_enabled": true,
"_materials": [
{
"__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432"
}
],
"_srcBlendFactor": 770,
"_dstBlendFactor": 771,
"_spriteFrame": {
"__uuid__": "a23235d1-15db-4b95-8439-a2e005bfff91"
},
"_type": 0,
"_sizeMode": 0,
"_fillType": 0,
"_fillCenter": {
"__type__": "cc.Vec2",
"x": 0,
"y": 0
},
"_fillStart": 0,
"_fillRange": 0,
"_isTrimmedMode": true,
"_atlas": null,
"_id": ""
},
{
"__type__": "cc.Widget",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 123
},
"_enabled": true,
"alignMode": 1,
"_target": null,
"_alignFlags": 45,
"_left": 0,
"_right": 0,
"_top": 0,
"_bottom": 0,
"_verticalCenter": 0,
"_horizontalCenter": 0,
"_isAbsLeft": true,
"_isAbsRight": true,
"_isAbsTop": true,
"_isAbsBottom": true,
"_isAbsHorizontalCenter": true,
"_isAbsVerticalCenter": true,
"_originalWidth": 40,
"_originalHeight": 36,
"_id": ""
},
{
"__type__": "cc.BlockInputEvents",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 123
},
"_enabled": true,
"_id": ""
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "12v3EeXh9DgI6njztQPnr0",
"sync": false
},
{
"__type__": "cc.Widget",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 1
},
"_enabled": true,
"alignMode": 1,
"_target": null,
"_alignFlags": 45,
"_left": 0,
"_right": 0,
"_top": 0,
"_bottom": 0,
"_verticalCenter": 0,
"_horizontalCenter": 0,
"_isAbsLeft": true,
"_isAbsRight": true,
"_isAbsTop": true,
"_isAbsBottom": true,
"_isAbsHorizontalCenter": true,
"_isAbsVerticalCenter": true,
"_originalWidth": 0,
"_originalHeight": 0,
"_id": ""
},
"alignMode": 1,
"_target": null,
"_alignFlags": 45,
"_left": 0,
"_right": 0,
"_top": 0,
"_bottom": 0,
"_verticalCenter": 0,
"_horizontalCenter": 0,
"_isAbsLeft": true,
"_isAbsRight": true,
"_isAbsTop": true,
"_isAbsBottom": true,
"_isAbsHorizontalCenter": true,
"_isAbsVerticalCenter": true,
"_originalWidth": 0,
"_originalHeight": 0,
"_id": ""
},
{
"__type__": "cde0eYIOglPmryVmu4xFcNP",
"_name": "",
......@@ -4636,7 +3627,7 @@
"__id__": 3
},
"effectBackgroundSprite": {
"__id__": 124
"__id__": 96
},
"portraitSprite": {
"__id__": 6
......@@ -4669,25 +3660,16 @@
"__id__": 18
},
"typewriter": {
"__id__": 130
},
"rollBackBtn": {
"__id__": 71
"__id__": 102
},
"chapterBtn": {
"__uuid__": "0c5e5b6a-e3cd-49c8-b1f6-dd38039c121a"
},
"scrollViewRootNode": {
"__id__": 107
},
"contentNode": {
"__id__": 110
},
"skipButtonNode": {
"__id__": 90
"__id__": 78
},
"autoPlayButtonNode": {
"__id__": 97
"__id__": 85
},
"autoPlaySpriteFrame": [
{
......
......@@ -55,7 +55,6 @@ export class DatingScenePresenter extends Presenter<DatingEventSceneModel, Datin
this._isDotTutorial = false;
this._reviewPlot = "";
this.view.completePlotCallback = this.completePlot;
this.view.onRollBackBtnCallback = this.onRollBackBtnCallback;
this.view.onReviewButtonClickCallback = this.onReviewButtonClickCallback;
this._model = param;
if (this._model.status === DatingEventStatus.New) {
......@@ -68,10 +67,8 @@ export class DatingScenePresenter extends Presenter<DatingEventSceneModel, Datin
// this.view.setRunCloseAction((isSpecialScene && this._model.status !== DatingEventStatus.Completed));
if (this._model.isExtra) {
GameModelManager.setIsMainPlotSceneType(false);
this.view.showRollBackBtn(false);
} else {
GameModelManager.setIsMainPlotSceneType(true);
this.view.showRollBackBtn(true);
}
delay(0.1).then(async () => {
if (param.status === DatingEventStatus.Completed) {
......@@ -124,7 +121,6 @@ export class DatingScenePresenter extends Presenter<DatingEventSceneModel, Datin
}));
this._disposable.add(GameModelManager.RollBackToPlot.on(this.onClickRollBackBtn));
this._showScrollView = false;
this.view.getScrollViewRootNode().active = this._showScrollView;
this._disposable.add(GameModelManager.DeadEvent.on(this.onDeadEvent));
this._disposable.add(GameModelManager.SpecialToast.on(this.onSpecialToast));
}
......@@ -158,11 +154,6 @@ export class DatingScenePresenter extends Presenter<DatingEventSceneModel, Datin
if (content) { // TODO 图片设置
if (content.type === SentenceType.TEXT) {
this.view.showBackBtn(this._showBackBtn);
if (this._model.isExtra) {
this.view.showRollBackBtn(false);
} else {
this.view.showRollBackBtn(true);
}
await this.view.setContent(sentence.roleId === GameConstData.GAME_CONST_PLAYER_ROLE_VALUE,
richNodesToCocosString(content.value),
sentence.roleId === 1 ? "" : roleData.getNameIcon(),
......@@ -178,7 +169,6 @@ export class DatingScenePresenter extends Presenter<DatingEventSceneModel, Datin
}
} else if (content.type === SentenceType.SELECT) {
this.view.showBackBtn(false);
this.view.showRollBackBtn(false);
let setSelection = async () => {
let value = content.value[this._currSelect!];
let str = value.summary;
......@@ -242,11 +232,6 @@ export class DatingScenePresenter extends Presenter<DatingEventSceneModel, Datin
this._finished = true;
this.view.setIsRunningAction(false);
this.view.showBackBtn(this._showBackBtn);
if (this._model.isExtra) {
this.view.showRollBackBtn(false);
} else {
this.view.showRollBackBtn(true);
}
let Plot = PlotManager.getCurrentPlots()[0];
let isToBeContinued = Plot.id == SpecialPlotId.ToBeContinued;
let isEnd = Plot.id == SpecialPlotId.End;
......@@ -357,37 +342,15 @@ export class DatingScenePresenter extends Presenter<DatingEventSceneModel, Datin
return portrait;
}
onRollBackBtnCallback = () => {
this._showScrollView = !this._showScrollView;
this.view.getScrollViewRootNode().active = this._showScrollView;
if (this._showScrollView) {
let scrollView = this.view.getScrollViewRootNode().getChildByName("ScrollView");
scrollView.scaleY = 0;
cc.tween(scrollView)
.to(0.3, { scaleY: 1 })
.start();
this.CreateOrUpdateChapterBtns();
} else {
this.view.getScrollViewContentNode().removeAllChildren();
}
}
CreateOrUpdateChapterBtns() {
this.view.getScrollViewContentNode().removeAllChildren();
let ret: { chapterId: number, chapterName: number, chapterStartPlotId: number }[] = [];
let models = GameModelManager.getMainDatingEventScenesModel();
for (let i = 0; i < models.length; i++) {
ret.push({ chapterId: i + 1, chapterName: models[i].config.name, chapterStartPlotId: models[i].config.start_plot_id });
}
// for (let i = 0; i < ret.length; ++i) {
// let btn = cc.instantiate(this.view.getChapterBtn());
// btn.getComponent(ChapterBtn).setData(ret[i].chapterId, ret[i].chapterName, ret[i].chapterStartPlotId);
// btn.parent = this.view.getScrollViewContentNode();
// }
for (let i = ret.length - 1; i >= 0; i--) {
let btn = cc.instantiate(this.view.getChapterBtn());
btn.getComponent(ChapterBtn).setData(ret[i].chapterId, ret[i].chapterName, ret[i].chapterStartPlotId);
btn.parent = this.view.getScrollViewContentNode();
}
}
......@@ -409,10 +372,7 @@ export class DatingScenePresenter extends Presenter<DatingEventSceneModel, Datin
await PlotManager.rollbackToPlot(pid, false, retainVar);
this.rollBackDateAdArray(pid);
GameRecord.saveRecord();
// this.rollBackPlotInfo(pid);
this.view.getScrollViewContentNode().removeAllChildren();
this._showScrollView = !this._showScrollView;
this.view.getScrollViewRootNode().active = this._showScrollView;
this.view.closeView();
await GameModelManager.init((value: number) => {
});
......@@ -500,10 +460,7 @@ export class DatingScenePresenter extends Presenter<DatingEventSceneModel, Datin
await PlotManager.rollbackToPlot(pid, false, retainVar);
this.rollBackDateAdArray(pid);
GameRecord.saveRecord();
// this.rollBackPlotInfo(pid);
this.view.getScrollViewContentNode().removeAllChildren();
this._showScrollView = !this._showScrollView;
this.view.getScrollViewRootNode().active = this._showScrollView;
this.view.closeView();
await GameModelManager.init((value: number) => {
});
......@@ -578,18 +535,6 @@ export class DatingScenePresenter extends Presenter<DatingEventSceneModel, Datin
nextKey = plotIds[i + 1];
}
}
// let cfg = ConfigManager.getAllConfig(dateSceneConfig);
// let ids: string[] = [];
// for (const id in cfg) {
// if (cfg[id].DateType == DateType.Date_Normal) {
// ids.push(id);
// }
// }
// for (let i = 0; i < ids.length; i++) {
// if (ids[i] == currEventId.toString()) {
// nextKey = ids[i + 1];
// }
// }
console.log("getNextDatingEventModel", nextKey);
return nextKey;
}
......
......@@ -47,9 +47,6 @@ export class DatingSceneViewImpl extends CCView implements DatingSceneView {
@property(cc.Node)
private endTipNode = DummyNode;
// @property(cc.Node)
// private closeActNode = DummyNode;
@property(cc.Node)
private arrowguideNode = DummyNode;
......@@ -59,15 +56,9 @@ export class DatingSceneViewImpl extends CCView implements DatingSceneView {
@property(Typewriter)
private typewriter: Typewriter = undefined as unknown as Typewriter;
@property(cc.Node)
private rollBackBtn = DummyNode;
@property(cc.Prefab)
private chapterBtn = DummyPrefab;
@property(cc.Node)
private scrollViewRootNode = DummyNode;
@property(cc.Node)
private contentNode;
@property(cc.Node)
private skipButtonNode = DummyNode;
@property(cc.Node)
private autoPlayButtonNode = DummyNode;
......@@ -141,7 +132,6 @@ export class DatingSceneViewImpl extends CCView implements DatingSceneView {
//#endregion
completePlotCallback: () => Promise<void>;
onRollBackBtnCallback: () => void;
onReviewButtonClickCallback: () => void;
onEnable() {
......@@ -447,50 +437,12 @@ export class DatingSceneViewImpl extends CCView implements DatingSceneView {
runCloseAction() {
this.closeView();
// this.setIsRunningAction(true);
// this.closeActNode.stopAllActions();
// this.closeActNode.scale = 1;
// this.closeActNode.opacity = 0;
// this.closeActNode.active = true;
// this.backBtnNode.active = false;
// let actTime: number = 1;
// let tempX: number = 0;
// let tempY: number = 0;
// let tempR: number = 0;
// let tempS: number = this.node.width / this.closeActNode.width;
// let easeS: cc.Easing = cc.easeSineOut();
// let moveAct = cc.moveTo(actTime, cc.v2(tempX, tempY)).easing(easeS);
// let fadeInAct = cc.fadeIn(actTime).easing(easeS);
// let scaleAct = cc.scaleTo(actTime / 2, tempS).easing(easeS);
// let rotationAct = cc.rotateTo(actTime / 2, tempR).easing(easeS);
// let call = cc.callFunc(() => {
// this.closeView();
// });
// let spawnMF = cc.spawn(moveAct, fadeInAct);
// let spawnSR = cc.spawn(scaleAct, rotationAct);
// let seq = cc.sequence(spawnMF, spawnSR, call);
// this.closeActNode.runAction(seq);
}
getScrollViewRootNode = (): cc.Node => {
return this.scrollViewRootNode;
}
getScrollViewContentNode = (): cc.Node => {
return this.contentNode;
}
getChapterBtn = (): cc.Prefab => {
return this.chapterBtn;
}
onRollBackBtnClick() {
this.resetAutoPlayButtonState();
this.onRollBackBtnCallback();
}
showRollBackBtn = (isShow: boolean) => {
this.rollBackBtn.active = isShow;
}
onRefreshAllStatus() {
this.closeAction();
......
......@@ -15,14 +15,10 @@ export interface DatingSceneView extends View {
showBackBtn: (show: boolean) => void;
setRunCloseAction: (run: boolean) => void;
getScrollViewRootNode: () => cc.Node;
getScrollViewContentNode: () => cc.Node;
getChapterBtn: () => cc.Prefab;
/**关闭ui */
closeView: () => void;
showRollBackBtn: (isShow: boolean) => void;
onRollBackBtnCallback: () => void;
onReviewButtonClickCallback: () => void;
}
......
{"version":3,"sources":["assets/script/game/ui/view/type/DatingSceneView.ts"],"names":[],"mappings":";;;;;;;AA4Ba,QAAA,mBAAmB,GAAG,iBAAiB,CAAC","file":"","sourceRoot":"/","sourcesContent":["import { View } from \"../../../../common/classbase/ViewBase\";\n\nexport interface DatingSceneView extends View {\n /**\n * 完成当前剧情回调函数\n */\n completePlotCallback: () => Promise<void>;\n setContent(isSelf: boolean, text: string, nameSpr: string, name?: string, portraitImg?: string, otherPortraitImg?: string, showRouge?: boolean): Promise<void>;\n setBackground(path: string): Promise<void>;\n setBackgroundEffect(path: string): Promise<void>;\n setIsRunningAction: (isRunning: boolean) => void;\n /**引导返回 */\n guideBack(): void;\n /**是否显示返回按钮*/\n showBackBtn: (show: boolean) => void;\n setRunCloseAction: (run: boolean) => void;\n\n getScrollViewRootNode: () => cc.Node;\n getScrollViewContentNode: () => cc.Node;\n getChapterBtn: () => cc.Prefab;\n\n /**关闭ui */\n closeView: () => void;\n showRollBackBtn: (isShow: boolean) => void;\n onRollBackBtnCallback: () => void;\n onReviewButtonClickCallback: () => void;\n}\n\nexport const DatingSceneViewType = \"DatingSceneView\";"]}
\ No newline at end of file
{"version":3,"sources":["assets/script/game/ui/view/type/DatingSceneView.ts"],"names":[],"mappings":";;;;;;;AAwBa,QAAA,mBAAmB,GAAG,iBAAiB,CAAC","file":"","sourceRoot":"/","sourcesContent":["import { View } from \"../../../../common/classbase/ViewBase\";\n\nexport interface DatingSceneView extends View {\n /**\n * 完成当前剧情回调函数\n */\n completePlotCallback: () => Promise<void>;\n setContent(isSelf: boolean, text: string, nameSpr: string, name?: string, portraitImg?: string, otherPortraitImg?: string, showRouge?: boolean): Promise<void>;\n setBackground(path: string): Promise<void>;\n setBackgroundEffect(path: string): Promise<void>;\n setIsRunningAction: (isRunning: boolean) => void;\n /**引导返回 */\n guideBack(): void;\n /**是否显示返回按钮*/\n showBackBtn: (show: boolean) => void;\n setRunCloseAction: (run: boolean) => void;\n\n getChapterBtn: () => cc.Prefab;\n\n /**关闭ui */\n closeView: () => void;\n onReviewButtonClickCallback: () => void;\n}\n\nexport const DatingSceneViewType = \"DatingSceneView\";"]}
\ No newline at end of file
......@@ -82,21 +82,6 @@ let DatingScenePresenter = /** @class */ (() => {
this._completingPlot = false;
this.execPlot();
};
this.onRollBackBtnCallback = () => {
this._showScrollView = !this._showScrollView;
this.view.getScrollViewRootNode().active = this._showScrollView;
if (this._showScrollView) {
let scrollView = this.view.getScrollViewRootNode().getChildByName("ScrollView");
scrollView.scaleY = 0;
cc.tween(scrollView)
.to(0.3, { scaleY: 1 })
.start();
this.CreateOrUpdateChapterBtns();
}
else {
this.view.getScrollViewContentNode().removeAllChildren();
}
};
this.onClickRollBackBtn = (pid) => {
CDKeyEventManager_1.default.getInstance().shiftCDKeyRemovePlotAD();
let removeAdCardNum = CDKeyEventManager_1.default.getInstance().checkCDKeyRemovePlotAD();
......@@ -114,10 +99,7 @@ let DatingScenePresenter = /** @class */ (() => {
await AVG_1.PlotManager.rollbackToPlot(pid, false, retainVar);
this.rollBackDateAdArray(pid);
AVG_1.GameRecord.saveRecord();
// this.rollBackPlotInfo(pid);
this.view.getScrollViewContentNode().removeAllChildren();
this._showScrollView = !this._showScrollView;
this.view.getScrollViewRootNode().active = this._showScrollView;
this.view.closeView();
await GameModelManager_1.GameModelManager.init((value) => {
});
......@@ -165,10 +147,7 @@ let DatingScenePresenter = /** @class */ (() => {
await AVG_1.PlotManager.rollbackToPlot(pid, false, retainVar);
this.rollBackDateAdArray(pid);
AVG_1.GameRecord.saveRecord();
// this.rollBackPlotInfo(pid);
this.view.getScrollViewContentNode().removeAllChildren();
this._showScrollView = !this._showScrollView;
this.view.getScrollViewRootNode().active = this._showScrollView;
this.view.closeView();
await GameModelManager_1.GameModelManager.init((value) => {
});
......@@ -214,7 +193,6 @@ let DatingScenePresenter = /** @class */ (() => {
this._isDotTutorial = false;
this._reviewPlot = "";
this.view.completePlotCallback = this.completePlot;
this.view.onRollBackBtnCallback = this.onRollBackBtnCallback;
this.view.onReviewButtonClickCallback = this.onReviewButtonClickCallback;
this._model = param;
if (this._model.status === DatingEventSceneModel_1.DatingEventStatus.New) {
......@@ -227,11 +205,9 @@ let DatingScenePresenter = /** @class */ (() => {
// this.view.setRunCloseAction((isSpecialScene && this._model.status !== DatingEventStatus.Completed));
if (this._model.isExtra) {
GameModelManager_1.GameModelManager.setIsMainPlotSceneType(false);
this.view.showRollBackBtn(false);
}
else {
GameModelManager_1.GameModelManager.setIsMainPlotSceneType(true);
this.view.showRollBackBtn(true);
}
simba_utils_1.delay(0.1).then(async () => {
if (param.status === DatingEventSceneModel_1.DatingEventStatus.Completed) {
......@@ -284,7 +260,6 @@ let DatingScenePresenter = /** @class */ (() => {
}));
this._disposable.add(GameModelManager_1.GameModelManager.RollBackToPlot.on(this.onClickRollBackBtn));
this._showScrollView = false;
this.view.getScrollViewRootNode().active = this._showScrollView;
this._disposable.add(GameModelManager_1.GameModelManager.DeadEvent.on(this.onDeadEvent));
this._disposable.add(GameModelManager_1.GameModelManager.SpecialToast.on(this.onSpecialToast));
}
......@@ -316,12 +291,6 @@ let DatingScenePresenter = /** @class */ (() => {
if (content) { // TODO 图片设置
if (content.type === AVG_1.SentenceType.TEXT) {
this.view.showBackBtn(this._showBackBtn);
if (this._model.isExtra) {
this.view.showRollBackBtn(false);
}
else {
this.view.showRollBackBtn(true);
}
await this.view.setContent(sentence.roleId === GameConstData_1.GameConstData.GAME_CONST_PLAYER_ROLE_VALUE, AVG_1.richNodesToCocosString(content.value), sentence.roleId === 1 ? "" : roleData.getNameIcon(), sentence.roleId === 1 ? undefined : roleData.getConfig().name,
// sentence.roleId === 1 ? otherPortrait : roleData.getPortrait(this._currPlot.face,),
sentence.roleId === 1 ? otherPortrait : this.getPortraitByRole(roleData, this._currPlot.face), otherPortrait, isShowRouge);
......@@ -334,7 +303,6 @@ let DatingScenePresenter = /** @class */ (() => {
}
else if (content.type === AVG_1.SentenceType.SELECT) {
this.view.showBackBtn(false);
this.view.showRollBackBtn(false);
let setSelection = async () => {
let value = content.value[this._currSelect];
let str = value.summary;
......@@ -402,12 +370,6 @@ let DatingScenePresenter = /** @class */ (() => {
this._finished = true;
this.view.setIsRunningAction(false);
this.view.showBackBtn(this._showBackBtn);
if (this._model.isExtra) {
this.view.showRollBackBtn(false);
}
else {
this.view.showRollBackBtn(true);
}
let Plot = AVG_1.PlotManager.getCurrentPlots()[0];
let isToBeContinued = Plot.id == AVG_1.SpecialPlotId.ToBeContinued;
let isEnd = Plot.id == AVG_1.SpecialPlotId.End;
......@@ -494,21 +456,14 @@ let DatingScenePresenter = /** @class */ (() => {
return portrait;
}
CreateOrUpdateChapterBtns() {
this.view.getScrollViewContentNode().removeAllChildren();
let ret = [];
let models = GameModelManager_1.GameModelManager.getMainDatingEventScenesModel();
for (let i = 0; i < models.length; i++) {
ret.push({ chapterId: i + 1, chapterName: models[i].config.name, chapterStartPlotId: models[i].config.start_plot_id });
}
// for (let i = 0; i < ret.length; ++i) {
// let btn = cc.instantiate(this.view.getChapterBtn());
// btn.getComponent(ChapterBtn).setData(ret[i].chapterId, ret[i].chapterName, ret[i].chapterStartPlotId);
// btn.parent = this.view.getScrollViewContentNode();
// }
for (let i = ret.length - 1; i >= 0; i--) {
let btn = cc.instantiate(this.view.getChapterBtn());
btn.getComponent(ChapterBtn_1.default).setData(ret[i].chapterId, ret[i].chapterName, ret[i].chapterStartPlotId);
btn.parent = this.view.getScrollViewContentNode();
}
}
getRetainVarKeyArr() {
......@@ -595,18 +550,6 @@ let DatingScenePresenter = /** @class */ (() => {
nextKey = plotIds[i + 1];
}
}
// let cfg = ConfigManager.getAllConfig(dateSceneConfig);
// let ids: string[] = [];
// for (const id in cfg) {
// if (cfg[id].DateType == DateType.Date_Normal) {
// ids.push(id);
// }
// }
// for (let i = 0; i < ids.length; i++) {
// if (ids[i] == currEventId.toString()) {
// nextKey = ids[i + 1];
// }
// }
console.log("getNextDatingEventModel", nextKey);
return nextKey;
}
......
......@@ -45,29 +45,23 @@
"__id__": 70
},
{
"__id__": 82
},
{
"__id__": 107
},
{
"__id__": 123
"__id__": 95
}
],
"_active": true,
"_components": [
{
"__id__": 128
"__id__": 100
},
{
"__id__": 129
"__id__": 101
},
{
"__id__": 130
"__id__": 102
}
],
"_prefab": {
"__id__": 131
"__id__": 103
},
"_opacity": 255,
"_color": {
......@@ -2465,7 +2459,7 @@
},
{
"__type__": "cc.Node",
"_name": "ButtonsLayout",
"_name": "AutoPlayNode",
"_objFlags": 0,
"_parent": {
"__id__": 1
......@@ -2473,19 +2467,25 @@
"_children": [
{
"__id__": 71
},
{
"__id__": 78
},
{
"__id__": 85
}
],
"_active": true,
"_components": [
{
"__id__": 79
"__id__": 92
},
{
"__id__": 80
"__id__": 93
}
],
"_prefab": {
"__id__": 81
"__id__": 94
},
"_opacity": 255,
"_color": {
......@@ -2497,20 +2497,20 @@
},
"_contentSize": {
"__type__": "cc.Size",
"width": 76,
"height": 99
"width": 300,
"height": 100
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.5,
"x": 1,
"y": 0.5
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
317,
197,
340,
-570,
0,
0,
0,
......@@ -2536,7 +2536,7 @@
},
{
"__type__": "cc.Node",
"_name": "RollBackBtn",
"_name": "ReviewButton",
"_objFlags": 0,
"_parent": {
"__id__": 70
......@@ -2549,11 +2549,11 @@
"_active": true,
"_components": [
{
"__id__": 76
"__id__": 75
}
],
"_prefab": {
"__id__": 78
"__id__": 77
},
"_opacity": 255,
"_color": {
......@@ -2565,8 +2565,8 @@
},
"_contentSize": {
"__type__": "cc.Size",
"width": 76,
"height": 99
"width": 100,
"height": 100
},
"_anchorPoint": {
"__type__": "cc.Vec2",
......@@ -2577,7 +2577,7 @@
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
-250,
0,
0,
0,
......@@ -2586,7 +2586,7 @@
1,
1,
1,
1
0
]
},
"_eulerAngles": {
......@@ -2604,8 +2604,8 @@
},
{
"__type__": "cc.Node",
"_name": "Background",
"_objFlags": 512,
"_name": "ReviewIconSprite",
"_objFlags": 0,
"_parent": {
"__id__": 71
},
......@@ -2614,13 +2614,10 @@
"_components": [
{
"__id__": 73
},
{
"__id__": 74
}
],
"_prefab": {
"__id__": 75
"__id__": 74
},
"_opacity": 255,
"_color": {
......@@ -2632,8 +2629,8 @@
},
"_contentSize": {
"__type__": "cc.Size",
"width": 76,
"height": 99
"width": 62,
"height": 93
},
"_anchorPoint": {
"__type__": "cc.Vec2",
......@@ -2653,7 +2650,7 @@
1,
1,
1,
0
1
]
},
"_eulerAngles": {
......@@ -2685,9 +2682,9 @@
"_srcBlendFactor": 770,
"_dstBlendFactor": 771,
"_spriteFrame": {
"__uuid__": "e46fb0ce-9d6a-4b98-98cc-3983e39c7bc7"
"__uuid__": "b6657c26-a60a-41b3-8a72-8e497af6eaa3"
},
"_type": 1,
"_type": 0,
"_sizeMode": 1,
"_fillType": 0,
"_fillCenter": {
......@@ -2702,33 +2699,6 @@
"_id": ""
},
{
"__type__": "cc.Widget",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 72
},
"_enabled": true,
"alignMode": 0,
"_target": null,
"_alignFlags": 45,
"_left": 0,
"_right": 0,
"_top": 0,
"_bottom": 0,
"_verticalCenter": 0,
"_horizontalCenter": 0,
"_isAbsLeft": true,
"_isAbsRight": true,
"_isAbsTop": true,
"_isAbsBottom": true,
"_isAbsHorizontalCenter": true,
"_isAbsVerticalCenter": true,
"_originalWidth": 100,
"_originalHeight": 40,
"_id": ""
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
......@@ -2736,7 +2706,7 @@
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "d6/5G9rO1JQZJKHAE3Ksm1",
"fileId": "63ilEVBz1KH5X4ScVPJIVm",
"sync": false
},
{
......@@ -2753,7 +2723,7 @@
"zoomScale": 1.2,
"clickEvents": [
{
"__id__": 77
"__id__": 76
}
],
"_N$interactable": true,
......@@ -2802,9 +2772,7 @@
"b": 120,
"a": 200
},
"_N$normalSprite": {
"__uuid__": "152b9a5c-c309-46cf-a227-d71ef3682577"
},
"_N$normalSprite": null,
"_N$pressedSprite": {
"__uuid__": "e9ec654c-97a2-4787-9325-e6a10375219a"
},
......@@ -2820,9 +2788,7 @@
"_N$disabledSprite": {
"__uuid__": "29158224-f8dd-4661-a796-1ffab537140e"
},
"_N$target": {
"__id__": 72
},
"_N$target": null,
"_id": ""
},
{
......@@ -2832,7 +2798,7 @@
},
"component": "",
"_componentId": "cde0eYIOglPmryVmu4xFcNP",
"handler": "onRollBackBtnClick",
"handler": "onReviewButtonClick",
"customEventData": ""
},
{
......@@ -2843,176 +2809,29 @@
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "51UFqm+6FLD6xDzyx6NRl9",
"sync": false
},
{
"__type__": "cc.Layout",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 70
},
"_enabled": true,
"_layoutSize": {
"__type__": "cc.Size",
"width": 76,
"height": 99
},
"_resize": 1,
"_N$layoutType": 2,
"_N$cellSize": {
"__type__": "cc.Size",
"width": 40,
"height": 40
},
"_N$startAxis": 0,
"_N$paddingLeft": 0,
"_N$paddingRight": 0,
"_N$paddingTop": 0,
"_N$paddingBottom": 0,
"_N$spacingX": 0,
"_N$spacingY": 30,
"_N$verticalDirection": 1,
"_N$horizontalDirection": 0,
"_N$affectedByScale": false,
"_id": ""
},
{
"__type__": "cc.Widget",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 70
},
"_enabled": true,
"alignMode": 1,
"_target": null,
"_alignFlags": 33,
"_left": 0,
"_right": 5,
"_top": 393.5,
"_bottom": 0,
"_verticalCenter": 0,
"_horizontalCenter": 0,
"_isAbsLeft": true,
"_isAbsRight": true,
"_isAbsTop": true,
"_isAbsBottom": true,
"_isAbsHorizontalCenter": true,
"_isAbsVerticalCenter": true,
"_originalWidth": 0,
"_originalHeight": 0,
"_id": ""
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "absBg2e51NW78RLxxPz1nJ",
"fileId": "1dGlLMTZZKpKZRpTw30d69",
"sync": false
},
{
"__type__": "cc.Node",
"_name": "AutoPlayNode",
"_name": "SkipButton",
"_objFlags": 0,
"_parent": {
"__id__": 1
"__id__": 70
},
"_children": [
{
"__id__": 83
},
{
"__id__": 90
},
{
"__id__": 97
"__id__": 79
}
],
"_active": true,
"_components": [
{
"__id__": 104
},
{
"__id__": 105
}
],
"_prefab": {
"__id__": 106
},
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 300,
"height": 100
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 1,
"y": 0.5
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
340,
-570,
0,
0,
0,
0,
1,
1,
1,
1
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": ""
},
{
"__type__": "cc.Node",
"_name": "ReviewButton",
"_objFlags": 0,
"_parent": {
"__id__": 82
},
"_children": [
{
"__id__": 84
}
],
"_active": true,
"_components": [
{
"__id__": 87
}
],
"_prefab": {
"__id__": 89
"__id__": 84
},
"_opacity": 255,
"_color": {
......@@ -3036,7 +2855,7 @@
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
-250,
-150,
0,
0,
0,
......@@ -3063,20 +2882,20 @@
},
{
"__type__": "cc.Node",
"_name": "ReviewIconSprite",
"_name": "SkipIconSprite",
"_objFlags": 0,
"_parent": {
"__id__": 83
"__id__": 78
},
"_children": [],
"_active": true,
"_components": [
{
"__id__": 85
"__id__": 80
}
],
"_prefab": {
"__id__": 86
"__id__": 81
},
"_opacity": 255,
"_color": {
......@@ -3089,7 +2908,7 @@
"_contentSize": {
"__type__": "cc.Size",
"width": 62,
"height": 93
"height": 94
},
"_anchorPoint": {
"__type__": "cc.Vec2",
......@@ -3130,7 +2949,7 @@
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 84
"__id__": 79
},
"_enabled": true,
"_materials": [
......@@ -3141,7 +2960,7 @@
"_srcBlendFactor": 770,
"_dstBlendFactor": 771,
"_spriteFrame": {
"__uuid__": "b6657c26-a60a-41b3-8a72-8e497af6eaa3"
"__uuid__": "3851572b-705e-4224-ad3d-823bd9158197"
},
"_type": 0,
"_sizeMode": 1,
......@@ -3165,7 +2984,7 @@
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "63ilEVBz1KH5X4ScVPJIVm",
"fileId": "0buDqaaZ5IyLPmeOXWLtb0",
"sync": false
},
{
......@@ -3173,7 +2992,7 @@
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 83
"__id__": 78
},
"_enabled": true,
"_normalMaterial": null,
......@@ -3182,7 +3001,7 @@
"zoomScale": 1.2,
"clickEvents": [
{
"__id__": 88
"__id__": 83
}
],
"_N$interactable": true,
......@@ -3257,7 +3076,7 @@
},
"component": "",
"_componentId": "cde0eYIOglPmryVmu4xFcNP",
"handler": "onReviewButtonClick",
"handler": "onSkipButtonClick",
"customEventData": ""
},
{
......@@ -3268,29 +3087,29 @@
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "1dGlLMTZZKpKZRpTw30d69",
"fileId": "81xcvD51VH4ZSd5t5iyWAf",
"sync": false
},
{
"__type__": "cc.Node",
"_name": "SkipButton",
"_name": "AutoPlayButton",
"_objFlags": 0,
"_parent": {
"__id__": 82
"__id__": 70
},
"_children": [
{
"__id__": 91
"__id__": 86
}
],
"_active": true,
"_components": [
{
"__id__": 94
"__id__": 89
}
],
"_prefab": {
"__id__": 96
"__id__": 91
},
"_opacity": 255,
"_color": {
......@@ -3314,7 +3133,7 @@
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
-150,
-50,
0,
0,
0,
......@@ -3341,20 +3160,20 @@
},
{
"__type__": "cc.Node",
"_name": "SkipIconSprite",
"_name": "AutoIconSprite",
"_objFlags": 0,
"_parent": {
"__id__": 90
"__id__": 85
},
"_children": [],
"_active": true,
"_components": [
{
"__id__": 92
"__id__": 87
}
],
"_prefab": {
"__id__": 93
"__id__": 88
},
"_opacity": 255,
"_color": {
......@@ -3366,8 +3185,8 @@
},
"_contentSize": {
"__type__": "cc.Size",
"width": 62,
"height": 94
"width": 59,
"height": 95
},
"_anchorPoint": {
"__type__": "cc.Vec2",
......@@ -3408,7 +3227,7 @@
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 91
"__id__": 86
},
"_enabled": true,
"_materials": [
......@@ -3419,7 +3238,7 @@
"_srcBlendFactor": 770,
"_dstBlendFactor": 771,
"_spriteFrame": {
"__uuid__": "3851572b-705e-4224-ad3d-823bd9158197"
"__uuid__": "30836006-6c67-4b01-a094-eaae32dc71e6"
},
"_type": 0,
"_sizeMode": 1,
......@@ -3443,7 +3262,7 @@
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "0buDqaaZ5IyLPmeOXWLtb0",
"fileId": "39HasPy/pHOqwaLk+kth6N",
"sync": false
},
{
......@@ -3451,7 +3270,7 @@
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 90
"__id__": 85
},
"_enabled": true,
"_normalMaterial": null,
......@@ -3460,7 +3279,7 @@
"zoomScale": 1.2,
"clickEvents": [
{
"__id__": 95
"__id__": 90
}
],
"_N$interactable": true,
......@@ -3535,7 +3354,7 @@
},
"component": "",
"_componentId": "cde0eYIOglPmryVmu4xFcNP",
"handler": "onSkipButtonClick",
"handler": "onAutoPlayButtonClick",
"customEventData": ""
},
{
......@@ -3546,93 +3365,101 @@
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "81xcvD51VH4ZSd5t5iyWAf",
"fileId": "2bd7Y6E2pCP6GGuihubFLG",
"sync": false
},
{
"__type__": "cc.Node",
"_name": "AutoPlayButton",
"__type__": "cc.Layout",
"_name": "",
"_objFlags": 0,
"_parent": {
"__id__": 82
},
"_children": [
{
"__id__": 98
}
],
"_active": true,
"_components": [
{
"__id__": 101
}
],
"_prefab": {
"__id__": 103
},
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
"node": {
"__id__": 70
},
"_contentSize": {
"_enabled": true,
"_layoutSize": {
"__type__": "cc.Size",
"width": 100,
"width": 300,
"height": 100
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.5,
"y": 0.5
"_resize": 1,
"_N$layoutType": 1,
"_N$cellSize": {
"__type__": "cc.Size",
"width": 40,
"height": 40
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
-50,
0,
0,
0,
0,
0,
1,
1,
1,
0
]
"_N$startAxis": 0,
"_N$paddingLeft": 0,
"_N$paddingRight": 0,
"_N$paddingTop": 0,
"_N$paddingBottom": 0,
"_N$spacingX": 0,
"_N$spacingY": 0,
"_N$verticalDirection": 1,
"_N$horizontalDirection": 0,
"_N$affectedByScale": false,
"_id": ""
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
{
"__type__": "cc.Widget",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 70
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_enabled": true,
"alignMode": 1,
"_target": null,
"_alignFlags": 36,
"_left": 0,
"_right": 20,
"_top": 0,
"_bottom": 20,
"_verticalCenter": 0,
"_horizontalCenter": 0,
"_isAbsLeft": true,
"_isAbsRight": true,
"_isAbsTop": true,
"_isAbsBottom": true,
"_isAbsHorizontalCenter": true,
"_isAbsVerticalCenter": true,
"_originalWidth": 0,
"_originalHeight": 0,
"_id": ""
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "0cxc9yCZxCU4mrNUmn5uhj",
"sync": false
},
{
"__type__": "cc.Node",
"_name": "AutoIconSprite",
"_name": "EffectBackground",
"_objFlags": 0,
"_parent": {
"__id__": 97
"__id__": 1
},
"_children": [],
"_active": true,
"_active": false,
"_components": [
{
"__id__": 99
"__id__": 96
},
{
"__id__": 97
},
{
"__id__": 98
}
],
"_prefab": {
"__id__": 100
"__id__": 99
},
"_opacity": 255,
"_color": {
......@@ -3644,8 +3471,8 @@
},
"_contentSize": {
"__type__": "cc.Size",
"width": 59,
"height": 95
"width": 720,
"height": 1280
},
"_anchorPoint": {
"__type__": "cc.Vec2",
......@@ -3686,7 +3513,7 @@
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 98
"__id__": 95
},
"_enabled": true,
"_materials": [
......@@ -3697,10 +3524,10 @@
"_srcBlendFactor": 770,
"_dstBlendFactor": 771,
"_spriteFrame": {
"__uuid__": "30836006-6c67-4b01-a094-eaae32dc71e6"
"__uuid__": "a23235d1-15db-4b95-8439-a2e005bfff91"
},
"_type": 0,
"_sizeMode": 1,
"_sizeMode": 0,
"_fillType": 0,
"_fillCenter": {
"__type__": "cc.Vec2",
......@@ -3714,6 +3541,43 @@
"_id": ""
},
{
"__type__": "cc.Widget",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 95
},
"_enabled": true,
"alignMode": 1,
"_target": null,
"_alignFlags": 45,
"_left": 0,
"_right": 0,
"_top": 0,
"_bottom": 0,
"_verticalCenter": 0,
"_horizontalCenter": 0,
"_isAbsLeft": true,
"_isAbsRight": true,
"_isAbsTop": true,
"_isAbsBottom": true,
"_isAbsHorizontalCenter": true,
"_isAbsVerticalCenter": true,
"_originalWidth": 40,
"_originalHeight": 36,
"_id": ""
},
{
"__type__": "cc.BlockInputEvents",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 95
},
"_enabled": true,
"_id": ""
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
......@@ -3721,909 +3585,36 @@
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "39HasPy/pHOqwaLk+kth6N",
"fileId": "12v3EeXh9DgI6njztQPnr0",
"sync": false
},
{
"__type__": "cc.Button",
"__type__": "cc.Widget",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 97
"__id__": 1
},
"_enabled": true,
"_normalMaterial": null,
"_grayMaterial": null,
"duration": 0.1,
"zoomScale": 1.2,
"clickEvents": [
{
"__id__": 102
}
],
"_N$interactable": true,
"_N$enableAutoGrayEffect": false,
"_N$transition": 3,
"transition": 3,
"_N$normalColor": {
"__type__": "cc.Color",
"r": 230,
"g": 230,
"b": 230,
"a": 255
},
"_N$pressedColor": {
"__type__": "cc.Color",
"r": 200,
"g": 200,
"b": 200,
"a": 255
},
"pressedColor": {
"__type__": "cc.Color",
"r": 200,
"g": 200,
"b": 200,
"a": 255
},
"_N$hoverColor": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"hoverColor": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_N$disabledColor": {
"__type__": "cc.Color",
"r": 120,
"g": 120,
"b": 120,
"a": 200
},
"_N$normalSprite": null,
"_N$pressedSprite": {
"__uuid__": "e9ec654c-97a2-4787-9325-e6a10375219a"
},
"pressedSprite": {
"__uuid__": "e9ec654c-97a2-4787-9325-e6a10375219a"
},
"_N$hoverSprite": {
"__uuid__": "f0048c10-f03e-4c97-b9d3-3506e1d58952"
},
"hoverSprite": {
"__uuid__": "f0048c10-f03e-4c97-b9d3-3506e1d58952"
},
"_N$disabledSprite": {
"__uuid__": "29158224-f8dd-4661-a796-1ffab537140e"
},
"_N$target": null,
"_id": ""
},
{
"__type__": "cc.ClickEvent",
"target": {
"__id__": 1
},
"component": "",
"_componentId": "cde0eYIOglPmryVmu4xFcNP",
"handler": "onAutoPlayButtonClick",
"customEventData": ""
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "2bd7Y6E2pCP6GGuihubFLG",
"sync": false
},
{
"__type__": "cc.Layout",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 82
},
"_enabled": true,
"_layoutSize": {
"__type__": "cc.Size",
"width": 300,
"height": 100
},
"_resize": 1,
"_N$layoutType": 1,
"_N$cellSize": {
"__type__": "cc.Size",
"width": 40,
"height": 40
},
"_N$startAxis": 0,
"_N$paddingLeft": 0,
"_N$paddingRight": 0,
"_N$paddingTop": 0,
"_N$paddingBottom": 0,
"_N$spacingX": 0,
"_N$spacingY": 0,
"_N$verticalDirection": 1,
"_N$horizontalDirection": 0,
"_N$affectedByScale": false,
"_id": ""
},
{
"__type__": "cc.Widget",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 82
},
"_enabled": true,
"alignMode": 1,
"_target": null,
"_alignFlags": 36,
"_left": 0,
"_right": 20,
"_top": 0,
"_bottom": 20,
"_verticalCenter": 0,
"_horizontalCenter": 0,
"_isAbsLeft": true,
"_isAbsRight": true,
"_isAbsTop": true,
"_isAbsBottom": true,
"_isAbsHorizontalCenter": true,
"_isAbsVerticalCenter": true,
"_originalWidth": 0,
"_originalHeight": 0,
"_id": ""
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "0cxc9yCZxCU4mrNUmn5uhj",
"sync": false
},
{
"__type__": "cc.Node",
"_name": "ScrollViewRoot",
"_objFlags": 0,
"_parent": {
"__id__": 1
},
"_children": [
{
"__id__": 108
}
],
"_active": false,
"_components": [
{
"__id__": 118
},
{
"__id__": 119
},
{
"__id__": 120
}
],
"_prefab": {
"__id__": 122
},
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 720,
"height": 1280
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.5,
"y": 0.5
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
0,
0,
0,
0,
0,
1,
1,
1,
1
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": ""
},
{
"__type__": "cc.Node",
"_name": "ScrollView",
"_objFlags": 0,
"_parent": {
"__id__": 107
},
"_children": [
{
"__id__": 109
}
],
"_active": true,
"_components": [
{
"__id__": 115
},
{
"__id__": 116
}
],
"_prefab": {
"__id__": 117
},
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 280,
"height": 613
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0,
"y": 1
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
75,
280,
0,
0,
0,
0,
1,
1,
1,
1
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": ""
},
{
"__type__": "cc.Node",
"_name": "view",
"_objFlags": 512,
"_parent": {
"__id__": 108
},
"_children": [
{
"__id__": 110
}
],
"_active": true,
"_components": [
{
"__id__": 113
}
],
"_prefab": {
"__id__": 114
},
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 280,
"height": 500
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0,
"y": 1
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
-75,
0,
0,
0,
0,
1,
1,
1,
1
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": ""
},
{
"__type__": "cc.Node",
"_name": "content",
"_objFlags": 512,
"_parent": {
"__id__": 109
},
"_children": [],
"_active": true,
"_components": [
{
"__id__": 111
}
],
"_prefab": {
"__id__": 112
},
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 280,
"height": 500
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.2,
"y": 1
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
-75,
0,
0,
0,
0,
1,
1,
1,
1
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": ""
},
{
"__type__": "cc.Layout",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 110
},
"_enabled": true,
"_layoutSize": {
"__type__": "cc.Size",
"width": 280,
"height": 500
},
"_resize": 1,
"_N$layoutType": 2,
"_N$cellSize": {
"__type__": "cc.Size",
"width": 40,
"height": 40
},
"_N$startAxis": 0,
"_N$paddingLeft": 0,
"_N$paddingRight": 0,
"_N$paddingTop": 0,
"_N$paddingBottom": 0,
"_N$spacingX": 0,
"_N$spacingY": 20,
"_N$verticalDirection": 1,
"_N$horizontalDirection": 0,
"_N$affectedByScale": false,
"_id": ""
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "31+YS9mlZDFKdyT20C7l2w",
"sync": false
},
{
"__type__": "cc.Mask",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 109
},
"_enabled": true,
"_materials": [
{
"__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432"
}
],
"_spriteFrame": null,
"_type": 0,
"_segments": 64,
"_N$alphaThreshold": 0,
"_N$inverted": false,
"_id": ""
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "431NDOwFRLyKzjTDC2a9Dt",
"sync": false
},
{
"__type__": "cc.Sprite",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 108
},
"_enabled": true,
"_materials": [
{
"__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432"
}
],
"_srcBlendFactor": 770,
"_dstBlendFactor": 771,
"_spriteFrame": {
"__uuid__": "8a28ef11-f91d-4b1f-978d-136b44068f85"
},
"_type": 1,
"_sizeMode": 1,
"_fillType": 0,
"_fillCenter": {
"__type__": "cc.Vec2",
"x": 0,
"y": 0
},
"_fillStart": 0,
"_fillRange": 0,
"_isTrimmedMode": true,
"_atlas": null,
"_id": ""
},
{
"__type__": "cc.ScrollView",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 108
},
"_enabled": true,
"horizontal": false,
"vertical": true,
"inertia": true,
"brake": 0.75,
"elastic": false,
"bounceDuration": 0.23,
"scrollEvents": [],
"cancelInnerEvents": true,
"_N$content": {
"__id__": 110
},
"content": {
"__id__": 110
},
"_N$horizontalScrollBar": null,
"_N$verticalScrollBar": null,
"_id": ""
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "5aV6dR/iVLeaO/Y3sRmcTq",
"sync": false
},
{
"__type__": "cc.BlockInputEvents",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 107
},
"_enabled": true,
"_id": ""
},
{
"__type__": "cc.Widget",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 107
},
"_enabled": true,
"alignMode": 1,
"_target": null,
"_alignFlags": 45,
"_left": 0,
"_right": 0,
"_top": 0,
"_bottom": 0,
"_verticalCenter": 0,
"_horizontalCenter": 0,
"_isAbsLeft": true,
"_isAbsRight": true,
"_isAbsTop": true,
"_isAbsBottom": true,
"_isAbsHorizontalCenter": true,
"_isAbsVerticalCenter": true,
"_originalWidth": 0,
"_originalHeight": 0,
"_id": ""
},
{
"__type__": "cc.Button",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 107
},
"_enabled": true,
"_normalMaterial": null,
"_grayMaterial": null,
"duration": 0.1,
"zoomScale": 1.2,
"clickEvents": [
{
"__id__": 121
}
],
"_N$interactable": true,
"_N$enableAutoGrayEffect": false,
"_N$transition": 0,
"transition": 0,
"_N$normalColor": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_N$pressedColor": {
"__type__": "cc.Color",
"r": 211,
"g": 211,
"b": 211,
"a": 255
},
"pressedColor": {
"__type__": "cc.Color",
"r": 211,
"g": 211,
"b": 211,
"a": 255
},
"_N$hoverColor": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"hoverColor": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_N$disabledColor": {
"__type__": "cc.Color",
"r": 124,
"g": 124,
"b": 124,
"a": 255
},
"_N$normalSprite": null,
"_N$pressedSprite": null,
"pressedSprite": null,
"_N$hoverSprite": null,
"hoverSprite": null,
"_N$disabledSprite": null,
"_N$target": null,
"_id": ""
},
{
"__type__": "cc.ClickEvent",
"target": {
"__id__": 1
},
"component": "",
"_componentId": "cde0eYIOglPmryVmu4xFcNP",
"handler": "onRollBackBtnClick",
"customEventData": ""
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "f5VKXNAa9KHr7WzY5HQBaR",
"sync": false
},
{
"__type__": "cc.Node",
"_name": "EffectBackground",
"_objFlags": 0,
"_parent": {
"__id__": 1
},
"_children": [],
"_active": false,
"_components": [
{
"__id__": 124
},
{
"__id__": 125
},
{
"__id__": 126
}
],
"_prefab": {
"__id__": 127
},
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 720,
"height": 1280
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.5,
"y": 0.5
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
0,
0,
0,
0,
0,
1,
1,
1,
1
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": ""
},
{
"__type__": "cc.Sprite",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 123
},
"_enabled": true,
"_materials": [
{
"__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432"
}
],
"_srcBlendFactor": 770,
"_dstBlendFactor": 771,
"_spriteFrame": {
"__uuid__": "a23235d1-15db-4b95-8439-a2e005bfff91"
},
"_type": 0,
"_sizeMode": 0,
"_fillType": 0,
"_fillCenter": {
"__type__": "cc.Vec2",
"x": 0,
"y": 0
},
"_fillStart": 0,
"_fillRange": 0,
"_isTrimmedMode": true,
"_atlas": null,
"_id": ""
},
{
"__type__": "cc.Widget",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 123
},
"_enabled": true,
"alignMode": 1,
"_target": null,
"_alignFlags": 45,
"_left": 0,
"_right": 0,
"_top": 0,
"_bottom": 0,
"_verticalCenter": 0,
"_horizontalCenter": 0,
"_isAbsLeft": true,
"_isAbsRight": true,
"_isAbsTop": true,
"_isAbsBottom": true,
"_isAbsHorizontalCenter": true,
"_isAbsVerticalCenter": true,
"_originalWidth": 40,
"_originalHeight": 36,
"_id": ""
},
{
"__type__": "cc.BlockInputEvents",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 123
},
"_enabled": true,
"_id": ""
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "12v3EeXh9DgI6njztQPnr0",
"sync": false
},
{
"__type__": "cc.Widget",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 1
},
"_enabled": true,
"alignMode": 1,
"_target": null,
"_alignFlags": 45,
"_left": 0,
"_right": 0,
"_top": 0,
"_bottom": 0,
"_verticalCenter": 0,
"_horizontalCenter": 0,
"_isAbsLeft": true,
"_isAbsRight": true,
"_isAbsTop": true,
"_isAbsBottom": true,
"_isAbsHorizontalCenter": true,
"_isAbsVerticalCenter": true,
"_originalWidth": 0,
"_originalHeight": 0,
"_id": ""
},
"alignMode": 1,
"_target": null,
"_alignFlags": 45,
"_left": 0,
"_right": 0,
"_top": 0,
"_bottom": 0,
"_verticalCenter": 0,
"_horizontalCenter": 0,
"_isAbsLeft": true,
"_isAbsRight": true,
"_isAbsTop": true,
"_isAbsBottom": true,
"_isAbsHorizontalCenter": true,
"_isAbsVerticalCenter": true,
"_originalWidth": 0,
"_originalHeight": 0,
"_id": ""
},
{
"__type__": "cde0eYIOglPmryVmu4xFcNP",
"_name": "",
......@@ -4636,7 +3627,7 @@
"__id__": 3
},
"effectBackgroundSprite": {
"__id__": 124
"__id__": 96
},
"portraitSprite": {
"__id__": 6
......@@ -4669,25 +3660,16 @@
"__id__": 18
},
"typewriter": {
"__id__": 130
},
"rollBackBtn": {
"__id__": 71
"__id__": 102
},
"chapterBtn": {
"__uuid__": "0c5e5b6a-e3cd-49c8-b1f6-dd38039c121a"
},
"scrollViewRootNode": {
"__id__": 107
},
"contentNode": {
"__id__": 110
},
"skipButtonNode": {
"__id__": 90
"__id__": 78
},
"autoPlayButtonNode": {
"__id__": 97
"__id__": 85
},
"autoPlaySpriteFrame": [
{
......
......@@ -46,14 +46,10 @@ let DatingSceneViewImpl = /** @class */ (() => {
this.backRedDot = CCDummyObjects_1.DummyNode;
this.backBtnNode = CCDummyObjects_1.DummyNode;
this.endTipNode = CCDummyObjects_1.DummyNode;
// @property(cc.Node)
// private closeActNode = DummyNode;
this.arrowguideNode = CCDummyObjects_1.DummyNode;
this.otherNameSpr = CCDummyObjects_1.DummySprite;
this.typewriter = undefined;
this.rollBackBtn = CCDummyObjects_1.DummyNode;
this.chapterBtn = CCDummyObjects_1.DummyPrefab;
this.scrollViewRootNode = CCDummyObjects_1.DummyNode;
this.skipButtonNode = CCDummyObjects_1.DummyNode;
this.autoPlayButtonNode = CCDummyObjects_1.DummyNode;
this.autoPlaySpriteFrame = [];
......@@ -85,18 +81,9 @@ let DatingSceneViewImpl = /** @class */ (() => {
}
}
};
this.getScrollViewRootNode = () => {
return this.scrollViewRootNode;
};
this.getScrollViewContentNode = () => {
return this.contentNode;
};
this.getChapterBtn = () => {
return this.chapterBtn;
};
this.showRollBackBtn = (isShow) => {
this.rollBackBtn.active = isShow;
};
}
/**
* 是否显示返回按钮
......@@ -417,33 +404,6 @@ let DatingSceneViewImpl = /** @class */ (() => {
}
runCloseAction() {
this.closeView();
// this.setIsRunningAction(true);
// this.closeActNode.stopAllActions();
// this.closeActNode.scale = 1;
// this.closeActNode.opacity = 0;
// this.closeActNode.active = true;
// this.backBtnNode.active = false;
// let actTime: number = 1;
// let tempX: number = 0;
// let tempY: number = 0;
// let tempR: number = 0;
// let tempS: number = this.node.width / this.closeActNode.width;
// let easeS: cc.Easing = cc.easeSineOut();
// let moveAct = cc.moveTo(actTime, cc.v2(tempX, tempY)).easing(easeS);
// let fadeInAct = cc.fadeIn(actTime).easing(easeS);
// let scaleAct = cc.scaleTo(actTime / 2, tempS).easing(easeS);
// let rotationAct = cc.rotateTo(actTime / 2, tempR).easing(easeS);
// let call = cc.callFunc(() => {
// this.closeView();
// });
// let spawnMF = cc.spawn(moveAct, fadeInAct);
// let spawnSR = cc.spawn(scaleAct, rotationAct);
// let seq = cc.sequence(spawnMF, spawnSR, call);
// this.closeActNode.runAction(seq);
}
onRollBackBtnClick() {
this.resetAutoPlayButtonState();
this.onRollBackBtnCallback();
}
onRefreshAllStatus() {
this.closeAction();
......@@ -524,19 +484,10 @@ let DatingSceneViewImpl = /** @class */ (() => {
property(Typewriter_1.default)
], DatingSceneViewImpl.prototype, "typewriter", void 0);
__decorate([
property(cc.Node)
], DatingSceneViewImpl.prototype, "rollBackBtn", void 0);
__decorate([
property(cc.Prefab)
], DatingSceneViewImpl.prototype, "chapterBtn", void 0);
__decorate([
property(cc.Node)
], DatingSceneViewImpl.prototype, "scrollViewRootNode", void 0);
__decorate([
property(cc.Node)
], DatingSceneViewImpl.prototype, "contentNode", void 0);
__decorate([
property(cc.Node)
], DatingSceneViewImpl.prototype, "skipButtonNode", void 0);
__decorate([
property(cc.Node)
......
{"version":3,"sources":["assets/script/game/ui/view/impl/dating/DatingSceneViewImpl.ts"],"names":[],"mappings":"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","file":"","sourceRoot":"/","sourcesContent":["import { CCView } from \"../../../../../common/classbase/CCViewBase\";\nimport { DatingSceneView, DatingSceneViewType } from \"../../type/DatingSceneView\";\nimport { RegView } from \"../../../PresenterCCViewFactory\";\nimport { DummySprite, DummyNode, DummyPrefab } from \"../../../../../common/CCDummyObjects\";\nimport { ResUtils } from \"simba-cc-resutils\";\nimport Typewriter from \"../../../../../common/components/Typewriter\";\nimport PortraitFixComponent from \"../../../../../common/components/PortraitFixComponent\";\nimport { GameConfig } from \"../../../../../GameConfig\";\nimport { GameModelManager } from \"../../../../model/GameModelManager\";\n\nconst { ccclass, property } = cc._decorator;\n\nexport enum AutoPlayState {\n Close = 0,\n AutoPlay\n}\n\nexport enum AutoPlayType {\n Skip = 0,\n Speedx1\n}\n\n@ccclass\n@RegView(DatingSceneViewType, \"prefab/ui/DatingSceneView\")\nexport class DatingSceneViewImpl extends CCView implements DatingSceneView {\n //#region editor bindings\n @property(cc.Sprite)\n private backgroundSprite = DummySprite;\n @property(cc.Sprite)\n private effectBackgroundSprite = DummySprite;\n @property(cc.Sprite)\n private portraitSprite = DummySprite;\n @property(cc.Sprite)\n private selfSmallPortrait = DummySprite;\n @property(cc.Node)\n private otherDialogNode = DummyNode;\n @property(cc.Node)\n private selfDialogNode = DummyNode;\n @property(cc.Node)\n private narratorDialogNode = DummyNode;\n @property(cc.Node)\n private backRedDot = DummyNode;\n\n @property(cc.Node)\n private backBtnNode = DummyNode;\n\n @property(cc.Node)\n private endTipNode = DummyNode;\n\n // @property(cc.Node)\n // private closeActNode = DummyNode;\n\n @property(cc.Node)\n private arrowguideNode = DummyNode;\n\n @property(cc.Sprite)\n private otherNameSpr = DummySprite;\n\n @property(Typewriter)\n private typewriter: Typewriter = undefined as unknown as Typewriter;\n\n @property(cc.Node)\n private rollBackBtn = DummyNode;\n @property(cc.Prefab)\n private chapterBtn = DummyPrefab;\n @property(cc.Node)\n private scrollViewRootNode = DummyNode;\n @property(cc.Node)\n private contentNode;\n @property(cc.Node)\n private skipButtonNode = DummyNode;\n @property(cc.Node)\n private autoPlayButtonNode = DummyNode;\n @property([cc.SpriteFrame])\n private autoPlaySpriteFrame = [];\n\n\n private _originPos: cc.Vec3 = cc.v3(-265, 68, 0);\n\n private _isRunCloseAction: boolean = false;\n\n private _isRunningAction: boolean = false;\n\n private _contentText: string = \"\";\n private _autoPlayTimer: number = -1;\n private _skipButtonState: number = 0;\n private _autoPlayButtonState: number = 0;\n private _autoPlayState: number = -1;\n private _autoPlaySpeed: number = 1;\n private _textTyperIsOver: boolean = true;\n private _isSpecialEffect: boolean = false;\n\n /**\n * 是否显示返回按钮\n * @param show bool\n */\n showBackBtn(show: boolean) {\n this.backBtnNode!.active = show;\n if (show) {\n this.backBtnNode.getComponent(cc.Widget).updateAlignment();\n }\n }\n\n closeAction() {\n GameModelManager.setIsMainPlotSceneType(false);\n GameConfig.isVerb = false;\n //清除自动播放计时器\n clearTimeout(this._autoPlayTimer);\n if (this._isRunCloseAction) {\n this.runCloseAction();\n } else if (!this._isRunningAction) {\n this.closeView();\n }\n }\n\n setIsRunningAction = (isRunning: boolean) => {\n this._isRunningAction = isRunning;\n }\n\n closeView() {\n this.backgroundSprite.spriteFrame = undefined as any;\n this.portraitSprite.spriteFrame = undefined as any;\n this.selfSmallPortrait.spriteFrame = undefined as any;\n this.otherDialogNode.active = false;\n this.selfDialogNode.active = false;\n this.narratorDialogNode.active = false;\n this.backRedDot.active = false;\n this.backBtnNode.active = true;\n\n this.endTipNode.stopAllActions();\n this.endTipNode.active = false;\n this.endTipNode.position = this._originPos;\n this.endTipNode.opacity = 255;\n\n this._isRunCloseAction = false;\n // this.closeActNode.active = false;\n this._isRunningAction = false;\n this.arrowguideNode.active = false;\n this.close();\n }\n //#endregion\n\n completePlotCallback: () => Promise<void>;\n onRollBackBtnCallback: () => void;\n onReviewButtonClickCallback: () => void;\n\n onEnable() {\n this.resetAutoPlayButtonState();\n this.node.on(cc.Node.EventType.TOUCH_END, this.touchEndHandler, this);\n }\n\n onDisable() {\n this.node.off(cc.Node.EventType.TOUCH_END, this.touchEndHandler, this);\n }\n\n /**\n * 背景监听回调\n */\n touchEndHandler = async () => {\n if (this._autoPlayState == AutoPlayState.Close) {\n if (this.typewriter.getShowingString() == \"\") {\n if (this.completePlotCallback) await this.completePlotCallback();\n } else {\n this.typewriter.stopTyperShowString()\n }\n }\n }\n\n /**引导返回 */\n guideBack() {\n this.runEndTipAction();\n }\n\n /**\n * 设置约会场景内容\n * @param isSelf 是否是自身\n * @param text 文本内容\n * @param nameSpr \n * @param name 别人名字\n * @param portraitImg 立绘图名字\n * @param otherPortraitImg 其他立绘图名字\n * @param showRouge 是否显示口红\n */\n async setContent(isSelf: boolean, text: string, nameSpr: string, name?: string, portraitImg?: string, otherPortraitImg?: string, showRouge?: boolean): Promise<void> {\n let promises: Promise<any>[] = [];\n if (!((isSelf && otherPortraitImg) || portraitImg)) { // 防止切换过程中闪\n this.portraitSprite.spriteFrame = undefined as any;\n }\n if (portraitImg) {\n if (isSelf) {\n let portraitPath = portraitImg.substring(0, portraitImg.lastIndexOf(\"/\") + 1);\n let faceId = portraitImg.substring(portraitImg.lastIndexOf(\"/\") + 1, portraitImg.length);\n portraitImg = portraitPath + \"1/\" + faceId;\n }\n promises.push(ResUtils.loadRes(portraitImg, cc.SpriteFrame).then((sf) => {\n if (this.node.active) {\n if (isSelf) {\n this.selfSmallPortrait.spriteFrame = sf;\n } else {\n this.portraitSprite.spriteFrame = sf;\n this.fixScreenSize();\n }\n }\n }));\n }\n if (isSelf && otherPortraitImg) {\n promises.push(ResUtils.loadRes(otherPortraitImg, cc.SpriteFrame).then((sf) => {\n this.portraitSprite.spriteFrame = sf;\n this.fixScreenSize();\n }));\n }\n if (nameSpr && !isSelf && \"\" !== nameSpr.trim()) {\n promises.push(ResUtils.loadRes(nameSpr, cc.SpriteFrame).then((sf) => {\n this.otherNameSpr.spriteFrame = sf;\n }));\n }\n this.otherDialogNode.active = false;\n this.selfDialogNode.active = false;\n this.narratorDialogNode.active = false;\n // let rougeNode = this.selfDialogNode.getChildByName(\"rouge\");\n // let perTime = 0.05;\n if (text) {\n // let time = perTime * text.length;\n this._contentText = text;\n this._textTyperIsOver = false;\n if (isSelf) { // 自己\n this.selfDialogNode.active = true;\n // this.selfDialogNode.children[0].getComponent(cc.Label).string = name!;\n // this.selfDialogNode.children[1].getComponent(cc.RichText).string = text;\n this.typewriter.showRichTextTyper(this.selfDialogNode.children[0].getComponent(cc.RichText), text,\n () => {\n this._textTyperIsOver = true;\n }, () => { }, this._autoPlaySpeed\n );\n // promises.push(AnimationUtils.ActionTypeWriter(this.selfDialogNode.children[1].getComponent(cc.RichText), text, time));\n // if (rougeNode) {\n // rougeNode.active = showRouge ? true : false;\n // }\n } else if (name) { // 别人\n this.otherDialogNode.active = true;\n // this.otherDialogNode.children[0].getComponent(cc.Label).string = name!;\n // this.otherDialogNode.children[1].getComponent(cc.RichText).string = text;\n this.typewriter.showRichTextTyper(this.otherDialogNode.children[0].getComponent(cc.RichText), text,\n () => {\n this._textTyperIsOver = true;\n }, () => { }, this._autoPlaySpeed\n );\n // promises.push(AnimationUtils.ActionTypeWriter(this.otherDialogNode.children[1].getComponent(cc.RichText), text, time));\n } else { // 旁白\n this.narratorDialogNode.active = true;\n // this.narratorDialogNode.children[0].getComponent(cc.RichText).string = text;\n this.typewriter.showRichTextTyper(this.narratorDialogNode.children[0].getComponent(cc.RichText), text,\n () => {\n this._textTyperIsOver = true;\n }, () => { }, this._autoPlaySpeed\n );\n // promises.push(AnimationUtils.ActionTypeWriter(this.narratorDialogNode.children[0].getComponent(cc.RichText), text, time));\n }\n }\n try {\n await Promise.all(promises);\n } catch (e) {\n console.error(e);\n }\n }\n\n resetAutoPlayButtonState() {\n this._autoPlaySpeed = 1;\n this._autoPlayState = AutoPlayState.Close;\n this._skipButtonState = AutoPlayState.Close;\n this._autoPlayButtonState = AutoPlayState.Close;\n this.changeSkipButtonState(this._autoPlayState);\n this.changeAutoPlayButtonState(this._autoPlayState);\n }\n\n changeSkipButtonState(state: AutoPlayState) {\n let skipLabel = this.skipButtonNode.getComponentInChildren(cc.Sprite);\n if (state == AutoPlayState.Close) {\n skipLabel.spriteFrame = this.autoPlaySpriteFrame[2];\n } else {\n skipLabel.spriteFrame = this.autoPlaySpriteFrame[3];\n }\n }\n\n changeAutoPlayButtonState(state: AutoPlayState) {\n let autoPlaySprite = this.autoPlayButtonNode.getComponentInChildren(cc.Sprite);\n if (state == AutoPlayState.Close) {\n autoPlaySprite.spriteFrame = this.autoPlaySpriteFrame[0];\n } else {\n autoPlaySprite.spriteFrame = this.autoPlaySpriteFrame[1];\n }\n }\n\n /**\n * 开始自动播放计时器\n * @param startNow 是否不进行延时,立即执行下一步,适用于玩家点击自动播放按钮之后,无需等待\n */\n startAutoPlayTimer(startNow: boolean = false) {\n let interval: number = 0;\n if (!startNow) {\n //时间间隔的计算方法,如果startNow为true的话,不进行延时,时间为0,否则:\n //(文本长度 * 50ms / this._autoPlaySpeed)表示文本走完打字机效果所需要的时间\n //(文本长度 * 60ms / this._autoPlaySpeed)表示文本完全展示之后展示停留的时间\n interval = ((this._contentText.length * 50) / this._autoPlaySpeed) + ((this._contentText.length * 60) / this._autoPlaySpeed);\n }\n this._autoPlayTimer = window.setTimeout(async () => {\n if (this._autoPlayState == AutoPlayState.AutoPlay) {\n if (this._textTyperIsOver && !this._isSpecialEffect) {\n if (this.completePlotCallback) await this.completePlotCallback();\n }\n this.startAutoPlayTimer();\n } else {\n clearTimeout(this._autoPlayTimer);\n }\n }, interval);\n }\n\n fixScreenSize() {\n let comp = this.portraitSprite.node.getComponent(PortraitFixComponent);\n if (comp) {\n comp.fixScreenSize(true);\n }\n }\n\n /**\n * 设置背景\n * @param bgImage 背景路径\n */\n async setBackground(bgImage: string) {\n if (!bgImage) {\n this.backgroundSprite.spriteFrame = undefined as any;\n } else {\n try {\n this.backgroundSprite.node.opacity = 255;\n let sf = await ResUtils.loadRes(bgImage, cc.SpriteFrame);\n this.backgroundSprite.spriteFrame = sf;\n this.backgroundSprite.node.height = this.node.height;\n this.backgroundSprite.node.width = sf.getOriginalSize().width / sf.getOriginalSize().height * this.node.height;\n } catch (e) {\n console.error(e);\n }\n }\n }\n\n /**\n * 设置背景(特殊效果)\n * @param bgImage 背景路径\n */\n async setBackgroundEffect(bgImage: string) {\n this._isSpecialEffect = true;\n let dialogNodesActive: boolean[] = [this.otherDialogNode.active, this.selfDialogNode.active, this.narratorDialogNode.active];\n this.otherDialogNode.active = false;\n this.selfDialogNode.active = false;\n this.narratorDialogNode.active = false;\n if (!bgImage) {\n this.backgroundSprite.node.opacity = 255;\n cc.tween(this.backgroundSprite.node)\n .to(1, { opacity: 0 })\n .call(() => {\n this.backgroundSprite.spriteFrame = undefined as any;\n this.otherDialogNode.active = dialogNodesActive[0];\n this.selfDialogNode.active = dialogNodesActive[1];\n this.narratorDialogNode.active = dialogNodesActive[2];\n }).start();\n if (this.backgroundSprite.spriteFrame) {\n this.effectBackgroundSprite.node.active = true;\n this.effectBackgroundSprite.node.opacity = 255;\n cc.tween(this.effectBackgroundSprite.node)\n .to(1, { opacity: 0 })\n .call(() => {\n this.effectBackgroundSprite.node.active = false;\n this._isSpecialEffect = false;\n }).start();\n }\n } else {\n try {\n this.effectBackgroundSprite.node.active = true;\n this.effectBackgroundSprite.node.opacity = 0;\n cc.tween(this.effectBackgroundSprite.node)\n .to(1, { opacity: 255 })\n .call(() => {\n cc.tween(this.effectBackgroundSprite.node)\n .to(1, { opacity: 0 })\n .call(() => {\n this.effectBackgroundSprite.node.active = false;\n }).start();\n }).start();\n cc.tween(this.backgroundSprite.node)\n .to(1, { opacity: 0 })\n .call(async () => {\n let sf = await ResUtils.loadRes(bgImage, cc.SpriteFrame);\n this.backgroundSprite.spriteFrame = sf;\n this.backgroundSprite.node.height = this.node.height;\n this.backgroundSprite.node.width = sf.getOriginalSize().width / sf.getOriginalSize().height * this.node.height;\n cc.tween(this.backgroundSprite.node)\n .to(1, { opacity: 255 })\n .call(() => {\n this.otherDialogNode.active = dialogNodesActive[0];\n this.selfDialogNode.active = dialogNodesActive[1];\n this.narratorDialogNode.active = dialogNodesActive[2];\n this._isSpecialEffect = false;\n }).start();\n }).start();\n } catch (e) {\n console.error(e);\n }\n }\n }\n\n runEndTipAction() {\n this.setIsRunningAction(true);\n let offsetY: number = 300;\n let actTime: number = 1.5;\n this.endTipNode.stopAllActions();\n this.endTipNode.active = true;\n this.endTipNode.scale = 1;\n this.endTipNode.opacity = 255;\n this.endTipNode.position = cc.v3(-265, this._originPos.y - offsetY, 0);\n this.endTipNode.opacity = 0;\n\n let ease = cc.easeSineInOut();\n let moveAct = cc.moveTo(actTime, cc.v2(-265, this._originPos.y)).easing(ease);\n let fadeInAct = cc.fadeIn(actTime).easing(ease);\n let spawn = cc.spawn(moveAct, fadeInAct);\n\n let call = cc.callFunc(() => {\n this.backRedDot.active = true;\n\n // if (!this._isRunCloseAction) {\n // SDK.showInterstitialAd();\n // }\n this.setIsRunningAction(false);\n });\n\n let showArrowGuideCall = cc.callFunc(() => {\n this.arrowguideNode.active = true;\n });\n let actTime2: number = 2;\n let seq = cc.sequence(spawn, call, cc.spawn(cc.moveTo(1, cc.v2(this.backBtnNode.position.x, this.backBtnNode.position.y)), cc.scaleTo(actTime2, 0)), showArrowGuideCall);\n\n this.endTipNode.runAction(seq);\n }\n\n setRunCloseAction(run: boolean) {\n this._isRunCloseAction = run;\n }\n\n runCloseAction() {\n this.closeView();\n // this.setIsRunningAction(true);\n // this.closeActNode.stopAllActions();\n // this.closeActNode.scale = 1;\n // this.closeActNode.opacity = 0;\n // this.closeActNode.active = true;\n // this.backBtnNode.active = false;\n // let actTime: number = 1;\n // let tempX: number = 0;\n // let tempY: number = 0;\n // let tempR: number = 0;\n // let tempS: number = this.node.width / this.closeActNode.width;\n // let easeS: cc.Easing = cc.easeSineOut();\n // let moveAct = cc.moveTo(actTime, cc.v2(tempX, tempY)).easing(easeS);\n // let fadeInAct = cc.fadeIn(actTime).easing(easeS);\n // let scaleAct = cc.scaleTo(actTime / 2, tempS).easing(easeS);\n // let rotationAct = cc.rotateTo(actTime / 2, tempR).easing(easeS);\n // let call = cc.callFunc(() => {\n // this.closeView();\n // });\n // let spawnMF = cc.spawn(moveAct, fadeInAct);\n // let spawnSR = cc.spawn(scaleAct, rotationAct);\n // let seq = cc.sequence(spawnMF, spawnSR, call);\n // this.closeActNode.runAction(seq);\n }\n\n getScrollViewRootNode = (): cc.Node => {\n return this.scrollViewRootNode;\n }\n\n getScrollViewContentNode = (): cc.Node => {\n return this.contentNode;\n }\n\n getChapterBtn = (): cc.Prefab => {\n return this.chapterBtn;\n }\n onRollBackBtnClick() {\n this.resetAutoPlayButtonState();\n this.onRollBackBtnCallback();\n }\n\n showRollBackBtn = (isShow: boolean) => {\n this.rollBackBtn.active = isShow;\n }\n\n onRefreshAllStatus() {\n this.closeAction();\n }\n\n onReviewButtonClick() {\n this.resetAutoPlayButtonState();\n clearTimeout(this._autoPlayTimer);\n this.onReviewButtonClickCallback();\n }\n\n onSkipButtonClick() {\n this._skipButtonState = this._skipButtonState == AutoPlayState.Close ? AutoPlayState.AutoPlay : AutoPlayState.Close;\n this._autoPlayState = this._skipButtonState;\n if (this._autoPlayState == AutoPlayState.AutoPlay) {\n this._autoPlaySpeed = 20;\n this.startAutoPlayTimer(true);\n this.changeSkipButtonState(this._autoPlayState);\n this.changeAutoPlayButtonState(AutoPlayState.Close);\n this._autoPlayButtonState = AutoPlayState.Close;\n } else {\n this.resetAutoPlayButtonState();\n clearTimeout(this._autoPlayTimer);\n }\n }\n\n onAutoPlayButtonClick() {\n this._autoPlayButtonState = this._autoPlayButtonState == AutoPlayState.Close ? AutoPlayState.AutoPlay : AutoPlayState.Close;\n this._autoPlayState = this._autoPlayButtonState;\n if (this._autoPlayState == AutoPlayState.AutoPlay) {\n this._autoPlaySpeed = 1;\n this.startAutoPlayTimer(true);\n this.changeSkipButtonState(AutoPlayState.Close);\n this.changeAutoPlayButtonState(this._autoPlayState);\n this._skipButtonState = AutoPlayState.Close;\n } else {\n this.resetAutoPlayButtonState();\n clearTimeout(this._autoPlayTimer);\n }\n }\n}\n"]}
\ No newline at end of file
{"version":3,"sources":["assets/script/game/ui/view/impl/dating/DatingSceneViewImpl.ts"],"names":[],"mappings":"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","file":"","sourceRoot":"/","sourcesContent":["import { CCView } from \"../../../../../common/classbase/CCViewBase\";\nimport { DatingSceneView, DatingSceneViewType } from \"../../type/DatingSceneView\";\nimport { RegView } from \"../../../PresenterCCViewFactory\";\nimport { DummySprite, DummyNode, DummyPrefab } from \"../../../../../common/CCDummyObjects\";\nimport { ResUtils } from \"simba-cc-resutils\";\nimport Typewriter from \"../../../../../common/components/Typewriter\";\nimport PortraitFixComponent from \"../../../../../common/components/PortraitFixComponent\";\nimport { GameConfig } from \"../../../../../GameConfig\";\nimport { GameModelManager } from \"../../../../model/GameModelManager\";\n\nconst { ccclass, property } = cc._decorator;\n\nexport enum AutoPlayState {\n Close = 0,\n AutoPlay\n}\n\nexport enum AutoPlayType {\n Skip = 0,\n Speedx1\n}\n\n@ccclass\n@RegView(DatingSceneViewType, \"prefab/ui/DatingSceneView\")\nexport class DatingSceneViewImpl extends CCView implements DatingSceneView {\n //#region editor bindings\n @property(cc.Sprite)\n private backgroundSprite = DummySprite;\n @property(cc.Sprite)\n private effectBackgroundSprite = DummySprite;\n @property(cc.Sprite)\n private portraitSprite = DummySprite;\n @property(cc.Sprite)\n private selfSmallPortrait = DummySprite;\n @property(cc.Node)\n private otherDialogNode = DummyNode;\n @property(cc.Node)\n private selfDialogNode = DummyNode;\n @property(cc.Node)\n private narratorDialogNode = DummyNode;\n @property(cc.Node)\n private backRedDot = DummyNode;\n\n @property(cc.Node)\n private backBtnNode = DummyNode;\n\n @property(cc.Node)\n private endTipNode = DummyNode;\n\n @property(cc.Node)\n private arrowguideNode = DummyNode;\n\n @property(cc.Sprite)\n private otherNameSpr = DummySprite;\n\n @property(Typewriter)\n private typewriter: Typewriter = undefined as unknown as Typewriter;\n\n @property(cc.Prefab)\n private chapterBtn = DummyPrefab;\n @property(cc.Node)\n private skipButtonNode = DummyNode;\n @property(cc.Node)\n private autoPlayButtonNode = DummyNode;\n @property([cc.SpriteFrame])\n private autoPlaySpriteFrame = [];\n\n\n private _originPos: cc.Vec3 = cc.v3(-265, 68, 0);\n\n private _isRunCloseAction: boolean = false;\n\n private _isRunningAction: boolean = false;\n\n private _contentText: string = \"\";\n private _autoPlayTimer: number = -1;\n private _skipButtonState: number = 0;\n private _autoPlayButtonState: number = 0;\n private _autoPlayState: number = -1;\n private _autoPlaySpeed: number = 1;\n private _textTyperIsOver: boolean = true;\n private _isSpecialEffect: boolean = false;\n\n /**\n * 是否显示返回按钮\n * @param show bool\n */\n showBackBtn(show: boolean) {\n this.backBtnNode!.active = show;\n if (show) {\n this.backBtnNode.getComponent(cc.Widget).updateAlignment();\n }\n }\n\n closeAction() {\n GameModelManager.setIsMainPlotSceneType(false);\n GameConfig.isVerb = false;\n //清除自动播放计时器\n clearTimeout(this._autoPlayTimer);\n if (this._isRunCloseAction) {\n this.runCloseAction();\n } else if (!this._isRunningAction) {\n this.closeView();\n }\n }\n\n setIsRunningAction = (isRunning: boolean) => {\n this._isRunningAction = isRunning;\n }\n\n closeView() {\n this.backgroundSprite.spriteFrame = undefined as any;\n this.portraitSprite.spriteFrame = undefined as any;\n this.selfSmallPortrait.spriteFrame = undefined as any;\n this.otherDialogNode.active = false;\n this.selfDialogNode.active = false;\n this.narratorDialogNode.active = false;\n this.backRedDot.active = false;\n this.backBtnNode.active = true;\n\n this.endTipNode.stopAllActions();\n this.endTipNode.active = false;\n this.endTipNode.position = this._originPos;\n this.endTipNode.opacity = 255;\n\n this._isRunCloseAction = false;\n // this.closeActNode.active = false;\n this._isRunningAction = false;\n this.arrowguideNode.active = false;\n this.close();\n }\n //#endregion\n\n completePlotCallback: () => Promise<void>;\n onReviewButtonClickCallback: () => void;\n\n onEnable() {\n this.resetAutoPlayButtonState();\n this.node.on(cc.Node.EventType.TOUCH_END, this.touchEndHandler, this);\n }\n\n onDisable() {\n this.node.off(cc.Node.EventType.TOUCH_END, this.touchEndHandler, this);\n }\n\n /**\n * 背景监听回调\n */\n touchEndHandler = async () => {\n if (this._autoPlayState == AutoPlayState.Close) {\n if (this.typewriter.getShowingString() == \"\") {\n if (this.completePlotCallback) await this.completePlotCallback();\n } else {\n this.typewriter.stopTyperShowString()\n }\n }\n }\n\n /**引导返回 */\n guideBack() {\n this.runEndTipAction();\n }\n\n /**\n * 设置约会场景内容\n * @param isSelf 是否是自身\n * @param text 文本内容\n * @param nameSpr \n * @param name 别人名字\n * @param portraitImg 立绘图名字\n * @param otherPortraitImg 其他立绘图名字\n * @param showRouge 是否显示口红\n */\n async setContent(isSelf: boolean, text: string, nameSpr: string, name?: string, portraitImg?: string, otherPortraitImg?: string, showRouge?: boolean): Promise<void> {\n let promises: Promise<any>[] = [];\n if (!((isSelf && otherPortraitImg) || portraitImg)) { // 防止切换过程中闪\n this.portraitSprite.spriteFrame = undefined as any;\n }\n if (portraitImg) {\n if (isSelf) {\n let portraitPath = portraitImg.substring(0, portraitImg.lastIndexOf(\"/\") + 1);\n let faceId = portraitImg.substring(portraitImg.lastIndexOf(\"/\") + 1, portraitImg.length);\n portraitImg = portraitPath + \"1/\" + faceId;\n }\n promises.push(ResUtils.loadRes(portraitImg, cc.SpriteFrame).then((sf) => {\n if (this.node.active) {\n if (isSelf) {\n this.selfSmallPortrait.spriteFrame = sf;\n } else {\n this.portraitSprite.spriteFrame = sf;\n this.fixScreenSize();\n }\n }\n }));\n }\n if (isSelf && otherPortraitImg) {\n promises.push(ResUtils.loadRes(otherPortraitImg, cc.SpriteFrame).then((sf) => {\n this.portraitSprite.spriteFrame = sf;\n this.fixScreenSize();\n }));\n }\n if (nameSpr && !isSelf && \"\" !== nameSpr.trim()) {\n promises.push(ResUtils.loadRes(nameSpr, cc.SpriteFrame).then((sf) => {\n this.otherNameSpr.spriteFrame = sf;\n }));\n }\n this.otherDialogNode.active = false;\n this.selfDialogNode.active = false;\n this.narratorDialogNode.active = false;\n // let rougeNode = this.selfDialogNode.getChildByName(\"rouge\");\n // let perTime = 0.05;\n if (text) {\n // let time = perTime * text.length;\n this._contentText = text;\n this._textTyperIsOver = false;\n if (isSelf) { // 自己\n this.selfDialogNode.active = true;\n // this.selfDialogNode.children[0].getComponent(cc.Label).string = name!;\n // this.selfDialogNode.children[1].getComponent(cc.RichText).string = text;\n this.typewriter.showRichTextTyper(this.selfDialogNode.children[0].getComponent(cc.RichText), text,\n () => {\n this._textTyperIsOver = true;\n }, () => { }, this._autoPlaySpeed\n );\n // promises.push(AnimationUtils.ActionTypeWriter(this.selfDialogNode.children[1].getComponent(cc.RichText), text, time));\n // if (rougeNode) {\n // rougeNode.active = showRouge ? true : false;\n // }\n } else if (name) { // 别人\n this.otherDialogNode.active = true;\n // this.otherDialogNode.children[0].getComponent(cc.Label).string = name!;\n // this.otherDialogNode.children[1].getComponent(cc.RichText).string = text;\n this.typewriter.showRichTextTyper(this.otherDialogNode.children[0].getComponent(cc.RichText), text,\n () => {\n this._textTyperIsOver = true;\n }, () => { }, this._autoPlaySpeed\n );\n // promises.push(AnimationUtils.ActionTypeWriter(this.otherDialogNode.children[1].getComponent(cc.RichText), text, time));\n } else { // 旁白\n this.narratorDialogNode.active = true;\n // this.narratorDialogNode.children[0].getComponent(cc.RichText).string = text;\n this.typewriter.showRichTextTyper(this.narratorDialogNode.children[0].getComponent(cc.RichText), text,\n () => {\n this._textTyperIsOver = true;\n }, () => { }, this._autoPlaySpeed\n );\n // promises.push(AnimationUtils.ActionTypeWriter(this.narratorDialogNode.children[0].getComponent(cc.RichText), text, time));\n }\n }\n try {\n await Promise.all(promises);\n } catch (e) {\n console.error(e);\n }\n }\n\n resetAutoPlayButtonState() {\n this._autoPlaySpeed = 1;\n this._autoPlayState = AutoPlayState.Close;\n this._skipButtonState = AutoPlayState.Close;\n this._autoPlayButtonState = AutoPlayState.Close;\n this.changeSkipButtonState(this._autoPlayState);\n this.changeAutoPlayButtonState(this._autoPlayState);\n }\n\n changeSkipButtonState(state: AutoPlayState) {\n let skipLabel = this.skipButtonNode.getComponentInChildren(cc.Sprite);\n if (state == AutoPlayState.Close) {\n skipLabel.spriteFrame = this.autoPlaySpriteFrame[2];\n } else {\n skipLabel.spriteFrame = this.autoPlaySpriteFrame[3];\n }\n }\n\n changeAutoPlayButtonState(state: AutoPlayState) {\n let autoPlaySprite = this.autoPlayButtonNode.getComponentInChildren(cc.Sprite);\n if (state == AutoPlayState.Close) {\n autoPlaySprite.spriteFrame = this.autoPlaySpriteFrame[0];\n } else {\n autoPlaySprite.spriteFrame = this.autoPlaySpriteFrame[1];\n }\n }\n\n /**\n * 开始自动播放计时器\n * @param startNow 是否不进行延时,立即执行下一步,适用于玩家点击自动播放按钮之后,无需等待\n */\n startAutoPlayTimer(startNow: boolean = false) {\n let interval: number = 0;\n if (!startNow) {\n //时间间隔的计算方法,如果startNow为true的话,不进行延时,时间为0,否则:\n //(文本长度 * 50ms / this._autoPlaySpeed)表示文本走完打字机效果所需要的时间\n //(文本长度 * 60ms / this._autoPlaySpeed)表示文本完全展示之后展示停留的时间\n interval = ((this._contentText.length * 50) / this._autoPlaySpeed) + ((this._contentText.length * 60) / this._autoPlaySpeed);\n }\n this._autoPlayTimer = window.setTimeout(async () => {\n if (this._autoPlayState == AutoPlayState.AutoPlay) {\n if (this._textTyperIsOver && !this._isSpecialEffect) {\n if (this.completePlotCallback) await this.completePlotCallback();\n }\n this.startAutoPlayTimer();\n } else {\n clearTimeout(this._autoPlayTimer);\n }\n }, interval);\n }\n\n fixScreenSize() {\n let comp = this.portraitSprite.node.getComponent(PortraitFixComponent);\n if (comp) {\n comp.fixScreenSize(true);\n }\n }\n\n /**\n * 设置背景\n * @param bgImage 背景路径\n */\n async setBackground(bgImage: string) {\n if (!bgImage) {\n this.backgroundSprite.spriteFrame = undefined as any;\n } else {\n try {\n this.backgroundSprite.node.opacity = 255;\n let sf = await ResUtils.loadRes(bgImage, cc.SpriteFrame);\n this.backgroundSprite.spriteFrame = sf;\n this.backgroundSprite.node.height = this.node.height;\n this.backgroundSprite.node.width = sf.getOriginalSize().width / sf.getOriginalSize().height * this.node.height;\n } catch (e) {\n console.error(e);\n }\n }\n }\n\n /**\n * 设置背景(特殊效果)\n * @param bgImage 背景路径\n */\n async setBackgroundEffect(bgImage: string) {\n this._isSpecialEffect = true;\n let dialogNodesActive: boolean[] = [this.otherDialogNode.active, this.selfDialogNode.active, this.narratorDialogNode.active];\n this.otherDialogNode.active = false;\n this.selfDialogNode.active = false;\n this.narratorDialogNode.active = false;\n if (!bgImage) {\n this.backgroundSprite.node.opacity = 255;\n cc.tween(this.backgroundSprite.node)\n .to(1, { opacity: 0 })\n .call(() => {\n this.backgroundSprite.spriteFrame = undefined as any;\n this.otherDialogNode.active = dialogNodesActive[0];\n this.selfDialogNode.active = dialogNodesActive[1];\n this.narratorDialogNode.active = dialogNodesActive[2];\n }).start();\n if (this.backgroundSprite.spriteFrame) {\n this.effectBackgroundSprite.node.active = true;\n this.effectBackgroundSprite.node.opacity = 255;\n cc.tween(this.effectBackgroundSprite.node)\n .to(1, { opacity: 0 })\n .call(() => {\n this.effectBackgroundSprite.node.active = false;\n this._isSpecialEffect = false;\n }).start();\n }\n } else {\n try {\n this.effectBackgroundSprite.node.active = true;\n this.effectBackgroundSprite.node.opacity = 0;\n cc.tween(this.effectBackgroundSprite.node)\n .to(1, { opacity: 255 })\n .call(() => {\n cc.tween(this.effectBackgroundSprite.node)\n .to(1, { opacity: 0 })\n .call(() => {\n this.effectBackgroundSprite.node.active = false;\n }).start();\n }).start();\n cc.tween(this.backgroundSprite.node)\n .to(1, { opacity: 0 })\n .call(async () => {\n let sf = await ResUtils.loadRes(bgImage, cc.SpriteFrame);\n this.backgroundSprite.spriteFrame = sf;\n this.backgroundSprite.node.height = this.node.height;\n this.backgroundSprite.node.width = sf.getOriginalSize().width / sf.getOriginalSize().height * this.node.height;\n cc.tween(this.backgroundSprite.node)\n .to(1, { opacity: 255 })\n .call(() => {\n this.otherDialogNode.active = dialogNodesActive[0];\n this.selfDialogNode.active = dialogNodesActive[1];\n this.narratorDialogNode.active = dialogNodesActive[2];\n this._isSpecialEffect = false;\n }).start();\n }).start();\n } catch (e) {\n console.error(e);\n }\n }\n }\n\n runEndTipAction() {\n this.setIsRunningAction(true);\n let offsetY: number = 300;\n let actTime: number = 1.5;\n this.endTipNode.stopAllActions();\n this.endTipNode.active = true;\n this.endTipNode.scale = 1;\n this.endTipNode.opacity = 255;\n this.endTipNode.position = cc.v3(-265, this._originPos.y - offsetY, 0);\n this.endTipNode.opacity = 0;\n\n let ease = cc.easeSineInOut();\n let moveAct = cc.moveTo(actTime, cc.v2(-265, this._originPos.y)).easing(ease);\n let fadeInAct = cc.fadeIn(actTime).easing(ease);\n let spawn = cc.spawn(moveAct, fadeInAct);\n\n let call = cc.callFunc(() => {\n this.backRedDot.active = true;\n\n // if (!this._isRunCloseAction) {\n // SDK.showInterstitialAd();\n // }\n this.setIsRunningAction(false);\n });\n\n let showArrowGuideCall = cc.callFunc(() => {\n this.arrowguideNode.active = true;\n });\n let actTime2: number = 2;\n let seq = cc.sequence(spawn, call, cc.spawn(cc.moveTo(1, cc.v2(this.backBtnNode.position.x, this.backBtnNode.position.y)), cc.scaleTo(actTime2, 0)), showArrowGuideCall);\n\n this.endTipNode.runAction(seq);\n }\n\n setRunCloseAction(run: boolean) {\n this._isRunCloseAction = run;\n }\n\n runCloseAction() {\n this.closeView();\n }\n\n\n getChapterBtn = (): cc.Prefab => {\n return this.chapterBtn;\n }\n\n onRefreshAllStatus() {\n this.closeAction();\n }\n\n onReviewButtonClick() {\n this.resetAutoPlayButtonState();\n clearTimeout(this._autoPlayTimer);\n this.onReviewButtonClickCallback();\n }\n\n onSkipButtonClick() {\n this._skipButtonState = this._skipButtonState == AutoPlayState.Close ? AutoPlayState.AutoPlay : AutoPlayState.Close;\n this._autoPlayState = this._skipButtonState;\n if (this._autoPlayState == AutoPlayState.AutoPlay) {\n this._autoPlaySpeed = 20;\n this.startAutoPlayTimer(true);\n this.changeSkipButtonState(this._autoPlayState);\n this.changeAutoPlayButtonState(AutoPlayState.Close);\n this._autoPlayButtonState = AutoPlayState.Close;\n } else {\n this.resetAutoPlayButtonState();\n clearTimeout(this._autoPlayTimer);\n }\n }\n\n onAutoPlayButtonClick() {\n this._autoPlayButtonState = this._autoPlayButtonState == AutoPlayState.Close ? AutoPlayState.AutoPlay : AutoPlayState.Close;\n this._autoPlayState = this._autoPlayButtonState;\n if (this._autoPlayState == AutoPlayState.AutoPlay) {\n this._autoPlaySpeed = 1;\n this.startAutoPlayTimer(true);\n this.changeSkipButtonState(AutoPlayState.Close);\n this.changeAutoPlayButtonState(this._autoPlayState);\n this._skipButtonState = AutoPlayState.Close;\n } else {\n this.resetAutoPlayButtonState();\n clearTimeout(this._autoPlayTimer);\n }\n }\n}\n"]}
\ No newline at end of file
......@@ -5195,8 +5195,8 @@
"relativePath": "resources/prefab/ui/DatingEventView.prefab"
},
"9d521361-150a-4693-a6c3-867dd716037f": {
"asset": 1643263526923,
"meta": 1643263526926,
"asset": 1643273277723,
"meta": 1643273277725,
"relativePath": "resources/prefab/ui/DatingSceneView.prefab"
},
"9274f284-8ad8-4099-b4a7-d65ff8ddea51": {
......@@ -6214,16 +6214,6 @@
"meta": 1643262626270,
"relativePath": "script/game/ui/view/type/MainView.ts"
},
"cde0e608-3a09-4f9a-bc95-9aee3115c34f": {
"asset": 1643263124712,
"meta": 1643263368850,
"relativePath": "script/game/ui/view/impl/dating/DatingSceneViewImpl.ts"
},
"35fa82eb-ae95-477e-a258-54c3ccf00a47": {
"asset": 1643263247206,
"meta": 1643263368862,
"relativePath": "script/game/ui/view/type/DatingSceneView.ts"
},
"b020f340-f6ad-428d-8769-c332b5e22752": {
"asset": 1643263859456,
"meta": 1643263876993,
......@@ -6299,11 +6289,6 @@
"meta": 1643271532510,
"relativePath": "script/game/ui/presenter/DatingEventViewPresenter.ts"
},
"52f06191-b63c-4fbb-9df6-1c1bbda46344": {
"asset": 1643270664587,
"meta": 1643271532645,
"relativePath": "script/game/ui/presenter/DatingScenePresenter.ts"
},
"f6da47ee-6dae-4b75-8329-44a46c55944b": {
"asset": 1643271512252,
"meta": 1643271532660,
......@@ -6383,5 +6368,20 @@
"asset": 1643271633244,
"meta": 1643272641875,
"relativePath": "script/game/ui/view/impl/message/GiftListItemImpl.ts"
},
"52f06191-b63c-4fbb-9df6-1c1bbda46344": {
"asset": 1643273267711,
"meta": 1643273270550,
"relativePath": "script/game/ui/presenter/DatingScenePresenter.ts"
},
"cde0e608-3a09-4f9a-bc95-9aee3115c34f": {
"asset": 1643273191829,
"meta": 1643273270640,
"relativePath": "script/game/ui/view/impl/dating/DatingSceneViewImpl.ts"
},
"35fa82eb-ae95-477e-a258-54c3ccf00a47": {
"asset": 1643273207364,
"meta": 1643273270649,
"relativePath": "script/game/ui/view/type/DatingSceneView.ts"
}
}
\ No newline at end of file
......@@ -66,7 +66,6 @@
"b779c231-722a-4460-ac43-333651f1de42",
"0c5e5b6a-e3cd-49c8-b1f6-dd38039c121a",
"fa82047f-ca46-4900-b016-1cbc6fb8dc8a",
"9d521361-150a-4693-a6c3-867dd716037f",
"e2cefdd5-1c31-4fc8-85ac-dbd2ea35a494",
"c408c1b6-ca44-4401-a59c-7feb174a3ef2",
"d370020c-eb3c-48b9-b561-b423f8f8c767",
......@@ -84,6 +83,7 @@
"caaa16e1-77dc-46c0-bfa4-151e51e9919f",
"2529f882-df6b-4cac-a25a-1ca4900ba066",
"02e8108f-1cea-48c1-bf08-4de4d0954e51",
"bd537cf0-df73-4b2a-bb36-40e91d4875e3"
"bd537cf0-df73-4b2a-bb36-40e91d4875e3",
"9d521361-150a-4693-a6c3-867dd716037f"
]
}
......@@ -45,29 +45,29 @@
"__id__": 70
},
{
"__id__": 106
"__id__": 82
},
{
"__id__": 131
"__id__": 107
},
{
"__id__": 147
"__id__": 123
}
],
"_active": true,
"_components": [
{
"__id__": 152
"__id__": 128
},
{
"__id__": 153
"__id__": 129
},
{
"__id__": 154
"__id__": 130
}
],
"_prefab": {
"__id__": 155
"__id__": 131
},
"_opacity": 255,
"_color": {
......@@ -2222,7 +2222,7 @@
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "2e+faolohDGK7AYO/VV5Bd",
"fileId": "1bWqXHI4hA2YvIt2Wkxw3G",
"sync": false
},
{
......@@ -2473,28 +2473,19 @@
"_children": [
{
"__id__": 71
},
{
"__id__": 79
},
{
"__id__": 87
},
{
"__id__": 95
}
],
"_active": true,
"_components": [
{
"__id__": 103
"__id__": 79
},
{
"__id__": 104
"__id__": 80
}
],
"_prefab": {
"__id__": 105
"__id__": 81
},
"_opacity": 255,
"_color": {
......@@ -2507,7 +2498,7 @@
"_contentSize": {
"__type__": "cc.Size",
"width": 76,
"height": 486
"height": 99
},
"_anchorPoint": {
"__type__": "cc.Vec2",
......@@ -2545,7 +2536,7 @@
},
{
"__type__": "cc.Node",
"_name": "UrgentNoticeBtn",
"_name": "RollBackBtn",
"_objFlags": 0,
"_parent": {
"__id__": 70
......@@ -2587,7 +2578,7 @@
"ctor": "Float64Array",
"array": [
0,
193.5,
0,
0,
0,
0,
......@@ -2641,8 +2632,8 @@
},
"_contentSize": {
"__type__": "cc.Size",
"width": 54,
"height": 82
"width": 76,
"height": 99
},
"_anchorPoint": {
"__type__": "cc.Vec2",
......@@ -2694,7 +2685,7 @@
"_srcBlendFactor": 770,
"_dstBlendFactor": 771,
"_spriteFrame": {
"__uuid__": "a062439e-e67b-415f-85d8-1cab2b5e26c0"
"__uuid__": "e46fb0ce-9d6a-4b98-98cc-3983e39c7bc7"
},
"_type": 1,
"_sizeMode": 1,
......@@ -2721,10 +2712,10 @@
"alignMode": 0,
"_target": null,
"_alignFlags": 45,
"_left": 11,
"_right": 11,
"_top": 8.5,
"_bottom": 8.5,
"_left": 0,
"_right": 0,
"_top": 0,
"_bottom": 0,
"_verticalCenter": 0,
"_horizontalCenter": 0,
"_isAbsLeft": true,
......@@ -2745,7 +2736,7 @@
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "9aFHz/zJFMTKVwkpSVHuvA",
"fileId": "d6/5G9rO1JQZJKHAE3Ksm1",
"sync": false
},
{
......@@ -2841,7 +2832,7 @@
},
"component": "",
"_componentId": "cde0eYIOglPmryVmu4xFcNP",
"handler": "onUrgentBtnClick",
"handler": "onRollBackBtnClick",
"customEventData": ""
},
{
......@@ -2852,29 +2843,176 @@
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "cf/dtdPRxAIp2Qt4l34h1c",
"fileId": "51UFqm+6FLD6xDzyx6NRl9",
"sync": false
},
{
"__type__": "cc.Layout",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 70
},
"_enabled": true,
"_layoutSize": {
"__type__": "cc.Size",
"width": 76,
"height": 99
},
"_resize": 1,
"_N$layoutType": 2,
"_N$cellSize": {
"__type__": "cc.Size",
"width": 40,
"height": 40
},
"_N$startAxis": 0,
"_N$paddingLeft": 0,
"_N$paddingRight": 0,
"_N$paddingTop": 0,
"_N$paddingBottom": 0,
"_N$spacingX": 0,
"_N$spacingY": 30,
"_N$verticalDirection": 1,
"_N$horizontalDirection": 0,
"_N$affectedByScale": false,
"_id": ""
},
{
"__type__": "cc.Widget",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 70
},
"_enabled": true,
"alignMode": 1,
"_target": null,
"_alignFlags": 33,
"_left": 0,
"_right": 5,
"_top": 393.5,
"_bottom": 0,
"_verticalCenter": 0,
"_horizontalCenter": 0,
"_isAbsLeft": true,
"_isAbsRight": true,
"_isAbsTop": true,
"_isAbsBottom": true,
"_isAbsHorizontalCenter": true,
"_isAbsVerticalCenter": true,
"_originalWidth": 0,
"_originalHeight": 0,
"_id": ""
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "absBg2e51NW78RLxxPz1nJ",
"sync": false
},
{
"__type__": "cc.Node",
"_name": "GoToShopBtn",
"_name": "AutoPlayNode",
"_objFlags": 0,
"_parent": {
"__id__": 70
"__id__": 1
},
"_children": [
{
"__id__": 80
"__id__": 83
},
{
"__id__": 90
},
{
"__id__": 97
}
],
"_active": true,
"_components": [
{
"__id__": 104
},
{
"__id__": 105
}
],
"_prefab": {
"__id__": 106
},
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 300,
"height": 100
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 1,
"y": 0.5
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
340,
-570,
0,
0,
0,
0,
1,
1,
1,
1
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": ""
},
{
"__type__": "cc.Node",
"_name": "ReviewButton",
"_objFlags": 0,
"_parent": {
"__id__": 82
},
"_children": [
{
"__id__": 84
}
],
"_active": true,
"_components": [
{
"__id__": 87
}
],
"_prefab": {
"__id__": 86
"__id__": 89
},
"_opacity": 255,
"_color": {
......@@ -2886,8 +3024,8 @@
},
"_contentSize": {
"__type__": "cc.Size",
"width": 76,
"height": 99
"width": 100,
"height": 100
},
"_anchorPoint": {
"__type__": "cc.Vec2",
......@@ -2898,8 +3036,8 @@
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
-250,
0,
64.5,
0,
0,
0,
......@@ -2907,7 +3045,7 @@
1,
1,
1,
1
0
]
},
"_eulerAngles": {
......@@ -2925,23 +3063,20 @@
},
{
"__type__": "cc.Node",
"_name": "Background",
"_objFlags": 512,
"_name": "ReviewIconSprite",
"_objFlags": 0,
"_parent": {
"__id__": 79
"__id__": 83
},
"_children": [],
"_active": true,
"_components": [
{
"__id__": 81
},
{
"__id__": 82
"__id__": 85
}
],
"_prefab": {
"__id__": 83
"__id__": 86
},
"_opacity": 255,
"_color": {
......@@ -2953,8 +3088,8 @@
},
"_contentSize": {
"__type__": "cc.Size",
"width": 91,
"height": 107
"width": 62,
"height": 93
},
"_anchorPoint": {
"__type__": "cc.Vec2",
......@@ -2974,7 +3109,7 @@
1,
1,
1,
0
1
]
},
"_eulerAngles": {
......@@ -2995,7 +3130,7 @@
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 80
"__id__": 84
},
"_enabled": true,
"_materials": [
......@@ -3006,9 +3141,9 @@
"_srcBlendFactor": 770,
"_dstBlendFactor": 771,
"_spriteFrame": {
"__uuid__": "5f06f6f4-e0bc-4a3c-8bb2-4bc10cebe48f"
"__uuid__": "b6657c26-a60a-41b3-8a72-8e497af6eaa3"
},
"_type": 1,
"_type": 0,
"_sizeMode": 1,
"_fillType": 0,
"_fillCenter": {
......@@ -3023,33 +3158,6 @@
"_id": ""
},
{
"__type__": "cc.Widget",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 80
},
"_enabled": true,
"alignMode": 0,
"_target": null,
"_alignFlags": 45,
"_left": -7.5,
"_right": -7.5,
"_top": -4,
"_bottom": -4,
"_verticalCenter": 0,
"_horizontalCenter": 0,
"_isAbsLeft": true,
"_isAbsRight": true,
"_isAbsTop": true,
"_isAbsBottom": true,
"_isAbsHorizontalCenter": true,
"_isAbsVerticalCenter": true,
"_originalWidth": 100,
"_originalHeight": 40,
"_id": ""
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
......@@ -3057,7 +3165,7 @@
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "32Vejnb4lAW7m42HSfFR6/",
"fileId": "63ilEVBz1KH5X4ScVPJIVm",
"sync": false
},
{
......@@ -3065,7 +3173,7 @@
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 79
"__id__": 83
},
"_enabled": true,
"_normalMaterial": null,
......@@ -3074,7 +3182,7 @@
"zoomScale": 1.2,
"clickEvents": [
{
"__id__": 85
"__id__": 88
}
],
"_N$interactable": true,
......@@ -3123,9 +3231,7 @@
"b": 120,
"a": 200
},
"_N$normalSprite": {
"__uuid__": "152b9a5c-c309-46cf-a227-d71ef3682577"
},
"_N$normalSprite": null,
"_N$pressedSprite": {
"__uuid__": "e9ec654c-97a2-4787-9325-e6a10375219a"
},
......@@ -3141,9 +3247,7 @@
"_N$disabledSprite": {
"__uuid__": "29158224-f8dd-4661-a796-1ffab537140e"
},
"_N$target": {
"__id__": 80
},
"_N$target": null,
"_id": ""
},
{
......@@ -3153,1056 +3257,7 @@
},
"component": "",
"_componentId": "cde0eYIOglPmryVmu4xFcNP",
"handler": "onGoToShopClick",
"customEventData": ""
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "a4pTwsuadL3ryxvpmmVNAl",
"sync": false
},
{
"__type__": "cc.Node",
"_name": "RollBackBtn",
"_objFlags": 0,
"_parent": {
"__id__": 70
},
"_children": [
{
"__id__": 88
}
],
"_active": true,
"_components": [
{
"__id__": 92
}
],
"_prefab": {
"__id__": 94
},
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 76,
"height": 99
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.5,
"y": 0.5
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
-64.5,
0,
0,
0,
0,
1,
1,
1,
1
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": ""
},
{
"__type__": "cc.Node",
"_name": "Background",
"_objFlags": 512,
"_parent": {
"__id__": 87
},
"_children": [],
"_active": true,
"_components": [
{
"__id__": 89
},
{
"__id__": 90
}
],
"_prefab": {
"__id__": 91
},
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 76,
"height": 99
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.5,
"y": 0.5
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
0,
0,
0,
0,
0,
1,
1,
1,
0
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": ""
},
{
"__type__": "cc.Sprite",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 88
},
"_enabled": true,
"_materials": [
{
"__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432"
}
],
"_srcBlendFactor": 770,
"_dstBlendFactor": 771,
"_spriteFrame": {
"__uuid__": "e46fb0ce-9d6a-4b98-98cc-3983e39c7bc7"
},
"_type": 1,
"_sizeMode": 1,
"_fillType": 0,
"_fillCenter": {
"__type__": "cc.Vec2",
"x": 0,
"y": 0
},
"_fillStart": 0,
"_fillRange": 0,
"_isTrimmedMode": true,
"_atlas": null,
"_id": ""
},
{
"__type__": "cc.Widget",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 88
},
"_enabled": true,
"alignMode": 0,
"_target": null,
"_alignFlags": 45,
"_left": 0,
"_right": 0,
"_top": 0,
"_bottom": 0,
"_verticalCenter": 0,
"_horizontalCenter": 0,
"_isAbsLeft": true,
"_isAbsRight": true,
"_isAbsTop": true,
"_isAbsBottom": true,
"_isAbsHorizontalCenter": true,
"_isAbsVerticalCenter": true,
"_originalWidth": 100,
"_originalHeight": 40,
"_id": ""
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "d6/5G9rO1JQZJKHAE3Ksm1",
"sync": false
},
{
"__type__": "cc.Button",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 87
},
"_enabled": true,
"_normalMaterial": null,
"_grayMaterial": null,
"duration": 0.1,
"zoomScale": 1.2,
"clickEvents": [
{
"__id__": 93
}
],
"_N$interactable": true,
"_N$enableAutoGrayEffect": false,
"_N$transition": 3,
"transition": 3,
"_N$normalColor": {
"__type__": "cc.Color",
"r": 230,
"g": 230,
"b": 230,
"a": 255
},
"_N$pressedColor": {
"__type__": "cc.Color",
"r": 200,
"g": 200,
"b": 200,
"a": 255
},
"pressedColor": {
"__type__": "cc.Color",
"r": 200,
"g": 200,
"b": 200,
"a": 255
},
"_N$hoverColor": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"hoverColor": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_N$disabledColor": {
"__type__": "cc.Color",
"r": 120,
"g": 120,
"b": 120,
"a": 200
},
"_N$normalSprite": {
"__uuid__": "152b9a5c-c309-46cf-a227-d71ef3682577"
},
"_N$pressedSprite": {
"__uuid__": "e9ec654c-97a2-4787-9325-e6a10375219a"
},
"pressedSprite": {
"__uuid__": "e9ec654c-97a2-4787-9325-e6a10375219a"
},
"_N$hoverSprite": {
"__uuid__": "f0048c10-f03e-4c97-b9d3-3506e1d58952"
},
"hoverSprite": {
"__uuid__": "f0048c10-f03e-4c97-b9d3-3506e1d58952"
},
"_N$disabledSprite": {
"__uuid__": "29158224-f8dd-4661-a796-1ffab537140e"
},
"_N$target": {
"__id__": 88
},
"_id": ""
},
{
"__type__": "cc.ClickEvent",
"target": {
"__id__": 1
},
"component": "",
"_componentId": "cde0eYIOglPmryVmu4xFcNP",
"handler": "onRollBackBtnClick",
"customEventData": ""
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "51UFqm+6FLD6xDzyx6NRl9",
"sync": false
},
{
"__type__": "cc.Node",
"_name": "CommonProlbemBtn",
"_objFlags": 0,
"_parent": {
"__id__": 70
},
"_children": [
{
"__id__": 96
}
],
"_active": true,
"_components": [
{
"__id__": 100
}
],
"_prefab": {
"__id__": 102
},
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 76,
"height": 99
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.5,
"y": 0.5
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
-193.5,
0,
0,
0,
0,
1,
1,
1,
1
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": ""
},
{
"__type__": "cc.Node",
"_name": "Background",
"_objFlags": 512,
"_parent": {
"__id__": 95
},
"_children": [],
"_active": true,
"_components": [
{
"__id__": 97
},
{
"__id__": 98
}
],
"_prefab": {
"__id__": 99
},
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 75,
"height": 109
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.5,
"y": 0.5
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
0,
0,
0,
0,
0,
1,
1,
1,
0
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": ""
},
{
"__type__": "cc.Sprite",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 96
},
"_enabled": true,
"_materials": [
{
"__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432"
}
],
"_srcBlendFactor": 770,
"_dstBlendFactor": 771,
"_spriteFrame": {
"__uuid__": "ff822cf6-25f2-4d5e-9dbf-6e0f4dc4cdb9"
},
"_type": 1,
"_sizeMode": 1,
"_fillType": 0,
"_fillCenter": {
"__type__": "cc.Vec2",
"x": 0,
"y": 0
},
"_fillStart": 0,
"_fillRange": 0,
"_isTrimmedMode": true,
"_atlas": null,
"_id": ""
},
{
"__type__": "cc.Widget",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 96
},
"_enabled": true,
"alignMode": 0,
"_target": null,
"_alignFlags": 45,
"_left": 0.5,
"_right": 0.5,
"_top": -5,
"_bottom": -5,
"_verticalCenter": 0,
"_horizontalCenter": 0,
"_isAbsLeft": true,
"_isAbsRight": true,
"_isAbsTop": true,
"_isAbsBottom": true,
"_isAbsHorizontalCenter": true,
"_isAbsVerticalCenter": true,
"_originalWidth": 100,
"_originalHeight": 40,
"_id": ""
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "a5lSJdhmdHBZSS36x5Ktw6",
"sync": false
},
{
"__type__": "cc.Button",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 95
},
"_enabled": true,
"_normalMaterial": null,
"_grayMaterial": null,
"duration": 0.1,
"zoomScale": 1.2,
"clickEvents": [
{
"__id__": 101
}
],
"_N$interactable": true,
"_N$enableAutoGrayEffect": false,
"_N$transition": 3,
"transition": 3,
"_N$normalColor": {
"__type__": "cc.Color",
"r": 230,
"g": 230,
"b": 230,
"a": 255
},
"_N$pressedColor": {
"__type__": "cc.Color",
"r": 200,
"g": 200,
"b": 200,
"a": 255
},
"pressedColor": {
"__type__": "cc.Color",
"r": 200,
"g": 200,
"b": 200,
"a": 255
},
"_N$hoverColor": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"hoverColor": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_N$disabledColor": {
"__type__": "cc.Color",
"r": 120,
"g": 120,
"b": 120,
"a": 200
},
"_N$normalSprite": {
"__uuid__": "152b9a5c-c309-46cf-a227-d71ef3682577"
},
"_N$pressedSprite": {
"__uuid__": "e9ec654c-97a2-4787-9325-e6a10375219a"
},
"pressedSprite": {
"__uuid__": "e9ec654c-97a2-4787-9325-e6a10375219a"
},
"_N$hoverSprite": {
"__uuid__": "f0048c10-f03e-4c97-b9d3-3506e1d58952"
},
"hoverSprite": {
"__uuid__": "f0048c10-f03e-4c97-b9d3-3506e1d58952"
},
"_N$disabledSprite": {
"__uuid__": "29158224-f8dd-4661-a796-1ffab537140e"
},
"_N$target": {
"__id__": 96
},
"_id": ""
},
{
"__type__": "cc.ClickEvent",
"target": {
"__id__": 1
},
"component": "",
"_componentId": "cde0eYIOglPmryVmu4xFcNP",
"handler": "onCommonProblemBtnClick",
"customEventData": ""
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "204wioyqpBUqhzCvIL6OiE",
"sync": false
},
{
"__type__": "cc.Layout",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 70
},
"_enabled": true,
"_layoutSize": {
"__type__": "cc.Size",
"width": 76,
"height": 486
},
"_resize": 1,
"_N$layoutType": 2,
"_N$cellSize": {
"__type__": "cc.Size",
"width": 40,
"height": 40
},
"_N$startAxis": 0,
"_N$paddingLeft": 0,
"_N$paddingRight": 0,
"_N$paddingTop": 0,
"_N$paddingBottom": 0,
"_N$spacingX": 0,
"_N$spacingY": 30,
"_N$verticalDirection": 1,
"_N$horizontalDirection": 0,
"_N$affectedByScale": false,
"_id": ""
},
{
"__type__": "cc.Widget",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 70
},
"_enabled": true,
"alignMode": 1,
"_target": null,
"_alignFlags": 33,
"_left": 0,
"_right": 5,
"_top": 200,
"_bottom": 0,
"_verticalCenter": 0,
"_horizontalCenter": 0,
"_isAbsLeft": true,
"_isAbsRight": true,
"_isAbsTop": true,
"_isAbsBottom": true,
"_isAbsHorizontalCenter": true,
"_isAbsVerticalCenter": true,
"_originalWidth": 0,
"_originalHeight": 0,
"_id": ""
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "absBg2e51NW78RLxxPz1nJ",
"sync": false
},
{
"__type__": "cc.Node",
"_name": "AutoPlayNode",
"_objFlags": 0,
"_parent": {
"__id__": 1
},
"_children": [
{
"__id__": 107
},
{
"__id__": 114
},
{
"__id__": 121
}
],
"_active": true,
"_components": [
{
"__id__": 128
},
{
"__id__": 129
}
],
"_prefab": {
"__id__": 130
},
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 300,
"height": 100
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 1,
"y": 0.5
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
340,
-570,
0,
0,
0,
0,
1,
1,
1,
1
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": ""
},
{
"__type__": "cc.Node",
"_name": "ReviewButton",
"_objFlags": 0,
"_parent": {
"__id__": 106
},
"_children": [
{
"__id__": 108
}
],
"_active": true,
"_components": [
{
"__id__": 111
}
],
"_prefab": {
"__id__": 113
},
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 100,
"height": 100
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.5,
"y": 0.5
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
-250,
0,
0,
0,
0,
0,
1,
1,
1,
0
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": ""
},
{
"__type__": "cc.Node",
"_name": "ReviewIconSprite",
"_objFlags": 0,
"_parent": {
"__id__": 107
},
"_children": [],
"_active": true,
"_components": [
{
"__id__": 109
}
],
"_prefab": {
"__id__": 110
},
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 62,
"height": 93
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.5,
"y": 0.5
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
0,
0,
0,
0,
0,
1,
1,
1,
1
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": ""
},
{
"__type__": "cc.Sprite",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 108
},
"_enabled": true,
"_materials": [
{
"__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432"
}
],
"_srcBlendFactor": 770,
"_dstBlendFactor": 771,
"_spriteFrame": {
"__uuid__": "b6657c26-a60a-41b3-8a72-8e497af6eaa3"
},
"_type": 0,
"_sizeMode": 1,
"_fillType": 0,
"_fillCenter": {
"__type__": "cc.Vec2",
"x": 0,
"y": 0
},
"_fillStart": 0,
"_fillRange": 0,
"_isTrimmedMode": true,
"_atlas": null,
"_id": ""
},
{
"__type__": "cc.PrefabInfo",
"root": {
"__id__": 1
},
"asset": {
"__uuid__": "9d521361-150a-4693-a6c3-867dd716037f"
},
"fileId": "63ilEVBz1KH5X4ScVPJIVm",
"sync": false
},
{
"__type__": "cc.Button",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 107
},
"_enabled": true,
"_normalMaterial": null,
"_grayMaterial": null,
"duration": 0.1,
"zoomScale": 1.2,
"clickEvents": [
{
"__id__": 112
}
],
"_N$interactable": true,
"_N$enableAutoGrayEffect": false,
"_N$transition": 3,
"transition": 3,
"_N$normalColor": {
"__type__": "cc.Color",
"r": 230,
"g": 230,
"b": 230,
"a": 255
},
"_N$pressedColor": {
"__type__": "cc.Color",
"r": 200,
"g": 200,
"b": 200,
"a": 255
},
"pressedColor": {
"__type__": "cc.Color",
"r": 200,
"g": 200,
"b": 200,
"a": 255
},
"_N$hoverColor": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"hoverColor": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_N$disabledColor": {
"__type__": "cc.Color",
"r": 120,
"g": 120,
"b": 120,
"a": 200
},
"_N$normalSprite": null,
"_N$pressedSprite": {
"__uuid__": "e9ec654c-97a2-4787-9325-e6a10375219a"
},
"pressedSprite": {
"__uuid__": "e9ec654c-97a2-4787-9325-e6a10375219a"
},
"_N$hoverSprite": {
"__uuid__": "f0048c10-f03e-4c97-b9d3-3506e1d58952"
},
"hoverSprite": {
"__uuid__": "f0048c10-f03e-4c97-b9d3-3506e1d58952"
},
"_N$disabledSprite": {
"__uuid__": "29158224-f8dd-4661-a796-1ffab537140e"
},
"_N$target": null,
"_id": ""
},
{
"__type__": "cc.ClickEvent",
"target": {
"__id__": 1
},
"component": "",
"_componentId": "cde0eYIOglPmryVmu4xFcNP",
"handler": "onReviewButtonClick",
"handler": "onReviewButtonClick",
"customEventData": ""
},
{
......@@ -4221,21 +3276,21 @@
"_name": "SkipButton",
"_objFlags": 0,
"_parent": {
"__id__": 106
"__id__": 82
},
"_children": [
{
"__id__": 115
"__id__": 91
}
],
"_active": true,
"_components": [
{
"__id__": 118
"__id__": 94
}
],
"_prefab": {
"__id__": 120
"__id__": 96
},
"_opacity": 255,
"_color": {
......@@ -4289,17 +3344,17 @@
"_name": "SkipIconSprite",
"_objFlags": 0,
"_parent": {
"__id__": 114
"__id__": 90
},
"_children": [],
"_active": true,
"_components": [
{
"__id__": 116
"__id__": 92
}
],
"_prefab": {
"__id__": 117
"__id__": 93
},
"_opacity": 255,
"_color": {
......@@ -4353,7 +3408,7 @@
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 115
"__id__": 91
},
"_enabled": true,
"_materials": [
......@@ -4396,7 +3451,7 @@
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 114
"__id__": 90
},
"_enabled": true,
"_normalMaterial": null,
......@@ -4405,7 +3460,7 @@
"zoomScale": 1.2,
"clickEvents": [
{
"__id__": 119
"__id__": 95
}
],
"_N$interactable": true,
......@@ -4499,21 +3554,21 @@
"_name": "AutoPlayButton",
"_objFlags": 0,
"_parent": {
"__id__": 106
"__id__": 82
},
"_children": [
{
"__id__": 122
"__id__": 98
}
],
"_active": true,
"_components": [
{
"__id__": 125
"__id__": 101
}
],
"_prefab": {
"__id__": 127
"__id__": 103
},
"_opacity": 255,
"_color": {
......@@ -4567,17 +3622,17 @@
"_name": "AutoIconSprite",
"_objFlags": 0,
"_parent": {
"__id__": 121
"__id__": 97
},
"_children": [],
"_active": true,
"_components": [
{
"__id__": 123
"__id__": 99
}
],
"_prefab": {
"__id__": 124
"__id__": 100
},
"_opacity": 255,
"_color": {
......@@ -4631,7 +3686,7 @@
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 122
"__id__": 98
},
"_enabled": true,
"_materials": [
......@@ -4674,7 +3729,7 @@
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 121
"__id__": 97
},
"_enabled": true,
"_normalMaterial": null,
......@@ -4683,7 +3738,7 @@
"zoomScale": 1.2,
"clickEvents": [
{
"__id__": 126
"__id__": 102
}
],
"_N$interactable": true,
......@@ -4777,7 +3832,7 @@
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 106
"__id__": 82
},
"_enabled": true,
"_layoutSize": {
......@@ -4809,7 +3864,7 @@
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 106
"__id__": 82
},
"_enabled": true,
"alignMode": 1,
......@@ -4851,23 +3906,23 @@
},
"_children": [
{
"__id__": 132
"__id__": 108
}
],
"_active": false,
"_components": [
{
"__id__": 142
"__id__": 118
},
{
"__id__": 143
"__id__": 119
},
{
"__id__": 144
"__id__": 120
}
],
"_prefab": {
"__id__": 146
"__id__": 122
},
"_opacity": 255,
"_color": {
......@@ -4921,24 +3976,24 @@
"_name": "ScrollView",
"_objFlags": 0,
"_parent": {
"__id__": 131
"__id__": 107
},
"_children": [
{
"__id__": 133
"__id__": 109
}
],
"_active": true,
"_components": [
{
"__id__": 139
"__id__": 115
},
{
"__id__": 140
"__id__": 116
}
],
"_prefab": {
"__id__": 141
"__id__": 117
},
"_opacity": 255,
"_color": {
......@@ -4992,21 +4047,21 @@
"_name": "view",
"_objFlags": 512,
"_parent": {
"__id__": 132
"__id__": 108
},
"_children": [
{
"__id__": 134
"__id__": 110
}
],
"_active": true,
"_components": [
{
"__id__": 137
"__id__": 113
}
],
"_prefab": {
"__id__": 138
"__id__": 114
},
"_opacity": 255,
"_color": {
......@@ -5060,17 +4115,17 @@
"_name": "content",
"_objFlags": 512,
"_parent": {
"__id__": 133
"__id__": 109
},
"_children": [],
"_active": true,
"_components": [
{
"__id__": 135
"__id__": 111
}
],
"_prefab": {
"__id__": 136
"__id__": 112
},
"_opacity": 255,
"_color": {
......@@ -5124,7 +4179,7 @@
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 134
"__id__": 110
},
"_enabled": true,
"_layoutSize": {
......@@ -5167,7 +4222,7 @@
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 133
"__id__": 109
},
"_enabled": true,
"_materials": [
......@@ -5198,7 +4253,7 @@
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 132
"__id__": 108
},
"_enabled": true,
"_materials": [
......@@ -5230,7 +4285,7 @@
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 132
"__id__": 108
},
"_enabled": true,
"horizontal": false,
......@@ -5242,10 +4297,10 @@
"scrollEvents": [],
"cancelInnerEvents": true,
"_N$content": {
"__id__": 134
"__id__": 110
},
"content": {
"__id__": 134
"__id__": 110
},
"_N$horizontalScrollBar": null,
"_N$verticalScrollBar": null,
......@@ -5267,7 +4322,7 @@
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 131
"__id__": 107
},
"_enabled": true,
"_id": ""
......@@ -5277,7 +4332,7 @@
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 131
"__id__": 107
},
"_enabled": true,
"alignMode": 1,
......@@ -5304,7 +4359,7 @@
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 131
"__id__": 107
},
"_enabled": true,
"_normalMaterial": null,
......@@ -5313,7 +4368,7 @@
"zoomScale": 1.2,
"clickEvents": [
{
"__id__": 145
"__id__": 121
}
],
"_N$interactable": true,
......@@ -5403,17 +4458,17 @@
"_active": false,
"_components": [
{
"__id__": 148
"__id__": 124
},
{
"__id__": 149
"__id__": 125
},
{
"__id__": 150
"__id__": 126
}
],
"_prefab": {
"__id__": 151
"__id__": 127
},
"_opacity": 255,
"_color": {
......@@ -5467,7 +4522,7 @@
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 147
"__id__": 123
},
"_enabled": true,
"_materials": [
......@@ -5499,7 +4554,7 @@
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 147
"__id__": 123
},
"_enabled": true,
"alignMode": 1,
......@@ -5526,7 +4581,7 @@
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 147
"__id__": 123
},
"_enabled": true,
"_id": ""
......@@ -5581,7 +4636,7 @@
"__id__": 3
},
"effectBackgroundSprite": {
"__id__": 148
"__id__": 124
},
"portraitSprite": {
"__id__": 6
......@@ -5614,34 +4669,25 @@
"__id__": 18
},
"typewriter": {
"__id__": 154
"__id__": 130
},
"rollBackBtn": {
"__id__": 87
},
"urgentBtnNode": {
"__id__": 71
},
"goToShopBtn": {
"__id__": 79
},
"commonProblemBtn": {
"__id__": 95
},
"chapterBtn": {
"__uuid__": "0c5e5b6a-e3cd-49c8-b1f6-dd38039c121a"
},
"scrollViewRootNode": {
"__id__": 131
"__id__": 107
},
"contentNode": {
"__id__": 134
"__id__": 110
},
"skipButtonNode": {
"__id__": 114
"__id__": 90
},
"autoPlayButtonNode": {
"__id__": 121
"__id__": 97
},
"autoPlaySpriteFrame": [
{
......
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
......@@ -57,14 +57,10 @@ let DatingSceneViewImpl = /** @class */ (() => {
this.backRedDot = CCDummyObjects_1.DummyNode;
this.backBtnNode = CCDummyObjects_1.DummyNode;
this.endTipNode = CCDummyObjects_1.DummyNode;
// @property(cc.Node)
// private closeActNode = DummyNode;
this.arrowguideNode = CCDummyObjects_1.DummyNode;
this.otherNameSpr = CCDummyObjects_1.DummySprite;
this.typewriter = undefined;
this.rollBackBtn = CCDummyObjects_1.DummyNode;
this.chapterBtn = CCDummyObjects_1.DummyPrefab;
this.scrollViewRootNode = CCDummyObjects_1.DummyNode;
this.skipButtonNode = CCDummyObjects_1.DummyNode;
this.autoPlayButtonNode = CCDummyObjects_1.DummyNode;
this.autoPlaySpriteFrame = [];
......@@ -96,18 +92,9 @@ let DatingSceneViewImpl = /** @class */ (() => {
}
}
};
this.getScrollViewRootNode = () => {
return this.scrollViewRootNode;
};
this.getScrollViewContentNode = () => {
return this.contentNode;
};
this.getChapterBtn = () => {
return this.chapterBtn;
};
this.showRollBackBtn = (isShow) => {
this.rollBackBtn.active = isShow;
};
}
/**
* 是否显示返回按钮
......@@ -428,33 +415,6 @@ let DatingSceneViewImpl = /** @class */ (() => {
}
runCloseAction() {
this.closeView();
// this.setIsRunningAction(true);
// this.closeActNode.stopAllActions();
// this.closeActNode.scale = 1;
// this.closeActNode.opacity = 0;
// this.closeActNode.active = true;
// this.backBtnNode.active = false;
// let actTime: number = 1;
// let tempX: number = 0;
// let tempY: number = 0;
// let tempR: number = 0;
// let tempS: number = this.node.width / this.closeActNode.width;
// let easeS: cc.Easing = cc.easeSineOut();
// let moveAct = cc.moveTo(actTime, cc.v2(tempX, tempY)).easing(easeS);
// let fadeInAct = cc.fadeIn(actTime).easing(easeS);
// let scaleAct = cc.scaleTo(actTime / 2, tempS).easing(easeS);
// let rotationAct = cc.rotateTo(actTime / 2, tempR).easing(easeS);
// let call = cc.callFunc(() => {
// this.closeView();
// });
// let spawnMF = cc.spawn(moveAct, fadeInAct);
// let spawnSR = cc.spawn(scaleAct, rotationAct);
// let seq = cc.sequence(spawnMF, spawnSR, call);
// this.closeActNode.runAction(seq);
}
onRollBackBtnClick() {
this.resetAutoPlayButtonState();
this.onRollBackBtnCallback();
}
onRefreshAllStatus() {
this.closeAction();
......@@ -535,19 +495,10 @@ let DatingSceneViewImpl = /** @class */ (() => {
property(Typewriter_1.default)
], DatingSceneViewImpl.prototype, "typewriter", void 0);
__decorate([
property(cc.Node)
], DatingSceneViewImpl.prototype, "rollBackBtn", void 0);
__decorate([
property(cc.Prefab)
], DatingSceneViewImpl.prototype, "chapterBtn", void 0);
__decorate([
property(cc.Node)
], DatingSceneViewImpl.prototype, "scrollViewRootNode", void 0);
__decorate([
property(cc.Node)
], DatingSceneViewImpl.prototype, "contentNode", void 0);
__decorate([
property(cc.Node)
], DatingSceneViewImpl.prototype, "skipButtonNode", void 0);
__decorate([
property(cc.Node)
......@@ -574,4 +525,4 @@ cc._RF.pop();
});
}
})();
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0cy9zY3JpcHQvZ2FtZS91aS92aWV3L2ltcGwvZGF0aW5nL0RhdGluZ1NjZW5lVmlld0ltcGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsMkVBQW9FO0FBQ3BFLGdFQUFrRjtBQUNsRiw0RUFBMEQ7QUFDMUQseUVBQTJGO0FBQzNGLHlEQUE2QztBQUM3Qyw0RUFBcUU7QUFDckUsZ0dBQXlGO0FBQ3pGLDBEQUF1RDtBQUN2RCx5RUFBc0U7QUFFdEUsTUFBTSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLENBQUMsVUFBVSxDQUFDO0FBRTVDLElBQVksYUFHWDtBQUhELFdBQVksYUFBYTtJQUNyQixtREFBUyxDQUFBO0lBQ1QseURBQVEsQ0FBQTtBQUNaLENBQUMsRUFIVyxhQUFhLEdBQWIscUJBQWEsS0FBYixxQkFBYSxRQUd4QjtBQUVELElBQVksWUFHWDtBQUhELFdBQVksWUFBWTtJQUNwQiwrQ0FBUSxDQUFBO0lBQ1IscURBQU8sQ0FBQTtBQUNYLENBQUMsRUFIVyxZQUFZLEdBQVosb0JBQVksS0FBWixvQkFBWSxRQUd2QjtBQUlEO0lBQUEsSUFBYSxtQkFBbUIsR0FBaEMsTUFBYSxtQkFBb0IsU0FBUSxtQkFBTTtRQUEvQzs7WUFDSSx5QkFBeUI7WUFFakIscUJBQWdCLEdBQUcsNEJBQVcsQ0FBQztZQUUvQiwyQkFBc0IsR0FBRyw0QkFBVyxDQUFDO1lBRXJDLG1CQUFjLEdBQUcsNEJBQVcsQ0FBQztZQUU3QixzQkFBaUIsR0FBRyw0QkFBVyxDQUFDO1lBRWhDLG9CQUFlLEdBQUcsMEJBQVMsQ0FBQztZQUU1QixtQkFBYyxHQUFHLDBCQUFTLENBQUM7WUFFM0IsdUJBQWtCLEdBQUcsMEJBQVMsQ0FBQztZQUUvQixlQUFVLEdBQUcsMEJBQVMsQ0FBQztZQUd2QixnQkFBVyxHQUFHLDBCQUFTLENBQUM7WUFHeEIsZUFBVSxHQUFHLDBCQUFTLENBQUM7WUFFL0IscUJBQXFC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RUFBRSxDQUFDLElBQUksQ0FBQzs0REFDYztJQUVoQztRQURDLFFBQVEsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDOzJEQUNhO0lBRWpDO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUM7bUVBQ3FCO0lBRXZDO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUM7NERBQ0U7SUFFcEI7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQzsrREFDaUI7SUFFbkM7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQzttRUFDcUI7SUFFdkM7UUFEQyxRQUFRLENBQUMsQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLENBQUM7b0VBQ007SUFsRHhCLG1CQUFtQjtRQUYvQixPQUFPO1FBQ1AsZ0NBQU8sQ0FBQyxxQ0FBbUIsRUFBRSwyQkFBMkIsQ0FBQztPQUM3QyxtQkFBbUIsQ0E2Zi9CO0lBQUQsMEJBQUM7S0FBQTtBQTdmWSxrREFBbUIiLCJmaWxlIjoiIiwic291cmNlUm9vdCI6Ii8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDQ1ZpZXcgfSBmcm9tIFwiLi4vLi4vLi4vLi4vLi4vY29tbW9uL2NsYXNzYmFzZS9DQ1ZpZXdCYXNlXCI7XG5pbXBvcnQgeyBEYXRpbmdTY2VuZVZpZXcsIERhdGluZ1NjZW5lVmlld1R5cGUgfSBmcm9tIFwiLi4vLi4vdHlwZS9EYXRpbmdTY2VuZVZpZXdcIjtcbmltcG9ydCB7IFJlZ1ZpZXcgfSBmcm9tIFwiLi4vLi4vLi4vUHJlc2VudGVyQ0NWaWV3RmFjdG9yeVwiO1xuaW1wb3J0IHsgRHVtbXlTcHJpdGUsIER1bW15Tm9kZSwgRHVtbXlQcmVmYWIgfSBmcm9tIFwiLi4vLi4vLi4vLi4vLi4vY29tbW9uL0NDRHVtbXlPYmplY3RzXCI7XG5pbXBvcnQgeyBSZXNVdGlscyB9IGZyb20gXCJzaW1iYS1jYy1yZXN1dGlsc1wiO1xuaW1wb3J0IFR5cGV3cml0ZXIgZnJvbSBcIi4uLy4uLy4uLy4uLy4uL2NvbW1vbi9jb21wb25lbnRzL1R5cGV3cml0ZXJcIjtcbmltcG9ydCBQb3J0cmFpdEZpeENvbXBvbmVudCBmcm9tIFwiLi4vLi4vLi4vLi4vLi4vY29tbW9uL2NvbXBvbmVudHMvUG9ydHJhaXRGaXhDb21wb25lbnRcIjtcbmltcG9ydCB7IEdhbWVDb25maWcgfSBmcm9tIFwiLi4vLi4vLi4vLi4vLi4vR2FtZUNvbmZpZ1wiO1xuaW1wb3J0IHsgR2FtZU1vZGVsTWFuYWdlciB9IGZyb20gXCIuLi8uLi8uLi8uLi9tb2RlbC9HYW1lTW9kZWxNYW5hZ2VyXCI7XG5cbmNvbnN0IHsgY2NjbGFzcywgcHJvcGVydHkgfSA9IGNjLl9kZWNvcmF0b3I7XG5cbmV4cG9ydCBlbnVtIEF1dG9QbGF5U3RhdGUge1xuICAgIENsb3NlID0gMCxcbiAgICBBdXRvUGxheVxufVxuXG5leHBvcnQgZW51bSBBdXRvUGxheVR5cGUge1xuICAgIFNraXAgPSAwLFxuICAgIFNwZWVkeDFcbn1cblxuQGNjY2xhc3NcbkBSZWdWaWV3KERhdGluZ1NjZW5lVmlld1R5cGUsIFwicHJlZmFiL3VpL0RhdGluZ1NjZW5lVmlld1wiKVxuZXhwb3J0IGNsYXNzIERhdGluZ1NjZW5lVmlld0ltcGwgZXh0ZW5kcyBDQ1ZpZXcgaW1wbGVtZW50cyBEYXRpbmdTY2VuZVZpZXcge1xuICAgIC8vI3JlZ2lvbiBlZGl0b3IgYmluZGluZ3NcbiAgICBAcHJvcGVydHkoY2MuU3ByaXRlKVxuICAgIHByaXZhdGUgYmFja2dyb3VuZFNwcml0ZSA9IER1bW15U3ByaXRlO1xuICAgIEBwcm9wZXJ0eShjYy5TcHJpdGUpXG4gICAgcHJpdmF0ZSBlZmZlY3RCYWNrZ3JvdW5kU3ByaXRlID0gRHVtbXlTcHJpdGU7XG4gICAgQHByb3BlcnR5KGNjLlNwcml0ZSlcbiAgICBwcml2YXRlIHBvcnRyYWl0U3ByaXRlID0gRHVtbXlTcHJpdGU7XG4gICAgQHByb3BlcnR5KGNjLlNwcml0ZSlcbiAgICBwcml2YXRlIHNlbGZTbWFsbFBvcnRyYWl0ID0gRHVtbXlTcHJpdGU7XG4gICAgQHByb3BlcnR5KGNjLk5vZGUpXG4gICAgcHJpdmF0ZSBvdGhlckRpYWxvZ05vZGUgPSBEdW1teU5vZGU7XG4gICAgQHByb3BlcnR5KGNjLk5vZGUpXG4gICAgcHJpdmF0ZSBzZWxmRGlhbG9nTm9kZSA9IER1bW15Tm9kZTtcbiAgICBAcHJvcGVydHkoY2MuTm9kZSlcbiAgICBwcml2YXRlIG5hcnJhdG9yRGlhbG9nTm9kZSA9IER1bW15Tm9kZTtcbiAgICBAcHJvcGVydHkoY2MuTm9kZSlcbiAgICBwcml2YXRlIGJhY2tSZWREb3QgPSBEdW1teU5vZGU7XG5cbiAgICBAcHJvcGVydHkoY2MuTm9kZSlcbiAgICBwcml2YXRlIGJhY2tCdG5Ob2RlID0gRHVtbXlOb2RlO1xuXG4gICAgQHByb3BlcnR5KGNjLk5vZGUpXG4gICAgcHJpdmF0ZSBlbmRUaXBOb2RlID0gRHVtbXlOb2RlO1xuXG4gICAgLy8gQHByb3BlcnR5KGNjLk5vZGUpXG4gICAgLy8gcHJpdmF0ZSBjbG9zZUFjdE5vZGUgPSBEdW1teU5vZGU7XG5cbiAgICBAcHJvcGVydHkoY2MuTm9kZSlcbiAgICBwcml2YXRlIGFycm93Z3VpZGVOb2RlID0gRHVtbXlOb2RlO1xuXG4gICAgQHByb3BlcnR5KGNjLlNwcml0ZSlcbiAgICBwcml2YXRlIG90aGVyTmFtZVNwciA9IER1bW15U3ByaXRlO1xuXG4gICAgQHByb3BlcnR5KFR5cGV3cml0ZXIpXG4gICAgcHJpdmF0ZSB0eXBld3JpdGVyOiBUeXBld3JpdGVyID0gdW5kZWZpbmVkIGFzIHVua25vd24gYXMgVHlwZXdyaXRlcjtcblxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxuICAgIHByaXZhdGUgcm9sbEJhY2tCdG4gPSBEdW1teU5vZGU7XG4gICAgQHByb3BlcnR5KGNjLlByZWZhYilcbiAgICBwcml2YXRlIGNoYXB0ZXJCdG4gPSBEdW1teVByZWZhYjtcbiAgICBAcHJvcGVydHkoY2MuTm9kZSlcbiAgICBwcml2YXRlIHNjcm9sbFZpZXdSb290Tm9kZSA9IER1bW15Tm9kZTtcbiAgICBAcHJvcGVydHkoY2MuTm9kZSlcbiAgICBwcml2YXRlIGNvbnRlbnROb2RlO1xuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxuICAgIHByaXZhdGUgc2tpcEJ1dHRvbk5vZGUgPSBEdW1teU5vZGU7XG4gICAgQHByb3BlcnR5KGNjLk5vZGUpXG4gICAgcHJpdmF0ZSBhdXRvUGxheUJ1dHRvbk5vZGUgPSBEdW1teU5vZGU7XG4gICAgQHByb3BlcnR5KFtjYy5TcHJpdGVGcmFtZV0pXG4gICAgcHJpdmF0ZSBhdXRvUGxheVNwcml0ZUZyYW1lID0gW107XG5cblxuICAgIHByaXZhdGUgX29yaWdpblBvczogY2MuVmVjMyA9IGNjLnYzKC0yNjUsIDY4LCAwKTtcblxuICAgIHByaXZhdGUgX2lzUnVuQ2xvc2VBY3Rpb246IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIHByaXZhdGUgX2lzUnVubmluZ0FjdGlvbjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgcHJpdmF0ZSBfY29udGVudFRleHQ6IHN0cmluZyA9IFwiXCI7XG4gICAgcHJpdmF0ZSBfYXV0b1BsYXlUaW1lcjogbnVtYmVyID0gLTE7XG4gICAgcHJpdmF0ZSBfc2tpcEJ1dHRvblN0YXRlOiBudW1iZXIgPSAwO1xuICAgIHByaXZhdGUgX2F1dG9QbGF5QnV0dG9uU3RhdGU6IG51bWJlciA9IDA7XG4gICAgcHJpdmF0ZSBfYXV0b1BsYXlTdGF0ZTogbnVtYmVyID0gLTE7XG4gICAgcHJpdmF0ZSBfYXV0b1BsYXlTcGVlZDogbnVtYmVyID0gMTtcbiAgICBwcml2YXRlIF90ZXh0VHlwZXJJc092ZXI6IGJvb2xlYW4gPSB0cnVlO1xuICAgIHByaXZhdGUgX2lzU3BlY2lhbEVmZmVjdDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICog5piv5ZCm5pi+56S66L+U5Zue5oyJ6ZKuXG4gICAgICogQHBhcmFtIHNob3cgYm9vbFxuICAgICAqL1xuICAgIHNob3dCYWNrQnRuKHNob3c6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5iYWNrQnRuTm9kZSEuYWN0aXZlID0gc2hvdztcbiAgICAgICAgaWYgKHNob3cpIHtcbiAgICAgICAgICAgIHRoaXMuYmFja0J0bk5vZGUuZ2V0Q29tcG9uZW50KGNjLldpZGdldCkudXBkYXRlQWxpZ25tZW50KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBjbG9zZUFjdGlvbigpIHtcbiAgICAgICAgR2FtZU1vZGVsTWFuYWdlci5zZXRJc01haW5QbG90U2NlbmVUeXBlKGZhbHNlKTtcbiAgICAgICAgR2FtZUNvbmZpZy5pc1ZlcmIgPSBmYWxzZTtcbiAgICAgICAgLy/muIXpmaToh6rliqjmkq3mlL7orqHml7blmahcbiAgICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuX2F1dG9QbGF5VGltZXIpO1xuICAgICAgICBpZiAodGhpcy5faXNSdW5DbG9zZUFjdGlvbikge1xuICAgICAgICAgICAgdGhpcy5ydW5DbG9zZUFjdGlvbigpO1xuICAgICAgICB9IGVsc2UgaWYgKCF0aGlzLl9pc1J1bm5pbmdBY3Rpb24pIHtcbiAgICAgICAgICAgIHRoaXMuY2xvc2VWaWV3KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzZXRJc1J1bm5pbmdBY3Rpb24gPSAoaXNSdW5uaW5nOiBib29sZWFuKSA9PiB7XG4gICAgICAgIHRoaXMuX2lzUnVubmluZ0FjdGlvbiA9IGlzUnVubmluZztcbiAgICB9XG5cbiAgICBjbG9zZVZpZXcoKSB7XG4gICAgICAgIHRoaXMuYmFja2dyb3VuZFNwcml0ZS5zcHJpdGVGcmFtZSA9IHVuZGVmaW5lZCBhcyBhbnk7XG4gICAgICAgIHRoaXMucG9ydHJhaXRTcHJpdGUuc3ByaXRlRnJhbWUgPSB1bmRlZmluZWQgYXMgYW55O1xuICAgICAgICB0aGlzLnNlbGZTbWFsbFBvcnRyYWl0LnNwcml0ZUZyYW1lID0gdW5kZWZpbmVkIGFzIGFueTtcbiAgICAgICAgdGhpcy5vdGhlckRpYWxvZ05vZGUuYWN0aXZlID0gZmFsc2U7XG4gICAgICAgIHRoaXMuc2VsZkRpYWxvZ05vZGUuYWN0aXZlID0gZmFsc2U7XG4gICAgICAgIHRoaXMubmFycmF0b3JEaWFsb2dOb2RlLmFjdGl2ZSA9IGZhbHNlO1xuICAgICAgICB0aGlzLmJhY2tSZWREb3QuYWN0aXZlID0gZmFsc2U7XG4gICAgICAgIHRoaXMuYmFja0J0bk5vZGUuYWN0aXZlID0gdHJ1ZTtcblxuICAgICAgICB0aGlzLmVuZFRpcE5vZGUuc3RvcEFsbEFjdGlvbnMoKTtcbiAgICAgICAgdGhpcy5lbmRUaXBOb2RlLmFjdGl2ZSA9IGZhbHNlO1xuICAgICAgICB0aGlzLmVuZFRpcE5vZGUucG9zaXRpb24gPSB0aGlzLl9vcmlnaW5Qb3M7XG4gICAgICAgIHRoaXMuZW5kVGlwTm9kZS5vcGFjaXR5ID0gMjU1O1xuXG4gICAgICAgIHRoaXMuX2lzUnVuQ2xvc2VBY3Rpb24gPSBmYWxzZTtcbiAgICAgICAgLy8gdGhpcy5jbG9zZUFjdE5vZGUuYWN0aXZlID0gZmFsc2U7XG4gICAgICAgIHRoaXMuX2lzUnVubmluZ0FjdGlvbiA9IGZhbHNlO1xuICAgICAgICB0aGlzLmFycm93Z3VpZGVOb2RlLmFjdGl2ZSA9IGZhbHNlO1xuICAgICAgICB0aGlzLmNsb3NlKCk7XG4gICAgfVxuICAgIC8vI2VuZHJlZ2lvblxuXG4gICAgY29tcGxldGVQbG90Q2FsbGJhY2s6ICgpID0+IFByb21pc2U8dm9pZD47XG4gICAgb25Sb2xsQmFja0J0bkNhbGxiYWNrOiAoKSA9PiB2b2lkO1xuICAgIG9uUmV2aWV3QnV0dG9uQ2xpY2tDYWxsYmFjazogKCkgPT4gdm9pZDtcblxuICAgIG9uRW5hYmxlKCkge1xuICAgICAgICB0aGlzLnJlc2V0QXV0b1BsYXlCdXR0b25TdGF0ZSgpO1xuICAgICAgICB0aGlzLm5vZGUub24oY2MuTm9kZS5FdmVudFR5cGUuVE9VQ0hfRU5ELCB0aGlzLnRvdWNoRW5kSGFuZGxlciwgdGhpcyk7XG4gICAgfVxuXG4gICAgb25EaXNhYmxlKCkge1xuICAgICAgICB0aGlzLm5vZGUub2ZmKGNjLk5vZGUuRXZlbnRUeXBlLlRPVUNIX0VORCwgdGhpcy50b3VjaEVuZEhhbmRsZXIsIHRoaXMpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOiDjOaZr+ebkeWQrOWbnuiwg1xuICAgICAqL1xuICAgIHRvdWNoRW5kSGFuZGxlciA9IGFzeW5jICgpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuX2F1dG9QbGF5U3RhdGUgPT0gQXV0b1BsYXlTdGF0ZS5DbG9zZSkge1xuICAgICAgICAgICAgaWYgKHRoaXMudHlwZXdyaXRlci5nZXRTaG93aW5nU3RyaW5nKCkgPT0gXCJcIikge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmNvbXBsZXRlUGxvdENhbGxiYWNrKSBhd2FpdCB0aGlzLmNvbXBsZXRlUGxvdENhbGxiYWNrKCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMudHlwZXdyaXRlci5zdG9wVHlwZXJTaG93U3RyaW5nKClcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKuW8leWvvOi/lOWbniAqL1xuICAgIGd1aWRlQmFjaygpIHtcbiAgICAgICAgdGhpcy5ydW5FbmRUaXBBY3Rpb24oKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDorr7nva7nuqbkvJrlnLrmma/lhoXlrrlcbiAgICAgKiBAcGFyYW0gaXNTZWxmIOaYr+WQpuaYr+iHqui6q1xuICAgICAqIEBwYXJhbSB0ZXh0IOaWh+acrOWGheWuuVxuICAgICAqIEBwYXJhbSBuYW1lU3ByIFxuICAgICAqIEBwYXJhbSBuYW1lIOWIq+S6uuWQjeWtl1xuICAgICAqIEBwYXJhbSBwb3J0cmFpdEltZyDnq4vnu5jlm77lkI3lrZdcbiAgICAgKiBAcGFyYW0gb3RoZXJQb3J0cmFpdEltZyDlhbbku5bnq4vnu5jlm77lkI3lrZdcbiAgICAgKiBAcGFyYW0gc2hvd1JvdWdlIOaYr+WQpuaYvuekuuWPo+e6olxuICAgICAqL1xuICAgIGFzeW5jIHNldENvbnRlbnQoaXNTZWxmOiBib29sZWFuLCB0ZXh0OiBzdHJpbmcsIG5hbWVTcHI6IHN0cmluZywgbmFtZT86IHN0cmluZywgcG9ydHJhaXRJbWc/OiBzdHJpbmcsIG90aGVyUG9ydHJhaXRJbWc/OiBzdHJpbmcsIHNob3dSb3VnZT86IGJvb2xlYW4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgbGV0IHByb21pc2VzOiBQcm9taXNlPGFueT5bXSA9IFtdO1xuICAgICAgICBpZiAoISgoaXNTZWxmICYmIG90aGVyUG9ydHJhaXRJbWcpIHx8IHBvcnRyYWl0SW1nKSkgeyAvLyDpmLLmraLliIfmjaLov4fnqIvkuK3pl6pcbiAgICAgICAgICAgIHRoaXMucG9ydHJhaXRTcHJpdGUuc3ByaXRlRnJhbWUgPSB1bmRlZmluZWQgYXMgYW55O1xuICAgICAgICB9XG4gICAgICAgIGlmIChwb3J0cmFpdEltZykge1xuICAgICAgICAgICAgaWYgKGlzU2VsZikge1xuICAgICAgICAgICAgICAgIGxldCBwb3J0cmFpdFBhdGggPSBwb3J0cmFpdEltZy5zdWJzdHJpbmcoMCwgcG9ydHJhaXRJbWcubGFzdEluZGV4T2YoXCIvXCIpICsgMSk7XG4gICAgICAgICAgICAgICAgbGV0IGZhY2VJZCA9IHBvcnRyYWl0SW1nLnN1YnN0cmluZyhwb3J0cmFpdEltZy5sYXN0SW5kZXhPZihcIi9cIikgKyAxLCBwb3J0cmFpdEltZy5sZW5ndGgpO1xuICAgICAgICAgICAgICAgIHBvcnRyYWl0SW1nID0gcG9ydHJhaXRQYXRoICsgXCIxL1wiICsgZmFjZUlkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcHJvbWlzZXMucHVzaChSZXNVdGlscy5sb2FkUmVzKHBvcnRyYWl0SW1nLCBjYy5TcHJpdGVGcmFtZSkudGhlbigoc2YpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5ub2RlLmFjdGl2ZSkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoaXNTZWxmKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNlbGZTbWFsbFBvcnRyYWl0LnNwcml0ZUZyYW1lID0gc2Y7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnBvcnRyYWl0U3ByaXRlLnNwcml0ZUZyYW1lID0gc2Y7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZpeFNjcmVlblNpemUoKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaXNTZWxmICYmIG90aGVyUG9ydHJhaXRJbWcpIHtcbiAgICAgICAgICAgIHByb21pc2VzLnB1c2goUmVzVXRpbHMubG9hZFJlcyhvdGhlclBvcnRyYWl0SW1nLCBjYy5TcHJpdGVGcmFtZSkudGhlbigoc2YpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnBvcnRyYWl0U3ByaXRlLnNwcml0ZUZyYW1lID0gc2Y7XG4gICAgICAgICAgICAgICAgdGhpcy5maXhTY3JlZW5TaXplKCk7XG4gICAgICAgICAgICB9KSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG5hbWVTcHIgJiYgIWlzU2VsZiAmJiBcIlwiICE9PSBuYW1lU3ByLnRyaW0oKSkge1xuICAgICAgICAgICAgcHJvbWlzZXMucHVzaChSZXNVdGlscy5sb2FkUmVzKG5hbWVTcHIsIGNjLlNwcml0ZUZyYW1lKS50aGVuKChzZikgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMub3RoZXJOYW1lU3ByLnNwcml0ZUZyYW1lID0gc2Y7XG4gICAgICAgICAgICB9KSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5vdGhlckRpYWxvZ05vZGUuYWN0aXZlID0gZmFsc2U7XG4gICAgICAgIHRoaXMuc2VsZkRpYWxvZ05vZGUuYWN0aXZlID0gZmFsc2U7XG4gICAgICAgIHRoaXMubmFycmF0b3JEaWFsb2dOb2RlLmFjdGl2ZSA9IGZhbHNlO1xuICAgICAgICAvLyBsZXQgcm91Z2VOb2RlID0gdGhpcy5zZWxmRGlhbG9nTm9kZS5nZXRDaGlsZEJ5TmFtZShcInJvdWdlXCIpO1xuICAgICAgICAvLyBsZXQgcGVyVGltZSA9IDAuMDU7XG4gICAgICAgIGlmICh0ZXh0KSB7XG4gICAgICAgICAgICAvLyBsZXQgdGltZSA9IHBlclRpbWUgKiB0ZXh0Lmxlbmd0aDtcbiAgICAgICAgICAgIHRoaXMuX2NvbnRlbnRUZXh0ID0gdGV4dDtcbiAgICAgICAgICAgIHRoaXMuX3RleHRUeXBlcklzT3ZlciA9IGZhbHNlO1xuICAgICAgICAgICAgaWYgKGlzU2VsZikgeyAvLyDoh6rlt7FcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGZEaWFsb2dOb2RlLmFjdGl2ZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgLy8gdGhpcy5zZWxmRGlhbG9nTm9kZS5jaGlsZHJlblswXS5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9IG5hbWUhO1xuICAgICAgICAgICAgICAgIC8vIHRoaXMuc2VsZkRpYWxvZ05vZGUuY2hpbGRyZW5bMV0uZ2V0Q29tcG9uZW50KGNjLlJpY2hUZXh0KS5zdHJpbmcgPSB0ZXh0O1xuICAgICAgICAgICAgICAgIHRoaXMudHlwZXdyaXRlci5zaG93UmljaFRleHRUeXBlcih0aGlzLnNlbGZEaWFsb2dOb2RlLmNoaWxkcmVuWzBdLmdldENvbXBvbmVudChjYy5SaWNoVGV4dCksIHRleHQsXG4gICAgICAgICAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX3RleHRUeXBlcklzT3ZlciA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIH0sICgpID0+IHsgfSwgdGhpcy5fYXV0b1BsYXlTcGVlZFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgLy8gcHJvbWlzZXMucHVzaChBbmltYXRpb25VdGlscy5BY3Rpb25UeXBlV3JpdGVyKHRoaXMuc2VsZkRpYWxvZ05vZGUuY2hpbGRyZW5bMV0uZ2V0Q29tcG9uZW50KGNjLlJpY2hUZXh0KSwgdGV4dCwgdGltZSkpO1xuICAgICAgICAgICAgICAgIC8vIGlmIChyb3VnZU5vZGUpIHtcbiAgICAgICAgICAgICAgICAvLyAgICAgcm91Z2VOb2RlLmFjdGl2ZSA9IHNob3dSb3VnZSA/IHRydWUgOiBmYWxzZTtcbiAgICAgICAgICAgICAgICAvLyB9XG4gICAgICAgICAgICB9IGVsc2UgaWYgKG5hbWUpIHsgLy8g5Yir5Lq6XG4gICAgICAgICAgICAgICAgdGhpcy5vdGhlckRpYWxvZ05vZGUuYWN0aXZlID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAvLyB0aGlzLm90aGVyRGlhbG9nTm9kZS5jaGlsZHJlblswXS5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9IG5hbWUhO1xuICAgICAgICAgICAgICAgIC8vIHRoaXMub3RoZXJEaWFsb2dOb2RlLmNoaWxkcmVuWzFdLmdldENvbXBvbmVudChjYy5SaWNoVGV4dCkuc3RyaW5nID0gdGV4dDtcbiAgICAgICAgICAgICAgICB0aGlzLnR5cGV3cml0ZXIuc2hvd1JpY2hUZXh0VHlwZXIodGhpcy5vdGhlckRpYWxvZ05vZGUuY2hpbGRyZW5bMF0uZ2V0Q29tcG9uZW50KGNjLlJpY2hUZXh0KSwgdGV4dCxcbiAgICAgICAgICAgICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fdGV4dFR5cGVySXNPdmVyID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgfSwgKCkgPT4geyB9LCB0aGlzLl9hdXRvUGxheVNwZWVkXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAvLyBwcm9taXNlcy5wdXNoKEFuaW1hdGlvblV0aWxzLkFjdGlvblR5cGVXcml0ZXIodGhpcy5vdGhlckRpYWxvZ05vZGUuY2hpbGRyZW5bMV0uZ2V0Q29tcG9uZW50KGNjLlJpY2hUZXh0KSwgdGV4dCwgdGltZSkpO1xuICAgICAgICAgICAgfSBlbHNlIHsgLy8g5peB55m9XG4gICAgICAgICAgICAgICAgdGhpcy5uYXJyYXRvckRpYWxvZ05vZGUuYWN0aXZlID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAvLyB0aGlzLm5hcnJhdG9yRGlhbG9nTm9kZS5jaGlsZHJlblswXS5nZXRDb21wb25lbnQoY2MuUmljaFRleHQpLnN0cmluZyA9IHRleHQ7XG4gICAgICAgICAgICAgICAgdGhpcy50eXBld3JpdGVyLnNob3dSaWNoVGV4dFR5cGVyKHRoaXMubmFycmF0b3JEaWFsb2dOb2RlLmNoaWxkcmVuWzBdLmdldENvbXBvbmVudChjYy5SaWNoVGV4dCksIHRleHQsXG4gICAgICAgICAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX3RleHRUeXBlcklzT3ZlciA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIH0sICgpID0+IHsgfSwgdGhpcy5fYXV0b1BsYXlTcGVlZFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgLy8gcHJvbWlzZXMucHVzaChBbmltYXRpb25VdGlscy5BY3Rpb25UeXBlV3JpdGVyKHRoaXMubmFycmF0b3JEaWFsb2dOb2RlLmNoaWxkcmVuWzBdLmdldENvbXBvbmVudChjYy5SaWNoVGV4dCksIHRleHQsIHRpbWUpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0cnkge1xuICAgICAgICAgICAgYXdhaXQgUHJvbWlzZS5hbGwocHJvbWlzZXMpO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKGUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcmVzZXRBdXRvUGxheUJ1dHRvblN0YXRlKCkge1xuICAgICAgICB0aGlzLl9hdXRvUGxheVNwZWVkID0gMTtcbiAgICAgICAgdGhpcy5fYXV0b1BsYXlTdGF0ZSA9IEF1dG9QbGF5U3RhdGUuQ2xvc2U7XG4gICAgICAgIHRoaXMuX3NraXBCdXR0b25TdGF0ZSA9IEF1dG9QbGF5U3RhdGUuQ2xvc2U7XG4gICAgICAgIHRoaXMuX2F1dG9QbGF5QnV0dG9uU3RhdGUgPSBBdXRvUGxheVN0YXRlLkNsb3NlO1xuICAgICAgICB0aGlzLmNoYW5nZVNraXBCdXR0b25TdGF0ZSh0aGlzLl9hdXRvUGxheVN0YXRlKTtcbiAgICAgICAgdGhpcy5jaGFuZ2VBdXRvUGxheUJ1dHRvblN0YXRlKHRoaXMuX2F1dG9QbGF5U3RhdGUpO1xuICAgIH1cblxuICAgIGNoYW5nZVNraXBCdXR0b25TdGF0ZShzdGF0ZTogQXV0b1BsYXlTdGF0ZSkge1xuICAgICAgICBsZXQgc2tpcExhYmVsID0gdGhpcy5za2lwQnV0dG9uTm9kZS5nZXRDb21wb25lbnRJbkNoaWxkcmVuKGNjLlNwcml0ZSk7XG4gICAgICAgIGlmIChzdGF0ZSA9PSBBdXRvUGxheVN0YXRlLkNsb3NlKSB7XG4gICAgICAgICAgICBza2lwTGFiZWwuc3ByaXRlRnJhbWUgPSB0aGlzLmF1dG9QbGF5U3ByaXRlRnJhbWVbMl07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBza2lwTGFiZWwuc3ByaXRlRnJhbWUgPSB0aGlzLmF1dG9QbGF5U3ByaXRlRnJhbWVbM107XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBjaGFuZ2VBdXRvUGxheUJ1dHRvblN0YXRlKHN0YXRlOiBBdXRvUGxheVN0YXRlKSB7XG4gICAgICAgIGxldCBhdXRvUGxheVNwcml0ZSA9IHRoaXMuYXV0b1BsYXlCdXR0b25Ob2RlLmdldENvbXBvbmVudEluQ2hpbGRyZW4oY2MuU3ByaXRlKTtcbiAgICAgICAgaWYgKHN0YXRlID09IEF1dG9QbGF5U3RhdGUuQ2xvc2UpIHtcbiAgICAgICAgICAgIGF1dG9QbGF5U3ByaXRlLnNwcml0ZUZyYW1lID0gdGhpcy5hdXRvUGxheVNwcml0ZUZyYW1lWzBdO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgYXV0b1BsYXlTcHJpdGUuc3ByaXRlRnJhbWUgPSB0aGlzLmF1dG9QbGF5U3ByaXRlRnJhbWVbMV07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDlvIDlp4voh6rliqjmkq3mlL7orqHml7blmahcbiAgICAgKiBAcGFyYW0gc3RhcnROb3cg5piv5ZCm5LiN6L+b6KGM5bu25pe277yM56uL5Y2z5omn6KGM5LiL5LiA5q2l77yM6YCC55So5LqO546p5a6254K55Ye76Ieq5Yqo5pKt5pS+5oyJ6ZKu5LmL5ZCO77yM5peg6ZyA562J5b6FXG4gICAgICovXG4gICAgc3RhcnRBdXRvUGxheVRpbWVyKHN0YXJ0Tm93OiBib29sZWFuID0gZmFsc2UpIHtcbiAgICAgICAgbGV0IGludGVydmFsOiBudW1iZXIgPSAwO1xuICAgICAgICBpZiAoIXN0YXJ0Tm93KSB7XG4gICAgICAgICAgICAvL+aXtumXtOmXtOmalOeahOiuoeeul+aWueazle+8jOWmguaenHN0YXJ0Tm935Li6dHJ1ZeeahOivne+8jOS4jei/m+ihjOW7tuaXtu+8jOaXtumXtOS4ujDvvIzlkKbliJnvvJpcbiAgICAgICAgICAgIC8v77yI5paH5pys6ZW/5bqmICogNTBtcyAvIHRoaXMuX2F1dG9QbGF5U3BlZWTvvInooajnpLrmlofmnKzotbDlrozmiZPlrZfmnLrmlYjmnpzmiYDpnIDopoHnmoTml7bpl7RcbiAgICAgICAgICAgIC8v77yI5paH5pys6ZW/5bqmICogNjBtcyAvIHRoaXMuX2F1dG9QbGF5U3BlZWTvvInooajnpLrmlofmnKzlrozlhajlsZXnpLrkuYvlkI7lsZXnpLrlgZznlZnnmoTml7bpl7RcbiAgICAgICAgICAgIGludGVydmFsID0gKCh0aGlzLl9jb250ZW50VGV4dC5sZW5ndGggKiA1MCkgLyB0aGlzLl9hdXRvUGxheVNwZWVkKSArICgodGhpcy5fY29udGVudFRleHQubGVuZ3RoICogNjApIC8gdGhpcy5fYXV0b1BsYXlTcGVlZCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fYXV0b1BsYXlUaW1lciA9IHdpbmRvdy5zZXRUaW1lb3V0KGFzeW5jICgpID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLl9hdXRvUGxheVN0YXRlID09IEF1dG9QbGF5U3RhdGUuQXV0b1BsYXkpIHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5fdGV4dFR5cGVySXNPdmVyICYmICF0aGlzLl9pc1NwZWNpYWxFZmZlY3QpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuY29tcGxldGVQbG90Q2FsbGJhY2spIGF3YWl0IHRoaXMuY29tcGxldGVQbG90Q2FsbGJhY2soKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdGhpcy5zdGFydEF1dG9QbGF5VGltZXIoKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuX2F1dG9QbGF5VGltZXIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LCBpbnRlcnZhbCk7XG4gICAgfVxuXG4gICAgZml4U2NyZWVuU2l6ZSgpIHtcbiAgICAgICAgbGV0IGNvbXAgPSB0aGlzLnBvcnRyYWl0U3ByaXRlLm5vZGUuZ2V0Q29tcG9uZW50KFBvcnRyYWl0Rml4Q29tcG9uZW50KTtcbiAgICAgICAgaWYgKGNvbXApIHtcbiAgICAgICAgICAgIGNvbXAuZml4U2NyZWVuU2l6ZSh0cnVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOiuvue9ruiDjOaZr1xuICAgICAqIEBwYXJhbSBiZ0ltYWdlIOiDjOaZr+i3r+W+hFxuICAgICAqL1xuICAgIGFzeW5jIHNldEJhY2tncm91bmQoYmdJbWFnZTogc3RyaW5nKSB7XG4gICAgICAgIGlmICghYmdJbWFnZSkge1xuICAgICAgICAgICAgdGhpcy5iYWNrZ3JvdW5kU3ByaXRlLnNwcml0ZUZyYW1lID0gdW5kZWZpbmVkIGFzIGFueTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgdGhpcy5iYWNrZ3JvdW5kU3ByaXRlLm5vZGUub3BhY2l0eSA9IDI1NTtcbiAgICAgICAgICAgICAgICBsZXQgc2YgPSBhd2FpdCBSZXNVdGlscy5sb2FkUmVzKGJnSW1hZ2UsIGNjLlNwcml0ZUZyYW1lKTtcbiAgICAgICAgICAgICAgICB0aGlzLmJhY2tncm91bmRTcHJpdGUuc3ByaXRlRnJhbWUgPSBzZjtcbiAgICAgICAgICAgICAgICB0aGlzLmJhY2tncm91bmRTcHJpdGUubm9kZS5oZWlnaHQgPSB0aGlzLm5vZGUuaGVpZ2h0O1xuICAgICAgICAgICAgICAgIHRoaXMuYmFja2dyb3VuZFNwcml0ZS5ub2RlLndpZHRoID0gc2YuZ2V0T3JpZ2luYWxTaXplKCkud2lkdGggLyBzZi5nZXRPcmlnaW5hbFNpemUoKS5oZWlnaHQgKiB0aGlzLm5vZGUuaGVpZ2h0O1xuICAgICAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDorr7nva7og4zmma8o54m55q6K5pWI5p6cKVxuICAgICAqIEBwYXJhbSBiZ0ltYWdlIOiDjOaZr+i3r+W+hFxuICAgICAqL1xuICAgIGFzeW5jIHNldEJhY2tncm91bmRFZmZlY3QoYmdJbWFnZTogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuX2lzU3BlY2lhbEVmZmVjdCA9IHRydWU7XG4gICAgICAgIGxldCBkaWFsb2dOb2Rlc0FjdGl2ZTogYm9vbGVhbltdID0gW3RoaXMub3RoZXJEaWFsb2dOb2RlLmFjdGl2ZSwgdGhpcy5zZWxmRGlhbG9nTm9kZS5hY3RpdmUsIHRoaXMubmFycmF0b3JEaWFsb2dOb2RlLmFjdGl2ZV07XG4gICAgICAgIHRoaXMub3RoZXJEaWFsb2dOb2RlLmFjdGl2ZSA9IGZhbHNlO1xuICAgICAgICB0aGlzLnNlbGZEaWFsb2dOb2RlLmFjdGl2ZSA9IGZhbHNlO1xuICAgICAgICB0aGlzLm5hcnJhdG9yRGlhbG9nTm9kZS5hY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgaWYgKCFiZ0ltYWdlKSB7XG4gICAgICAgICAgICB0aGlzLmJhY2tncm91bmRTcHJpdGUubm9kZS5vcGFjaXR5ID0gMjU1O1xuICAgICAgICAgICAgY2MudHdlZW4odGhpcy5iYWNrZ3JvdW5kU3ByaXRlLm5vZGUpXG4gICAgICAgICAgICAgICAgLnRvKDEsIHsgb3BhY2l0eTogMCB9KVxuICAgICAgICAgICAgICAgIC5jYWxsKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWNrZ3JvdW5kU3ByaXRlLnNwcml0ZUZyYW1lID0gdW5kZWZpbmVkIGFzIGFueTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5vdGhlckRpYWxvZ05vZGUuYWN0aXZlID0gZGlhbG9nTm9kZXNBY3RpdmVbMF07XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZkRpYWxvZ05vZGUuYWN0aXZlID0gZGlhbG9nTm9kZXNBY3RpdmVbMV07XG4gICAgICAgICAgICAgICAgICAgIHRoaXMubmFycmF0b3JEaWFsb2dOb2RlLmFjdGl2ZSA9IGRpYWxvZ05vZGVzQWN0aXZlWzJdO1xuICAgICAgICAgICAgICAgIH0pLnN0YXJ0KCk7XG4gICAgICAgICAgICBpZiAodGhpcy5iYWNrZ3JvdW5kU3ByaXRlLnNwcml0ZUZyYW1lKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5lZmZlY3RCYWNrZ3JvdW5kU3ByaXRlLm5vZGUuYWN0aXZlID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB0aGlzLmVmZmVjdEJhY2tncm91bmRTcHJpdGUubm9kZS5vcGFjaXR5ID0gMjU1O1xuICAgICAgICAgICAgICAgIGNjLnR3ZWVuKHRoaXMuZWZmZWN0QmFja2dyb3VuZFNwcml0ZS5ub2RlKVxuICAgICAgICAgICAgICAgICAgICAudG8oMSwgeyBvcGFjaXR5OiAwIH0pXG4gICAgICAgICAgICAgICAgICAgIC5jYWxsKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZWZmZWN0QmFja2dyb3VuZFNwcml0ZS5ub2RlLmFjdGl2ZSA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5faXNTcGVjaWFsRWZmZWN0ID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgIH0pLnN0YXJ0KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIHRoaXMuZWZmZWN0QmFja2dyb3VuZFNwcml0ZS5ub2RlLmFjdGl2ZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgdGhpcy5lZmZlY3RCYWNrZ3JvdW5kU3ByaXRlLm5vZGUub3BhY2l0eSA9IDA7XG4gICAgICAgICAgICAgICAgY2MudHdlZW4odGhpcy5lZmZlY3RCYWNrZ3JvdW5kU3ByaXRlLm5vZGUpXG4gICAgICAgICAgICAgICAgICAgIC50bygxLCB7IG9wYWNpdHk6IDI1NSB9KVxuICAgICAgICAgICAgICAgICAgICAuY2FsbCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjYy50d2Vlbih0aGlzLmVmZmVjdEJhY2tncm91bmRTcHJpdGUubm9kZSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAudG8oMSwgeyBvcGFjaXR5OiAwIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNhbGwoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmVmZmVjdEJhY2tncm91bmRTcHJpdGUubm9kZS5hY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KS5zdGFydCgpO1xuICAgICAgICAgICAgICAgICAgICB9KS5zdGFydCgpO1xuICAgICAgICAgICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFja2dyb3VuZFNwcml0ZS5ub2RlKVxuICAgICAgICAgICAgICAgICAgICAudG8oMSwgeyBvcGFjaXR5OiAwIH0pXG4gICAgICAgICAgICAgICAgICAgIC5jYWxsKGFzeW5jICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBzZiA9IGF3YWl0IFJlc1V0aWxzLmxvYWRSZXMoYmdJbWFnZSwgY2MuU3ByaXRlRnJhbWUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWNrZ3JvdW5kU3ByaXRlLnNwcml0ZUZyYW1lID0gc2Y7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmJhY2tncm91bmRTcHJpdGUubm9kZS5oZWlnaHQgPSB0aGlzLm5vZGUuaGVpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWNrZ3JvdW5kU3ByaXRlLm5vZGUud2lkdGggPSBzZi5nZXRPcmlnaW5hbFNpemUoKS53aWR0aCAvIHNmLmdldE9yaWdpbmFsU2l6ZSgpLmhlaWdodCAqIHRoaXMubm9kZS5oZWlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBjYy50d2Vlbih0aGlzLmJhY2tncm91bmRTcHJpdGUubm9kZSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAudG8oMSwgeyBvcGFjaXR5OiAyNTUgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuY2FsbCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMub3RoZXJEaWFsb2dOb2RlLmFjdGl2ZSA9IGRpYWxvZ05vZGVzQWN0aXZlWzBdO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNlbGZEaWFsb2dOb2RlLmFjdGl2ZSA9IGRpYWxvZ05vZGVzQWN0aXZlWzFdO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm5hcnJhdG9yRGlhbG9nTm9kZS5hY3RpdmUgPSBkaWFsb2dOb2Rlc0FjdGl2ZVsyXTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5faXNTcGVjaWFsRWZmZWN0ID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkuc3RhcnQoKTtcbiAgICAgICAgICAgICAgICAgICAgfSkuc3RhcnQoKTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKGUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcnVuRW5kVGlwQWN0aW9uKCkge1xuICAgICAgICB0aGlzLnNldElzUnVubmluZ0FjdGlvbih0cnVlKTtcbiAgICAgICAgbGV0IG9mZnNldFk6IG51bWJlciA9IDMwMDtcbiAgICAgICAgbGV0IGFjdFRpbWU6IG51bWJlciA9IDEuNTtcbiAgICAgICAgdGhpcy5lbmRUaXBOb2RlLnN0b3BBbGxBY3Rpb25zKCk7XG4gICAgICAgIHRoaXMuZW5kVGlwTm9kZS5hY3RpdmUgPSB0cnVlO1xuICAgICAgICB0aGlzLmVuZFRpcE5vZGUuc2NhbGUgPSAxO1xuICAgICAgICB0aGlzLmVuZFRpcE5vZGUub3BhY2l0eSA9IDI1NTtcbiAgICAgICAgdGhpcy5lbmRUaXBOb2RlLnBvc2l0aW9uID0gY2MudjMoLTI2NSwgdGhpcy5fb3JpZ2luUG9zLnkgLSBvZmZzZXRZLCAwKTtcbiAgICAgICAgdGhpcy5lbmRUaXBOb2RlLm9wYWNpdHkgPSAwO1xuXG4gICAgICAgIGxldCBlYXNlID0gY2MuZWFzZVNpbmVJbk91dCgpO1xuICAgICAgICBsZXQgbW92ZUFjdCA9IGNjLm1vdmVUbyhhY3RUaW1lLCBjYy52MigtMjY1LCB0aGlzLl9vcmlnaW5Qb3MueSkpLmVhc2luZyhlYXNlKTtcbiAgICAgICAgbGV0IGZhZGVJbkFjdCA9IGNjLmZhZGVJbihhY3RUaW1lKS5lYXNpbmcoZWFzZSk7XG4gICAgICAgIGxldCBzcGF3biA9IGNjLnNwYXduKG1vdmVBY3QsIGZhZGVJbkFjdCk7XG5cbiAgICAgICAgbGV0IGNhbGwgPSBjYy5jYWxsRnVuYygoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmJhY2tSZWREb3QuYWN0aXZlID0gdHJ1ZTtcblxuICAgICAgICAgICAgLy8gaWYgKCF0aGlzLl9pc1J1bkNsb3NlQWN0aW9uKSB7XG4gICAgICAgICAgICAvLyAgICAgU0RLLnNob3dJbnRlcnN0aXRpYWxBZCgpO1xuICAgICAgICAgICAgLy8gfVxuICAgICAgICAgICAgdGhpcy5zZXRJc1J1bm5pbmdBY3Rpb24oZmFsc2UpO1xuICAgICAgICB9KTtcblxuICAgICAgICBsZXQgc2hvd0Fycm93R3VpZGVDYWxsID0gY2MuY2FsbEZ1bmMoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5hcnJvd2d1aWRlTm9kZS5hY3RpdmUgPSB0cnVlO1xuICAgICAgICB9KTtcbiAgICAgICAgbGV0IGFjdFRpbWUyOiBudW1iZXIgPSAyO1xuICAgICAgICBsZXQgc2VxID0gY2Muc2VxdWVuY2Uoc3Bhd24sIGNhbGwsIGNjLnNwYXduKGNjLm1vdmVUbygxLCBjYy52Mih0aGlzLmJhY2tCdG5Ob2RlLnBvc2l0aW9uLngsIHRoaXMuYmFja0J0bk5vZGUucG9zaXRpb24ueSkpLCBjYy5zY2FsZVRvKGFjdFRpbWUyLCAwKSksIHNob3dBcnJvd0d1aWRlQ2FsbCk7XG5cbiAgICAgICAgdGhpcy5lbmRUaXBOb2RlLnJ1bkFjdGlvbihzZXEpO1xuICAgIH1cblxuICAgIHNldFJ1bkNsb3NlQWN0aW9uKHJ1bjogYm9vbGVhbikge1xuICAgICAgICB0aGlzLl9pc1J1bkNsb3NlQWN0aW9uID0gcnVuO1xuICAgIH1cblxuICAgIHJ1bkNsb3NlQWN0aW9uKCkge1xuICAgICAgICB0aGlzLmNsb3NlVmlldygpO1xuICAgICAgICAvLyB0aGlzLnNldElzUnVubmluZ0FjdGlvbih0cnVlKTtcbiAgICAgICAgLy8gdGhpcy5jbG9zZUFjdE5vZGUuc3RvcEFsbEFjdGlvbnMoKTtcbiAgICAgICAgLy8gdGhpcy5jbG9zZUFjdE5vZGUuc2NhbGUgPSAxO1xuICAgICAgICAvLyB0aGlzLmNsb3NlQWN0Tm9kZS5vcGFjaXR5ID0gMDtcbiAgICAgICAgLy8gdGhpcy5jbG9zZUFjdE5vZGUuYWN0aXZlID0gdHJ1ZTtcbiAgICAgICAgLy8gdGhpcy5iYWNrQnRuTm9kZS5hY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgLy8gbGV0IGFjdFRpbWU6IG51bWJlciA9IDE7XG4gICAgICAgIC8vIGxldCB0ZW1wWDogbnVtYmVyID0gMDtcbiAgICAgICAgLy8gbGV0IHRlbXBZOiBudW1iZXIgPSAwO1xuICAgICAgICAvLyBsZXQgdGVtcFI6IG51bWJlciA9IDA7XG4gICAgICAgIC8vIGxldCB0ZW1wUzogbnVtYmVyID0gdGhpcy5ub2RlLndpZHRoIC8gdGhpcy5jbG9zZUFjdE5vZGUud2lkdGg7XG4gICAgICAgIC8vIGxldCBlYXNlUzogY2MuRWFzaW5nID0gY2MuZWFzZVNpbmVPdXQoKTtcbiAgICAgICAgLy8gbGV0IG1vdmVBY3QgPSBjYy5tb3ZlVG8oYWN0VGltZSwgY2MudjIodGVtcFgsIHRlbXBZKSkuZWFzaW5nKGVhc2VTKTtcbiAgICAgICAgLy8gbGV0IGZhZGVJbkFjdCA9IGNjLmZhZGVJbihhY3RUaW1lKS5lYXNpbmcoZWFzZVMpO1xuICAgICAgICAvLyBsZXQgc2NhbGVBY3QgPSBjYy5zY2FsZVRvKGFjdFRpbWUgLyAyLCB0ZW1wUykuZWFzaW5nKGVhc2VTKTtcbiAgICAgICAgLy8gbGV0IHJvdGF0aW9uQWN0ID0gY2Mucm90YXRlVG8oYWN0VGltZSAvIDIsIHRlbXBSKS5lYXNpbmcoZWFzZVMpO1xuICAgICAgICAvLyBsZXQgY2FsbCA9IGNjLmNhbGxGdW5jKCgpID0+IHtcbiAgICAgICAgLy8gICAgIHRoaXMuY2xvc2VWaWV3KCk7XG4gICAgICAgIC8vIH0pO1xuICAgICAgICAvLyBsZXQgc3Bhd25NRiA9IGNjLnNwYXduKG1vdmVBY3QsIGZhZGVJbkFjdCk7XG4gICAgICAgIC8vIGxldCBzcGF3blNSID0gY2Muc3Bhd24oc2NhbGVBY3QsIHJvdGF0aW9uQWN0KTtcbiAgICAgICAgLy8gbGV0IHNlcSA9IGNjLnNlcXVlbmNlKHNwYXduTUYsIHNwYXduU1IsIGNhbGwpO1xuICAgICAgICAvLyB0aGlzLmNsb3NlQWN0Tm9kZS5ydW5BY3Rpb24oc2VxKTtcbiAgICB9XG5cbiAgICBnZXRTY3JvbGxWaWV3Um9vdE5vZGUgPSAoKTogY2MuTm9kZSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLnNjcm9sbFZpZXdSb290Tm9kZTtcbiAgICB9XG5cbiAgICBnZXRTY3JvbGxWaWV3Q29udGVudE5vZGUgPSAoKTogY2MuTm9kZSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRlbnROb2RlO1xuICAgIH1cblxuICAgIGdldENoYXB0ZXJCdG4gPSAoKTogY2MuUHJlZmFiID0+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2hhcHRlckJ0bjtcbiAgICB9XG4gICAgb25Sb2xsQmFja0J0bkNsaWNrKCkge1xuICAgICAgICB0aGlzLnJlc2V0QXV0b1BsYXlCdXR0b25TdGF0ZSgpO1xuICAgICAgICB0aGlzLm9uUm9sbEJhY2tCdG5DYWxsYmFjaygpO1xuICAgIH1cblxuICAgIHNob3dSb2xsQmFja0J0biA9IChpc1Nob3c6IGJvb2xlYW4pID0+IHtcbiAgICAgICAgdGhpcy5yb2xsQmFja0J0bi5hY3RpdmUgPSBpc1Nob3c7XG4gICAgfVxuXG4gICAgb25SZWZyZXNoQWxsU3RhdHVzKCkge1xuICAgICAgICB0aGlzLmNsb3NlQWN0aW9uKCk7XG4gICAgfVxuXG4gICAgb25SZXZpZXdCdXR0b25DbGljaygpIHtcbiAgICAgICAgdGhpcy5yZXNldEF1dG9QbGF5QnV0dG9uU3RhdGUoKTtcbiAgICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuX2F1dG9QbGF5VGltZXIpO1xuICAgICAgICB0aGlzLm9uUmV2aWV3QnV0dG9uQ2xpY2tDYWxsYmFjaygpO1xuICAgIH1cblxuICAgIG9uU2tpcEJ1dHRvbkNsaWNrKCkge1xuICAgICAgICB0aGlzLl9za2lwQnV0dG9uU3RhdGUgPSB0aGlzLl9za2lwQnV0dG9uU3RhdGUgPT0gQXV0b1BsYXlTdGF0ZS5DbG9zZSA/IEF1dG9QbGF5U3RhdGUuQXV0b1BsYXkgOiBBdXRvUGxheVN0YXRlLkNsb3NlO1xuICAgICAgICB0aGlzLl9hdXRvUGxheVN0YXRlID0gdGhpcy5fc2tpcEJ1dHRvblN0YXRlO1xuICAgICAgICBpZiAodGhpcy5fYXV0b1BsYXlTdGF0ZSA9PSBBdXRvUGxheVN0YXRlLkF1dG9QbGF5KSB7XG4gICAgICAgICAgICB0aGlzLl9hdXRvUGxheVNwZWVkID0gMjA7XG4gICAgICAgICAgICB0aGlzLnN0YXJ0QXV0b1BsYXlUaW1lcih0cnVlKTtcbiAgICAgICAgICAgIHRoaXMuY2hhbmdlU2tpcEJ1dHRvblN0YXRlKHRoaXMuX2F1dG9QbGF5U3RhdGUpO1xuICAgICAgICAgICAgdGhpcy5jaGFuZ2VBdXRvUGxheUJ1dHRvblN0YXRlKEF1dG9QbGF5U3RhdGUuQ2xvc2UpO1xuICAgICAgICAgICAgdGhpcy5fYXV0b1BsYXlCdXR0b25TdGF0ZSA9IEF1dG9QbGF5U3RhdGUuQ2xvc2U7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnJlc2V0QXV0b1BsYXlCdXR0b25TdGF0ZSgpO1xuICAgICAgICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuX2F1dG9QbGF5VGltZXIpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25BdXRvUGxheUJ1dHRvbkNsaWNrKCkge1xuICAgICAgICB0aGlzLl9hdXRvUGxheUJ1dHRvblN0YXRlID0gdGhpcy5fYXV0b1BsYXlCdXR0b25TdGF0ZSA9PSBBdXRvUGxheVN0YXRlLkNsb3NlID8gQXV0b1BsYXlTdGF0ZS5BdXRvUGxheSA6IEF1dG9QbGF5U3RhdGUuQ2xvc2U7XG4gICAgICAgIHRoaXMuX2F1dG9QbGF5U3RhdGUgPSB0aGlzLl9hdXRvUGxheUJ1dHRvblN0YXRlO1xuICAgICAgICBpZiAodGhpcy5fYXV0b1BsYXlTdGF0ZSA9PSBBdXRvUGxheVN0YXRlLkF1dG9QbGF5KSB7XG4gICAgICAgICAgICB0aGlzLl9hdXRvUGxheVNwZWVkID0gMTtcbiAgICAgICAgICAgIHRoaXMuc3RhcnRBdXRvUGxheVRpbWVyKHRydWUpO1xuICAgICAgICAgICAgdGhpcy5jaGFuZ2VTa2lwQnV0dG9uU3RhdGUoQXV0b1BsYXlTdGF0ZS5DbG9zZSk7XG4gICAgICAgICAgICB0aGlzLmNoYW5nZUF1dG9QbGF5QnV0dG9uU3RhdGUodGhpcy5fYXV0b1BsYXlTdGF0ZSk7XG4gICAgICAgICAgICB0aGlzLl9za2lwQnV0dG9uU3RhdGUgPSBBdXRvUGxheVN0YXRlLkNsb3NlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5yZXNldEF1dG9QbGF5QnV0dG9uU3RhdGUoKTtcbiAgICAgICAgICAgIGNsZWFyVGltZW91dCh0aGlzLl9hdXRvUGxheVRpbWVyKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
\ No newline at end of file
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0cy9zY3JpcHQvZ2FtZS91aS92aWV3L2ltcGwvZGF0aW5nL0RhdGluZ1NjZW5lVmlld0ltcGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsMkVBQW9FO0FBQ3BFLGdFQUFrRjtBQUNsRiw0RUFBMEQ7QUFDMUQseUVBQTJGO0FBQzNGLHlEQUE2QztBQUM3Qyw0RUFBcUU7QUFDckUsZ0dBQXlGO0FBQ3pGLDBEQUF1RDtBQUN2RCx5RUFBc0U7QUFFdEUsTUFBTSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLENBQUMsVUFBVSxDQUFDO0FBRTVDLElBQVksYUFHWDtBQUhELFdBQVksYUFBYTtJQUNyQixtREFBUyxDQUFBO0lBQ1QseURBQVEsQ0FBQTtBQUNaLENBQUMsRUFIVyxhQUFhLEdBQWIscUJBQWEsS0FBYixxQkFBYSxRQUd4QjtBQUVELElBQVksWUFHWDtBQUhELFdBQVksWUFBWTtJQUNwQiwrQ0FBUSxDQUFBO0lBQ1IscURBQU8sQ0FBQTtBQUNYLENBQUMsRUFIVyxZQUFZLEdBQVosb0JBQVksS0FBWixvQkFBWSxRQUd2QjtBQUlEO0lBQUEsSUFBYSxtQkFBbUIsR0FBaEMsTUFBYSxtQkFBb0IsU0FBUSxtQkFBTTtRQUEvQzs7WUFDSSx5QkFBeUI7WUFFakIscUJBQWdCLEdBQUcsNEJBQVcsQ0FBQztZQUUvQiwyQkFBc0IsR0FBRyw0QkFBVyxDQUFDO1lBRXJDLG1CQUFjLEdBQUcsNEJBQVcsQ0FBQztZQUU3QixzQkFBaUIsR0FBRyw0QkFBVyxDQUFDO1lBRWhDLG9CQUFlLEdBQUcsMEJBQVMsQ0FBQztZQUU1QixtQkFBYyxHQUFHLDBCQUFTLENBQUM7WUFFM0IsdUJBQWtCLEdBQUcsMEJBQVMsQ0FBQztZQUUvQixlQUFVLEdBQUcsMEJBQVMsQ0FBQztZQUd2QixnQkFBVyxHQUFHLDBCQUFTLENBQUM7WUFHeEIsZUFBVSxHQUFHLDBCQUFTLENBQUM7WUFHdkIsbUJBQWMs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LEVBQUUsQ0FBQyxJQUFJLENBQUM7MkRBQ2E7SUFHL0I7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQzsrREFDaUI7SUFHbkM7UUFEQyxRQUFRLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQzs2REFDZTtJQUduQztRQURDLFFBQVEsQ0FBQyxvQkFBVSxDQUFDOzJEQUMrQztJQUdwRTtRQURDLFFBQVEsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDOzJEQUNhO0lBRWpDO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUM7K0RBQ2lCO0lBRW5DO1FBREMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUM7bUVBQ3FCO0lBRXZDO1FBREMsUUFBUSxDQUFDLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxDQUFDO29FQUNNO0lBekN4QixtQkFBbUI7UUFGL0IsT0FBTztRQUNQLGdDQUFPLENBQUMscUNBQW1CLEVBQUUsMkJBQTJCLENBQUM7T0FDN0MsbUJBQW1CLENBNmMvQjtJQUFELDBCQUFDO0tBQUE7QUE3Y1ksa0RBQW1CIiwiZmlsZSI6IiIsInNvdXJjZVJvb3QiOiIvIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ0NWaWV3IH0gZnJvbSBcIi4uLy4uLy4uLy4uLy4uL2NvbW1vbi9jbGFzc2Jhc2UvQ0NWaWV3QmFzZVwiO1xuaW1wb3J0IHsgRGF0aW5nU2NlbmVWaWV3LCBEYXRpbmdTY2VuZVZpZXdUeXBlIH0gZnJvbSBcIi4uLy4uL3R5cGUvRGF0aW5nU2NlbmVWaWV3XCI7XG5pbXBvcnQgeyBSZWdWaWV3IH0gZnJvbSBcIi4uLy4uLy4uL1ByZXNlbnRlckNDVmlld0ZhY3RvcnlcIjtcbmltcG9ydCB7IER1bW15U3ByaXRlLCBEdW1teU5vZGUsIER1bW15UHJlZmFiIH0gZnJvbSBcIi4uLy4uLy4uLy4uLy4uL2NvbW1vbi9DQ0R1bW15T2JqZWN0c1wiO1xuaW1wb3J0IHsgUmVzVXRpbHMgfSBmcm9tIFwic2ltYmEtY2MtcmVzdXRpbHNcIjtcbmltcG9ydCBUeXBld3JpdGVyIGZyb20gXCIuLi8uLi8uLi8uLi8uLi9jb21tb24vY29tcG9uZW50cy9UeXBld3JpdGVyXCI7XG5pbXBvcnQgUG9ydHJhaXRGaXhDb21wb25lbnQgZnJvbSBcIi4uLy4uLy4uLy4uLy4uL2NvbW1vbi9jb21wb25lbnRzL1BvcnRyYWl0Rml4Q29tcG9uZW50XCI7XG5pbXBvcnQgeyBHYW1lQ29uZmlnIH0gZnJvbSBcIi4uLy4uLy4uLy4uLy4uL0dhbWVDb25maWdcIjtcbmltcG9ydCB7IEdhbWVNb2RlbE1hbmFnZXIgfSBmcm9tIFwiLi4vLi4vLi4vLi4vbW9kZWwvR2FtZU1vZGVsTWFuYWdlclwiO1xuXG5jb25zdCB7IGNjY2xhc3MsIHByb3BlcnR5IH0gPSBjYy5fZGVjb3JhdG9yO1xuXG5leHBvcnQgZW51bSBBdXRvUGxheVN0YXRlIHtcbiAgICBDbG9zZSA9IDAsXG4gICAgQXV0b1BsYXlcbn1cblxuZXhwb3J0IGVudW0gQXV0b1BsYXlUeXBlIHtcbiAgICBTa2lwID0gMCxcbiAgICBTcGVlZHgxXG59XG5cbkBjY2NsYXNzXG5AUmVnVmlldyhEYXRpbmdTY2VuZVZpZXdUeXBlLCBcInByZWZhYi91aS9EYXRpbmdTY2VuZVZpZXdcIilcbmV4cG9ydCBjbGFzcyBEYXRpbmdTY2VuZVZpZXdJbXBsIGV4dGVuZHMgQ0NWaWV3IGltcGxlbWVudHMgRGF0aW5nU2NlbmVWaWV3IHtcbiAgICAvLyNyZWdpb24gZWRpdG9yIGJpbmRpbmdzXG4gICAgQHByb3BlcnR5KGNjLlNwcml0ZSlcbiAgICBwcml2YXRlIGJhY2tncm91bmRTcHJpdGUgPSBEdW1teVNwcml0ZTtcbiAgICBAcHJvcGVydHkoY2MuU3ByaXRlKVxuICAgIHByaXZhdGUgZWZmZWN0QmFja2dyb3VuZFNwcml0ZSA9IER1bW15U3ByaXRlO1xuICAgIEBwcm9wZXJ0eShjYy5TcHJpdGUpXG4gICAgcHJpdmF0ZSBwb3J0cmFpdFNwcml0ZSA9IER1bW15U3ByaXRlO1xuICAgIEBwcm9wZXJ0eShjYy5TcHJpdGUpXG4gICAgcHJpdmF0ZSBzZWxmU21hbGxQb3J0cmFpdCA9IER1bW15U3ByaXRlO1xuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxuICAgIHByaXZhdGUgb3RoZXJEaWFsb2dOb2RlID0gRHVtbXlOb2RlO1xuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxuICAgIHByaXZhdGUgc2VsZkRpYWxvZ05vZGUgPSBEdW1teU5vZGU7XG4gICAgQHByb3BlcnR5KGNjLk5vZGUpXG4gICAgcHJpdmF0ZSBuYXJyYXRvckRpYWxvZ05vZGUgPSBEdW1teU5vZGU7XG4gICAgQHByb3BlcnR5KGNjLk5vZGUpXG4gICAgcHJpdmF0ZSBiYWNrUmVkRG90ID0gRHVtbXlOb2RlO1xuXG4gICAgQHByb3BlcnR5KGNjLk5vZGUpXG4gICAgcHJpdmF0ZSBiYWNrQnRuTm9kZSA9IER1bW15Tm9kZTtcblxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxuICAgIHByaXZhdGUgZW5kVGlwTm9kZSA9IER1bW15Tm9kZTtcblxuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxuICAgIHByaXZhdGUgYXJyb3dndWlkZU5vZGUgPSBEdW1teU5vZGU7XG5cbiAgICBAcHJvcGVydHkoY2MuU3ByaXRlKVxuICAgIHByaXZhdGUgb3RoZXJOYW1lU3ByID0gRHVtbXlTcHJpdGU7XG5cbiAgICBAcHJvcGVydHkoVHlwZXdyaXRlcilcbiAgICBwcml2YXRlIHR5cGV3cml0ZXI6IFR5cGV3cml0ZXIgPSB1bmRlZmluZWQgYXMgdW5rbm93biBhcyBUeXBld3JpdGVyO1xuXG4gICAgQHByb3BlcnR5KGNjLlByZWZhYilcbiAgICBwcml2YXRlIGNoYXB0ZXJCdG4gPSBEdW1teVByZWZhYjtcbiAgICBAcHJvcGVydHkoY2MuTm9kZSlcbiAgICBwcml2YXRlIHNraXBCdXR0b25Ob2RlID0gRHVtbXlOb2RlO1xuICAgIEBwcm9wZXJ0eShjYy5Ob2RlKVxuICAgIHByaXZhdGUgYXV0b1BsYXlCdXR0b25Ob2RlID0gRHVtbXlOb2RlO1xuICAgIEBwcm9wZXJ0eShbY2MuU3ByaXRlRnJhbWVdKVxuICAgIHByaXZhdGUgYXV0b1BsYXlTcHJpdGVGcmFtZSA9IFtdO1xuXG5cbiAgICBwcml2YXRlIF9vcmlnaW5Qb3M6IGNjLlZlYzMgPSBjYy52MygtMjY1LCA2OCwgMCk7XG5cbiAgICBwcml2YXRlIF9pc1J1bkNsb3NlQWN0aW9uOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBwcml2YXRlIF9pc1J1bm5pbmdBY3Rpb246IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIHByaXZhdGUgX2NvbnRlbnRUZXh0OiBzdHJpbmcgPSBcIlwiO1xuICAgIHByaXZhdGUgX2F1dG9QbGF5VGltZXI6IG51bWJlciA9IC0xO1xuICAgIHByaXZhdGUgX3NraXBCdXR0b25TdGF0ZTogbnVtYmVyID0gMDtcbiAgICBwcml2YXRlIF9hdXRvUGxheUJ1dHRvblN0YXRlOiBudW1iZXIgPSAwO1xuICAgIHByaXZhdGUgX2F1dG9QbGF5U3RhdGU6IG51bWJlciA9IC0xO1xuICAgIHByaXZhdGUgX2F1dG9QbGF5U3BlZWQ6IG51bWJlciA9IDE7XG4gICAgcHJpdmF0ZSBfdGV4dFR5cGVySXNPdmVyOiBib29sZWFuID0gdHJ1ZTtcbiAgICBwcml2YXRlIF9pc1NwZWNpYWxFZmZlY3Q6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIOaYr+WQpuaYvuekuui/lOWbnuaMiemSrlxuICAgICAqIEBwYXJhbSBzaG93IGJvb2xcbiAgICAgKi9cbiAgICBzaG93QmFja0J0bihzaG93OiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuYmFja0J0bk5vZGUhLmFjdGl2ZSA9IHNob3c7XG4gICAgICAgIGlmIChzaG93KSB7XG4gICAgICAgICAgICB0aGlzLmJhY2tCdG5Ob2RlLmdldENvbXBvbmVudChjYy5XaWRnZXQpLnVwZGF0ZUFsaWdubWVudCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgY2xvc2VBY3Rpb24oKSB7XG4gICAgICAgIEdhbWVNb2RlbE1hbmFnZXIuc2V0SXNNYWluUGxvdFNjZW5lVHlwZShmYWxzZSk7XG4gICAgICAgIEdhbWVDb25maWcuaXNWZXJiID0gZmFsc2U7XG4gICAgICAgIC8v5riF6Zmk6Ieq5Yqo5pKt5pS+6K6h5pe25ZmoXG4gICAgICAgIGNsZWFyVGltZW91dCh0aGlzLl9hdXRvUGxheVRpbWVyKTtcbiAgICAgICAgaWYgKHRoaXMuX2lzUnVuQ2xvc2VBY3Rpb24pIHtcbiAgICAgICAgICAgIHRoaXMucnVuQ2xvc2VBY3Rpb24oKTtcbiAgICAgICAgfSBlbHNlIGlmICghdGhpcy5faXNSdW5uaW5nQWN0aW9uKSB7XG4gICAgICAgICAgICB0aGlzLmNsb3NlVmlldygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc2V0SXNSdW5uaW5nQWN0aW9uID0gKGlzUnVubmluZzogYm9vbGVhbikgPT4ge1xuICAgICAgICB0aGlzLl9pc1J1bm5pbmdBY3Rpb24gPSBpc1J1bm5pbmc7XG4gICAgfVxuXG4gICAgY2xvc2VWaWV3KCkge1xuICAgICAgICB0aGlzLmJhY2tncm91bmRTcHJpdGUuc3ByaXRlRnJhbWUgPSB1bmRlZmluZWQgYXMgYW55O1xuICAgICAgICB0aGlzLnBvcnRyYWl0U3ByaXRlLnNwcml0ZUZyYW1lID0gdW5kZWZpbmVkIGFzIGFueTtcbiAgICAgICAgdGhpcy5zZWxmU21hbGxQb3J0cmFpdC5zcHJpdGVGcmFtZSA9IHVuZGVmaW5lZCBhcyBhbnk7XG4gICAgICAgIHRoaXMub3RoZXJEaWFsb2dOb2RlLmFjdGl2ZSA9IGZhbHNlO1xuICAgICAgICB0aGlzLnNlbGZEaWFsb2dOb2RlLmFjdGl2ZSA9IGZhbHNlO1xuICAgICAgICB0aGlzLm5hcnJhdG9yRGlhbG9nTm9kZS5hY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5iYWNrUmVkRG90LmFjdGl2ZSA9IGZhbHNlO1xuICAgICAgICB0aGlzLmJhY2tCdG5Ob2RlLmFjdGl2ZSA9IHRydWU7XG5cbiAgICAgICAgdGhpcy5lbmRUaXBOb2RlLnN0b3BBbGxBY3Rpb25zKCk7XG4gICAgICAgIHRoaXMuZW5kVGlwTm9kZS5hY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5lbmRUaXBOb2RlLnBvc2l0aW9uID0gdGhpcy5fb3JpZ2luUG9zO1xuICAgICAgICB0aGlzLmVuZFRpcE5vZGUub3BhY2l0eSA9IDI1NTtcblxuICAgICAgICB0aGlzLl9pc1J1bkNsb3NlQWN0aW9uID0gZmFsc2U7XG4gICAgICAgIC8vIHRoaXMuY2xvc2VBY3ROb2RlLmFjdGl2ZSA9IGZhbHNlO1xuICAgICAgICB0aGlzLl9pc1J1bm5pbmdBY3Rpb24gPSBmYWxzZTtcbiAgICAgICAgdGhpcy5hcnJvd2d1aWRlTm9kZS5hY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgIH1cbiAgICAvLyNlbmRyZWdpb25cblxuICAgIGNvbXBsZXRlUGxvdENhbGxiYWNrOiAoKSA9PiBQcm9taXNlPHZvaWQ+O1xuICAgIG9uUmV2aWV3QnV0dG9uQ2xpY2tDYWxsYmFjazogKCkgPT4gdm9pZDtcblxuICAgIG9uRW5hYmxlKCkge1xuICAgICAgICB0aGlzLnJlc2V0QXV0b1BsYXlCdXR0b25TdGF0ZSgpO1xuICAgICAgICB0aGlzLm5vZGUub24oY2MuTm9kZS5FdmVudFR5cGUuVE9VQ0hfRU5ELCB0aGlzLnRvdWNoRW5kSGFuZGxlciwgdGhpcyk7XG4gICAgfVxuXG4gICAgb25EaXNhYmxlKCkge1xuICAgICAgICB0aGlzLm5vZGUub2ZmKGNjLk5vZGUuRXZlbnRUeXBlLlRPVUNIX0VORCwgdGhpcy50b3VjaEVuZEhhbmRsZXIsIHRoaXMpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOiDjOaZr+ebkeWQrOWbnuiwg1xuICAgICAqL1xuICAgIHRvdWNoRW5kSGFuZGxlciA9IGFzeW5jICgpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuX2F1dG9QbGF5U3RhdGUgPT0gQXV0b1BsYXlTdGF0ZS5DbG9zZSkge1xuICAgICAgICAgICAgaWYgKHRoaXMudHlwZXdyaXRlci5nZXRTaG93aW5nU3RyaW5nKCkgPT0gXCJcIikge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmNvbXBsZXRlUGxvdENhbGxiYWNrKSBhd2FpdCB0aGlzLmNvbXBsZXRlUGxvdENhbGxiYWNrKCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMudHlwZXdyaXRlci5zdG9wVHlwZXJTaG93U3RyaW5nKClcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKuW8leWvvOi/lOWbniAqL1xuICAgIGd1aWRlQmFjaygpIHtcbiAgICAgICAgdGhpcy5ydW5FbmRUaXBBY3Rpb24oKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDorr7nva7nuqbkvJrlnLrmma/lhoXlrrlcbiAgICAgKiBAcGFyYW0gaXNTZWxmIOaYr+WQpuaYr+iHqui6q1xuICAgICAqIEBwYXJhbSB0ZXh0IOaWh+acrOWGheWuuVxuICAgICAqIEBwYXJhbSBuYW1lU3ByIFxuICAgICAqIEBwYXJhbSBuYW1lIOWIq+S6uuWQjeWtl1xuICAgICAqIEBwYXJhbSBwb3J0cmFpdEltZyDnq4vnu5jlm77lkI3lrZdcbiAgICAgKiBAcGFyYW0gb3RoZXJQb3J0cmFpdEltZyDlhbbku5bnq4vnu5jlm77lkI3lrZdcbiAgICAgKiBAcGFyYW0gc2hvd1JvdWdlIOaYr+WQpuaYvuekuuWPo+e6olxuICAgICAqL1xuICAgIGFzeW5jIHNldENvbnRlbnQoaXNTZWxmOiBib29sZWFuLCB0ZXh0OiBzdHJpbmcsIG5hbWVTcHI6IHN0cmluZywgbmFtZT86IHN0cmluZywgcG9ydHJhaXRJbWc/OiBzdHJpbmcsIG90aGVyUG9ydHJhaXRJbWc/OiBzdHJpbmcsIHNob3dSb3VnZT86IGJvb2xlYW4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgbGV0IHByb21pc2VzOiBQcm9taXNlPGFueT5bXSA9IFtdO1xuICAgICAgICBpZiAoISgoaXNTZWxmICYmIG90aGVyUG9ydHJhaXRJbWcpIHx8IHBvcnRyYWl0SW1nKSkgeyAvLyDpmLLmraLliIfmjaLov4fnqIvkuK3pl6pcbiAgICAgICAgICAgIHRoaXMucG9ydHJhaXRTcHJpdGUuc3ByaXRlRnJhbWUgPSB1bmRlZmluZWQgYXMgYW55O1xuICAgICAgICB9XG4gICAgICAgIGlmIChwb3J0cmFpdEltZykge1xuICAgICAgICAgICAgaWYgKGlzU2VsZikge1xuICAgICAgICAgICAgICAgIGxldCBwb3J0cmFpdFBhdGggPSBwb3J0cmFpdEltZy5zdWJzdHJpbmcoMCwgcG9ydHJhaXRJbWcubGFzdEluZGV4T2YoXCIvXCIpICsgMSk7XG4gICAgICAgICAgICAgICAgbGV0IGZhY2VJZCA9IHBvcnRyYWl0SW1nLnN1YnN0cmluZyhwb3J0cmFpdEltZy5sYXN0SW5kZXhPZihcIi9cIikgKyAxLCBwb3J0cmFpdEltZy5sZW5ndGgpO1xuICAgICAgICAgICAgICAgIHBvcnRyYWl0SW1nID0gcG9ydHJhaXRQYXRoICsgXCIxL1wiICsgZmFjZUlkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcHJvbWlzZXMucHVzaChSZXNVdGlscy5sb2FkUmVzKHBvcnRyYWl0SW1nLCBjYy5TcHJpdGVGcmFtZSkudGhlbigoc2YpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5ub2RlLmFjdGl2ZSkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoaXNTZWxmKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNlbGZTbWFsbFBvcnRyYWl0LnNwcml0ZUZyYW1lID0gc2Y7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnBvcnRyYWl0U3ByaXRlLnNwcml0ZUZyYW1lID0gc2Y7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZpeFNjcmVlblNpemUoKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaXNTZWxmICYmIG90aGVyUG9ydHJhaXRJbWcpIHtcbiAgICAgICAgICAgIHByb21pc2VzLnB1c2goUmVzVXRpbHMubG9hZFJlcyhvdGhlclBvcnRyYWl0SW1nLCBjYy5TcHJpdGVGcmFtZSkudGhlbigoc2YpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnBvcnRyYWl0U3ByaXRlLnNwcml0ZUZyYW1lID0gc2Y7XG4gICAgICAgICAgICAgICAgdGhpcy5maXhTY3JlZW5TaXplKCk7XG4gICAgICAgICAgICB9KSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG5hbWVTcHIgJiYgIWlzU2VsZiAmJiBcIlwiICE9PSBuYW1lU3ByLnRyaW0oKSkge1xuICAgICAgICAgICAgcHJvbWlzZXMucHVzaChSZXNVdGlscy5sb2FkUmVzKG5hbWVTcHIsIGNjLlNwcml0ZUZyYW1lKS50aGVuKChzZikgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMub3RoZXJOYW1lU3ByLnNwcml0ZUZyYW1lID0gc2Y7XG4gICAgICAgICAgICB9KSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5vdGhlckRpYWxvZ05vZGUuYWN0aXZlID0gZmFsc2U7XG4gICAgICAgIHRoaXMuc2VsZkRpYWxvZ05vZGUuYWN0aXZlID0gZmFsc2U7XG4gICAgICAgIHRoaXMubmFycmF0b3JEaWFsb2dOb2RlLmFjdGl2ZSA9IGZhbHNlO1xuICAgICAgICAvLyBsZXQgcm91Z2VOb2RlID0gdGhpcy5zZWxmRGlhbG9nTm9kZS5nZXRDaGlsZEJ5TmFtZShcInJvdWdlXCIpO1xuICAgICAgICAvLyBsZXQgcGVyVGltZSA9IDAuMDU7XG4gICAgICAgIGlmICh0ZXh0KSB7XG4gICAgICAgICAgICAvLyBsZXQgdGltZSA9IHBlclRpbWUgKiB0ZXh0Lmxlbmd0aDtcbiAgICAgICAgICAgIHRoaXMuX2NvbnRlbnRUZXh0ID0gdGV4dDtcbiAgICAgICAgICAgIHRoaXMuX3RleHRUeXBlcklzT3ZlciA9IGZhbHNlO1xuICAgICAgICAgICAgaWYgKGlzU2VsZikgeyAvLyDoh6rlt7FcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGZEaWFsb2dOb2RlLmFjdGl2ZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgLy8gdGhpcy5zZWxmRGlhbG9nTm9kZS5jaGlsZHJlblswXS5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9IG5hbWUhO1xuICAgICAgICAgICAgICAgIC8vIHRoaXMuc2VsZkRpYWxvZ05vZGUuY2hpbGRyZW5bMV0uZ2V0Q29tcG9uZW50KGNjLlJpY2hUZXh0KS5zdHJpbmcgPSB0ZXh0O1xuICAgICAgICAgICAgICAgIHRoaXMudHlwZXdyaXRlci5zaG93UmljaFRleHRUeXBlcih0aGlzLnNlbGZEaWFsb2dOb2RlLmNoaWxkcmVuWzBdLmdldENvbXBvbmVudChjYy5SaWNoVGV4dCksIHRleHQsXG4gICAgICAgICAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX3RleHRUeXBlcklzT3ZlciA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIH0sICgpID0+IHsgfSwgdGhpcy5fYXV0b1BsYXlTcGVlZFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgLy8gcHJvbWlzZXMucHVzaChBbmltYXRpb25VdGlscy5BY3Rpb25UeXBlV3JpdGVyKHRoaXMuc2VsZkRpYWxvZ05vZGUuY2hpbGRyZW5bMV0uZ2V0Q29tcG9uZW50KGNjLlJpY2hUZXh0KSwgdGV4dCwgdGltZSkpO1xuICAgICAgICAgICAgICAgIC8vIGlmIChyb3VnZU5vZGUpIHtcbiAgICAgICAgICAgICAgICAvLyAgICAgcm91Z2VOb2RlLmFjdGl2ZSA9IHNob3dSb3VnZSA/IHRydWUgOiBmYWxzZTtcbiAgICAgICAgICAgICAgICAvLyB9XG4gICAgICAgICAgICB9IGVsc2UgaWYgKG5hbWUpIHsgLy8g5Yir5Lq6XG4gICAgICAgICAgICAgICAgdGhpcy5vdGhlckRpYWxvZ05vZGUuYWN0aXZlID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAvLyB0aGlzLm90aGVyRGlhbG9nTm9kZS5jaGlsZHJlblswXS5nZXRDb21wb25lbnQoY2MuTGFiZWwpLnN0cmluZyA9IG5hbWUhO1xuICAgICAgICAgICAgICAgIC8vIHRoaXMub3RoZXJEaWFsb2dOb2RlLmNoaWxkcmVuWzFdLmdldENvbXBvbmVudChjYy5SaWNoVGV4dCkuc3RyaW5nID0gdGV4dDtcbiAgICAgICAgICAgICAgICB0aGlzLnR5cGV3cml0ZXIuc2hvd1JpY2hUZXh0VHlwZXIodGhpcy5vdGhlckRpYWxvZ05vZGUuY2hpbGRyZW5bMF0uZ2V0Q29tcG9uZW50KGNjLlJpY2hUZXh0KSwgdGV4dCxcbiAgICAgICAgICAgICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fdGV4dFR5cGVySXNPdmVyID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgfSwgKCkgPT4geyB9LCB0aGlzLl9hdXRvUGxheVNwZWVkXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAvLyBwcm9taXNlcy5wdXNoKEFuaW1hdGlvblV0aWxzLkFjdGlvblR5cGVXcml0ZXIodGhpcy5vdGhlckRpYWxvZ05vZGUuY2hpbGRyZW5bMV0uZ2V0Q29tcG9uZW50KGNjLlJpY2hUZXh0KSwgdGV4dCwgdGltZSkpO1xuICAgICAgICAgICAgfSBlbHNlIHsgLy8g5peB55m9XG4gICAgICAgICAgICAgICAgdGhpcy5uYXJyYXRvckRpYWxvZ05vZGUuYWN0aXZlID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAvLyB0aGlzLm5hcnJhdG9yRGlhbG9nTm9kZS5jaGlsZHJlblswXS5nZXRDb21wb25lbnQoY2MuUmljaFRleHQpLnN0cmluZyA9IHRleHQ7XG4gICAgICAgICAgICAgICAgdGhpcy50eXBld3JpdGVyLnNob3dSaWNoVGV4dFR5cGVyKHRoaXMubmFycmF0b3JEaWFsb2dOb2RlLmNoaWxkcmVuWzBdLmdldENvbXBvbmVudChjYy5SaWNoVGV4dCksIHRleHQsXG4gICAgICAgICAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX3RleHRUeXBlcklzT3ZlciA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIH0sICgpID0+IHsgfSwgdGhpcy5fYXV0b1BsYXlTcGVlZFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgLy8gcHJvbWlzZXMucHVzaChBbmltYXRpb25VdGlscy5BY3Rpb25UeXBlV3JpdGVyKHRoaXMubmFycmF0b3JEaWFsb2dOb2RlLmNoaWxkcmVuWzBdLmdldENvbXBvbmVudChjYy5SaWNoVGV4dCksIHRleHQsIHRpbWUpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0cnkge1xuICAgICAgICAgICAgYXdhaXQgUHJvbWlzZS5hbGwocHJvbWlzZXMpO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKGUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcmVzZXRBdXRvUGxheUJ1dHRvblN0YXRlKCkge1xuICAgICAgICB0aGlzLl9hdXRvUGxheVNwZWVkID0gMTtcbiAgICAgICAgdGhpcy5fYXV0b1BsYXlTdGF0ZSA9IEF1dG9QbGF5U3RhdGUuQ2xvc2U7XG4gICAgICAgIHRoaXMuX3NraXBCdXR0b25TdGF0ZSA9IEF1dG9QbGF5U3RhdGUuQ2xvc2U7XG4gICAgICAgIHRoaXMuX2F1dG9QbGF5QnV0dG9uU3RhdGUgPSBBdXRvUGxheVN0YXRlLkNsb3NlO1xuICAgICAgICB0aGlzLmNoYW5nZVNraXBCdXR0b25TdGF0ZSh0aGlzLl9hdXRvUGxheVN0YXRlKTtcbiAgICAgICAgdGhpcy5jaGFuZ2VBdXRvUGxheUJ1dHRvblN0YXRlKHRoaXMuX2F1dG9QbGF5U3RhdGUpO1xuICAgIH1cblxuICAgIGNoYW5nZVNraXBCdXR0b25TdGF0ZShzdGF0ZTogQXV0b1BsYXlTdGF0ZSkge1xuICAgICAgICBsZXQgc2tpcExhYmVsID0gdGhpcy5za2lwQnV0dG9uTm9kZS5nZXRDb21wb25lbnRJbkNoaWxkcmVuKGNjLlNwcml0ZSk7XG4gICAgICAgIGlmIChzdGF0ZSA9PSBBdXRvUGxheVN0YXRlLkNsb3NlKSB7XG4gICAgICAgICAgICBza2lwTGFiZWwuc3ByaXRlRnJhbWUgPSB0aGlzLmF1dG9QbGF5U3ByaXRlRnJhbWVbMl07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBza2lwTGFiZWwuc3ByaXRlRnJhbWUgPSB0aGlzLmF1dG9QbGF5U3ByaXRlRnJhbWVbM107XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBjaGFuZ2VBdXRvUGxheUJ1dHRvblN0YXRlKHN0YXRlOiBBdXRvUGxheVN0YXRlKSB7XG4gICAgICAgIGxldCBhdXRvUGxheVNwcml0ZSA9IHRoaXMuYXV0b1BsYXlCdXR0b25Ob2RlLmdldENvbXBvbmVudEluQ2hpbGRyZW4oY2MuU3ByaXRlKTtcbiAgICAgICAgaWYgKHN0YXRlID09IEF1dG9QbGF5U3RhdGUuQ2xvc2UpIHtcbiAgICAgICAgICAgIGF1dG9QbGF5U3ByaXRlLnNwcml0ZUZyYW1lID0gdGhpcy5hdXRvUGxheVNwcml0ZUZyYW1lWzBdO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgYXV0b1BsYXlTcHJpdGUuc3ByaXRlRnJhbWUgPSB0aGlzLmF1dG9QbGF5U3ByaXRlRnJhbWVbMV07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDlvIDlp4voh6rliqjmkq3mlL7orqHml7blmahcbiAgICAgKiBAcGFyYW0gc3RhcnROb3cg5piv5ZCm5LiN6L+b6KGM5bu25pe277yM56uL5Y2z5omn6KGM5LiL5LiA5q2l77yM6YCC55So5LqO546p5a6254K55Ye76Ieq5Yqo5pKt5pS+5oyJ6ZKu5LmL5ZCO77yM5peg6ZyA562J5b6FXG4gICAgICovXG4gICAgc3RhcnRBdXRvUGxheVRpbWVyKHN0YXJ0Tm93OiBib29sZWFuID0gZmFsc2UpIHtcbiAgICAgICAgbGV0IGludGVydmFsOiBudW1iZXIgPSAwO1xuICAgICAgICBpZiAoIXN0YXJ0Tm93KSB7XG4gICAgICAgICAgICAvL+aXtumXtOmXtOmalOeahOiuoeeul+aWueazle+8jOWmguaenHN0YXJ0Tm935Li6dHJ1ZeeahOivne+8jOS4jei/m+ihjOW7tuaXtu+8jOaXtumXtOS4ujDvvIzlkKbliJnvvJpcbiAgICAgICAgICAgIC8v77yI5paH5pys6ZW/5bqmICogNTBtcyAvIHRoaXMuX2F1dG9QbGF5U3BlZWTvvInooajnpLrmlofmnKzotbDlrozmiZPlrZfmnLrmlYjmnpzmiYDpnIDopoHnmoTml7bpl7RcbiAgICAgICAgICAgIC8v77yI5paH5pys6ZW/5bqmICogNjBtcyAvIHRoaXMuX2F1dG9QbGF5U3BlZWTvvInooajnpLrmlofmnKzlrozlhajlsZXnpLrkuYvlkI7lsZXnpLrlgZznlZnnmoTml7bpl7RcbiAgICAgICAgICAgIGludGVydmFsID0gKCh0aGlzLl9jb250ZW50VGV4dC5sZW5ndGggKiA1MCkgLyB0aGlzLl9hdXRvUGxheVNwZWVkKSArICgodGhpcy5fY29udGVudFRleHQubGVuZ3RoICogNjApIC8gdGhpcy5fYXV0b1BsYXlTcGVlZCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fYXV0b1BsYXlUaW1lciA9IHdpbmRvdy5zZXRUaW1lb3V0KGFzeW5jICgpID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLl9hdXRvUGxheVN0YXRlID09IEF1dG9QbGF5U3RhdGUuQXV0b1BsYXkpIHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5fdGV4dFR5cGVySXNPdmVyICYmICF0aGlzLl9pc1NwZWNpYWxFZmZlY3QpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuY29tcGxldGVQbG90Q2FsbGJhY2spIGF3YWl0IHRoaXMuY29tcGxldGVQbG90Q2FsbGJhY2soKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdGhpcy5zdGFydEF1dG9QbGF5VGltZXIoKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuX2F1dG9QbGF5VGltZXIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LCBpbnRlcnZhbCk7XG4gICAgfVxuXG4gICAgZml4U2NyZWVuU2l6ZSgpIHtcbiAgICAgICAgbGV0IGNvbXAgPSB0aGlzLnBvcnRyYWl0U3ByaXRlLm5vZGUuZ2V0Q29tcG9uZW50KFBvcnRyYWl0Rml4Q29tcG9uZW50KTtcbiAgICAgICAgaWYgKGNvbXApIHtcbiAgICAgICAgICAgIGNvbXAuZml4U2NyZWVuU2l6ZSh0cnVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOiuvue9ruiDjOaZr1xuICAgICAqIEBwYXJhbSBiZ0ltYWdlIOiDjOaZr+i3r+W+hFxuICAgICAqL1xuICAgIGFzeW5jIHNldEJhY2tncm91bmQoYmdJbWFnZTogc3RyaW5nKSB7XG4gICAgICAgIGlmICghYmdJbWFnZSkge1xuICAgICAgICAgICAgdGhpcy5iYWNrZ3JvdW5kU3ByaXRlLnNwcml0ZUZyYW1lID0gdW5kZWZpbmVkIGFzIGFueTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgdGhpcy5iYWNrZ3JvdW5kU3ByaXRlLm5vZGUub3BhY2l0eSA9IDI1NTtcbiAgICAgICAgICAgICAgICBsZXQgc2YgPSBhd2FpdCBSZXNVdGlscy5sb2FkUmVzKGJnSW1hZ2UsIGNjLlNwcml0ZUZyYW1lKTtcbiAgICAgICAgICAgICAgICB0aGlzLmJhY2tncm91bmRTcHJpdGUuc3ByaXRlRnJhbWUgPSBzZjtcbiAgICAgICAgICAgICAgICB0aGlzLmJhY2tncm91bmRTcHJpdGUubm9kZS5oZWlnaHQgPSB0aGlzLm5vZGUuaGVpZ2h0O1xuICAgICAgICAgICAgICAgIHRoaXMuYmFja2dyb3VuZFNwcml0ZS5ub2RlLndpZHRoID0gc2YuZ2V0T3JpZ2luYWxTaXplKCkud2lkdGggLyBzZi5nZXRPcmlnaW5hbFNpemUoKS5oZWlnaHQgKiB0aGlzLm5vZGUuaGVpZ2h0O1xuICAgICAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDorr7nva7og4zmma8o54m55q6K5pWI5p6cKVxuICAgICAqIEBwYXJhbSBiZ0ltYWdlIOiDjOaZr+i3r+W+hFxuICAgICAqL1xuICAgIGFzeW5jIHNldEJhY2tncm91bmRFZmZlY3QoYmdJbWFnZTogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuX2lzU3BlY2lhbEVmZmVjdCA9IHRydWU7XG4gICAgICAgIGxldCBkaWFsb2dOb2Rlc0FjdGl2ZTogYm9vbGVhbltdID0gW3RoaXMub3RoZXJEaWFsb2dOb2RlLmFjdGl2ZSwgdGhpcy5zZWxmRGlhbG9nTm9kZS5hY3RpdmUsIHRoaXMubmFycmF0b3JEaWFsb2dOb2RlLmFjdGl2ZV07XG4gICAgICAgIHRoaXMub3RoZXJEaWFsb2dOb2RlLmFjdGl2ZSA9IGZhbHNlO1xuICAgICAgICB0aGlzLnNlbGZEaWFsb2dOb2RlLmFjdGl2ZSA9IGZhbHNlO1xuICAgICAgICB0aGlzLm5hcnJhdG9yRGlhbG9nTm9kZS5hY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgaWYgKCFiZ0ltYWdlKSB7XG4gICAgICAgICAgICB0aGlzLmJhY2tncm91bmRTcHJpdGUubm9kZS5vcGFjaXR5ID0gMjU1O1xuICAgICAgICAgICAgY2MudHdlZW4odGhpcy5iYWNrZ3JvdW5kU3ByaXRlLm5vZGUpXG4gICAgICAgICAgICAgICAgLnRvKDEsIHsgb3BhY2l0eTogMCB9KVxuICAgICAgICAgICAgICAgIC5jYWxsKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWNrZ3JvdW5kU3ByaXRlLnNwcml0ZUZyYW1lID0gdW5kZWZpbmVkIGFzIGFueTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5vdGhlckRpYWxvZ05vZGUuYWN0aXZlID0gZGlhbG9nTm9kZXNBY3RpdmVbMF07XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZkRpYWxvZ05vZGUuYWN0aXZlID0gZGlhbG9nTm9kZXNBY3RpdmVbMV07XG4gICAgICAgICAgICAgICAgICAgIHRoaXMubmFycmF0b3JEaWFsb2dOb2RlLmFjdGl2ZSA9IGRpYWxvZ05vZGVzQWN0aXZlWzJdO1xuICAgICAgICAgICAgICAgIH0pLnN0YXJ0KCk7XG4gICAgICAgICAgICBpZiAodGhpcy5iYWNrZ3JvdW5kU3ByaXRlLnNwcml0ZUZyYW1lKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5lZmZlY3RCYWNrZ3JvdW5kU3ByaXRlLm5vZGUuYWN0aXZlID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB0aGlzLmVmZmVjdEJhY2tncm91bmRTcHJpdGUubm9kZS5vcGFjaXR5ID0gMjU1O1xuICAgICAgICAgICAgICAgIGNjLnR3ZWVuKHRoaXMuZWZmZWN0QmFja2dyb3VuZFNwcml0ZS5ub2RlKVxuICAgICAgICAgICAgICAgICAgICAudG8oMSwgeyBvcGFjaXR5OiAwIH0pXG4gICAgICAgICAgICAgICAgICAgIC5jYWxsKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZWZmZWN0QmFja2dyb3VuZFNwcml0ZS5ub2RlLmFjdGl2ZSA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5faXNTcGVjaWFsRWZmZWN0ID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgIH0pLnN0YXJ0KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIHRoaXMuZWZmZWN0QmFja2dyb3VuZFNwcml0ZS5ub2RlLmFjdGl2ZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgdGhpcy5lZmZlY3RCYWNrZ3JvdW5kU3ByaXRlLm5vZGUub3BhY2l0eSA9IDA7XG4gICAgICAgICAgICAgICAgY2MudHdlZW4odGhpcy5lZmZlY3RCYWNrZ3JvdW5kU3ByaXRlLm5vZGUpXG4gICAgICAgICAgICAgICAgICAgIC50bygxLCB7IG9wYWNpdHk6IDI1NSB9KVxuICAgICAgICAgICAgICAgICAgICAuY2FsbCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjYy50d2Vlbih0aGlzLmVmZmVjdEJhY2tncm91bmRTcHJpdGUubm9kZSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAudG8oMSwgeyBvcGFjaXR5OiAwIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNhbGwoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmVmZmVjdEJhY2tncm91bmRTcHJpdGUubm9kZS5hY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KS5zdGFydCgpO1xuICAgICAgICAgICAgICAgICAgICB9KS5zdGFydCgpO1xuICAgICAgICAgICAgICAgIGNjLnR3ZWVuKHRoaXMuYmFja2dyb3VuZFNwcml0ZS5ub2RlKVxuICAgICAgICAgICAgICAgICAgICAudG8oMSwgeyBvcGFjaXR5OiAwIH0pXG4gICAgICAgICAgICAgICAgICAgIC5jYWxsKGFzeW5jICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBzZiA9IGF3YWl0IFJlc1V0aWxzLmxvYWRSZXMoYmdJbWFnZSwgY2MuU3ByaXRlRnJhbWUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWNrZ3JvdW5kU3ByaXRlLnNwcml0ZUZyYW1lID0gc2Y7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmJhY2tncm91bmRTcHJpdGUubm9kZS5oZWlnaHQgPSB0aGlzLm5vZGUuaGVpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5iYWNrZ3JvdW5kU3ByaXRlLm5vZGUud2lkdGggPSBzZi5nZXRPcmlnaW5hbFNpemUoKS53aWR0aCAvIHNmLmdldE9yaWdpbmFsU2l6ZSgpLmhlaWdodCAqIHRoaXMubm9kZS5oZWlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBjYy50d2Vlbih0aGlzLmJhY2tncm91bmRTcHJpdGUubm9kZSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAudG8oMSwgeyBvcGFjaXR5OiAyNTUgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuY2FsbCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMub3RoZXJEaWFsb2dOb2RlLmFjdGl2ZSA9IGRpYWxvZ05vZGVzQWN0aXZlWzBdO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNlbGZEaWFsb2dOb2RlLmFjdGl2ZSA9IGRpYWxvZ05vZGVzQWN0aXZlWzFdO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm5hcnJhdG9yRGlhbG9nTm9kZS5hY3RpdmUgPSBkaWFsb2dOb2Rlc0FjdGl2ZVsyXTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5faXNTcGVjaWFsRWZmZWN0ID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkuc3RhcnQoKTtcbiAgICAgICAgICAgICAgICAgICAgfSkuc3RhcnQoKTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKGUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcnVuRW5kVGlwQWN0aW9uKCkge1xuICAgICAgICB0aGlzLnNldElzUnVubmluZ0FjdGlvbih0cnVlKTtcbiAgICAgICAgbGV0IG9mZnNldFk6IG51bWJlciA9IDMwMDtcbiAgICAgICAgbGV0IGFjdFRpbWU6IG51bWJlciA9IDEuNTtcbiAgICAgICAgdGhpcy5lbmRUaXBOb2RlLnN0b3BBbGxBY3Rpb25zKCk7XG4gICAgICAgIHRoaXMuZW5kVGlwTm9kZS5hY3RpdmUgPSB0cnVlO1xuICAgICAgICB0aGlzLmVuZFRpcE5vZGUuc2NhbGUgPSAxO1xuICAgICAgICB0aGlzLmVuZFRpcE5vZGUub3BhY2l0eSA9IDI1NTtcbiAgICAgICAgdGhpcy5lbmRUaXBOb2RlLnBvc2l0aW9uID0gY2MudjMoLTI2NSwgdGhpcy5fb3JpZ2luUG9zLnkgLSBvZmZzZXRZLCAwKTtcbiAgICAgICAgdGhpcy5lbmRUaXBOb2RlLm9wYWNpdHkgPSAwO1xuXG4gICAgICAgIGxldCBlYXNlID0gY2MuZWFzZVNpbmVJbk91dCgpO1xuICAgICAgICBsZXQgbW92ZUFjdCA9IGNjLm1vdmVUbyhhY3RUaW1lLCBjYy52MigtMjY1LCB0aGlzLl9vcmlnaW5Qb3MueSkpLmVhc2luZyhlYXNlKTtcbiAgICAgICAgbGV0IGZhZGVJbkFjdCA9IGNjLmZhZGVJbihhY3RUaW1lKS5lYXNpbmcoZWFzZSk7XG4gICAgICAgIGxldCBzcGF3biA9IGNjLnNwYXduKG1vdmVBY3QsIGZhZGVJbkFjdCk7XG5cbiAgICAgICAgbGV0IGNhbGwgPSBjYy5jYWxsRnVuYygoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmJhY2tSZWREb3QuYWN0aXZlID0gdHJ1ZTtcblxuICAgICAgICAgICAgLy8gaWYgKCF0aGlzLl9pc1J1bkNsb3NlQWN0aW9uKSB7XG4gICAgICAgICAgICAvLyAgICAgU0RLLnNob3dJbnRlcnN0aXRpYWxBZCgpO1xuICAgICAgICAgICAgLy8gfVxuICAgICAgICAgICAgdGhpcy5zZXRJc1J1bm5pbmdBY3Rpb24oZmFsc2UpO1xuICAgICAgICB9KTtcblxuICAgICAgICBsZXQgc2hvd0Fycm93R3VpZGVDYWxsID0gY2MuY2FsbEZ1bmMoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5hcnJvd2d1aWRlTm9kZS5hY3RpdmUgPSB0cnVlO1xuICAgICAgICB9KTtcbiAgICAgICAgbGV0IGFjdFRpbWUyOiBudW1iZXIgPSAyO1xuICAgICAgICBsZXQgc2VxID0gY2Muc2VxdWVuY2Uoc3Bhd24sIGNhbGwsIGNjLnNwYXduKGNjLm1vdmVUbygxLCBjYy52Mih0aGlzLmJhY2tCdG5Ob2RlLnBvc2l0aW9uLngsIHRoaXMuYmFja0J0bk5vZGUucG9zaXRpb24ueSkpLCBjYy5zY2FsZVRvKGFjdFRpbWUyLCAwKSksIHNob3dBcnJvd0d1aWRlQ2FsbCk7XG5cbiAgICAgICAgdGhpcy5lbmRUaXBOb2RlLnJ1bkFjdGlvbihzZXEpO1xuICAgIH1cblxuICAgIHNldFJ1bkNsb3NlQWN0aW9uKHJ1bjogYm9vbGVhbikge1xuICAgICAgICB0aGlzLl9pc1J1bkNsb3NlQWN0aW9uID0gcnVuO1xuICAgIH1cblxuICAgIHJ1bkNsb3NlQWN0aW9uKCkge1xuICAgICAgICB0aGlzLmNsb3NlVmlldygpO1xuICAgIH1cblxuXG4gICAgZ2V0Q2hhcHRlckJ0biA9ICgpOiBjYy5QcmVmYWIgPT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jaGFwdGVyQnRuO1xuICAgIH1cblxuICAgIG9uUmVmcmVzaEFsbFN0YXR1cygpIHtcbiAgICAgICAgdGhpcy5jbG9zZUFjdGlvbigpO1xuICAgIH1cblxuICAgIG9uUmV2aWV3QnV0dG9uQ2xpY2soKSB7XG4gICAgICAgIHRoaXMucmVzZXRBdXRvUGxheUJ1dHRvblN0YXRlKCk7XG4gICAgICAgIGNsZWFyVGltZW91dCh0aGlzLl9hdXRvUGxheVRpbWVyKTtcbiAgICAgICAgdGhpcy5vblJldmlld0J1dHRvbkNsaWNrQ2FsbGJhY2soKTtcbiAgICB9XG5cbiAgICBvblNraXBCdXR0b25DbGljaygpIHtcbiAgICAgICAgdGhpcy5fc2tpcEJ1dHRvblN0YXRlID0gdGhpcy5fc2tpcEJ1dHRvblN0YXRlID09IEF1dG9QbGF5U3RhdGUuQ2xvc2UgPyBBdXRvUGxheVN0YXRlLkF1dG9QbGF5IDogQXV0b1BsYXlTdGF0ZS5DbG9zZTtcbiAgICAgICAgdGhpcy5fYXV0b1BsYXlTdGF0ZSA9IHRoaXMuX3NraXBCdXR0b25TdGF0ZTtcbiAgICAgICAgaWYgKHRoaXMuX2F1dG9QbGF5U3RhdGUgPT0gQXV0b1BsYXlTdGF0ZS5BdXRvUGxheSkge1xuICAgICAgICAgICAgdGhpcy5fYXV0b1BsYXlTcGVlZCA9IDIwO1xuICAgICAgICAgICAgdGhpcy5zdGFydEF1dG9QbGF5VGltZXIodHJ1ZSk7XG4gICAgICAgICAgICB0aGlzLmNoYW5nZVNraXBCdXR0b25TdGF0ZSh0aGlzLl9hdXRvUGxheVN0YXRlKTtcbiAgICAgICAgICAgIHRoaXMuY2hhbmdlQXV0b1BsYXlCdXR0b25TdGF0ZShBdXRvUGxheVN0YXRlLkNsb3NlKTtcbiAgICAgICAgICAgIHRoaXMuX2F1dG9QbGF5QnV0dG9uU3RhdGUgPSBBdXRvUGxheVN0YXRlLkNsb3NlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5yZXNldEF1dG9QbGF5QnV0dG9uU3RhdGUoKTtcbiAgICAgICAgICAgIGNsZWFyVGltZW91dCh0aGlzLl9hdXRvUGxheVRpbWVyKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uQXV0b1BsYXlCdXR0b25DbGljaygpIHtcbiAgICAgICAgdGhpcy5fYXV0b1BsYXlCdXR0b25TdGF0ZSA9IHRoaXMuX2F1dG9QbGF5QnV0dG9uU3RhdGUgPT0gQXV0b1BsYXlTdGF0ZS5DbG9zZSA/IEF1dG9QbGF5U3RhdGUuQXV0b1BsYXkgOiBBdXRvUGxheVN0YXRlLkNsb3NlO1xuICAgICAgICB0aGlzLl9hdXRvUGxheVN0YXRlID0gdGhpcy5fYXV0b1BsYXlCdXR0b25TdGF0ZTtcbiAgICAgICAgaWYgKHRoaXMuX2F1dG9QbGF5U3RhdGUgPT0gQXV0b1BsYXlTdGF0ZS5BdXRvUGxheSkge1xuICAgICAgICAgICAgdGhpcy5fYXV0b1BsYXlTcGVlZCA9IDE7XG4gICAgICAgICAgICB0aGlzLnN0YXJ0QXV0b1BsYXlUaW1lcih0cnVlKTtcbiAgICAgICAgICAgIHRoaXMuY2hhbmdlU2tpcEJ1dHRvblN0YXRlKEF1dG9QbGF5U3RhdGUuQ2xvc2UpO1xuICAgICAgICAgICAgdGhpcy5jaGFuZ2VBdXRvUGxheUJ1dHRvblN0YXRlKHRoaXMuX2F1dG9QbGF5U3RhdGUpO1xuICAgICAgICAgICAgdGhpcy5fc2tpcEJ1dHRvblN0YXRlID0gQXV0b1BsYXlTdGF0ZS5DbG9zZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMucmVzZXRBdXRvUGxheUJ1dHRvblN0YXRlKCk7XG4gICAgICAgICAgICBjbGVhclRpbWVvdXQodGhpcy5fYXV0b1BsYXlUaW1lcik7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
\ No newline at end of file
......@@ -29,4 +29,4 @@ cc._RF.pop();
});
}
})();
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0cy9zY3JpcHQvZ2FtZS91aS92aWV3L3R5cGUvRGF0aW5nU2NlbmVWaWV3LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQTRCYSxRQUFBLG1CQUFtQixHQUFHLGlCQUFpQixDQUFDIiwiZmlsZSI6IiIsInNvdXJjZVJvb3QiOiIvIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVmlldyB9IGZyb20gXCIuLi8uLi8uLi8uLi9jb21tb24vY2xhc3NiYXNlL1ZpZXdCYXNlXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGF0aW5nU2NlbmVWaWV3IGV4dGVuZHMgVmlldyB7XG4gICAgLyoqXG4gICAgICog5a6M5oiQ5b2T5YmN5Ymn5oOF5Zue6LCD5Ye95pWwXG4gICAgICovXG4gICAgY29tcGxldGVQbG90Q2FsbGJhY2s6ICgpID0+IFByb21pc2U8dm9pZD47XG4gICAgc2V0Q29udGVudChpc1NlbGY6IGJvb2xlYW4sIHRleHQ6IHN0cmluZywgbmFtZVNwcjogc3RyaW5nLCBuYW1lPzogc3RyaW5nLCBwb3J0cmFpdEltZz86IHN0cmluZywgb3RoZXJQb3J0cmFpdEltZz86IHN0cmluZywgc2hvd1JvdWdlPzogYm9vbGVhbik6IFByb21pc2U8dm9pZD47XG4gICAgc2V0QmFja2dyb3VuZChwYXRoOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+O1xuICAgIHNldEJhY2tncm91bmRFZmZlY3QocGF0aDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPjtcbiAgICBzZXRJc1J1bm5pbmdBY3Rpb246IChpc1J1bm5pbmc6IGJvb2xlYW4pID0+IHZvaWQ7XG4gICAgLyoq5byV5a+86L+U5ZueICovXG4gICAgZ3VpZGVCYWNrKCk6IHZvaWQ7XG4gICAgLyoq5piv5ZCm5pi+56S66L+U5Zue5oyJ6ZKuKi9cbiAgICBzaG93QmFja0J0bjogKHNob3c6IGJvb2xlYW4pID0+IHZvaWQ7XG4gICAgc2V0UnVuQ2xvc2VBY3Rpb246IChydW46IGJvb2xlYW4pID0+IHZvaWQ7XG5cbiAgICBnZXRTY3JvbGxWaWV3Um9vdE5vZGU6ICgpID0+IGNjLk5vZGU7XG4gICAgZ2V0U2Nyb2xsVmlld0NvbnRlbnROb2RlOiAoKSA9PiBjYy5Ob2RlO1xuICAgIGdldENoYXB0ZXJCdG46ICgpID0+IGNjLlByZWZhYjtcblxuICAgIC8qKuWFs+mXrXVpICovXG4gICAgY2xvc2VWaWV3OiAoKSA9PiB2b2lkO1xuICAgIHNob3dSb2xsQmFja0J0bjogKGlzU2hvdzogYm9vbGVhbikgPT4gdm9pZDtcbiAgICBvblJvbGxCYWNrQnRuQ2FsbGJhY2s6ICgpID0+IHZvaWQ7XG4gICAgb25SZXZpZXdCdXR0b25DbGlja0NhbGxiYWNrOiAoKSA9PiB2b2lkO1xufVxuXG5leHBvcnQgY29uc3QgRGF0aW5nU2NlbmVWaWV3VHlwZSA9IFwiRGF0aW5nU2NlbmVWaWV3XCI7Il19
\ No newline at end of file
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0cy9zY3JpcHQvZ2FtZS91aS92aWV3L3R5cGUvRGF0aW5nU2NlbmVWaWV3LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXdCYSxRQUFBLG1CQUFtQixHQUFHLGlCQUFpQixDQUFDIiwiZmlsZSI6IiIsInNvdXJjZVJvb3QiOiIvIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVmlldyB9IGZyb20gXCIuLi8uLi8uLi8uLi9jb21tb24vY2xhc3NiYXNlL1ZpZXdCYXNlXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGF0aW5nU2NlbmVWaWV3IGV4dGVuZHMgVmlldyB7XG4gICAgLyoqXG4gICAgICog5a6M5oiQ5b2T5YmN5Ymn5oOF5Zue6LCD5Ye95pWwXG4gICAgICovXG4gICAgY29tcGxldGVQbG90Q2FsbGJhY2s6ICgpID0+IFByb21pc2U8dm9pZD47XG4gICAgc2V0Q29udGVudChpc1NlbGY6IGJvb2xlYW4sIHRleHQ6IHN0cmluZywgbmFtZVNwcjogc3RyaW5nLCBuYW1lPzogc3RyaW5nLCBwb3J0cmFpdEltZz86IHN0cmluZywgb3RoZXJQb3J0cmFpdEltZz86IHN0cmluZywgc2hvd1JvdWdlPzogYm9vbGVhbik6IFByb21pc2U8dm9pZD47XG4gICAgc2V0QmFja2dyb3VuZChwYXRoOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+O1xuICAgIHNldEJhY2tncm91bmRFZmZlY3QocGF0aDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPjtcbiAgICBzZXRJc1J1bm5pbmdBY3Rpb246IChpc1J1bm5pbmc6IGJvb2xlYW4pID0+IHZvaWQ7XG4gICAgLyoq5byV5a+86L+U5ZueICovXG4gICAgZ3VpZGVCYWNrKCk6IHZvaWQ7XG4gICAgLyoq5piv5ZCm5pi+56S66L+U5Zue5oyJ6ZKuKi9cbiAgICBzaG93QmFja0J0bjogKHNob3c6IGJvb2xlYW4pID0+IHZvaWQ7XG4gICAgc2V0UnVuQ2xvc2VBY3Rpb246IChydW46IGJvb2xlYW4pID0+IHZvaWQ7XG5cbiAgICBnZXRDaGFwdGVyQnRuOiAoKSA9PiBjYy5QcmVmYWI7XG5cbiAgICAvKirlhbPpl611aSAqL1xuICAgIGNsb3NlVmlldzogKCkgPT4gdm9pZDtcbiAgICBvblJldmlld0J1dHRvbkNsaWNrQ2FsbGJhY2s6ICgpID0+IHZvaWQ7XG59XG5cbmV4cG9ydCBjb25zdCBEYXRpbmdTY2VuZVZpZXdUeXBlID0gXCJEYXRpbmdTY2VuZVZpZXdcIjsiXX0=
\ No newline at end of file
......@@ -82,21 +82,6 @@ let DatingScenePresenter = /** @class */ (() => {
this._completingPlot = false;
this.execPlot();
};
this.onRollBackBtnCallback = () => {
this._showScrollView = !this._showScrollView;
this.view.getScrollViewRootNode().active = this._showScrollView;
if (this._showScrollView) {
let scrollView = this.view.getScrollViewRootNode().getChildByName("ScrollView");
scrollView.scaleY = 0;
cc.tween(scrollView)
.to(0.3, { scaleY: 1 })
.start();
this.CreateOrUpdateChapterBtns();
}
else {
this.view.getScrollViewContentNode().removeAllChildren();
}
};
this.onClickRollBackBtn = (pid) => {
CDKeyEventManager_1.default.getInstance().shiftCDKeyRemovePlotAD();
let removeAdCardNum = CDKeyEventManager_1.default.getInstance().checkCDKeyRemovePlotAD();
......@@ -114,10 +99,7 @@ let DatingScenePresenter = /** @class */ (() => {
await AVG_1.PlotManager.rollbackToPlot(pid, false, retainVar);
this.rollBackDateAdArray(pid);
AVG_1.GameRecord.saveRecord();
// this.rollBackPlotInfo(pid);
this.view.getScrollViewContentNode().removeAllChildren();
this._showScrollView = !this._showScrollView;
this.view.getScrollViewRootNode().active = this._showScrollView;
this.view.closeView();
await GameModelManager_1.GameModelManager.init((value) => {
});
......@@ -165,10 +147,7 @@ let DatingScenePresenter = /** @class */ (() => {
await AVG_1.PlotManager.rollbackToPlot(pid, false, retainVar);
this.rollBackDateAdArray(pid);
AVG_1.GameRecord.saveRecord();
// this.rollBackPlotInfo(pid);
this.view.getScrollViewContentNode().removeAllChildren();
this._showScrollView = !this._showScrollView;
this.view.getScrollViewRootNode().active = this._showScrollView;
this.view.closeView();
await GameModelManager_1.GameModelManager.init((value) => {
});
......@@ -214,7 +193,6 @@ let DatingScenePresenter = /** @class */ (() => {
this._isDotTutorial = false;
this._reviewPlot = "";
this.view.completePlotCallback = this.completePlot;
this.view.onRollBackBtnCallback = this.onRollBackBtnCallback;
this.view.onReviewButtonClickCallback = this.onReviewButtonClickCallback;
this._model = param;
if (this._model.status === DatingEventSceneModel_1.DatingEventStatus.New) {
......@@ -227,11 +205,9 @@ let DatingScenePresenter = /** @class */ (() => {
// this.view.setRunCloseAction((isSpecialScene && this._model.status !== DatingEventStatus.Completed));
if (this._model.isExtra) {
GameModelManager_1.GameModelManager.setIsMainPlotSceneType(false);
this.view.showRollBackBtn(false);
}
else {
GameModelManager_1.GameModelManager.setIsMainPlotSceneType(true);
this.view.showRollBackBtn(true);
}
simba_utils_1.delay(0.1).then(async () => {
if (param.status === DatingEventSceneModel_1.DatingEventStatus.Completed) {
......@@ -284,7 +260,6 @@ let DatingScenePresenter = /** @class */ (() => {
}));
this._disposable.add(GameModelManager_1.GameModelManager.RollBackToPlot.on(this.onClickRollBackBtn));
this._showScrollView = false;
this.view.getScrollViewRootNode().active = this._showScrollView;
this._disposable.add(GameModelManager_1.GameModelManager.DeadEvent.on(this.onDeadEvent));
this._disposable.add(GameModelManager_1.GameModelManager.SpecialToast.on(this.onSpecialToast));
}
......@@ -316,12 +291,6 @@ let DatingScenePresenter = /** @class */ (() => {
if (content) { // TODO 图片设置
if (content.type === AVG_1.SentenceType.TEXT) {
this.view.showBackBtn(this._showBackBtn);
if (this._model.isExtra) {
this.view.showRollBackBtn(false);
}
else {
this.view.showRollBackBtn(true);
}
await this.view.setContent(sentence.roleId === GameConstData_1.GameConstData.GAME_CONST_PLAYER_ROLE_VALUE, AVG_1.richNodesToCocosString(content.value), sentence.roleId === 1 ? "" : roleData.getNameIcon(), sentence.roleId === 1 ? undefined : roleData.getConfig().name,
// sentence.roleId === 1 ? otherPortrait : roleData.getPortrait(this._currPlot.face,),
sentence.roleId === 1 ? otherPortrait : this.getPortraitByRole(roleData, this._currPlot.face), otherPortrait, isShowRouge);
......@@ -334,7 +303,6 @@ let DatingScenePresenter = /** @class */ (() => {
}
else if (content.type === AVG_1.SentenceType.SELECT) {
this.view.showBackBtn(false);
this.view.showRollBackBtn(false);
let setSelection = async () => {
let value = content.value[this._currSelect];
let str = value.summary;
......@@ -402,12 +370,6 @@ let DatingScenePresenter = /** @class */ (() => {
this._finished = true;
this.view.setIsRunningAction(false);
this.view.showBackBtn(this._showBackBtn);
if (this._model.isExtra) {
this.view.showRollBackBtn(false);
}
else {
this.view.showRollBackBtn(true);
}
let Plot = AVG_1.PlotManager.getCurrentPlots()[0];
let isToBeContinued = Plot.id == AVG_1.SpecialPlotId.ToBeContinued;
let isEnd = Plot.id == AVG_1.SpecialPlotId.End;
......@@ -494,21 +456,14 @@ let DatingScenePresenter = /** @class */ (() => {
return portrait;
}
CreateOrUpdateChapterBtns() {
this.view.getScrollViewContentNode().removeAllChildren();
let ret = [];
let models = GameModelManager_1.GameModelManager.getMainDatingEventScenesModel();
for (let i = 0; i < models.length; i++) {
ret.push({ chapterId: i + 1, chapterName: models[i].config.name, chapterStartPlotId: models[i].config.start_plot_id });
}
// for (let i = 0; i < ret.length; ++i) {
// let btn = cc.instantiate(this.view.getChapterBtn());
// btn.getComponent(ChapterBtn).setData(ret[i].chapterId, ret[i].chapterName, ret[i].chapterStartPlotId);
// btn.parent = this.view.getScrollViewContentNode();
// }
for (let i = ret.length - 1; i >= 0; i--) {
let btn = cc.instantiate(this.view.getChapterBtn());
btn.getComponent(ChapterBtn_1.default).setData(ret[i].chapterId, ret[i].chapterName, ret[i].chapterStartPlotId);
btn.parent = this.view.getScrollViewContentNode();
}
}
getRetainVarKeyArr() {
......@@ -595,18 +550,6 @@ let DatingScenePresenter = /** @class */ (() => {
nextKey = plotIds[i + 1];
}
}
// let cfg = ConfigManager.getAllConfig(dateSceneConfig);
// let ids: string[] = [];
// for (const id in cfg) {
// if (cfg[id].DateType == DateType.Date_Normal) {
// ids.push(id);
// }
// }
// for (let i = 0; i < ids.length; i++) {
// if (ids[i] == currEventId.toString()) {
// nextKey = ids[i + 1];
// }
// }
console.log("getNextDatingEventModel", nextKey);
return nextKey;
}
......
......@@ -46,14 +46,10 @@ let DatingSceneViewImpl = /** @class */ (() => {
this.backRedDot = CCDummyObjects_1.DummyNode;
this.backBtnNode = CCDummyObjects_1.DummyNode;
this.endTipNode = CCDummyObjects_1.DummyNode;
// @property(cc.Node)
// private closeActNode = DummyNode;
this.arrowguideNode = CCDummyObjects_1.DummyNode;
this.otherNameSpr = CCDummyObjects_1.DummySprite;
this.typewriter = undefined;
this.rollBackBtn = CCDummyObjects_1.DummyNode;
this.chapterBtn = CCDummyObjects_1.DummyPrefab;
this.scrollViewRootNode = CCDummyObjects_1.DummyNode;
this.skipButtonNode = CCDummyObjects_1.DummyNode;
this.autoPlayButtonNode = CCDummyObjects_1.DummyNode;
this.autoPlaySpriteFrame = [];
......@@ -85,18 +81,9 @@ let DatingSceneViewImpl = /** @class */ (() => {
}
}
};
this.getScrollViewRootNode = () => {
return this.scrollViewRootNode;
};
this.getScrollViewContentNode = () => {
return this.contentNode;
};
this.getChapterBtn = () => {
return this.chapterBtn;
};
this.showRollBackBtn = (isShow) => {
this.rollBackBtn.active = isShow;
};
}
/**
* 是否显示返回按钮
......@@ -417,33 +404,6 @@ let DatingSceneViewImpl = /** @class */ (() => {
}
runCloseAction() {
this.closeView();
// this.setIsRunningAction(true);
// this.closeActNode.stopAllActions();
// this.closeActNode.scale = 1;
// this.closeActNode.opacity = 0;
// this.closeActNode.active = true;
// this.backBtnNode.active = false;
// let actTime: number = 1;
// let tempX: number = 0;
// let tempY: number = 0;
// let tempR: number = 0;
// let tempS: number = this.node.width / this.closeActNode.width;
// let easeS: cc.Easing = cc.easeSineOut();
// let moveAct = cc.moveTo(actTime, cc.v2(tempX, tempY)).easing(easeS);
// let fadeInAct = cc.fadeIn(actTime).easing(easeS);
// let scaleAct = cc.scaleTo(actTime / 2, tempS).easing(easeS);
// let rotationAct = cc.rotateTo(actTime / 2, tempR).easing(easeS);
// let call = cc.callFunc(() => {
// this.closeView();
// });
// let spawnMF = cc.spawn(moveAct, fadeInAct);
// let spawnSR = cc.spawn(scaleAct, rotationAct);
// let seq = cc.sequence(spawnMF, spawnSR, call);
// this.closeActNode.runAction(seq);
}
onRollBackBtnClick() {
this.resetAutoPlayButtonState();
this.onRollBackBtnCallback();
}
onRefreshAllStatus() {
this.closeAction();
......@@ -524,19 +484,10 @@ let DatingSceneViewImpl = /** @class */ (() => {
property(Typewriter_1.default)
], DatingSceneViewImpl.prototype, "typewriter", void 0);
__decorate([
property(cc.Node)
], DatingSceneViewImpl.prototype, "rollBackBtn", void 0);
__decorate([
property(cc.Prefab)
], DatingSceneViewImpl.prototype, "chapterBtn", void 0);
__decorate([
property(cc.Node)
], DatingSceneViewImpl.prototype, "scrollViewRootNode", void 0);
__decorate([
property(cc.Node)
], DatingSceneViewImpl.prototype, "contentNode", void 0);
__decorate([
property(cc.Node)
], DatingSceneViewImpl.prototype, "skipButtonNode", void 0);
__decorate([
property(cc.Node)
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!