future 1 年之前
父節點
當前提交
8d48a19759

+ 1 - 0
assets/data/data.ts

@@ -350,6 +350,7 @@ export class level_list_item_data {
 export class task_data{  //玩法===任务
     public type:number = config.task_type.da_guai;
     public event_list:event_item[] = [];
+    public is_open_interlude_default_animation:boolean = true; //打开过场默认动画
     public _zhao_xi_jie_data:zhao_xi_jie_data = null;
     public _guo_ju_qing:guo_ju_qing_data = null;
     public _da_guai:da_guai_data = null;

文件差異過大導致無法顯示
+ 120 - 427
assets/edit_game.scene


文件差異過大導致無法顯示
+ 925 - 221
assets/resources/prefab/add_animation.prefab


+ 250 - 10
assets/resources/prefab/add_animation_item.prefab

@@ -20,25 +20,28 @@
     "_children": [
       {
         "__id__": 2
+      },
+      {
+        "__id__": 10
       }
     ],
     "_active": true,
     "_components": [
       {
-        "__id__": 10
+        "__id__": 20
       },
       {
-        "__id__": 12
+        "__id__": 22
       },
       {
-        "__id__": 14
+        "__id__": 24
       },
       {
-        "__id__": 16
+        "__id__": 26
       }
     ],
     "_prefab": {
-      "__id__": 18
+      "__id__": 28
     },
     "_lpos": {
       "__type__": "cc.Vec3",
@@ -244,6 +247,240 @@
     "targetOverrides": null,
     "nestedPrefabInstanceRoots": null
   },
+  {
+    "__type__": "cc.Node",
+    "_name": "btn_delete",
+    "_objFlags": 0,
+    "__editorExtras__": {},
+    "_parent": {
+      "__id__": 1
+    },
+    "_children": [],
+    "_active": false,
+    "_components": [
+      {
+        "__id__": 11
+      },
+      {
+        "__id__": 13
+      },
+      {
+        "__id__": 15
+      },
+      {
+        "__id__": 17
+      }
+    ],
+    "_prefab": {
+      "__id__": 19
+    },
+    "_lpos": {
+      "__type__": "cc.Vec3",
+      "x": 890,
+      "y": 0,
+      "z": 0
+    },
+    "_lrot": {
+      "__type__": "cc.Quat",
+      "x": 0,
+      "y": 0,
+      "z": 0,
+      "w": 1
+    },
+    "_lscale": {
+      "__type__": "cc.Vec3",
+      "x": 1,
+      "y": 1,
+      "z": 1
+    },
+    "_mobility": 0,
+    "_layer": 33554432,
+    "_euler": {
+      "__type__": "cc.Vec3",
+      "x": 0,
+      "y": 0,
+      "z": 0
+    },
+    "_id": ""
+  },
+  {
+    "__type__": "cc.UITransform",
+    "_name": "",
+    "_objFlags": 0,
+    "__editorExtras__": {},
+    "node": {
+      "__id__": 10
+    },
+    "_enabled": true,
+    "__prefab": {
+      "__id__": 12
+    },
+    "_contentSize": {
+      "__type__": "cc.Size",
+      "width": 60,
+      "height": 60
+    },
+    "_anchorPoint": {
+      "__type__": "cc.Vec2",
+      "x": 0.5,
+      "y": 0.5
+    },
+    "_id": ""
+  },
+  {
+    "__type__": "cc.CompPrefabInfo",
+    "fileId": "c9z9iSkHtO65KLOG52x2hL"
+  },
+  {
+    "__type__": "cc.Sprite",
+    "_name": "",
+    "_objFlags": 0,
+    "__editorExtras__": {},
+    "node": {
+      "__id__": 10
+    },
+    "_enabled": true,
+    "__prefab": {
+      "__id__": 14
+    },
+    "_customMaterial": null,
+    "_srcBlendFactor": 2,
+    "_dstBlendFactor": 4,
+    "_color": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "_spriteFrame": {
+      "__uuid__": "64c1f2bf-dc82-4530-bd30-7879d5a3e03e@f9941",
+      "__expectedType__": "cc.SpriteFrame"
+    },
+    "_type": 0,
+    "_fillType": 0,
+    "_sizeMode": 0,
+    "_fillCenter": {
+      "__type__": "cc.Vec2",
+      "x": 0,
+      "y": 0
+    },
+    "_fillStart": 0,
+    "_fillRange": 0,
+    "_isTrimmedMode": true,
+    "_useGrayscale": false,
+    "_atlas": null,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.CompPrefabInfo",
+    "fileId": "79Ri6pbSVBModDw+DWiixH"
+  },
+  {
+    "__type__": "cc.Widget",
+    "_name": "",
+    "_objFlags": 0,
+    "__editorExtras__": {},
+    "node": {
+      "__id__": 10
+    },
+    "_enabled": true,
+    "__prefab": {
+      "__id__": 16
+    },
+    "_alignFlags": 32,
+    "_target": null,
+    "_left": 0,
+    "_right": 40,
+    "_top": 0,
+    "_bottom": 0,
+    "_horizontalCenter": 0,
+    "_verticalCenter": 0,
+    "_isAbsLeft": true,
+    "_isAbsRight": true,
+    "_isAbsTop": true,
+    "_isAbsBottom": true,
+    "_isAbsHorizontalCenter": true,
+    "_isAbsVerticalCenter": true,
+    "_originalWidth": 0,
+    "_originalHeight": 100,
+    "_alignMode": 2,
+    "_lockFlags": 0,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.CompPrefabInfo",
+    "fileId": "8fkPHFUM5CHKDA/qg2QP9w"
+  },
+  {
+    "__type__": "cc.Button",
+    "_name": "",
+    "_objFlags": 0,
+    "__editorExtras__": {},
+    "node": {
+      "__id__": 10
+    },
+    "_enabled": true,
+    "__prefab": {
+      "__id__": 18
+    },
+    "clickEvents": [],
+    "_interactable": true,
+    "_transition": 3,
+    "_normalColor": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "_hoverColor": {
+      "__type__": "cc.Color",
+      "r": 211,
+      "g": 211,
+      "b": 211,
+      "a": 255
+    },
+    "_pressedColor": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "_disabledColor": {
+      "__type__": "cc.Color",
+      "r": 124,
+      "g": 124,
+      "b": 124,
+      "a": 255
+    },
+    "_normalSprite": null,
+    "_hoverSprite": null,
+    "_pressedSprite": null,
+    "_disabledSprite": null,
+    "_duration": 0.1,
+    "_zoomScale": 1.2,
+    "_target": null,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.CompPrefabInfo",
+    "fileId": "6e7tGdN1tPboG22ZR8rxVM"
+  },
+  {
+    "__type__": "cc.PrefabInfo",
+    "root": {
+      "__id__": 1
+    },
+    "asset": {
+      "__id__": 0
+    },
+    "fileId": "2bVQzJFT9E97ss73e9J5C3",
+    "instance": null,
+    "targetOverrides": null,
+    "nestedPrefabInstanceRoots": null
+  },
   {
     "__type__": "cc.UITransform",
     "_name": "",
@@ -254,7 +491,7 @@
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 11
+      "__id__": 21
     },
     "_contentSize": {
       "__type__": "cc.Size",
@@ -282,7 +519,7 @@
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 13
+      "__id__": 23
     },
     "_alignFlags": 40,
     "_target": null,
@@ -318,7 +555,7 @@
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 15
+      "__id__": 25
     },
     "_customMaterial": null,
     "_srcBlendFactor": 2,
@@ -334,7 +571,7 @@
       "__uuid__": "b730527c-3233-41c2-aaf7-7cdab58f9749@f9941",
       "__expectedType__": "cc.SpriteFrame"
     },
-    "_type": 0,
+    "_type": 1,
     "_fillType": 0,
     "_sizeMode": 0,
     "_fillCenter": {
@@ -363,11 +600,14 @@
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 17
+      "__id__": 27
     },
     "lab_name": {
       "__id__": 2
     },
+    "btn_delete": {
+      "__id__": 10
+    },
     "_id": ""
   },
   {

+ 233 - 94
assets/resources/prefab/select_animation.prefab

@@ -25,20 +25,20 @@
     "_active": true,
     "_components": [
       {
-        "__id__": 58
+        "__id__": 64
       },
       {
-        "__id__": 60
+        "__id__": 66
       },
       {
-        "__id__": 62
+        "__id__": 68
       },
       {
-        "__id__": 64
+        "__id__": 70
       }
     ],
     "_prefab": {
-      "__id__": 66
+      "__id__": 72
     },
     "_lpos": {
       "__type__": "cc.Vec3",
@@ -82,20 +82,23 @@
         "__id__": 3
       },
       {
-        "__id__": 45
+        "__id__": 9
+      },
+      {
+        "__id__": 51
       }
     ],
     "_active": true,
     "_components": [
       {
-        "__id__": 53
+        "__id__": 59
       },
       {
-        "__id__": 55
+        "__id__": 61
       }
     ],
     "_prefab": {
-      "__id__": 57
+      "__id__": 63
     },
     "_lpos": {
       "__type__": "cc.Vec3",
@@ -126,6 +129,142 @@
     },
     "_id": ""
   },
+  {
+    "__type__": "cc.Node",
+    "_name": "Label",
+    "_objFlags": 0,
+    "__editorExtras__": {},
+    "_parent": {
+      "__id__": 2
+    },
+    "_children": [],
+    "_active": true,
+    "_components": [
+      {
+        "__id__": 4
+      },
+      {
+        "__id__": 6
+      }
+    ],
+    "_prefab": {
+      "__id__": 8
+    },
+    "_lpos": {
+      "__type__": "cc.Vec3",
+      "x": 0,
+      "y": 447.069,
+      "z": 0
+    },
+    "_lrot": {
+      "__type__": "cc.Quat",
+      "x": 0,
+      "y": 0,
+      "z": 0,
+      "w": 1
+    },
+    "_lscale": {
+      "__type__": "cc.Vec3",
+      "x": 1,
+      "y": 1,
+      "z": 1
+    },
+    "_mobility": 0,
+    "_layer": 33554432,
+    "_euler": {
+      "__type__": "cc.Vec3",
+      "x": 0,
+      "y": 0,
+      "z": 0
+    },
+    "_id": ""
+  },
+  {
+    "__type__": "cc.UITransform",
+    "_name": "",
+    "_objFlags": 0,
+    "__editorExtras__": {},
+    "node": {
+      "__id__": 3
+    },
+    "_enabled": true,
+    "__prefab": {
+      "__id__": 5
+    },
+    "_contentSize": {
+      "__type__": "cc.Size",
+      "width": 160,
+      "height": 50.4
+    },
+    "_anchorPoint": {
+      "__type__": "cc.Vec2",
+      "x": 0.5,
+      "y": 0.5
+    },
+    "_id": ""
+  },
+  {
+    "__type__": "cc.CompPrefabInfo",
+    "fileId": "08vlr54xZJWZqpcsI6chbs"
+  },
+  {
+    "__type__": "cc.Label",
+    "_name": "",
+    "_objFlags": 0,
+    "__editorExtras__": {},
+    "node": {
+      "__id__": 3
+    },
+    "_enabled": true,
+    "__prefab": {
+      "__id__": 7
+    },
+    "_customMaterial": null,
+    "_srcBlendFactor": 2,
+    "_dstBlendFactor": 4,
+    "_color": {
+      "__type__": "cc.Color",
+      "r": 0,
+      "g": 0,
+      "b": 0,
+      "a": 255
+    },
+    "_string": "选择动画",
+    "_horizontalAlign": 1,
+    "_verticalAlign": 1,
+    "_actualFontSize": 40,
+    "_fontSize": 40,
+    "_fontFamily": "Arial",
+    "_lineHeight": 40,
+    "_overflow": 0,
+    "_enableWrapText": true,
+    "_font": null,
+    "_isSystemFontUsed": true,
+    "_spacingX": 0,
+    "_isItalic": false,
+    "_isBold": false,
+    "_isUnderline": false,
+    "_underlineHeight": 2,
+    "_cacheMode": 0,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.CompPrefabInfo",
+    "fileId": "9cD0hTqDdCyaBUEdG5cLGy"
+  },
+  {
+    "__type__": "cc.PrefabInfo",
+    "root": {
+      "__id__": 1
+    },
+    "asset": {
+      "__id__": 0
+    },
+    "fileId": "1fVvYrMfBI44Z9PJ0FSnL6",
+    "instance": null,
+    "targetOverrides": null,
+    "nestedPrefabInstanceRoots": null
+  },
   {
     "__type__": "cc.Node",
     "_name": "ScrollView",
@@ -136,26 +275,26 @@
     },
     "_children": [
       {
-        "__id__": 4
+        "__id__": 10
       },
       {
-        "__id__": 22
+        "__id__": 28
       }
     ],
     "_active": true,
     "_components": [
       {
-        "__id__": 40
+        "__id__": 46
       },
       {
-        "__id__": 42
+        "__id__": 48
       },
       {
-        "__id__": 19
+        "__id__": 25
       }
     ],
     "_prefab": {
-      "__id__": 44
+      "__id__": 50
     },
     "_lpos": {
       "__type__": "cc.Vec3",
@@ -192,30 +331,30 @@
     "_objFlags": 0,
     "__editorExtras__": {},
     "_parent": {
-      "__id__": 3
+      "__id__": 9
     },
     "_children": [
       {
-        "__id__": 5
+        "__id__": 11
       }
     ],
     "_active": true,
     "_components": [
       {
-        "__id__": 11
+        "__id__": 17
       },
       {
-        "__id__": 13
+        "__id__": 19
       },
       {
-        "__id__": 15
+        "__id__": 21
       },
       {
-        "__id__": 17
+        "__id__": 23
       }
     ],
     "_prefab": {
-      "__id__": 39
+      "__id__": 45
     },
     "_lpos": {
       "__type__": "cc.Vec3",
@@ -252,20 +391,20 @@
     "_objFlags": 0,
     "__editorExtras__": {},
     "_parent": {
-      "__id__": 4
+      "__id__": 10
     },
     "_children": [],
     "_active": true,
     "_components": [
       {
-        "__id__": 6
+        "__id__": 12
       },
       {
-        "__id__": 8
+        "__id__": 14
       }
     ],
     "_prefab": {
-      "__id__": 10
+      "__id__": 16
     },
     "_lpos": {
       "__type__": "cc.Vec3",
@@ -302,11 +441,11 @@
     "_objFlags": 0,
     "__editorExtras__": {},
     "node": {
-      "__id__": 5
+      "__id__": 11
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 7
+      "__id__": 13
     },
     "_contentSize": {
       "__type__": "cc.Size",
@@ -330,11 +469,11 @@
     "_objFlags": 0,
     "__editorExtras__": {},
     "node": {
-      "__id__": 5
+      "__id__": 11
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 9
+      "__id__": 15
     },
     "_customMaterial": null,
     "_srcBlendFactor": 2,
@@ -388,11 +527,11 @@
     "_objFlags": 0,
     "__editorExtras__": {},
     "node": {
-      "__id__": 4
+      "__id__": 10
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 12
+      "__id__": 18
     },
     "_contentSize": {
       "__type__": "cc.Size",
@@ -416,11 +555,11 @@
     "_objFlags": 0,
     "__editorExtras__": {},
     "node": {
-      "__id__": 4
+      "__id__": 10
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 14
+      "__id__": 20
     },
     "_customMaterial": null,
     "_srcBlendFactor": 2,
@@ -461,11 +600,11 @@
     "_objFlags": 0,
     "__editorExtras__": {},
     "node": {
-      "__id__": 4
+      "__id__": 10
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 16
+      "__id__": 22
     },
     "_alignFlags": 37,
     "_target": null,
@@ -497,17 +636,17 @@
     "_objFlags": 0,
     "__editorExtras__": {},
     "node": {
-      "__id__": 4
+      "__id__": 10
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 18
+      "__id__": 24
     },
     "_scrollView": {
-      "__id__": 19
+      "__id__": 25
     },
     "_handle": {
-      "__id__": 8
+      "__id__": 14
     },
     "_direction": 1,
     "_enableAutoHide": false,
@@ -524,11 +663,11 @@
     "_objFlags": 0,
     "__editorExtras__": {},
     "node": {
-      "__id__": 3
+      "__id__": 9
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 20
+      "__id__": 26
     },
     "bounceDuration": 0.23,
     "brake": 0.75,
@@ -539,11 +678,11 @@
     "cancelInnerEvents": true,
     "scrollEvents": [],
     "_content": {
-      "__id__": 21
+      "__id__": 27
     },
     "_horizontalScrollBar": null,
     "_verticalScrollBar": {
-      "__id__": 17
+      "__id__": 23
     },
     "_id": ""
   },
@@ -557,23 +696,23 @@
     "_objFlags": 0,
     "__editorExtras__": {},
     "_parent": {
-      "__id__": 22
+      "__id__": 28
     },
     "_children": [],
     "_active": true,
     "_components": [
       {
-        "__id__": 32
+        "__id__": 38
       },
       {
-        "__id__": 34
+        "__id__": 40
       },
       {
-        "__id__": 36
+        "__id__": 42
       }
     ],
     "_prefab": {
-      "__id__": 38
+      "__id__": 44
     },
     "_lpos": {
       "__type__": "cc.Vec3",
@@ -610,30 +749,30 @@
     "_objFlags": 0,
     "__editorExtras__": {},
     "_parent": {
-      "__id__": 3
+      "__id__": 9
     },
     "_children": [
       {
-        "__id__": 21
+        "__id__": 27
       }
     ],
     "_active": true,
     "_components": [
       {
-        "__id__": 23
+        "__id__": 29
       },
       {
-        "__id__": 25
+        "__id__": 31
       },
       {
-        "__id__": 27
+        "__id__": 33
       },
       {
-        "__id__": 29
+        "__id__": 35
       }
     ],
     "_prefab": {
-      "__id__": 31
+      "__id__": 37
     },
     "_lpos": {
       "__type__": "cc.Vec3",
@@ -670,11 +809,11 @@
     "_objFlags": 0,
     "__editorExtras__": {},
     "node": {
-      "__id__": 22
+      "__id__": 28
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 24
+      "__id__": 30
     },
     "_contentSize": {
       "__type__": "cc.Size",
@@ -698,11 +837,11 @@
     "_objFlags": 0,
     "__editorExtras__": {},
     "node": {
-      "__id__": 22
+      "__id__": 28
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 26
+      "__id__": 32
     },
     "_type": 0,
     "_inverted": false,
@@ -720,11 +859,11 @@
     "_objFlags": 0,
     "__editorExtras__": {},
     "node": {
-      "__id__": 22
+      "__id__": 28
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 28
+      "__id__": 34
     },
     "_customMaterial": null,
     "_srcBlendFactor": 2,
@@ -766,11 +905,11 @@
     "_objFlags": 0,
     "__editorExtras__": {},
     "node": {
-      "__id__": 22
+      "__id__": 28
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 30
+      "__id__": 36
     },
     "_alignFlags": 45,
     "_target": null,
@@ -815,11 +954,11 @@
     "_objFlags": 0,
     "__editorExtras__": {},
     "node": {
-      "__id__": 21
+      "__id__": 27
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 33
+      "__id__": 39
     },
     "_contentSize": {
       "__type__": "cc.Size",
@@ -843,11 +982,11 @@
     "_objFlags": 0,
     "__editorExtras__": {},
     "node": {
-      "__id__": 21
+      "__id__": 27
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 35
+      "__id__": 41
     },
     "_alignFlags": 40,
     "_target": null,
@@ -879,11 +1018,11 @@
     "_objFlags": 0,
     "__editorExtras__": {},
     "node": {
-      "__id__": 21
+      "__id__": 27
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 37
+      "__id__": 43
     },
     "_resizeMode": 1,
     "_layoutType": 2,
@@ -943,11 +1082,11 @@
     "_objFlags": 0,
     "__editorExtras__": {},
     "node": {
-      "__id__": 3
+      "__id__": 9
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 41
+      "__id__": 47
     },
     "_contentSize": {
       "__type__": "cc.Size",
@@ -971,11 +1110,11 @@
     "_objFlags": 0,
     "__editorExtras__": {},
     "node": {
-      "__id__": 3
+      "__id__": 9
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 43
+      "__id__": 49
     },
     "_customMaterial": null,
     "_srcBlendFactor": 2,
@@ -1035,17 +1174,17 @@
     "_active": true,
     "_components": [
       {
-        "__id__": 46
+        "__id__": 52
       },
       {
-        "__id__": 48
+        "__id__": 54
       },
       {
-        "__id__": 50
+        "__id__": 56
       }
     ],
     "_prefab": {
-      "__id__": 52
+      "__id__": 58
     },
     "_lpos": {
       "__type__": "cc.Vec3",
@@ -1082,11 +1221,11 @@
     "_objFlags": 0,
     "__editorExtras__": {},
     "node": {
-      "__id__": 45
+      "__id__": 51
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 47
+      "__id__": 53
     },
     "_contentSize": {
       "__type__": "cc.Size",
@@ -1110,11 +1249,11 @@
     "_objFlags": 0,
     "__editorExtras__": {},
     "node": {
-      "__id__": 45
+      "__id__": 51
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 49
+      "__id__": 55
     },
     "_customMaterial": null,
     "_srcBlendFactor": 2,
@@ -1155,11 +1294,11 @@
     "_objFlags": 0,
     "__editorExtras__": {},
     "node": {
-      "__id__": 45
+      "__id__": 51
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 51
+      "__id__": 57
     },
     "clickEvents": [],
     "_interactable": true,
@@ -1199,7 +1338,7 @@
     "_duration": 0.1,
     "_zoomScale": 1.2,
     "_target": {
-      "__id__": 45
+      "__id__": 51
     },
     "_id": ""
   },
@@ -1230,7 +1369,7 @@
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 54
+      "__id__": 60
     },
     "_contentSize": {
       "__type__": "cc.Size",
@@ -1258,7 +1397,7 @@
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 56
+      "__id__": 62
     },
     "_customMaterial": null,
     "_srcBlendFactor": 2,
@@ -1316,12 +1455,12 @@
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 59
+      "__id__": 65
     },
     "_contentSize": {
       "__type__": "cc.Size",
       "width": 1920,
-      "height": 1080
+      "height": 1920
     },
     "_anchorPoint": {
       "__type__": "cc.Vec2",
@@ -1344,7 +1483,7 @@
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 61
+      "__id__": 67
     },
     "_id": ""
   },
@@ -1362,7 +1501,7 @@
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 63
+      "__id__": 69
     },
     "_alignFlags": 45,
     "_target": null,
@@ -1398,13 +1537,13 @@
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 65
+      "__id__": 71
     },
     "content": {
-      "__id__": 21
+      "__id__": 27
     },
     "btn_close": {
-      "__id__": 45
+      "__id__": 51
     },
     "item_prefab": {
       "__uuid__": "d5d08d34-7a24-461f-8c31-34c31026476e",

+ 0 - 1
assets/script/config.ts

@@ -264,7 +264,6 @@ export class config {
         more_scene_is_show_arrow_event:21, //多场景-是否显示箭头事件
         more_scene_jump_assigned_page_event:22, //多场景-跳转指定页数事件
         top_view_hide:23,//弹窗隐藏
-
         event_group:100, //事件组
     }
 

+ 36 - 7
assets/script/edit/animation/add_animation.ts

@@ -16,6 +16,8 @@ export class add_animation extends Component {
     @property(Node) btn_add_animation:Node = null;
     @property(Node) btn_delete_animation:Node = null;
     @property(Node) btn_edit_animation:Node = null;
+    @property(Node) btn_select_server_animation:Node = null;
+    @property(Node) btn_set_server_animation:Node = null;
     @property(Node) new_animation_node:Node = null;
     @property(Node) edit_animation_node:Node = null;
     private call_back = null;
@@ -44,13 +46,14 @@ export class add_animation extends Component {
             }
             tools.show_dialog("是否删除当前选中的动画?",()=>{
                 this.m_list.splice(this.cur_select.getIndex(),1)
-                this.cur_select.node.removeFromParent()
-                if(this.m_list.length<=0){
-                    this.btn_delete_animation.getComponent(Button).interactable = false;
-                }else{
-                    this.cur_select = this.content.children[this.content.children.length-1].getComponent(add_animation_item)
-                    this.cur_select.selectStatus()
-                }
+                this.updateView()
+                // this.cur_select.node.removeFromParent()
+                // if(this.m_list.length<=0){
+                //     this.btn_delete_animation.getComponent(Button).interactable = false;
+                // }else{
+                //     this.cur_select = this.content.children[this.content.children.length-1].getComponent(add_animation_item)
+                //     this.cur_select.selectStatus()
+                // }
                 if(this.call_back!=null){
                     this.call_back(this.m_list)
                 }
@@ -58,6 +61,32 @@ export class add_animation extends Component {
         })
         this.btn_edit_animation.getComponent(Button).interactable = list.length<=0?false:true
         this.btn_delete_animation.getComponent(Button).interactable = list.length<=0?false:true
+
+        this.btn_select_server_animation.on(Node.EventType.TOUCH_END, ()=>{
+            tools.requestGetAnimationList((ani_list)=>{
+                if(ani_list.length==0) {
+                    return tools.showToast('服务器还没有动画列表')
+                }
+                tools.show_select_animation_delete_list(ani_list,(item:att_ani_data)=>{
+                    if(this.m_list.length>0) {
+                        let end_item = this.m_list[this.m_list.length-1]
+                        item.ani_id = end_item.ani_id + 1
+                    }
+                    this.onCreateAni(item)
+                })
+            })
+        })
+
+        this.btn_set_server_animation.on(Node.EventType.TOUCH_END, ()=>{
+            if(this.cur_select==null) {
+                return tools.showToast('还没有动画')
+            }
+            let cur_data = this.cur_select.getData()
+            if(cur_data==null) {
+                return tools.showToast('请选择当前的动画')
+            }
+            tools.requestAddAnimationToAnimationList(cur_data)
+        })
     }
     updateView(){
         this.content.removeAllChildren()

+ 17 - 0
assets/script/edit/animation/add_animation_item.ts

@@ -1,11 +1,14 @@
 import { _decorator, Color, Component, Label, Node, Sprite } from 'cc';
 import { att_ani_data } from '../../../data/data';
+import { tools } from '../../tools';
 const { ccclass, property } = _decorator;
 
 @ccclass('add_animation_item')
 export class add_animation_item extends Component {
     @property(Node) lab_name:Node = null;
+    @property(Node) btn_delete:Node = null;
     private call_back = null;
+    private delete_call_back = null;
     private m_data:att_ani_data = null;
     private m_index:number  =0;
     public initView(data:att_ani_data,call,index){
@@ -13,6 +16,7 @@ export class add_animation_item extends Component {
         this.m_index = index;
         this.m_data = data;
         this.lab_name.getComponent(Label).string = this.m_data.ani_name;
+        this.btn_delete.active = false
         this.node.on(Node.EventType.TOUCH_END,()=>{
             if(this.call_back!=null){
                 this.call_back(this)
@@ -21,6 +25,19 @@ export class add_animation_item extends Component {
         this.unSelectStatus()
     }
 
+    public initViewWithDelete(data:att_ani_data,call,delete_call,index) {
+        this.initView(data,call,index)
+        this.delete_call_back = delete_call
+        this.btn_delete.active = true
+        this.btn_delete.on(Node.EventType.TOUCH_END, ()=>{
+            tools.show_dialog('是否删除当前动画',()=>{
+                if(this.delete_call_back!=null) {
+                    this.delete_call_back(this)
+                }
+            })
+        })
+    }
+
     public getIndex(){
         return this.m_index;
     }

+ 1 - 1
assets/script/edit/animation/edit_animation.ts

@@ -59,7 +59,7 @@ export class edit_animation extends Component {
             }
         })
         this.btn_save.on(Node.EventType.TOUCH_END, ()=> {
-            gameManager.requestSaveEditScene()
+            tools.requestSaveEditScene()
         })
         this.btn_run.on(Node.EventType.TOUCH_END,()=>{
             if(this.m_data.ani_frame_list.length<2){

+ 30 - 5
assets/script/edit/animation/select_animation.ts

@@ -1,6 +1,7 @@
 import { _decorator, Component, instantiate, Node, Prefab } from 'cc';
-import { att_ani_data } from '../../../data/data';
+import { att_ani_data, attributes_data } from '../../../data/data';
 import { add_animation_item } from './add_animation_item';
+import { tools } from '../../tools';
 const { ccclass, property } = _decorator;
 
 @ccclass('select_animation')
@@ -10,6 +11,12 @@ export class select_animation extends Component {
     @property(Prefab) item_prefab:Prefab = null;
     private call_back = null;
     private m_list:att_ani_data[] = []
+    protected start(): void {
+        this.btn_close.on(Node.EventType.TOUCH_END,()=>{
+            this.close()
+        })
+    }
+    
     public show(list:att_ani_data[],call,id:number=-1){
         this.m_list = list;
         this.call_back = call;
@@ -22,12 +29,18 @@ export class select_animation extends Component {
                 item.getComponent(add_animation_item).selectStatus()
             }
         }
-
-        this.btn_close.on(Node.EventType.TOUCH_END,()=>{
-            this.close()
-        })
     }
 
+    public showWithDelete(list:att_ani_data[],call,id:number=-1){
+        this.m_list = list;
+        this.call_back = call;
+        for (let index = 0; index < this.m_list.length; index++) {
+            const element = this.m_list[index];
+            let item = instantiate(this.item_prefab)
+            item.parent = this.content;
+            item.getComponent(add_animation_item).initViewWithDelete(element,this.onItemClick.bind(this),this.onItemDeleteClick.bind(this),index)
+        }
+    }
 
     onItemClick(item:add_animation_item){
         if(this.call_back!=null){
@@ -36,6 +49,18 @@ export class select_animation extends Component {
         this.close()
     }
 
+    onItemDeleteClick(item:add_animation_item) {
+        this.m_list.splice(item.getIndex(),1)
+        this.content.removeAllChildren()
+        for (let index = 0; index < this.m_list.length; index++) {
+            const element = this.m_list[index];
+            let item = instantiate(this.item_prefab)
+            item.parent = this.content;
+            item.getComponent(add_animation_item).initViewWithDelete(element,this.onItemClick.bind(this),this.onItemDeleteClick.bind(this),index)
+        }
+        tools.requestSyncAnimationList(this.m_list)
+    }
+
     close(){
         this.node.destroy()
     }

+ 1 - 1
assets/script/edit/edit_scene.ts

@@ -88,7 +88,7 @@ export class edit_scene extends Component {
             tools.game_run_all()
         })
         this.btn_save.on(Node.EventType.TOUCH_END,()=>{
-            gameManager.requestSaveEditScene()
+            tools.requestSaveEditScene()
         })
         this.btn_delete.on(Node.EventType.TOUCH_END,()=>{
             if(this.m_main.control_view.get_bag_data().content.length<=0){

+ 3 - 3
assets/script/edit/event/edit_event.ts

@@ -266,13 +266,13 @@ export class edit_event extends Component {
             case config.event_type.show_scene_title: //显示一个场景标签
                 this.show_scene_title.getComponent(event_show_scene_title).initView(this.m_data.event_item_show_scene_title_data)
             break;
-            case config.event_type.scene_ani: //
+            case config.event_type.scene_ani: //场景动画
                 this.scene_ani.getComponent(event_scene_ani).initView(this.m_data.event_item_scene_ani)
             break;
-            case config.event_type.delete_drag_other_data: //
+            case config.event_type.delete_drag_other_data: //删除其他拖拽目标的属性
                 this.delete_drag_other_data.getComponent(event_delete_drag_other_data_view).initView(this.m_data.event_item_delete_drag_other_data)
             break;
-            case config.event_type.stop_play_loop_sound: //
+            case config.event_type.stop_play_loop_sound: //停止一个音效
                 this.stop_play_loop_sound.getComponent(event_stop_play_loop_sound).initView(this.m_data.event_item_stop_play_loop_sound_data)
             break;
             case config.event_type.switch_scene_event://多场景-切换场景事件

+ 16 - 12
assets/script/edit/event/event_play_ani_view.ts

@@ -17,6 +17,18 @@ export class event_play_ani_view extends Component {
     private m_widget_item_data:widget_item_data = null;
     public initView(data:event_item_play_ani){
         this.m_data = data;
+
+        this.btn_select_widget.on(Node.EventType.TOUCH_END,()=>{
+            let list =  Attributes.Singleton.get_cur_scene_all_only_widget()
+            if(list.length<=0){
+                return tools.showToast("当前场景没有添加控件!")
+            }
+            tools.show_select_widget_list(list,(item:widget_item_data)=>{
+                this.m_data.binding_widget_id = item.att.id;
+                this.updateStatus(item)
+            },this.m_data.binding_widget_id)
+        })
+
         this.btn_select_ani_id.on(Node.EventType.TOUCH_END,()=>{
             if(this.m_data.binding_widget_id===-1){
                 return tools.showToast("请先绑定控件")
@@ -31,18 +43,8 @@ export class event_play_ani_view extends Component {
                 this.m_data.ani_id = item.ani_id;
                 this.updateStatus(this.m_widget_item_data)
             },this.m_data.ani_id)
-            
-        })
-        this.btn_select_widget.on(Node.EventType.TOUCH_END,()=>{
-            let list =  Attributes.Singleton.get_cur_scene_all_only_widget()
-            if(list.length<=0){
-                return tools.showToast("当前场景没有添加控件!")
-            }
-            tools.show_select_widget_list(list,(item:widget_item_data)=>{
-                this.m_data.binding_widget_id = item.att.id;
-                this.updateStatus(item)
-            },this.m_data.binding_widget_id)
         })
+
         this.btn_widget_pos.on(Node.EventType.TOUCH_END,()=>{
             if(this.m_data.binding_widget_id===-1){
                 return tools.showToast("当前没有设置控件")
@@ -54,7 +56,9 @@ export class event_play_ani_view extends Component {
             ClientEvent.dispatchEvent(config.Event.ChangeSelectPage,page)
             ClientEvent.dispatchEvent(config.Event.UpdateAttributesToView,this.m_widget_item_data.att,config.attributes_list_type.find_widget_pos)
         })
+
         this.updateStatus()
+
         ClientEvent.on(config.Event.UpdateAttributesToView,this.UpdateAttributesToView,this)
     }
 
@@ -78,7 +82,7 @@ export class event_play_ani_view extends Component {
             this.btn_widget_pos.active = false;
             this.lab_cur_select_widget.getComponent(Label).string = "未绑定控件"
             this.lab_cur_select_ani.getComponent(Label).string = "未选择动画"
-        }else{
+        } else{
             if(item!=null){
                 this.m_widget_item_data = item;
                 this.lab_cur_select_widget.getComponent(Label).string = `id:${item.att.id}`

+ 3 - 1
assets/script/edit/search/search_node.ts

@@ -174,6 +174,9 @@ export class search_node extends Component {
             case config.event_type.more_scene_jump_assigned_page_event://22多场景-跳转指定页数事件
             c_text = `页数:${c_event_item.event_item_more_scene_jump_assigned_page_event_data.page_number}`
             break;
+            case config.event_type.top_view_hide://23弹窗隐藏  
+            c_text = `${c_event_item.event_item_top_view_hide_data.binding_ui_id}`
+            break;
             case config.event_type.event_group://100事件组
             let line_feed_str = '\n'
             let event_list = c_event_item.event_item_event_group_data.list
@@ -406,7 +409,6 @@ export class search_node extends Component {
                         item.getComponent(Label).string = `${event.event_name}-id:${event.event_id}绑定`
                     }
                 break;
-            
             }
         }
     }

+ 24 - 6
assets/script/edit/task/scene_task.ts

@@ -1,4 +1,4 @@
-import { _decorator, Component, instantiate, Label, Layers, Layout, Node, Prefab, ScrollView, Tween, tween, UITransform, Vec2, Vec3 } from 'cc';
+import { _decorator, Component, instantiate, Label, Layers, Layout, Node, Prefab, ScrollView, Toggle, Tween, tween, UITransform, Vec2, Vec3 } from 'cc';
 import { tools } from '../../tools';
 import { edit_scene } from '../edit_scene';
 import { ClientEvent } from '../../clientEvent';
@@ -26,6 +26,8 @@ export class scene_task extends Component {
     @property(Node) task_da_guai:Node = null;
     @property(Node) task_guo_ju_qing_dai_dao_ju:Node = null;
     @property(Node) search_node:Node = null;
+    @property(Node) task_open_interlude_default_animation:Node = null;
+    @property(Node) task_open_interlude_default_animation_check_select:Node = null;
     private m_edit_scene:edit_scene = null;
     private isUpdateStatus:boolean = false;
     protected start(): void {
@@ -56,6 +58,13 @@ export class scene_task extends Component {
             tools.show_edit_event_view()
         })
 
+        this.task_open_interlude_default_animation_check_select.on(Toggle.EventType.TOGGLE, ()=>{
+            let task_data = this.getTaskData()
+            if(task_data!=null) {
+                task_data.is_open_interlude_default_animation = this.task_open_interlude_default_animation_check_select.getComponent(Toggle).isChecked
+            }
+        })
+
         this.search_node.getComponent(Search).searchClick((id: string)=> {
             this.searchContentLocationList(true,id)
         }, (text: string)=> {
@@ -92,14 +101,16 @@ export class scene_task extends Component {
         if(scene_data!=null){
             this.btn_update.active = true;
             this.btn_edit_event.active = true;
-           let data:scene_item_data = scene_data.getData()
-           if(!data._task_data){
+            let data:scene_item_data = scene_data.getData()
+            if(!data._task_data){
                 this.btn_add_task.active = true;
                 this.btn_add_event.active = false;
-           }else{
+                this.task_open_interlude_default_animation.active = false;
+            }else{
                 this.btn_add_task.active = false;
                 this.btn_add_event.active = true;
                 this.lab_task_title.getComponent(Label).string = config.task_type_map.get(data._task_data.type)
+                this.showOpenInterludeDefaultAnimation(data)
                 this.initSceneAllEvent()
                 switch (data._task_data.type) {
                     case config.task_type.da_guai:
@@ -124,8 +135,6 @@ export class scene_task extends Component {
                 }
             }
         }
-
-
     }
     protected onEnable(): void {
 
@@ -140,6 +149,14 @@ export class scene_task extends Component {
         this.node.getComponent(ScrollView).scrollToTop()
     }
 
+    public showOpenInterludeDefaultAnimation(data:scene_item_data) {
+        if(data._task_data.is_open_interlude_default_animation==undefined) {
+            data._task_data.is_open_interlude_default_animation = true;
+        }
+        this.task_open_interlude_default_animation.active = true;
+        this.task_open_interlude_default_animation_check_select.getComponent(Toggle).isChecked = data._task_data.is_open_interlude_default_animation
+    }
+
     public addTask(type:number){
         let scene_data = this.m_edit_scene.getCurEditBaseView();
         if(scene_data!=null){
@@ -150,6 +167,7 @@ export class scene_task extends Component {
             }
             this.btn_add_task.active = false;
             this.btn_add_event.active = true;
+            this.showOpenInterludeDefaultAnimation(data)
             switch (type) {
                 case config.task_type.da_guai:
                     if( data._task_data._da_guai==null){

+ 32 - 0
assets/script/http.ts

@@ -54,6 +54,38 @@ export class http  {
         };
     }
 
+    static get(url,call_back){
+        var xml =  new XMLHttpRequest()
+        xml.open('GET',http.domain+url)
+        xml.setRequestHeader('Content-Type','application/json');
+        xml.send()
+        var array:String[] = ['loadstart','abort', 'error', 'load', 'loadend', 'timeout'];
+        array.forEach(function (eventName) {
+            xml[('on' + eventName) as 'onloadstart' | 'onabort' | 'onerror' | 'onload' | 'onloadend' | 'ontimeout'] = function () {
+                var str =  '\nEvent : ' + eventName;
+                var lstr = ""
+                if (eventName === 'timeout') {
+                    lstr += '(timeout)';
+                }
+                else if (eventName === 'loadend') {
+                    lstr += '...loadend!';
+                }else if (eventName === 'onerror') {
+   
+                }
+                console.log("str==",str)
+                console.log("lstr==",lstr)
+            };
+        });
+
+        // Special event
+        xml.onreadystatechange = function () {
+            if (xml.readyState === 4 && xml.status >= 200) {
+                call_back(null,xml.responseText);
+            } else if (xml.status === 404) {
+                call_back('404 page not found!',null);
+            } 
+        }
+    }
 
     public static getGameList(page:number,limit:number=6):string{
         return `/smistatic/levels/${limit}_${page}.json`

+ 35 - 31
assets/script/run/gameManager.ts

@@ -183,19 +183,44 @@ export class gameManager extends Component {
     }
 
     public nextScene(){
-        this.onLaunch(()=>{
-            this.mCurSceneIndex++;
-            let not_scene = false;
-            if(this.mCurSceneIndex>=this.mGameData.length){
-                not_scene = true;
+        this.mCurSceneIndex++;
+        let not_scene = false;
+        if(this.mCurSceneIndex>=this.mGameData.length){
+            not_scene = true;
+        }
+        if(!not_scene){
+            let task_data = this.mGameData[this.mCurSceneIndex]._task_data
+            if(task_data==null||task_data==undefined) {
+                return tools.showToast('没有任务')
             }
-            if(!not_scene){
+            let call_back =(()=>{
                 this.mGameRun.unInit()
                 this.startLevelGame()
-            }else{
-                // tools.showToast("没有场景了!")
+            })            
+            if(task_data.is_open_interlude_default_animation) {
+                this.onLaunch(()=>{
+                    call_back()
+                })
+            } else {
+                call_back()
             }
-        })
+        }else{
+            // tools.showToast("没有场景了!")
+        }
+
+        // this.onLaunch(()=>{
+        //     this.mCurSceneIndex++;
+        //     let not_scene = false;
+        //     if(this.mCurSceneIndex>=this.mGameData.length){
+        //         not_scene = true;
+        //     }
+        //     if(!not_scene){
+        //         this.mGameRun.unInit()
+        //         this.startLevelGame()
+        //     }else{
+        //         // tools.showToast("没有场景了!")
+        //     }
+        // })
     }
     public gameOver(){
         ClientEvent.dispatchEvent(config.EventRun.ON_WIN)
@@ -298,7 +323,7 @@ export class gameManager extends Component {
             this.startGame()
         },0.5)
         if(gameManager.Singleton.getLevelData()){
-            this.mSceneManager.playMusic(this.mLevelData.piped_music,true)
+            // this.mSceneManager.playMusic(this.mLevelData.piped_music,true)
         }
     }
 
@@ -551,27 +576,6 @@ export class gameManager extends Component {
         return this.mCurSceneIndex;
     }
 
-    //保存编辑场景
-    public static requestSaveEditScene() {
-        tools.show_loading(()=>{
-            // let data = new FormData()
-            let content = control.Singleton.get_bag_data().content
-            let zujian_id = config.last_id;
-            let id = control.Singleton.get_bag_data().id;
-            // data.append("content",JSON.stringify(content))
-            // data.append("zujian_id",zujian_id+"")
-            // data.append("id",id+"")
-            console.log("btn_save",content)
-            let request_data = {"content":JSON.stringify(content),"zujian_id":zujian_id,"id":id}
-            http.post("/tool/mysnote/save",  request_data, (err,data)=>{
-                if(!err){
-                    tools.showToast("保存成功!")
-                }
-                tools.hide_loading()
-            })
-        })
-    }
-
     public static LookVideoCallBack(call){
         if(call!=null){
             call()

+ 0 - 8
assets/script/run/scene_page.ts

@@ -103,14 +103,6 @@ export class scene_page extends Component {
                 return tools.showToast(`错误的动画配置!id:${this.mData.att.id}-请检查`)
             }
         }else if(event.type===config.event_type.delete_drag_other_data){
-            // let wd = event.event_item_delete_drag_other_data.widget_id
-            // let index = event.event_item_delete_drag_other_data.delete_drag_other_index
-            // item = this.mWidgetList.get(wd)
-            // if(item){
-            //     item.getComponent(widget_drag).deleteOtherDrag(index)
-            // }else{
-            //     tools.showToast("删除拖拽目标配置错误!")
-            // }
             this.eventDeleteDragOtherData(event)
         }else if(event.type===config.event_type.active_event) {
             let data = event.event_item_active_event_data

+ 3 - 1
assets/script/run/ui/count_down.ts

@@ -81,7 +81,9 @@ export class count_down extends Component {
         },1)
     }
 
-
+    public stopCountDown() {
+        this.unscheduleAllCallbacks()
+    }
 
 }
 

+ 9 - 2
assets/script/run/ui_layer.ts

@@ -147,8 +147,8 @@ export class ui_layer extends Component {
         }else if(event.type===config.event_type.stop_active_event){
             let time_count = this.mCountDownLlist.get(widgetId)
             if(time_count!=null){
-                if(this.mAttCountDown==null){
-                    this.createCountDown(time_count)   
+                if(this.mAttCountDown!=null){
+                    this.stopCountDown()
                 }
             }
         }else if(event.type===config.event_type.hide){
@@ -213,6 +213,13 @@ export class ui_layer extends Component {
         ClientEvent.off(config.EventRun.ON_WIDGET_FINISH_COLLECT_EVENT,this.onCountDownListening.bind(this),this)
     }
 
+    stopCountDown() {
+        this.mAttCountDown.stopCountDown()
+        this.mAttCountDown.node.removeFromParent()
+        this.mAttCountDown = null;
+        ClientEvent.off(config.EventRun.ON_WIDGET_FINISH_COLLECT_EVENT,this.onCountDownListening.bind(this),this)
+    }
+
     initTaskUi(data:task_data){
         this.ui_manifestations.active = false;
         this.content_rule_and_tips.active = false;

+ 75 - 1
assets/script/tools.ts

@@ -1,4 +1,4 @@
-import { _decorator, assetManager, Color, Component, ImageAsset, instantiate, Node, Prefab, resources, Size, Sprite, SpriteFrame, Texture2D, Vec2 } from 'cc';
+import { _decorator, assetManager, Color, Component, ImageAsset, instantiate, Node, Prefab, resources, Size, Sprite, SpriteFrame, sys, Texture2D, Vec2 } from 'cc';
 import { main } from './main';
 import { toast } from './toast';
 import { add_scene } from './edit/add_scene';
@@ -34,6 +34,8 @@ import { select_task_dai_dao_ju } from './edit/task/select_task_dai_dao_ju';
 import { set_color } from './edit/set_color';
 import { show_setup_res_anchor } from './edit/show_setup_res_anchor';
 import { dialog_input } from './dialog_input';
+import { control } from './edit/control';
+import { http } from './http';
 export class tools  {
 
     public static show_dialog(title="是否确定?",sure_callback,cancel_callback=null){
@@ -179,6 +181,13 @@ export class tools  {
         }) 
     }
 
+    public static show_select_animation_delete_list(list:att_ani_data[],call,id:number=-1) {
+        resources.load("prefab/select_animation",Prefab,(err, prefab)=>{
+            let node = instantiate(prefab);
+            node.parent = main.g_canvas.node;
+            node.getComponent(select_animation).showWithDelete(list,call,id)
+        }) 
+    }
 
     public static show_select_ui_top_type(call){
         resources.load("prefab/ui/select_ui_top_type",Prefab,(err, prefab)=>{
@@ -388,6 +397,71 @@ export class tools  {
             node.getComponent(set_color).show(color,call)
         }) 
     }
+
+    //请求保存编辑场景
+    public static requestSaveEditScene() {
+        tools.show_loading(()=>{
+            // let data = new FormData()
+            let content = control.Singleton.get_bag_data().content
+            let zujian_id = config.last_id;
+            let id = control.Singleton.get_bag_data().id;
+            // data.append("content",JSON.stringify(content))
+            // data.append("zujian_id",zujian_id+"")
+            // data.append("id",id+"")
+            console.log("btn_save",content)
+            let request_data = {"content":JSON.stringify(content),"zujian_id":zujian_id,"id":id}
+            http.post("/tool/mysnote/save",  request_data, (err,data)=>{
+                if(!err){
+                    tools.showToast("保存成功!")
+                }
+                tools.hide_loading()
+            })
+        })
+    }
+
+    //请求获取服务器动画列表
+    public static requestGetAnimationList(call) {
+        http.get('/tool/mysnote/get_animation',(err,data)=>{
+            // console.log('err=',err,'data=',data)
+            let _data = JSON.parse(data);
+            if(_data.code==config.MSG_CODE.SUCCESS) {
+                let content_list = JSON.parse(_data.content.content)
+                let list:att_ani_data[] = []
+                for (let index = 0; index < content_list.length; index++) {
+                    const element = content_list[index];
+                    list.push(element)
+                }
+                call(list)
+            } else {
+                tools.showToast('获取动画列表失败')
+            }
+        })
+    }
+
+    //添加动画到动画列表
+    public static requestAddAnimationToAnimationList(ani_data:att_ani_data) {
+        let string = ani_data.ani_name
+        tools.show_dialog_input(string, (content)=>{
+            tools.requestGetAnimationList((ani_list)=>{
+                let copy_ani_data = JSON.parse(JSON.stringify(ani_data))  //深拷贝
+                copy_ani_data.ani_name = content
+                ani_list.push(copy_ani_data)
+                tools.requestSyncAnimationList(ani_list)
+            })
+        })
+    }
+
+    //同步服务器动画列表
+    public static requestSyncAnimationList(list:att_ani_data[]) {
+        let request_data = {"content": JSON.stringify(list)}
+        // console.log('request_data=',request_data)
+        http.post('/tool/mysnote/snyc_animation',request_data, (err,data)=>{
+            // console.log('同步 err=',err,'data',data)
+            if(!err){
+                tools.showToast("动画列表同步成功!")
+            }
+        })
+    }
 }
 
 

部分文件因文件數量過多而無法顯示