فهرست منبع

Merge branch 'master' of http://118.178.135.110:3000/fish/tower_client

# Conflicts:
#	assets/script/game/ui/login/LoginUI.ts
wujia 7 ماه پیش
والد
کامیت
899d4d8f80
36فایلهای تغییر یافته به همراه1493 افزوده شده و 4978 حذف شده
  1. 0 4060
      assets/package/prefab/login/MainUI.prefab
  2. 0 13
      assets/package/prefab/login/MainUI.prefab.meta
  3. 7 7
      assets/package/prefab/ui/tower/hero/npc001.prefab
  4. 64 39
      assets/package/prefab/ui/tower/hero/npc002.prefab
  5. 1 1
      assets/package/prefab/ui/tower/hurt.prefab
  6. 204 300
      assets/package/prefab/ui/tower/tower.prefab
  7. 34 40
      assets/package/prefab/ui/tower/zombie.prefab
  8. 92 92
      assets/package/spine/qingwa.atlas
  9. 60 72
      assets/package/spine/qingwa.json
  10. BIN
      assets/package/spine/qingwa.png
  11. 30 30
      assets/package/spine/qingwa.png.meta
  12. 9 0
      assets/package/spine/xiongmao.meta
  13. 454 0
      assets/package/spine/xiongmao/skeleton.atlas
  14. 12 0
      assets/package/spine/xiongmao/skeleton.atlas.meta
  15. 0 0
      assets/package/spine/xiongmao/skeleton.json
  16. 11 0
      assets/package/spine/xiongmao/skeleton.json.meta
  17. BIN
      assets/package/spine/xiongmao/skeleton.png
  18. 134 0
      assets/package/spine/xiongmao/skeleton.png.meta
  19. BIN
      assets/package/texture/tower/ui/02-1.png
  20. 44 44
      assets/package/texture/tower/ui/02-1.png.meta
  21. BIN
      assets/package/texture/tower/ui/02.png
  22. BIN
      assets/package/texture/tower/ui/1.png
  23. 20 20
      assets/package/texture/tower/ui/1.png.meta
  24. 4 6
      assets/script/framework/config/LayerConf.ts
  25. 15 0
      assets/script/framework/util/StringUtil.ts
  26. 7 7
      assets/script/game/ui/login/LoginUI.ts
  27. 0 156
      assets/script/game/ui/login/MainUI.ts
  28. 0 9
      assets/script/game/ui/login/MainUI.ts.meta
  29. 136 47
      assets/script/game/ui/tower/TowerUI.ts
  30. 33 1
      assets/script/game/ui/tower/base/BattleEventUtil.ts
  31. 1 1
      assets/script/game/ui/tower/conf/HeroConf.ts
  32. 1 1
      assets/script/game/ui/tower/conf/MapConf.ts
  33. 41 14
      assets/script/game/ui/tower/control/HeroControl.ts
  34. 3 1
      assets/script/game/ui/tower/data/BattleUtil.ts
  35. 4 4
      assets/script/game/ui/tower/data/MapData.ts
  36. 72 13
      assets/script/game/ui/tower/node/Hero.ts

+ 0 - 4060
assets/package/prefab/login/MainUI.prefab

@@ -1,4060 +0,0 @@
-[
-  {
-    "__type__": "cc.Prefab",
-    "_name": "MainUI",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "_native": "",
-    "data": {
-      "__id__": 1
-    },
-    "optimizationPolicy": 0,
-    "persistent": false
-  },
-  {
-    "__type__": "cc.Node",
-    "_name": "MainUI",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "_parent": null,
-    "_children": [
-      {
-        "__id__": 2
-      }
-    ],
-    "_active": true,
-    "_components": [
-      {
-        "__id__": 165
-      },
-      {
-        "__id__": 167
-      },
-      {
-        "__id__": 169
-      },
-      {
-        "__id__": 171
-      }
-    ],
-    "_prefab": {
-      "__id__": 173
-    },
-    "_lpos": {
-      "__type__": "cc.Vec3",
-      "x": 0,
-      "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.Node",
-    "_name": "Bottom",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "_parent": {
-      "__id__": 1
-    },
-    "_children": [
-      {
-        "__id__": 3
-      },
-      {
-        "__id__": 34
-      },
-      {
-        "__id__": 65
-      },
-      {
-        "__id__": 96
-      },
-      {
-        "__id__": 127
-      }
-    ],
-    "_active": true,
-    "_components": [
-      {
-        "__id__": 158
-      },
-      {
-        "__id__": 160
-      },
-      {
-        "__id__": 162
-      }
-    ],
-    "_prefab": {
-      "__id__": 164
-    },
-    "_lpos": {
-      "__type__": "cc.Vec3",
-      "x": 0,
-      "y": -610,
-      "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.Node",
-    "_name": "1",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "_parent": {
-      "__id__": 2
-    },
-    "_children": [
-      {
-        "__id__": 4
-      },
-      {
-        "__id__": 23
-      }
-    ],
-    "_active": true,
-    "_components": [
-      {
-        "__id__": 29
-      },
-      {
-        "__id__": 31
-      }
-    ],
-    "_prefab": {
-      "__id__": 33
-    },
-    "_lpos": {
-      "__type__": "cc.Vec3",
-      "x": -305,
-      "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.Node",
-    "_name": "Node.Adventure",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "_parent": {
-      "__id__": 3
-    },
-    "_children": [
-      {
-        "__id__": 5
-      },
-      {
-        "__id__": 11
-      }
-    ],
-    "_active": true,
-    "_components": [
-      {
-        "__id__": 17
-      },
-      {
-        "__id__": 19
-      }
-    ],
-    "_prefab": {
-      "__id__": 22
-    },
-    "_lpos": {
-      "__type__": "cc.Vec3",
-      "x": 0,
-      "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.Node",
-    "_name": "adventure",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "_parent": {
-      "__id__": 4
-    },
-    "_children": [],
-    "_active": true,
-    "_components": [
-      {
-        "__id__": 6
-      },
-      {
-        "__id__": 8
-      }
-    ],
-    "_prefab": {
-      "__id__": 10
-    },
-    "_lpos": {
-      "__type__": "cc.Vec3",
-      "x": 0,
-      "y": 0,
-      "z": 0
-    },
-    "_lrot": {
-      "__type__": "cc.Quat",
-      "x": 0,
-      "y": 0,
-      "z": 0,
-      "w": 1
-    },
-    "_lscale": {
-      "__type__": "cc.Vec3",
-      "x": 0.75,
-      "y": 0.75,
-      "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__": 5
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 7
-    },
-    "_contentSize": {
-      "__type__": "cc.Size",
-      "width": 100,
-      "height": 100
-    },
-    "_anchorPoint": {
-      "__type__": "cc.Vec2",
-      "x": 0.5,
-      "y": 0.5
-    },
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "be94KjTVBG4rRc79zD0QOd"
-  },
-  {
-    "__type__": "cc.Sprite",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 5
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 9
-    },
-    "_customMaterial": null,
-    "_srcBlendFactor": 2,
-    "_dstBlendFactor": 4,
-    "_color": {
-      "__type__": "cc.Color",
-      "r": 255,
-      "g": 255,
-      "b": 255,
-      "a": 255
-    },
-    "_spriteFrame": null,
-    "_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": "7fKSx4eypMtIQuZYAYyUR4"
-  },
-  {
-    "__type__": "cc.PrefabInfo",
-    "root": {
-      "__id__": 1
-    },
-    "asset": {
-      "__id__": 0
-    },
-    "fileId": "f59D5aFmhEhZ5DAspWfQWb",
-    "instance": null,
-    "targetOverrides": null,
-    "nestedPrefabInstanceRoots": null
-  },
-  {
-    "__type__": "cc.Node",
-    "_name": "Node.A_red",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "_parent": {
-      "__id__": 4
-    },
-    "_children": [],
-    "_active": false,
-    "_components": [
-      {
-        "__id__": 12
-      },
-      {
-        "__id__": 14
-      }
-    ],
-    "_prefab": {
-      "__id__": 16
-    },
-    "_lpos": {
-      "__type__": "cc.Vec3",
-      "x": 30,
-      "y": 30,
-      "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__": 11
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 13
-    },
-    "_contentSize": {
-      "__type__": "cc.Size",
-      "width": 32,
-      "height": 37
-    },
-    "_anchorPoint": {
-      "__type__": "cc.Vec2",
-      "x": 0.5,
-      "y": 0.5
-    },
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "bfXwIHflpIJYq0Ad9sAZSq"
-  },
-  {
-    "__type__": "cc.Sprite",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 11
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 15
-    },
-    "_customMaterial": null,
-    "_srcBlendFactor": 2,
-    "_dstBlendFactor": 4,
-    "_color": {
-      "__type__": "cc.Color",
-      "r": 255,
-      "g": 255,
-      "b": 255,
-      "a": 255
-    },
-    "_spriteFrame": {
-      "__uuid__": "f75e5779-572f-4f50-83c7-63f018071b0b@f9941",
-      "__expectedType__": "cc.SpriteFrame"
-    },
-    "_type": 0,
-    "_fillType": 0,
-    "_sizeMode": 1,
-    "_fillCenter": {
-      "__type__": "cc.Vec2",
-      "x": 0,
-      "y": 0
-    },
-    "_fillStart": 0,
-    "_fillRange": 0,
-    "_isTrimmedMode": true,
-    "_useGrayscale": false,
-    "_atlas": null,
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "70eppsZ1pLX5le0FZl8ZFK"
-  },
-  {
-    "__type__": "cc.PrefabInfo",
-    "root": {
-      "__id__": 1
-    },
-    "asset": {
-      "__id__": 0
-    },
-    "fileId": "a3gOTHEjtNqoqCU4gpXdfO",
-    "instance": null,
-    "targetOverrides": null,
-    "nestedPrefabInstanceRoots": null
-  },
-  {
-    "__type__": "cc.UITransform",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 4
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 18
-    },
-    "_contentSize": {
-      "__type__": "cc.Size",
-      "width": 140,
-      "height": 114
-    },
-    "_anchorPoint": {
-      "__type__": "cc.Vec2",
-      "x": 0.5,
-      "y": 0.5
-    },
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "15gYJ3ps9L6Ko3bP+xyql7"
-  },
-  {
-    "__type__": "cc.Button",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 4
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 20
-    },
-    "clickEvents": [
-      {
-        "__id__": 21
-      }
-    ],
-    "_interactable": true,
-    "_transition": 0,
-    "_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": {},
-    "_hoverSprite": null,
-    "_pressedSprite": null,
-    "_disabledSprite": null,
-    "_duration": 0.1,
-    "_zoomScale": 1.2,
-    "_target": null,
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "9cxLCbl2BMzpCMAdR9DrFl"
-  },
-  {
-    "__type__": "cc.ClickEvent",
-    "target": {
-      "__id__": 1
-    },
-    "component": "",
-    "_componentId": "333725l60NGX4XNYAWfdTV2",
-    "handler": "onOpenWin",
-    "customEventData": "Legion"
-  },
-  {
-    "__type__": "cc.PrefabInfo",
-    "root": {
-      "__id__": 1
-    },
-    "asset": {
-      "__id__": 0
-    },
-    "fileId": "f8/omhwBNBkadAsTzQq8fO",
-    "instance": null,
-    "targetOverrides": null,
-    "nestedPrefabInstanceRoots": null
-  },
-  {
-    "__type__": "cc.Node",
-    "_name": "name",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "_parent": {
-      "__id__": 3
-    },
-    "_children": [],
-    "_active": true,
-    "_components": [
-      {
-        "__id__": 24
-      },
-      {
-        "__id__": 26
-      }
-    ],
-    "_prefab": {
-      "__id__": 28
-    },
-    "_lpos": {
-      "__type__": "cc.Vec3",
-      "x": 0,
-      "y": -29.949,
-      "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__": 23
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 25
-    },
-    "_contentSize": {
-      "__type__": "cc.Size",
-      "width": 54,
-      "height": 54.4
-    },
-    "_anchorPoint": {
-      "__type__": "cc.Vec2",
-      "x": 0.5,
-      "y": 0.5
-    },
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "63mmHP/axPqpoNS8hMJAtw"
-  },
-  {
-    "__type__": "cc.Label",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 23
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 27
-    },
-    "_customMaterial": null,
-    "_srcBlendFactor": 2,
-    "_dstBlendFactor": 4,
-    "_color": {
-      "__type__": "cc.Color",
-      "r": 255,
-      "g": 255,
-      "b": 255,
-      "a": 255
-    },
-    "_string": "军团",
-    "_horizontalAlign": 1,
-    "_verticalAlign": 1,
-    "_actualFontSize": 25,
-    "_fontSize": 25,
-    "_fontFamily": "Arial",
-    "_lineHeight": 40,
-    "_overflow": 0,
-    "_enableWrapText": true,
-    "_font": null,
-    "_isSystemFontUsed": true,
-    "_spacingX": 0,
-    "_isItalic": false,
-    "_isBold": true,
-    "_isUnderline": false,
-    "_underlineHeight": 2,
-    "_cacheMode": 0,
-    "_enableOutline": true,
-    "_outlineColor": {
-      "__type__": "cc.Color",
-      "r": 0,
-      "g": 0,
-      "b": 0,
-      "a": 255
-    },
-    "_outlineWidth": 2,
-    "_enableShadow": false,
-    "_shadowColor": {
-      "__type__": "cc.Color",
-      "r": 0,
-      "g": 0,
-      "b": 0,
-      "a": 255
-    },
-    "_shadowOffset": {
-      "__type__": "cc.Vec2",
-      "x": 2,
-      "y": 2
-    },
-    "_shadowBlur": 2,
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "b46bZRfHNL15g8fnxiclvB"
-  },
-  {
-    "__type__": "cc.PrefabInfo",
-    "root": {
-      "__id__": 1
-    },
-    "asset": {
-      "__id__": 0
-    },
-    "fileId": "e39Zt9rM5DfYxz62IwgG+B",
-    "instance": null,
-    "targetOverrides": null,
-    "nestedPrefabInstanceRoots": null
-  },
-  {
-    "__type__": "cc.UITransform",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 3
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 30
-    },
-    "_contentSize": {
-      "__type__": "cc.Size",
-      "width": 140,
-      "height": 114
-    },
-    "_anchorPoint": {
-      "__type__": "cc.Vec2",
-      "x": 0.5,
-      "y": 0.5
-    },
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "87SSfsUiVOKreAcn30vXw5"
-  },
-  {
-    "__type__": "cc.Sprite",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 3
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 32
-    },
-    "_customMaterial": null,
-    "_srcBlendFactor": 2,
-    "_dstBlendFactor": 4,
-    "_color": {
-      "__type__": "cc.Color",
-      "r": 255,
-      "g": 255,
-      "b": 255,
-      "a": 255
-    },
-    "_spriteFrame": {
-      "__uuid__": "502a18f5-18d7-4ea8-b1c0-fd448bd4a202@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": "98LJrLe7JFm7lx9T/GB0Rs"
-  },
-  {
-    "__type__": "cc.PrefabInfo",
-    "root": {
-      "__id__": 1
-    },
-    "asset": {
-      "__id__": 0
-    },
-    "fileId": "6fUJY9vrpCoLykNm1GoOoB",
-    "instance": null,
-    "targetOverrides": null,
-    "nestedPrefabInstanceRoots": null
-  },
-  {
-    "__type__": "cc.Node",
-    "_name": "2",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "_parent": {
-      "__id__": 2
-    },
-    "_children": [
-      {
-        "__id__": 35
-      },
-      {
-        "__id__": 54
-      }
-    ],
-    "_active": true,
-    "_components": [
-      {
-        "__id__": 60
-      },
-      {
-        "__id__": 62
-      }
-    ],
-    "_prefab": {
-      "__id__": 64
-    },
-    "_lpos": {
-      "__type__": "cc.Vec3",
-      "x": -165,
-      "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.Node",
-    "_name": "Node.Mining",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "_parent": {
-      "__id__": 34
-    },
-    "_children": [
-      {
-        "__id__": 36
-      },
-      {
-        "__id__": 42
-      }
-    ],
-    "_active": true,
-    "_components": [
-      {
-        "__id__": 48
-      },
-      {
-        "__id__": 50
-      }
-    ],
-    "_prefab": {
-      "__id__": 53
-    },
-    "_lpos": {
-      "__type__": "cc.Vec3",
-      "x": 0,
-      "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.Node",
-    "_name": "Mining",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "_parent": {
-      "__id__": 35
-    },
-    "_children": [],
-    "_active": true,
-    "_components": [
-      {
-        "__id__": 37
-      },
-      {
-        "__id__": 39
-      }
-    ],
-    "_prefab": {
-      "__id__": 41
-    },
-    "_lpos": {
-      "__type__": "cc.Vec3",
-      "x": 0,
-      "y": 0,
-      "z": 0
-    },
-    "_lrot": {
-      "__type__": "cc.Quat",
-      "x": 0,
-      "y": 0,
-      "z": 0,
-      "w": 1
-    },
-    "_lscale": {
-      "__type__": "cc.Vec3",
-      "x": 0.75,
-      "y": 0.75,
-      "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__": 36
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 38
-    },
-    "_contentSize": {
-      "__type__": "cc.Size",
-      "width": 100,
-      "height": 100
-    },
-    "_anchorPoint": {
-      "__type__": "cc.Vec2",
-      "x": 0.5,
-      "y": 0.5
-    },
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "01a/cimBVBhLwmwGb6DnlI"
-  },
-  {
-    "__type__": "cc.Sprite",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 36
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 40
-    },
-    "_customMaterial": null,
-    "_srcBlendFactor": 2,
-    "_dstBlendFactor": 4,
-    "_color": {
-      "__type__": "cc.Color",
-      "r": 255,
-      "g": 255,
-      "b": 255,
-      "a": 255
-    },
-    "_spriteFrame": null,
-    "_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": "1cbLvvyG5F2I+7dHomos3a"
-  },
-  {
-    "__type__": "cc.PrefabInfo",
-    "root": {
-      "__id__": 1
-    },
-    "asset": {
-      "__id__": 0
-    },
-    "fileId": "eenKpaD7dMIapGTTDZ/Han",
-    "instance": null,
-    "targetOverrides": null,
-    "nestedPrefabInstanceRoots": null
-  },
-  {
-    "__type__": "cc.Node",
-    "_name": "Node.Mining_red",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "_parent": {
-      "__id__": 35
-    },
-    "_children": [],
-    "_active": false,
-    "_components": [
-      {
-        "__id__": 43
-      },
-      {
-        "__id__": 45
-      }
-    ],
-    "_prefab": {
-      "__id__": 47
-    },
-    "_lpos": {
-      "__type__": "cc.Vec3",
-      "x": 30,
-      "y": 30,
-      "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__": 42
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 44
-    },
-    "_contentSize": {
-      "__type__": "cc.Size",
-      "width": 32,
-      "height": 37
-    },
-    "_anchorPoint": {
-      "__type__": "cc.Vec2",
-      "x": 0.5,
-      "y": 0.5
-    },
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "6al86PFARONJX21ajyRypD"
-  },
-  {
-    "__type__": "cc.Sprite",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 42
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 46
-    },
-    "_customMaterial": null,
-    "_srcBlendFactor": 2,
-    "_dstBlendFactor": 4,
-    "_color": {
-      "__type__": "cc.Color",
-      "r": 255,
-      "g": 255,
-      "b": 255,
-      "a": 255
-    },
-    "_spriteFrame": {
-      "__uuid__": "f75e5779-572f-4f50-83c7-63f018071b0b@f9941",
-      "__expectedType__": "cc.SpriteFrame"
-    },
-    "_type": 0,
-    "_fillType": 0,
-    "_sizeMode": 1,
-    "_fillCenter": {
-      "__type__": "cc.Vec2",
-      "x": 0,
-      "y": 0
-    },
-    "_fillStart": 0,
-    "_fillRange": 0,
-    "_isTrimmedMode": true,
-    "_useGrayscale": false,
-    "_atlas": null,
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "fewUBva4BPPrODj1u/vVz5"
-  },
-  {
-    "__type__": "cc.PrefabInfo",
-    "root": {
-      "__id__": 1
-    },
-    "asset": {
-      "__id__": 0
-    },
-    "fileId": "ddn5v5Tt5EwLDOB1fSJHO7",
-    "instance": null,
-    "targetOverrides": null,
-    "nestedPrefabInstanceRoots": null
-  },
-  {
-    "__type__": "cc.UITransform",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 35
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 49
-    },
-    "_contentSize": {
-      "__type__": "cc.Size",
-      "width": 140,
-      "height": 114
-    },
-    "_anchorPoint": {
-      "__type__": "cc.Vec2",
-      "x": 0.5,
-      "y": 0.5
-    },
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "cd3LOJ05BHjao+vfFaM/qF"
-  },
-  {
-    "__type__": "cc.Button",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 35
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 51
-    },
-    "clickEvents": [
-      {
-        "__id__": 52
-      }
-    ],
-    "_interactable": true,
-    "_transition": 0,
-    "_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": "d6qzHqH9lOIJMWoanhwFk+"
-  },
-  {
-    "__type__": "cc.ClickEvent",
-    "target": {
-      "__id__": 1
-    },
-    "component": "",
-    "_componentId": "333725l60NGX4XNYAWfdTV2",
-    "handler": "BottonBtn",
-    "customEventData": "Mining"
-  },
-  {
-    "__type__": "cc.PrefabInfo",
-    "root": {
-      "__id__": 1
-    },
-    "asset": {
-      "__id__": 0
-    },
-    "fileId": "725/MmcEFE84Qurf+i41ww",
-    "instance": null,
-    "targetOverrides": null,
-    "nestedPrefabInstanceRoots": null
-  },
-  {
-    "__type__": "cc.Node",
-    "_name": "name",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "_parent": {
-      "__id__": 34
-    },
-    "_children": [],
-    "_active": true,
-    "_components": [
-      {
-        "__id__": 55
-      },
-      {
-        "__id__": 57
-      }
-    ],
-    "_prefab": {
-      "__id__": 59
-    },
-    "_lpos": {
-      "__type__": "cc.Vec3",
-      "x": 0,
-      "y": -29.949,
-      "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__": 54
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 56
-    },
-    "_contentSize": {
-      "__type__": "cc.Size",
-      "width": 50,
-      "height": 50.4
-    },
-    "_anchorPoint": {
-      "__type__": "cc.Vec2",
-      "x": 0.5,
-      "y": 0.5
-    },
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "6dGwRwJtlK9pwnNKQROkD5"
-  },
-  {
-    "__type__": "cc.Label",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 54
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 58
-    },
-    "_customMaterial": null,
-    "_srcBlendFactor": 2,
-    "_dstBlendFactor": 4,
-    "_color": {
-      "__type__": "cc.Color",
-      "r": 255,
-      "g": 255,
-      "b": 255,
-      "a": 255
-    },
-    "_string": "挖矿",
-    "_horizontalAlign": 1,
-    "_verticalAlign": 1,
-    "_actualFontSize": 25,
-    "_fontSize": 25,
-    "_fontFamily": "Arial",
-    "_lineHeight": 40,
-    "_overflow": 0,
-    "_enableWrapText": true,
-    "_font": null,
-    "_isSystemFontUsed": true,
-    "_spacingX": 0,
-    "_isItalic": false,
-    "_isBold": true,
-    "_isUnderline": false,
-    "_underlineHeight": 2,
-    "_cacheMode": 0,
-    "_enableOutline": false,
-    "_outlineColor": {
-      "__type__": "cc.Color",
-      "r": 0,
-      "g": 0,
-      "b": 0,
-      "a": 255
-    },
-    "_outlineWidth": 2,
-    "_enableShadow": false,
-    "_shadowColor": {
-      "__type__": "cc.Color",
-      "r": 0,
-      "g": 0,
-      "b": 0,
-      "a": 255
-    },
-    "_shadowOffset": {
-      "__type__": "cc.Vec2",
-      "x": 2,
-      "y": 2
-    },
-    "_shadowBlur": 2,
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "e1hpy4MnNBT6ynIh+xxq/5"
-  },
-  {
-    "__type__": "cc.PrefabInfo",
-    "root": {
-      "__id__": 1
-    },
-    "asset": {
-      "__id__": 0
-    },
-    "fileId": "60aI3Hc85G2ZL3n3LWmfXS",
-    "instance": null,
-    "targetOverrides": null,
-    "nestedPrefabInstanceRoots": null
-  },
-  {
-    "__type__": "cc.UITransform",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 34
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 61
-    },
-    "_contentSize": {
-      "__type__": "cc.Size",
-      "width": 140,
-      "height": 114
-    },
-    "_anchorPoint": {
-      "__type__": "cc.Vec2",
-      "x": 0.5,
-      "y": 0.5
-    },
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "a7eAbUZ+hKG6TJLC7QI9od"
-  },
-  {
-    "__type__": "cc.Sprite",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 34
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 63
-    },
-    "_customMaterial": null,
-    "_srcBlendFactor": 2,
-    "_dstBlendFactor": 4,
-    "_color": {
-      "__type__": "cc.Color",
-      "r": 255,
-      "g": 255,
-      "b": 255,
-      "a": 255
-    },
-    "_spriteFrame": null,
-    "_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": "e3Jk3S3rxJY5FrAE6TcxDq"
-  },
-  {
-    "__type__": "cc.PrefabInfo",
-    "root": {
-      "__id__": 1
-    },
-    "asset": {
-      "__id__": 0
-    },
-    "fileId": "00tpL4ObZOTafSt9rz1dFW",
-    "instance": null,
-    "targetOverrides": null,
-    "nestedPrefabInstanceRoots": null
-  },
-  {
-    "__type__": "cc.Node",
-    "_name": "3",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "_parent": {
-      "__id__": 2
-    },
-    "_children": [
-      {
-        "__id__": 66
-      },
-      {
-        "__id__": 85
-      }
-    ],
-    "_active": true,
-    "_components": [
-      {
-        "__id__": 91
-      },
-      {
-        "__id__": 93
-      }
-    ],
-    "_prefab": {
-      "__id__": 95
-    },
-    "_lpos": {
-      "__type__": "cc.Vec3",
-      "x": 0,
-      "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.Node",
-    "_name": "Node.Unpacking",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "_parent": {
-      "__id__": 65
-    },
-    "_children": [
-      {
-        "__id__": 67
-      },
-      {
-        "__id__": 73
-      }
-    ],
-    "_active": true,
-    "_components": [
-      {
-        "__id__": 79
-      },
-      {
-        "__id__": 81
-      }
-    ],
-    "_prefab": {
-      "__id__": 84
-    },
-    "_lpos": {
-      "__type__": "cc.Vec3",
-      "x": 0,
-      "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.Node",
-    "_name": "role",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "_parent": {
-      "__id__": 66
-    },
-    "_children": [],
-    "_active": true,
-    "_components": [
-      {
-        "__id__": 68
-      },
-      {
-        "__id__": 70
-      }
-    ],
-    "_prefab": {
-      "__id__": 72
-    },
-    "_lpos": {
-      "__type__": "cc.Vec3",
-      "x": 0,
-      "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__": 67
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 69
-    },
-    "_contentSize": {
-      "__type__": "cc.Size",
-      "width": 100,
-      "height": 100
-    },
-    "_anchorPoint": {
-      "__type__": "cc.Vec2",
-      "x": 0.5,
-      "y": 0.5
-    },
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "22Ns8PlBpM74iDCupl9ONv"
-  },
-  {
-    "__type__": "cc.Sprite",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 67
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 71
-    },
-    "_customMaterial": null,
-    "_srcBlendFactor": 2,
-    "_dstBlendFactor": 4,
-    "_color": {
-      "__type__": "cc.Color",
-      "r": 255,
-      "g": 255,
-      "b": 255,
-      "a": 255
-    },
-    "_spriteFrame": null,
-    "_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": "35YCUGo49Hyr5x8cvxld03"
-  },
-  {
-    "__type__": "cc.PrefabInfo",
-    "root": {
-      "__id__": 1
-    },
-    "asset": {
-      "__id__": 0
-    },
-    "fileId": "4ccKVVJ3FNHZpjwgqOnLA9",
-    "instance": null,
-    "targetOverrides": null,
-    "nestedPrefabInstanceRoots": null
-  },
-  {
-    "__type__": "cc.Node",
-    "_name": "Node.Unpacking_red",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "_parent": {
-      "__id__": 66
-    },
-    "_children": [],
-    "_active": false,
-    "_components": [
-      {
-        "__id__": 74
-      },
-      {
-        "__id__": 76
-      }
-    ],
-    "_prefab": {
-      "__id__": 78
-    },
-    "_lpos": {
-      "__type__": "cc.Vec3",
-      "x": 30,
-      "y": 30,
-      "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__": 73
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 75
-    },
-    "_contentSize": {
-      "__type__": "cc.Size",
-      "width": 32,
-      "height": 37
-    },
-    "_anchorPoint": {
-      "__type__": "cc.Vec2",
-      "x": 0.5,
-      "y": 0.5
-    },
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "55sUTvGEdJqqKUxIVq/qD/"
-  },
-  {
-    "__type__": "cc.Sprite",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 73
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 77
-    },
-    "_customMaterial": null,
-    "_srcBlendFactor": 2,
-    "_dstBlendFactor": 4,
-    "_color": {
-      "__type__": "cc.Color",
-      "r": 255,
-      "g": 255,
-      "b": 255,
-      "a": 255
-    },
-    "_spriteFrame": {
-      "__uuid__": "f75e5779-572f-4f50-83c7-63f018071b0b@f9941",
-      "__expectedType__": "cc.SpriteFrame"
-    },
-    "_type": 0,
-    "_fillType": 0,
-    "_sizeMode": 1,
-    "_fillCenter": {
-      "__type__": "cc.Vec2",
-      "x": 0,
-      "y": 0
-    },
-    "_fillStart": 0,
-    "_fillRange": 0,
-    "_isTrimmedMode": true,
-    "_useGrayscale": false,
-    "_atlas": null,
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "814sQxFMxN2ZI74Etw7Hhq"
-  },
-  {
-    "__type__": "cc.PrefabInfo",
-    "root": {
-      "__id__": 1
-    },
-    "asset": {
-      "__id__": 0
-    },
-    "fileId": "4cZR/DYHBOl7naGbm5OAJg",
-    "instance": null,
-    "targetOverrides": null,
-    "nestedPrefabInstanceRoots": null
-  },
-  {
-    "__type__": "cc.UITransform",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 66
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 80
-    },
-    "_contentSize": {
-      "__type__": "cc.Size",
-      "width": 140,
-      "height": 114
-    },
-    "_anchorPoint": {
-      "__type__": "cc.Vec2",
-      "x": 0.5,
-      "y": 0.5
-    },
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "639NwMk6BMcruNcVEhQIJ/"
-  },
-  {
-    "__type__": "cc.Button",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 66
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 82
-    },
-    "clickEvents": [
-      {
-        "__id__": 83
-      }
-    ],
-    "_interactable": true,
-    "_transition": 0,
-    "_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": {},
-    "_hoverSprite": null,
-    "_pressedSprite": null,
-    "_disabledSprite": null,
-    "_duration": 0.1,
-    "_zoomScale": 1.2,
-    "_target": null,
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "e9qIaPMZxNYohg9OgWtGLw"
-  },
-  {
-    "__type__": "cc.ClickEvent",
-    "target": {
-      "__id__": 1
-    },
-    "component": "",
-    "_componentId": "333725l60NGX4XNYAWfdTV2",
-    "handler": "BottonBtn",
-    "customEventData": "Unpacking"
-  },
-  {
-    "__type__": "cc.PrefabInfo",
-    "root": {
-      "__id__": 1
-    },
-    "asset": {
-      "__id__": 0
-    },
-    "fileId": "ab68tnOF5IJZvAZNgw8DnT",
-    "instance": null,
-    "targetOverrides": null,
-    "nestedPrefabInstanceRoots": null
-  },
-  {
-    "__type__": "cc.Node",
-    "_name": "name",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "_parent": {
-      "__id__": 65
-    },
-    "_children": [],
-    "_active": true,
-    "_components": [
-      {
-        "__id__": 86
-      },
-      {
-        "__id__": 88
-      }
-    ],
-    "_prefab": {
-      "__id__": 90
-    },
-    "_lpos": {
-      "__type__": "cc.Vec3",
-      "x": 0,
-      "y": -29.949,
-      "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__": 85
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 87
-    },
-    "_contentSize": {
-      "__type__": "cc.Size",
-      "width": 50,
-      "height": 50.4
-    },
-    "_anchorPoint": {
-      "__type__": "cc.Vec2",
-      "x": 0.5,
-      "y": 0.5
-    },
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "08KCreG1RN8bKVQMmv/+m0"
-  },
-  {
-    "__type__": "cc.Label",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 85
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 89
-    },
-    "_customMaterial": null,
-    "_srcBlendFactor": 2,
-    "_dstBlendFactor": 4,
-    "_color": {
-      "__type__": "cc.Color",
-      "r": 255,
-      "g": 255,
-      "b": 255,
-      "a": 255
-    },
-    "_string": "角色",
-    "_horizontalAlign": 1,
-    "_verticalAlign": 1,
-    "_actualFontSize": 25,
-    "_fontSize": 25,
-    "_fontFamily": "Arial",
-    "_lineHeight": 40,
-    "_overflow": 0,
-    "_enableWrapText": true,
-    "_font": null,
-    "_isSystemFontUsed": true,
-    "_spacingX": 0,
-    "_isItalic": false,
-    "_isBold": true,
-    "_isUnderline": false,
-    "_underlineHeight": 2,
-    "_cacheMode": 0,
-    "_enableOutline": false,
-    "_outlineColor": {
-      "__type__": "cc.Color",
-      "r": 0,
-      "g": 0,
-      "b": 0,
-      "a": 255
-    },
-    "_outlineWidth": 2,
-    "_enableShadow": false,
-    "_shadowColor": {
-      "__type__": "cc.Color",
-      "r": 0,
-      "g": 0,
-      "b": 0,
-      "a": 255
-    },
-    "_shadowOffset": {
-      "__type__": "cc.Vec2",
-      "x": 2,
-      "y": 2
-    },
-    "_shadowBlur": 2,
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "1capyGplJKFpE7bAoRDKkz"
-  },
-  {
-    "__type__": "cc.PrefabInfo",
-    "root": {
-      "__id__": 1
-    },
-    "asset": {
-      "__id__": 0
-    },
-    "fileId": "f2zFN6Z5JM+aF7AJnoHJYq",
-    "instance": null,
-    "targetOverrides": null,
-    "nestedPrefabInstanceRoots": null
-  },
-  {
-    "__type__": "cc.UITransform",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 65
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 92
-    },
-    "_contentSize": {
-      "__type__": "cc.Size",
-      "width": 190,
-      "height": 125
-    },
-    "_anchorPoint": {
-      "__type__": "cc.Vec2",
-      "x": 0.5,
-      "y": 0.5
-    },
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "41Y8xMM41GFoVs0WV5d+1p"
-  },
-  {
-    "__type__": "cc.Sprite",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 65
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 94
-    },
-    "_customMaterial": null,
-    "_srcBlendFactor": 2,
-    "_dstBlendFactor": 4,
-    "_color": {
-      "__type__": "cc.Color",
-      "r": 255,
-      "g": 255,
-      "b": 255,
-      "a": 255
-    },
-    "_spriteFrame": null,
-    "_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": "3cOW7ZiBNLM6Mh0LLgqD2e"
-  },
-  {
-    "__type__": "cc.PrefabInfo",
-    "root": {
-      "__id__": 1
-    },
-    "asset": {
-      "__id__": 0
-    },
-    "fileId": "a6OEm7mMJI77yOOxdrsY+W",
-    "instance": null,
-    "targetOverrides": null,
-    "nestedPrefabInstanceRoots": null
-  },
-  {
-    "__type__": "cc.Node",
-    "_name": "4",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "_parent": {
-      "__id__": 2
-    },
-    "_children": [
-      {
-        "__id__": 97
-      },
-      {
-        "__id__": 116
-      }
-    ],
-    "_active": true,
-    "_components": [
-      {
-        "__id__": 122
-      },
-      {
-        "__id__": 124
-      }
-    ],
-    "_prefab": {
-      "__id__": 126
-    },
-    "_lpos": {
-      "__type__": "cc.Vec3",
-      "x": 165,
-      "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.Node",
-    "_name": "Node.MainBtn4",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "_parent": {
-      "__id__": 96
-    },
-    "_children": [
-      {
-        "__id__": 98
-      },
-      {
-        "__id__": 104
-      }
-    ],
-    "_active": true,
-    "_components": [
-      {
-        "__id__": 110
-      },
-      {
-        "__id__": 112
-      }
-    ],
-    "_prefab": {
-      "__id__": 115
-    },
-    "_lpos": {
-      "__type__": "cc.Vec3",
-      "x": 0,
-      "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.Node",
-    "_name": "sports",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "_parent": {
-      "__id__": 97
-    },
-    "_children": [],
-    "_active": true,
-    "_components": [
-      {
-        "__id__": 99
-      },
-      {
-        "__id__": 101
-      }
-    ],
-    "_prefab": {
-      "__id__": 103
-    },
-    "_lpos": {
-      "__type__": "cc.Vec3",
-      "x": 0,
-      "y": 0,
-      "z": 0
-    },
-    "_lrot": {
-      "__type__": "cc.Quat",
-      "x": 0,
-      "y": 0,
-      "z": 0,
-      "w": 1
-    },
-    "_lscale": {
-      "__type__": "cc.Vec3",
-      "x": 0.75,
-      "y": 0.75,
-      "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__": 98
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 100
-    },
-    "_contentSize": {
-      "__type__": "cc.Size",
-      "width": 100,
-      "height": 100
-    },
-    "_anchorPoint": {
-      "__type__": "cc.Vec2",
-      "x": 0.5,
-      "y": 0.5
-    },
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "4eqBMTApZEurHfSWFbTu9A"
-  },
-  {
-    "__type__": "cc.Sprite",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 98
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 102
-    },
-    "_customMaterial": null,
-    "_srcBlendFactor": 2,
-    "_dstBlendFactor": 4,
-    "_color": {
-      "__type__": "cc.Color",
-      "r": 255,
-      "g": 255,
-      "b": 255,
-      "a": 255
-    },
-    "_spriteFrame": null,
-    "_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": "5dfEj+PHFHKrvrspa9rGfI"
-  },
-  {
-    "__type__": "cc.PrefabInfo",
-    "root": {
-      "__id__": 1
-    },
-    "asset": {
-      "__id__": 0
-    },
-    "fileId": "5eSx1Pi1hKtpcjPbBHVu72",
-    "instance": null,
-    "targetOverrides": null,
-    "nestedPrefabInstanceRoots": null
-  },
-  {
-    "__type__": "cc.Node",
-    "_name": "Node.Rodeo_red",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "_parent": {
-      "__id__": 97
-    },
-    "_children": [],
-    "_active": false,
-    "_components": [
-      {
-        "__id__": 105
-      },
-      {
-        "__id__": 107
-      }
-    ],
-    "_prefab": {
-      "__id__": 109
-    },
-    "_lpos": {
-      "__type__": "cc.Vec3",
-      "x": 30,
-      "y": 30,
-      "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__": 104
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 106
-    },
-    "_contentSize": {
-      "__type__": "cc.Size",
-      "width": 32,
-      "height": 37
-    },
-    "_anchorPoint": {
-      "__type__": "cc.Vec2",
-      "x": 0.5,
-      "y": 0.5
-    },
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "9eT00k+mBGpLkyC2L3LbYY"
-  },
-  {
-    "__type__": "cc.Sprite",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 104
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 108
-    },
-    "_customMaterial": null,
-    "_srcBlendFactor": 2,
-    "_dstBlendFactor": 4,
-    "_color": {
-      "__type__": "cc.Color",
-      "r": 255,
-      "g": 255,
-      "b": 255,
-      "a": 255
-    },
-    "_spriteFrame": {
-      "__uuid__": "f75e5779-572f-4f50-83c7-63f018071b0b@f9941",
-      "__expectedType__": "cc.SpriteFrame"
-    },
-    "_type": 0,
-    "_fillType": 0,
-    "_sizeMode": 1,
-    "_fillCenter": {
-      "__type__": "cc.Vec2",
-      "x": 0,
-      "y": 0
-    },
-    "_fillStart": 0,
-    "_fillRange": 0,
-    "_isTrimmedMode": true,
-    "_useGrayscale": false,
-    "_atlas": null,
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "bbzqk6rJdLKqXgXbw7RqIq"
-  },
-  {
-    "__type__": "cc.PrefabInfo",
-    "root": {
-      "__id__": 1
-    },
-    "asset": {
-      "__id__": 0
-    },
-    "fileId": "b90vAaCpZPx59QT+ysjJug",
-    "instance": null,
-    "targetOverrides": null,
-    "nestedPrefabInstanceRoots": null
-  },
-  {
-    "__type__": "cc.UITransform",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 97
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 111
-    },
-    "_contentSize": {
-      "__type__": "cc.Size",
-      "width": 140,
-      "height": 114
-    },
-    "_anchorPoint": {
-      "__type__": "cc.Vec2",
-      "x": 0.5,
-      "y": 0.5
-    },
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "fcyzhTgOpDj7ROcQ7Fjy2v"
-  },
-  {
-    "__type__": "cc.Button",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 97
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 113
-    },
-    "clickEvents": [
-      {
-        "__id__": 114
-      }
-    ],
-    "_interactable": true,
-    "_transition": 0,
-    "_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": {},
-    "_hoverSprite": null,
-    "_pressedSprite": null,
-    "_disabledSprite": null,
-    "_duration": 0.1,
-    "_zoomScale": 1.2,
-    "_target": null,
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "c48f94IMlFBLO5FZRZv08r"
-  },
-  {
-    "__type__": "cc.ClickEvent",
-    "target": {
-      "__id__": 1
-    },
-    "component": "",
-    "_componentId": "333725l60NGX4XNYAWfdTV2",
-    "handler": "BottonBtn",
-    "customEventData": "MainBtn4"
-  },
-  {
-    "__type__": "cc.PrefabInfo",
-    "root": {
-      "__id__": 1
-    },
-    "asset": {
-      "__id__": 0
-    },
-    "fileId": "7fIhD4A+VCuKXDLcBR7Lar",
-    "instance": null,
-    "targetOverrides": null,
-    "nestedPrefabInstanceRoots": null
-  },
-  {
-    "__type__": "cc.Node",
-    "_name": "name",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "_parent": {
-      "__id__": 96
-    },
-    "_children": [],
-    "_active": true,
-    "_components": [
-      {
-        "__id__": 117
-      },
-      {
-        "__id__": 119
-      }
-    ],
-    "_prefab": {
-      "__id__": 121
-    },
-    "_lpos": {
-      "__type__": "cc.Vec3",
-      "x": 0,
-      "y": -29.949,
-      "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__": 116
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 118
-    },
-    "_contentSize": {
-      "__type__": "cc.Size",
-      "width": 50,
-      "height": 50.4
-    },
-    "_anchorPoint": {
-      "__type__": "cc.Vec2",
-      "x": 0.5,
-      "y": 0.5
-    },
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "92Vqf7cyFE17AiNxtXzwIT"
-  },
-  {
-    "__type__": "cc.Label",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 116
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 120
-    },
-    "_customMaterial": null,
-    "_srcBlendFactor": 2,
-    "_dstBlendFactor": 4,
-    "_color": {
-      "__type__": "cc.Color",
-      "r": 255,
-      "g": 255,
-      "b": 255,
-      "a": 255
-    },
-    "_string": "副本",
-    "_horizontalAlign": 1,
-    "_verticalAlign": 1,
-    "_actualFontSize": 25,
-    "_fontSize": 25,
-    "_fontFamily": "Arial",
-    "_lineHeight": 40,
-    "_overflow": 0,
-    "_enableWrapText": true,
-    "_font": null,
-    "_isSystemFontUsed": true,
-    "_spacingX": 0,
-    "_isItalic": false,
-    "_isBold": true,
-    "_isUnderline": false,
-    "_underlineHeight": 2,
-    "_cacheMode": 0,
-    "_enableOutline": false,
-    "_outlineColor": {
-      "__type__": "cc.Color",
-      "r": 0,
-      "g": 0,
-      "b": 0,
-      "a": 255
-    },
-    "_outlineWidth": 2,
-    "_enableShadow": false,
-    "_shadowColor": {
-      "__type__": "cc.Color",
-      "r": 0,
-      "g": 0,
-      "b": 0,
-      "a": 255
-    },
-    "_shadowOffset": {
-      "__type__": "cc.Vec2",
-      "x": 2,
-      "y": 2
-    },
-    "_shadowBlur": 2,
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "a5E+az6lpOka4UjqilWZoT"
-  },
-  {
-    "__type__": "cc.PrefabInfo",
-    "root": {
-      "__id__": 1
-    },
-    "asset": {
-      "__id__": 0
-    },
-    "fileId": "549H0sXCRBCo8GxwFL8LyX",
-    "instance": null,
-    "targetOverrides": null,
-    "nestedPrefabInstanceRoots": null
-  },
-  {
-    "__type__": "cc.UITransform",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 96
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 123
-    },
-    "_contentSize": {
-      "__type__": "cc.Size",
-      "width": 140,
-      "height": 114
-    },
-    "_anchorPoint": {
-      "__type__": "cc.Vec2",
-      "x": 0.5,
-      "y": 0.5
-    },
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "8fEC1I0NBOb7QXQJ+9zS1+"
-  },
-  {
-    "__type__": "cc.Sprite",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 96
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 125
-    },
-    "_customMaterial": null,
-    "_srcBlendFactor": 2,
-    "_dstBlendFactor": 4,
-    "_color": {
-      "__type__": "cc.Color",
-      "r": 255,
-      "g": 255,
-      "b": 255,
-      "a": 255
-    },
-    "_spriteFrame": null,
-    "_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": "f9ujxzXTlLMaz0R5lVHEiY"
-  },
-  {
-    "__type__": "cc.PrefabInfo",
-    "root": {
-      "__id__": 1
-    },
-    "asset": {
-      "__id__": 0
-    },
-    "fileId": "cbiDhx54tNXq8fVNya/iBP",
-    "instance": null,
-    "targetOverrides": null,
-    "nestedPrefabInstanceRoots": null
-  },
-  {
-    "__type__": "cc.Node",
-    "_name": "5",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "_parent": {
-      "__id__": 2
-    },
-    "_children": [
-      {
-        "__id__": 128
-      },
-      {
-        "__id__": 147
-      }
-    ],
-    "_active": true,
-    "_components": [
-      {
-        "__id__": 153
-      },
-      {
-        "__id__": 155
-      }
-    ],
-    "_prefab": {
-      "__id__": 157
-    },
-    "_lpos": {
-      "__type__": "cc.Vec3",
-      "x": 305,
-      "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.Node",
-    "_name": "Node.Mail",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "_parent": {
-      "__id__": 127
-    },
-    "_children": [
-      {
-        "__id__": 129
-      },
-      {
-        "__id__": 135
-      }
-    ],
-    "_active": true,
-    "_components": [
-      {
-        "__id__": 141
-      },
-      {
-        "__id__": 143
-      }
-    ],
-    "_prefab": {
-      "__id__": 146
-    },
-    "_lpos": {
-      "__type__": "cc.Vec3",
-      "x": 0,
-      "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.Node",
-    "_name": "territory",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "_parent": {
-      "__id__": 128
-    },
-    "_children": [],
-    "_active": true,
-    "_components": [
-      {
-        "__id__": 130
-      },
-      {
-        "__id__": 132
-      }
-    ],
-    "_prefab": {
-      "__id__": 134
-    },
-    "_lpos": {
-      "__type__": "cc.Vec3",
-      "x": 0,
-      "y": 0,
-      "z": 0
-    },
-    "_lrot": {
-      "__type__": "cc.Quat",
-      "x": 0,
-      "y": 0,
-      "z": 0,
-      "w": 1
-    },
-    "_lscale": {
-      "__type__": "cc.Vec3",
-      "x": 0.75,
-      "y": 0.75,
-      "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__": 129
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 131
-    },
-    "_contentSize": {
-      "__type__": "cc.Size",
-      "width": 100,
-      "height": 100
-    },
-    "_anchorPoint": {
-      "__type__": "cc.Vec2",
-      "x": 0.5,
-      "y": 0.5
-    },
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "84bV1pRLBFpIkEQ1cRmFpU"
-  },
-  {
-    "__type__": "cc.Sprite",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 129
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 133
-    },
-    "_customMaterial": null,
-    "_srcBlendFactor": 2,
-    "_dstBlendFactor": 4,
-    "_color": {
-      "__type__": "cc.Color",
-      "r": 255,
-      "g": 255,
-      "b": 255,
-      "a": 255
-    },
-    "_spriteFrame": null,
-    "_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": "8b8kjgIxdNyLbmfXDCH+tg"
-  },
-  {
-    "__type__": "cc.PrefabInfo",
-    "root": {
-      "__id__": 1
-    },
-    "asset": {
-      "__id__": 0
-    },
-    "fileId": "03IPhPprdLiqh1Du/WnnfE",
-    "instance": null,
-    "targetOverrides": null,
-    "nestedPrefabInstanceRoots": null
-  },
-  {
-    "__type__": "cc.Node",
-    "_name": "Node.BoxLevel_redA",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "_parent": {
-      "__id__": 128
-    },
-    "_children": [],
-    "_active": false,
-    "_components": [
-      {
-        "__id__": 136
-      },
-      {
-        "__id__": 138
-      }
-    ],
-    "_prefab": {
-      "__id__": 140
-    },
-    "_lpos": {
-      "__type__": "cc.Vec3",
-      "x": 30,
-      "y": 30,
-      "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__": 135
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 137
-    },
-    "_contentSize": {
-      "__type__": "cc.Size",
-      "width": 32,
-      "height": 37
-    },
-    "_anchorPoint": {
-      "__type__": "cc.Vec2",
-      "x": 0.5,
-      "y": 0.5
-    },
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "7fk/JhUbRGKL9dRHHnZ5Ki"
-  },
-  {
-    "__type__": "cc.Sprite",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 135
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 139
-    },
-    "_customMaterial": null,
-    "_srcBlendFactor": 2,
-    "_dstBlendFactor": 4,
-    "_color": {
-      "__type__": "cc.Color",
-      "r": 255,
-      "g": 255,
-      "b": 255,
-      "a": 255
-    },
-    "_spriteFrame": {
-      "__uuid__": "f75e5779-572f-4f50-83c7-63f018071b0b@f9941",
-      "__expectedType__": "cc.SpriteFrame"
-    },
-    "_type": 0,
-    "_fillType": 0,
-    "_sizeMode": 1,
-    "_fillCenter": {
-      "__type__": "cc.Vec2",
-      "x": 0,
-      "y": 0
-    },
-    "_fillStart": 0,
-    "_fillRange": 0,
-    "_isTrimmedMode": true,
-    "_useGrayscale": false,
-    "_atlas": null,
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "e4LAfZAxlAG7A6BR640Cfe"
-  },
-  {
-    "__type__": "cc.PrefabInfo",
-    "root": {
-      "__id__": 1
-    },
-    "asset": {
-      "__id__": 0
-    },
-    "fileId": "f74v7RYP1DhZSTU2aLrMD8",
-    "instance": null,
-    "targetOverrides": null,
-    "nestedPrefabInstanceRoots": null
-  },
-  {
-    "__type__": "cc.UITransform",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 128
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 142
-    },
-    "_contentSize": {
-      "__type__": "cc.Size",
-      "width": 140,
-      "height": 114
-    },
-    "_anchorPoint": {
-      "__type__": "cc.Vec2",
-      "x": 0.5,
-      "y": 0.5
-    },
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "b6QRyOBlFFiJcEjI4N1COi"
-  },
-  {
-    "__type__": "cc.Button",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 128
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 144
-    },
-    "clickEvents": [
-      {
-        "__id__": 145
-      }
-    ],
-    "_interactable": true,
-    "_transition": 0,
-    "_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": "daHHPmzyZEVZV5VWAZki6i"
-  },
-  {
-    "__type__": "cc.ClickEvent",
-    "target": {
-      "__id__": 1
-    },
-    "component": "",
-    "_componentId": "333725l60NGX4XNYAWfdTV2",
-    "handler": "onTouchButton",
-    "customEventData": "MailMain"
-  },
-  {
-    "__type__": "cc.PrefabInfo",
-    "root": {
-      "__id__": 1
-    },
-    "asset": {
-      "__id__": 0
-    },
-    "fileId": "469zW9GOdL97lRZMPBW1hf",
-    "instance": null,
-    "targetOverrides": null,
-    "nestedPrefabInstanceRoots": null
-  },
-  {
-    "__type__": "cc.Node",
-    "_name": "name",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "_parent": {
-      "__id__": 127
-    },
-    "_children": [],
-    "_active": true,
-    "_components": [
-      {
-        "__id__": 148
-      },
-      {
-        "__id__": 150
-      }
-    ],
-    "_prefab": {
-      "__id__": 152
-    },
-    "_lpos": {
-      "__type__": "cc.Vec3",
-      "x": 0,
-      "y": -29.949,
-      "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__": 147
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 149
-    },
-    "_contentSize": {
-      "__type__": "cc.Size",
-      "width": 50,
-      "height": 50.4
-    },
-    "_anchorPoint": {
-      "__type__": "cc.Vec2",
-      "x": 0.5,
-      "y": 0.5
-    },
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "c2H43qhBpGt6gQW4AsgAzM"
-  },
-  {
-    "__type__": "cc.Label",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 147
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 151
-    },
-    "_customMaterial": null,
-    "_srcBlendFactor": 2,
-    "_dstBlendFactor": 4,
-    "_color": {
-      "__type__": "cc.Color",
-      "r": 255,
-      "g": 255,
-      "b": 255,
-      "a": 255
-    },
-    "_string": "领地",
-    "_horizontalAlign": 1,
-    "_verticalAlign": 1,
-    "_actualFontSize": 25,
-    "_fontSize": 25,
-    "_fontFamily": "Arial",
-    "_lineHeight": 40,
-    "_overflow": 0,
-    "_enableWrapText": true,
-    "_font": null,
-    "_isSystemFontUsed": true,
-    "_spacingX": 0,
-    "_isItalic": false,
-    "_isBold": true,
-    "_isUnderline": false,
-    "_underlineHeight": 2,
-    "_cacheMode": 0,
-    "_enableOutline": false,
-    "_outlineColor": {
-      "__type__": "cc.Color",
-      "r": 0,
-      "g": 0,
-      "b": 0,
-      "a": 255
-    },
-    "_outlineWidth": 2,
-    "_enableShadow": false,
-    "_shadowColor": {
-      "__type__": "cc.Color",
-      "r": 0,
-      "g": 0,
-      "b": 0,
-      "a": 255
-    },
-    "_shadowOffset": {
-      "__type__": "cc.Vec2",
-      "x": 2,
-      "y": 2
-    },
-    "_shadowBlur": 2,
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "3ccLEZ54hD2o0H0r79yDQG"
-  },
-  {
-    "__type__": "cc.PrefabInfo",
-    "root": {
-      "__id__": 1
-    },
-    "asset": {
-      "__id__": 0
-    },
-    "fileId": "99LR6N5wJFNqfJwlME1DGd",
-    "instance": null,
-    "targetOverrides": null,
-    "nestedPrefabInstanceRoots": null
-  },
-  {
-    "__type__": "cc.UITransform",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 127
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 154
-    },
-    "_contentSize": {
-      "__type__": "cc.Size",
-      "width": 140,
-      "height": 114
-    },
-    "_anchorPoint": {
-      "__type__": "cc.Vec2",
-      "x": 0.5,
-      "y": 0.5
-    },
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "01Rl/YAxJL74MWJxTasR5U"
-  },
-  {
-    "__type__": "cc.Sprite",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 127
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 156
-    },
-    "_customMaterial": null,
-    "_srcBlendFactor": 2,
-    "_dstBlendFactor": 4,
-    "_color": {
-      "__type__": "cc.Color",
-      "r": 255,
-      "g": 255,
-      "b": 255,
-      "a": 255
-    },
-    "_spriteFrame": null,
-    "_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": "5e9C2VEGBCioeqIheA4aYX"
-  },
-  {
-    "__type__": "cc.PrefabInfo",
-    "root": {
-      "__id__": 1
-    },
-    "asset": {
-      "__id__": 0
-    },
-    "fileId": "89AR/QhQZEUZFdqnmfJ+1B",
-    "instance": null,
-    "targetOverrides": null,
-    "nestedPrefabInstanceRoots": null
-  },
-  {
-    "__type__": "cc.UITransform",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 2
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 159
-    },
-    "_contentSize": {
-      "__type__": "cc.Size",
-      "width": 750,
-      "height": 114
-    },
-    "_anchorPoint": {
-      "__type__": "cc.Vec2",
-      "x": 0.5,
-      "y": 0.5
-    },
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "a7STJb8nNJtZPDsb5ZX/13"
-  },
-  {
-    "__type__": "cc.Widget",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 2
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 161
-    },
-    "_alignFlags": 4,
-    "_target": null,
-    "_left": 0,
-    "_right": 0,
-    "_top": 0,
-    "_bottom": 0,
-    "_horizontalCenter": 0,
-    "_verticalCenter": 0,
-    "_isAbsLeft": true,
-    "_isAbsRight": true,
-    "_isAbsTop": true,
-    "_isAbsBottom": true,
-    "_isAbsHorizontalCenter": true,
-    "_isAbsVerticalCenter": true,
-    "_originalWidth": 0,
-    "_originalHeight": 0,
-    "_alignMode": 2,
-    "_lockFlags": 0,
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "28r9hb5SxGx4t7/BHv5cZQ"
-  },
-  {
-    "__type__": "cc.Layout",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 2
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 163
-    },
-    "_resizeMode": 0,
-    "_layoutType": 1,
-    "_cellSize": {
-      "__type__": "cc.Size",
-      "width": 40,
-      "height": 40
-    },
-    "_startAxis": 0,
-    "_paddingLeft": 0,
-    "_paddingRight": 0,
-    "_paddingTop": 0,
-    "_paddingBottom": 0,
-    "_spacingX": 0,
-    "_spacingY": 0,
-    "_verticalDirection": 1,
-    "_horizontalDirection": 0,
-    "_constraint": 0,
-    "_constraintNum": 2,
-    "_affectedByScale": false,
-    "_isAlign": false,
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "ae4VH0auBH1pO46GLP8ksU"
-  },
-  {
-    "__type__": "cc.PrefabInfo",
-    "root": {
-      "__id__": 1
-    },
-    "asset": {
-      "__id__": 0
-    },
-    "fileId": "02rXHqwR9F1onsOm7rvhGu",
-    "instance": null,
-    "targetOverrides": null,
-    "nestedPrefabInstanceRoots": null
-  },
-  {
-    "__type__": "cc.UITransform",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 1
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 166
-    },
-    "_contentSize": {
-      "__type__": "cc.Size",
-      "width": 750,
-      "height": 1334
-    },
-    "_anchorPoint": {
-      "__type__": "cc.Vec2",
-      "x": 0.5,
-      "y": 0.5
-    },
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "dceUlnAvFIQat/Mwvk97Uc"
-  },
-  {
-    "__type__": "cc.UIOpacity",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 1
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 168
-    },
-    "_opacity": 255,
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "c45U3gCHZOD6Dcj7tDVV/z"
-  },
-  {
-    "__type__": "cc.Widget",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 1
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 170
-    },
-    "_alignFlags": 45,
-    "_target": null,
-    "_left": 0,
-    "_right": 0,
-    "_top": 0,
-    "_bottom": 0,
-    "_horizontalCenter": 0,
-    "_verticalCenter": 0,
-    "_isAbsLeft": true,
-    "_isAbsRight": true,
-    "_isAbsTop": true,
-    "_isAbsBottom": true,
-    "_isAbsHorizontalCenter": true,
-    "_isAbsVerticalCenter": true,
-    "_originalWidth": 100,
-    "_originalHeight": 100,
-    "_alignMode": 2,
-    "_lockFlags": 0,
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "dcj38xxMdGu4Mto099+6FZ"
-  },
-  {
-    "__type__": "333725l60NGX4XNYAWfdTV2",
-    "_name": "",
-    "_objFlags": 0,
-    "__editorExtras__": {},
-    "node": {
-      "__id__": 1
-    },
-    "_enabled": true,
-    "__prefab": {
-      "__id__": 172
-    },
-    "frame_load": false,
-    "load_priority": 0,
-    "ui_type": 0,
-    "_base_view_full": false,
-    "_base_view_block": false,
-    "_base_quick_close": false,
-    "_base_quick_close_exclude_node": [],
-    "_base_quick_close_destroy": true,
-    "_id": ""
-  },
-  {
-    "__type__": "cc.CompPrefabInfo",
-    "fileId": "57W4K6jOBCVJ1XIdDIFlGd"
-  },
-  {
-    "__type__": "cc.PrefabInfo",
-    "root": {
-      "__id__": 1
-    },
-    "asset": {
-      "__id__": 0
-    },
-    "fileId": "0cpbxwmuxH4orpBxFUVLit",
-    "instance": null,
-    "targetOverrides": null
-  }
-]

+ 0 - 13
assets/package/prefab/login/MainUI.prefab.meta

@@ -1,13 +0,0 @@
-{
-  "ver": "1.1.50",
-  "importer": "prefab",
-  "imported": true,
-  "uuid": "3cb8bb18-db66-4e12-8e92-2817697a3e2a",
-  "files": [
-    ".json"
-  ],
-  "subMetas": {},
-  "userData": {
-    "syncNodeName": "MainUI"
-  }
-}

+ 7 - 7
assets/package/prefab/ui/tower/hero/npc001.prefab

@@ -136,13 +136,13 @@
     },
     "_contentSize": {
       "__type__": "cc.Size",
-      "width": 200.88999938964844,
-      "height": 233
+      "width": 841.5800170898438,
+      "height": 600.7100219726562
     },
     "_anchorPoint": {
       "__type__": "cc.Vec2",
-      "x": 0,
-      "y": 0
+      "x": 0.40551104123618853,
+      "y": 0.32784537503582845
     },
     "_id": ""
   },
@@ -173,11 +173,11 @@
       "a": 255
     },
     "_skeletonData": {
-      "__uuid__": "3edda31b-9168-43f9-a212-1df27f56441d",
+      "__uuid__": "520d9b41-a575-479b-9b5e-8ccf0edcb4db",
       "__expectedType__": "sp.SkeletonData"
     },
     "defaultSkin": "default",
-    "defaultAnimation": "show",
+    "defaultAnimation": "",
     "_premultipliedAlpha": false,
     "_timeScale": 1,
     "_preCacheMode": 0,
@@ -391,7 +391,7 @@
     "_lpos": {
       "__type__": "cc.Vec3",
       "x": 0,
-      "y": 50.212999999999965,
+      "y": 32.697,
       "z": 0
     },
     "_lrot": {

+ 64 - 39
assets/package/prefab/ui/tower/hero/npc002.prefab

@@ -22,26 +22,26 @@
         "__id__": 2
       },
       {
-        "__id__": 8
+        "__id__": 11
       },
       {
-        "__id__": 14
+        "__id__": 17
       },
       {
-        "__id__": 18
+        "__id__": 21
       }
     ],
     "_active": true,
     "_components": [
       {
-        "__id__": 22
+        "__id__": 25
       },
       {
-        "__id__": 24
+        "__id__": 27
       }
     ],
     "_prefab": {
-      "__id__": 26
+      "__id__": 29
     },
     "_lpos": {
       "__type__": "cc.Vec3",
@@ -91,7 +91,7 @@
       }
     ],
     "_prefab": {
-      "__id__": 7
+      "__id__": 10
     },
     "_lpos": {
       "__type__": "cc.Vec3",
@@ -108,8 +108,8 @@
     },
     "_lscale": {
       "__type__": "cc.Vec3",
-      "x": 0.7,
-      "y": 0.7,
+      "x": 0.5,
+      "y": 0.5,
       "z": 1
     },
     "_mobility": 0,
@@ -177,12 +177,22 @@
       "__expectedType__": "sp.SkeletonData"
     },
     "defaultSkin": "default",
-    "defaultAnimation": "show",
+    "defaultAnimation": "stand_down",
     "_premultipliedAlpha": false,
     "_timeScale": 1,
     "_preCacheMode": 0,
     "_cacheMode": 0,
-    "_sockets": [],
+    "_sockets": [
+      {
+        "__id__": 7
+      },
+      {
+        "__id__": 8
+      },
+      {
+        "__id__": 9
+      }
+    ],
     "_useTint": false,
     "_debugMesh": false,
     "_debugBones": false,
@@ -195,6 +205,21 @@
     "__type__": "cc.CompPrefabInfo",
     "fileId": "5f0h48yVBGZY0ahBHmjV3e"
   },
+  {
+    "__type__": "sp.Skeleton.SpineSocket",
+    "path": "root/all/bone_left/body/gun",
+    "target": null
+  },
+  {
+    "__type__": "sp.Skeleton.SpineSocket",
+    "path": "root/all/bone_back/body_back/gun2",
+    "target": null
+  },
+  {
+    "__type__": "sp.Skeleton.SpineSocket",
+    "path": "root/all/bone_front/body_front/bone10/gun3",
+    "target": null
+  },
   {
     "__type__": "cc.PrefabInfo",
     "root": {
@@ -220,14 +245,14 @@
     "_active": true,
     "_components": [
       {
-        "__id__": 9
+        "__id__": 12
       },
       {
-        "__id__": 11
+        "__id__": 14
       }
     ],
     "_prefab": {
-      "__id__": 13
+      "__id__": 16
     },
     "_lpos": {
       "__type__": "cc.Vec3",
@@ -264,11 +289,11 @@
     "_objFlags": 0,
     "__editorExtras__": {},
     "node": {
-      "__id__": 8
+      "__id__": 11
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 10
+      "__id__": 13
     },
     "_contentSize": {
       "__type__": "cc.Size",
@@ -292,11 +317,11 @@
     "_objFlags": 0,
     "__editorExtras__": {},
     "node": {
-      "__id__": 8
+      "__id__": 11
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 12
+      "__id__": 15
     },
     "_customMaterial": null,
     "_srcBlendFactor": 2,
@@ -382,29 +407,29 @@
     "_active": true,
     "_components": [
       {
-        "__id__": 15
+        "__id__": 18
       }
     ],
     "_prefab": {
-      "__id__": 17
+      "__id__": 20
     },
     "_lpos": {
       "__type__": "cc.Vec3",
-      "x": 0,
-      "y": 47.125999999999976,
+      "x": 58.00863265991211,
+      "y": 79.1191177368164,
       "z": 0
     },
     "_lrot": {
       "__type__": "cc.Quat",
       "x": 0,
       "y": 0,
-      "z": 0,
-      "w": 1
+      "z": 1.0244548320770135e-8,
+      "w": 0.9999999999999988
     },
     "_lscale": {
       "__type__": "cc.Vec3",
-      "x": 1,
-      "y": 1.0000000000000038,
+      "x": 1.0000000000000027,
+      "y": 1.0000000000000067,
       "z": 1
     },
     "_mobility": 0,
@@ -413,7 +438,7 @@
       "__type__": "cc.Vec3",
       "x": 0,
       "y": 0,
-      "z": 0
+      "z": 0.0000011739387635959254
     },
     "_id": ""
   },
@@ -423,11 +448,11 @@
     "_objFlags": 0,
     "__editorExtras__": {},
     "node": {
-      "__id__": 14
+      "__id__": 17
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 16
+      "__id__": 19
     },
     "_contentSize": {
       "__type__": "cc.Size",
@@ -470,11 +495,11 @@
     "_active": true,
     "_components": [
       {
-        "__id__": 19
+        "__id__": 22
       }
     ],
     "_prefab": {
-      "__id__": 21
+      "__id__": 24
     },
     "_lpos": {
       "__type__": "cc.Vec3",
@@ -511,16 +536,16 @@
     "_objFlags": 0,
     "__editorExtras__": {},
     "node": {
-      "__id__": 18
+      "__id__": 21
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 20
+      "__id__": 23
     },
     "_contentSize": {
       "__type__": "cc.Size",
       "width": 100,
-      "height": 100
+      "height": 112
     },
     "_anchorPoint": {
       "__type__": "cc.Vec2",
@@ -556,7 +581,7 @@
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 23
+      "__id__": 26
     },
     "_contentSize": {
       "__type__": "cc.Size",
@@ -584,19 +609,19 @@
     },
     "_enabled": true,
     "__prefab": {
-      "__id__": 25
+      "__id__": 28
     },
     "modelSpine": {
       "__id__": 5
     },
     "levelLabel": {
-      "__id__": 11
+      "__id__": 14
     },
     "gunNode": {
-      "__id__": 14
+      "__id__": 17
     },
     "clickBox": {
-      "__id__": 19
+      "__id__": 22
     },
     "_id": ""
   },

+ 1 - 1
assets/package/prefab/ui/tower/hurt.prefab

@@ -182,7 +182,7 @@
     "_debugBones": false,
     "_debugSlots": false,
     "_enableBatch": false,
-    "loop": true,
+    "loop": false,
     "_id": ""
   },
   {

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 204 - 300
assets/package/prefab/ui/tower/tower.prefab


+ 34 - 40
assets/package/prefab/ui/tower/zombie.prefab

@@ -509,7 +509,7 @@
     },
     "_type": 0,
     "_fillType": 0,
-    "_sizeMode": 1,
+    "_sizeMode": 0,
     "_fillCenter": {
       "__type__": "cc.Vec2",
       "x": 0,
@@ -645,7 +645,7 @@
     },
     "_type": 0,
     "_fillType": 0,
-    "_sizeMode": 1,
+    "_sizeMode": 0,
     "_fillCenter": {
       "__type__": "cc.Vec2",
       "x": 0,
@@ -781,7 +781,7 @@
     },
     "_type": 0,
     "_fillType": 0,
-    "_sizeMode": 1,
+    "_sizeMode": 0,
     "_fillCenter": {
       "__type__": "cc.Vec2",
       "x": 0,
@@ -917,7 +917,7 @@
     },
     "_type": 0,
     "_fillType": 0,
-    "_sizeMode": 1,
+    "_sizeMode": 0,
     "_fillCenter": {
       "__type__": "cc.Vec2",
       "x": 0,
@@ -1053,7 +1053,7 @@
     },
     "_type": 0,
     "_fillType": 0,
-    "_sizeMode": 1,
+    "_sizeMode": 0,
     "_fillCenter": {
       "__type__": "cc.Vec2",
       "x": 0,
@@ -1189,7 +1189,7 @@
     },
     "_type": 0,
     "_fillType": 0,
-    "_sizeMode": 1,
+    "_sizeMode": 0,
     "_fillCenter": {
       "__type__": "cc.Vec2",
       "x": 0,
@@ -1325,7 +1325,7 @@
     },
     "_type": 0,
     "_fillType": 0,
-    "_sizeMode": 1,
+    "_sizeMode": 0,
     "_fillCenter": {
       "__type__": "cc.Vec2",
       "x": 0,
@@ -1461,7 +1461,7 @@
     },
     "_type": 0,
     "_fillType": 0,
-    "_sizeMode": 1,
+    "_sizeMode": 0,
     "_fillCenter": {
       "__type__": "cc.Vec2",
       "x": 0,
@@ -1597,7 +1597,7 @@
     },
     "_type": 0,
     "_fillType": 0,
-    "_sizeMode": 1,
+    "_sizeMode": 0,
     "_fillCenter": {
       "__type__": "cc.Vec2",
       "x": 0,
@@ -1733,7 +1733,7 @@
     },
     "_type": 0,
     "_fillType": 0,
-    "_sizeMode": 1,
+    "_sizeMode": 0,
     "_fillCenter": {
       "__type__": "cc.Vec2",
       "x": 0,
@@ -2257,7 +2257,7 @@
     },
     "_type": 0,
     "_fillType": 0,
-    "_sizeMode": 1,
+    "_sizeMode": 0,
     "_fillCenter": {
       "__type__": "cc.Vec2",
       "x": 0,
@@ -2393,7 +2393,7 @@
     },
     "_type": 0,
     "_fillType": 0,
-    "_sizeMode": 1,
+    "_sizeMode": 0,
     "_fillCenter": {
       "__type__": "cc.Vec2",
       "x": 0,
@@ -2529,7 +2529,7 @@
     },
     "_type": 0,
     "_fillType": 0,
-    "_sizeMode": 1,
+    "_sizeMode": 0,
     "_fillCenter": {
       "__type__": "cc.Vec2",
       "x": 0,
@@ -2665,7 +2665,7 @@
     },
     "_type": 0,
     "_fillType": 0,
-    "_sizeMode": 1,
+    "_sizeMode": 0,
     "_fillCenter": {
       "__type__": "cc.Vec2",
       "x": 0,
@@ -2801,7 +2801,7 @@
     },
     "_type": 0,
     "_fillType": 0,
-    "_sizeMode": 1,
+    "_sizeMode": 0,
     "_fillCenter": {
       "__type__": "cc.Vec2",
       "x": 0,
@@ -2937,7 +2937,7 @@
     },
     "_type": 0,
     "_fillType": 0,
-    "_sizeMode": 1,
+    "_sizeMode": 0,
     "_fillCenter": {
       "__type__": "cc.Vec2",
       "x": 0,
@@ -3073,7 +3073,7 @@
     },
     "_type": 0,
     "_fillType": 0,
-    "_sizeMode": 1,
+    "_sizeMode": 0,
     "_fillCenter": {
       "__type__": "cc.Vec2",
       "x": 0,
@@ -3209,7 +3209,7 @@
     },
     "_type": 0,
     "_fillType": 0,
-    "_sizeMode": 1,
+    "_sizeMode": 0,
     "_fillCenter": {
       "__type__": "cc.Vec2",
       "x": 0,
@@ -3345,7 +3345,7 @@
     },
     "_type": 0,
     "_fillType": 0,
-    "_sizeMode": 1,
+    "_sizeMode": 0,
     "_fillCenter": {
       "__type__": "cc.Vec2",
       "x": 0,
@@ -3481,7 +3481,7 @@
     },
     "_type": 0,
     "_fillType": 0,
-    "_sizeMode": 1,
+    "_sizeMode": 0,
     "_fillCenter": {
       "__type__": "cc.Vec2",
       "x": 0,
@@ -3671,7 +3671,7 @@
     },
     "_type": 0,
     "_fillType": 0,
-    "_sizeMode": 1,
+    "_sizeMode": 0,
     "_fillCenter": {
       "__type__": "cc.Vec2",
       "x": 0,
@@ -3757,7 +3757,7 @@
     },
     "_type": 0,
     "_fillType": 0,
-    "_sizeMode": 1,
+    "_sizeMode": 0,
     "_fillCenter": {
       "__type__": "cc.Vec2",
       "x": 0,
@@ -3947,7 +3947,7 @@
     },
     "_type": 0,
     "_fillType": 0,
-    "_sizeMode": 1,
+    "_sizeMode": 0,
     "_fillCenter": {
       "__type__": "cc.Vec2",
       "x": 0,
@@ -4033,7 +4033,7 @@
     },
     "_type": 0,
     "_fillType": 0,
-    "_sizeMode": 1,
+    "_sizeMode": 0,
     "_fillCenter": {
       "__type__": "cc.Vec2",
       "x": 0,
@@ -4223,7 +4223,7 @@
     },
     "_type": 0,
     "_fillType": 0,
-    "_sizeMode": 1,
+    "_sizeMode": 0,
     "_fillCenter": {
       "__type__": "cc.Vec2",
       "x": 0,
@@ -4309,7 +4309,7 @@
     },
     "_type": 0,
     "_fillType": 0,
-    "_sizeMode": 1,
+    "_sizeMode": 0,
     "_fillCenter": {
       "__type__": "cc.Vec2",
       "x": 0,
@@ -4499,7 +4499,7 @@
     },
     "_type": 0,
     "_fillType": 0,
-    "_sizeMode": 1,
+    "_sizeMode": 0,
     "_fillCenter": {
       "__type__": "cc.Vec2",
       "x": 0,
@@ -4585,7 +4585,7 @@
     },
     "_type": 0,
     "_fillType": 0,
-    "_sizeMode": 1,
+    "_sizeMode": 0,
     "_fillCenter": {
       "__type__": "cc.Vec2",
       "x": 0,
@@ -4775,7 +4775,7 @@
     },
     "_type": 0,
     "_fillType": 0,
-    "_sizeMode": 1,
+    "_sizeMode": 0,
     "_fillCenter": {
       "__type__": "cc.Vec2",
       "x": 0,
@@ -4861,7 +4861,7 @@
     },
     "_type": 0,
     "_fillType": 0,
-    "_sizeMode": 1,
+    "_sizeMode": 0,
     "_fillCenter": {
       "__type__": "cc.Vec2",
       "x": 0,
@@ -5202,13 +5202,10 @@
       "b": 255,
       "a": 255
     },
-    "_spriteFrame": {
-      "__uuid__": "79e24201-052c-4f0c-8e9e-352c656cd333@f9941",
-      "__expectedType__": "cc.SpriteFrame"
-    },
+    "_spriteFrame": null,
     "_type": 1,
     "_fillType": 0,
-    "_sizeMode": 1,
+    "_sizeMode": 0,
     "_fillCenter": {
       "__type__": "cc.Vec2",
       "x": 0,
@@ -5920,13 +5917,10 @@
       "b": 255,
       "a": 255
     },
-    "_spriteFrame": {
-      "__uuid__": "997dc113-8362-43d4-9a1f-cc6077f56153@f9941",
-      "__expectedType__": "cc.SpriteFrame"
-    },
+    "_spriteFrame": null,
     "_type": 0,
     "_fillType": 0,
-    "_sizeMode": 1,
+    "_sizeMode": 0,
     "_fillCenter": {
       "__type__": "cc.Vec2",
       "x": 0,

+ 92 - 92
assets/package/spine/qingwa.atlas

@@ -6,385 +6,385 @@ filter: Linear,Linear
 repeat: none
 arm
   rotate: false
-  xy: 525, 310
+  xy: 408, 78
   size: 58, 60
   orig: 58, 60
   offset: 0, 0
   index: -1
 arm2
-  rotate: true
-  xy: 424, 150
+  rotate: false
+  xy: 276, 77
   size: 65, 61
   orig: 65, 61
   offset: 0, 0
   index: -1
 bikong_front
-  rotate: true
-  xy: 143, 66
+  rotate: false
+  xy: 576, 379
   size: 8, 16
   orig: 10, 18
   offset: 1, 1
   index: -1
 bingkou2_front
-  rotate: true
-  xy: 143, 66
+  rotate: false
+  xy: 576, 379
   size: 8, 16
   orig: 10, 18
   offset: 1, 1
   index: -1
 bingzi_front
-  rotate: false
-  xy: 482, 114
+  rotate: true
+  xy: 988, 400
   size: 52, 34
   orig: 58, 40
   offset: 3, 3
   index: -1
 bizi_front
   rotate: false
-  xy: 136, 276
+  xy: 276, 146
   size: 15, 19
   orig: 17, 21
   offset: 1, 1
   index: -1
 body1
-  rotate: false
-  xy: 143, 95
+  rotate: true
+  xy: 2, 7
   size: 158, 179
   orig: 158, 179
   offset: 0, 0
   index: -1
 body_back
   rotate: false
-  xy: 150, 327
+  xy: 294, 212
   size: 159, 183
   orig: 159, 183
   offset: 0, 0
   index: -1
 body_front
   rotate: true
-  xy: 303, 110
+  xy: 455, 228
   size: 167, 119
   orig: 167, 119
   offset: 0, 0
   index: -1
 down_28
-  rotate: true
-  xy: 2, 276
-  size: 234, 66
+  rotate: false
+  xy: 2, 397
+  size: 290, 113
   orig: 290, 113
-  offset: 27, 25
+  offset: 0, 0
   index: -1
 down_30
-  rotate: true
-  xy: 2, 61
-  size: 213, 83
+  rotate: false
+  xy: 2, 282
+  size: 290, 113
   orig: 290, 113
-  offset: 46, 15
+  offset: 0, 0
   index: -1
 down_32
-  rotate: true
-  xy: 70, 297
-  size: 213, 78
+  rotate: false
+  xy: 294, 397
+  size: 290, 113
   orig: 290, 113
-  offset: 56, 18
+  offset: 0, 0
   index: -1
 down_34
-  rotate: true
-  xy: 87, 61
-  size: 213, 54
+  rotate: false
+  xy: 2, 167
+  size: 290, 113
   orig: 290, 113
-  offset: 58, 32
+  offset: 0, 0
   index: -1
 eye
-  rotate: true
-  xy: 510, 372
+  rotate: false
+  xy: 986, 373
   size: 36, 25
   orig: 42, 31
   offset: 3, 3
   index: -1
 eye1
-  rotate: true
-  xy: 500, 443
+  rotate: false
+  xy: 576, 311
   size: 67, 66
   orig: 69, 68
   offset: 1, 1
   index: -1
 ringt_front
-  rotate: true
-  xy: 500, 443
+  rotate: false
+  xy: 576, 311
   size: 67, 66
   orig: 69, 68
   offset: 1, 1
   index: -1
 eye1_back
-  rotate: true
-  xy: 568, 443
+  rotate: false
+  xy: 576, 243
   size: 67, 66
   orig: 77, 76
   offset: 5, 5
   index: -1
 eye2
   rotate: false
-  xy: 2, 3
+  xy: 468, 85
   size: 55, 56
   orig: 57, 58
   offset: 1, 1
   index: -1
 eye2_back
   rotate: false
-  xy: 59, 3
+  xy: 525, 85
   size: 55, 56
   orig: 65, 66
   offset: 5, 5
   index: -1
 face
-  rotate: true
-  xy: 318, 6
+  rotate: false
+  xy: 456, 143
   size: 102, 83
   orig: 104, 85
   offset: 1, 1
   index: -1
 feet
   rotate: false
-  xy: 557, 223
+  xy: 582, 77
   size: 33, 33
   orig: 35, 35
   offset: 1, 1
   index: -1
 feet1
   rotate: false
-  xy: 585, 348
+  xy: 683, 173
   size: 32, 32
   orig: 34, 34
   offset: 1, 1
   index: -1
 hand
-  rotate: true
-  xy: 279, 279
+  rotate: false
+  xy: 635, 186
   size: 46, 55
   orig: 46, 55
   offset: 0, 0
   index: -1
 hand1
-  rotate: true
-  xy: 557, 258
+  rotate: false
+  xy: 934, 383
   size: 50, 44
   orig: 56, 50
   offset: 3, 3
   index: -1
 jian
-  rotate: true
-  xy: 383, 369
+  rotate: false
+  xy: 733, 419
   size: 141, 91
   orig: 147, 97
   offset: 3, 3
   index: -1
 jian_back
-  rotate: false
-  xy: 311, 350
+  rotate: true
+  xy: 294, 140
   size: 70, 160
   orig: 70, 160
   offset: 0, 0
   index: -1
 left arm_back
-  rotate: false
-  xy: 349, 280
+  rotate: true
+  xy: 645, 247
   size: 62, 68
   orig: 62, 68
   offset: 0, 0
   index: -1
 left feet_back
   rotate: false
-  xy: 592, 223
+  xy: 617, 111
   size: 32, 33
   orig: 34, 35
   offset: 1, 1
   index: -1
 left hand_back
   rotate: false
-  xy: 571, 382
+  xy: 581, 182
   size: 52, 59
   orig: 53, 59
   offset: 0, 0
   index: -1
 left_front
-  rotate: true
-  xy: 424, 217
+  rotate: false
+  xy: 645, 311
   size: 67, 66
   orig: 69, 68
   offset: 1, 1
   index: -1
 lefthand__front
   rotate: false
-  xy: 487, 152
+  xy: 276, 12
   size: 63, 63
   orig: 63, 63
   offset: 0, 0
   index: -1
 lefthand_front
-  rotate: false
-  xy: 537, 374
+  rotate: true
+  xy: 581, 148
   size: 32, 34
   orig: 38, 40
   offset: 3, 3
   index: -1
 leftleg_front
   rotate: false
-  xy: 476, 370
+  xy: 683, 207
   size: 32, 38
   orig: 38, 44
   offset: 3, 3
   index: -1
 rightleg_front
   rotate: false
-  xy: 476, 370
+  xy: 683, 207
   size: 32, 38
   orig: 38, 44
   offset: 3, 3
   index: -1
 leftyanzhu_front
   rotate: false
-  xy: 153, 286
+  xy: 183, 2
   size: 9, 9
   orig: 11, 11
   offset: 1, 1
   index: -1
 rightyanzhu_front
   rotate: false
-  xy: 153, 286
+  xy: 183, 2
   size: 9, 9
   orig: 11, 11
   offset: 1, 1
   index: -1
 yanzhu2
   rotate: false
-  xy: 153, 286
+  xy: 183, 2
   size: 9, 9
   orig: 11, 11
   offset: 1, 1
   index: -1
 lian_front
   rotate: false
-  xy: 413, 286
+  xy: 876, 429
   size: 110, 81
   orig: 112, 83
   offset: 1, 1
   index: -1
 meimao
   rotate: false
-  xy: 143, 76
+  xy: 560, 143
   size: 18, 17
   orig: 20, 19
   offset: 1, 1
   index: -1
 meimao2
   rotate: false
-  xy: 525, 286
+  xy: 617, 87
   size: 30, 22
   orig: 32, 24
   offset: 1, 1
   index: -1
 mouth
   rotate: false
-  xy: 311, 327
+  xy: 835, 396
   size: 36, 21
   orig: 42, 27
   offset: 3, 3
   index: -1
 nose
-  rotate: false
-  xy: 424, 114
+  rotate: true
+  xy: 988, 454
   size: 56, 34
   orig: 58, 36
   offset: 1, 1
   index: -1
 right arm_back
-  rotate: true
-  xy: 552, 156
+  rotate: false
+  xy: 341, 14
   size: 63, 59
   orig: 65, 61
   offset: 1, 1
   index: -1
 right feet_back
-  rotate: false
-  xy: 536, 410
+  rotate: true
+  xy: 650, 152
   size: 32, 31
   orig: 34, 33
   offset: 1, 1
   index: -1
 right hand_back
-  rotate: true
-  xy: 116, 3
+  rotate: false
+  xy: 876, 381
   size: 56, 46
   orig: 62, 52
   offset: 3, 3
   index: -1
 right_front
   rotate: false
-  xy: 492, 221
+  xy: 343, 75
   size: 63, 63
   orig: 63, 63
   offset: 0, 0
   index: -1
 shadow
-  rotate: true
-  xy: 476, 410
+  rotate: false
+  xy: 733, 395
   size: 100, 22
   orig: 102, 24
   offset: 1, 1
   index: -1
 tail
   rotate: true
-  xy: 536, 116
+  xy: 582, 112
   size: 34, 33
   orig: 36, 34
   offset: 1, 0
   index: -1
 tail_back
-  rotate: false
-  xy: 500, 410
+  rotate: true
+  xy: 617, 146
   size: 34, 31
   orig: 36, 34
   offset: 1, 1
   index: -1
 tou_front
   rotate: false
-  xy: 403, 7
+  xy: 586, 409
   size: 145, 101
   orig: 145, 101
   offset: 0, 0
   index: -1
 wuqi_front
-  rotate: true
-  xy: 164, 2
+  rotate: false
+  xy: 183, 13
   size: 91, 152
   orig: 91, 152
   offset: 0, 0
   index: -1
 yanjin_front
   rotate: false
-  xy: 150, 297
+  xy: 586, 379
   size: 127, 28
   orig: 129, 30
   offset: 1, 1
   index: -1
 yanjing_front
-  rotate: false
-  xy: 70, 276
+  rotate: true
+  xy: 560, 162
   size: 64, 19
   orig: 66, 21
   offset: 1, 1
   index: -1
 yanzhu
   rotate: false
-  xy: 164, 286
+  xy: 194, 2
   size: 9, 9
   orig: 11, 11
   offset: 1, 1
   index: -1
 yanzhu3
   rotate: false
-  xy: 153, 276
+  xy: 715, 399
   size: 8, 8
   orig: 10, 10
   offset: 1, 1

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 60 - 72
assets/package/spine/qingwa.json


BIN
assets/package/spine/qingwa.png


+ 30 - 30
assets/package/spine/qingwa.png.meta

@@ -42,12 +42,12 @@
         "trimType": "auto",
         "trimThreshold": 1,
         "rotated": false,
-        "offsetX": -194,
-        "offsetY": -0.5,
-        "trimX": 2,
-        "trimY": 3,
-        "width": 632,
-        "height": 507,
+        "offsetX": 0.5,
+        "offsetY": 0,
+        "trimX": 3,
+        "trimY": 2,
+        "width": 1019,
+        "height": 508,
         "rawWidth": 1024,
         "rawHeight": 512,
         "borderTop": 0,
@@ -61,17 +61,17 @@
         "meshType": 0,
         "vertices": {
           "rawPosition": [
-            -316,
-            -253.5,
+            -509.5,
+            -254,
             0,
-            316,
-            -253.5,
+            509.5,
+            -254,
             0,
-            -316,
-            253.5,
+            -509.5,
+            254,
             0,
-            316,
-            253.5,
+            509.5,
+            254,
             0
           ],
           "indexes": [
@@ -83,33 +83,33 @@
             3
           ],
           "uv": [
+            3,
+            510,
+            1022,
+            510,
+            3,
             2,
-            509,
-            634,
-            509,
-            2,
-            2,
-            634,
+            1022,
             2
           ],
           "nuv": [
-            0.001953125,
+            0.0029296875,
             0.00390625,
-            0.619140625,
+            0.998046875,
             0.00390625,
-            0.001953125,
-            0.994140625,
-            0.619140625,
-            0.994140625
+            0.0029296875,
+            0.99609375,
+            0.998046875,
+            0.99609375
           ],
           "minPos": [
-            -316,
-            -253.5,
+            -509.5,
+            -254,
             0
           ],
           "maxPos": [
-            316,
-            253.5,
+            509.5,
+            254,
             0
           ]
         },

+ 9 - 0
assets/package/spine/xiongmao.meta

@@ -0,0 +1,9 @@
+{
+  "ver": "1.2.0",
+  "importer": "directory",
+  "imported": true,
+  "uuid": "cfd8401e-760e-4563-bb67-5067f3a3ee6f",
+  "files": [],
+  "subMetas": {},
+  "userData": {}
+}

+ 454 - 0
assets/package/spine/xiongmao/skeleton.atlas

@@ -0,0 +1,454 @@
+
+skeleton.png
+size: 1508,269
+format: RGBA8888
+filter: Linear,Linear
+repeat: none
+baohua0001
+  rotate: true
+  xy: 181, 84
+  size: 183, 176
+  orig: 187, 181
+  offset: 2, 2
+  index: -1
+baohua0003
+  rotate: true
+  xy: 2, 79
+  size: 188, 177
+  orig: 192, 180
+  offset: 2, 1
+  index: -1
+baohua0005
+  rotate: false
+  xy: 513, 95
+  size: 153, 172
+  orig: 158, 177
+  offset: 3, 1
+  index: -1
+baohua0006
+  rotate: false
+  xy: 359, 94
+  size: 152, 173
+  orig: 158, 181
+  offset: 3, 2
+  index: -1
+baohua0007
+  rotate: false
+  xy: 668, 101
+  size: 158, 166
+  orig: 163, 173
+  offset: 3, 2
+  index: -1
+bei1
+  rotate: true
+  xy: 1038, 127
+  size: 140, 93
+  orig: 140, 93
+  offset: 0, 0
+  index: -1
+bei10
+  rotate: true
+  xy: 189, 4
+  size: 78, 23
+  orig: 78, 23
+  offset: 0, 0
+  index: -1
+ce016
+  rotate: true
+  xy: 189, 4
+  size: 78, 23
+  orig: 78, 23
+  offset: 0, 0
+  index: -1
+ce16
+  rotate: true
+  xy: 189, 4
+  size: 78, 23
+  orig: 78, 23
+  offset: 0, 0
+  index: -1
+bei11
+  rotate: true
+  xy: 1199, 25
+  size: 100, 22
+  orig: 100, 22
+  offset: 0, 0
+  index: -1
+ce017
+  rotate: true
+  xy: 1199, 25
+  size: 100, 22
+  orig: 100, 22
+  offset: 0, 0
+  index: -1
+ce17
+  rotate: true
+  xy: 1199, 25
+  size: 100, 22
+  orig: 100, 22
+  offset: 0, 0
+  index: -1
+zheng14
+  rotate: true
+  xy: 1199, 25
+  size: 100, 22
+  orig: 100, 22
+  offset: 0, 0
+  index: -1
+bei2
+  rotate: false
+  xy: 558, 2
+  size: 50, 30
+  orig: 50, 30
+  offset: 0, 0
+  index: -1
+bei3
+  rotate: true
+  xy: 1365, 32
+  size: 40, 33
+  orig: 40, 33
+  offset: 0, 0
+  index: -1
+bei4
+  rotate: true
+  xy: 828, 112
+  size: 155, 103
+  orig: 155, 103
+  offset: 0, 0
+  index: -1
+bei5
+  rotate: true
+  xy: 1228, 132
+  size: 135, 56
+  orig: 136, 56
+  offset: 0, 0
+  index: -1
+bei6
+  rotate: true
+  xy: 444, 25
+  size: 67, 112
+  orig: 67, 112
+  offset: 0, 0
+  index: -1
+bei7
+  rotate: false
+  xy: 662, 2
+  size: 41, 31
+  orig: 41, 31
+  offset: 0, 0
+  index: -1
+bei8
+  rotate: false
+  xy: 662, 2
+  size: 41, 31
+  orig: 41, 31
+  offset: 0, 0
+  index: -1
+ce9
+  rotate: false
+  xy: 662, 2
+  size: 41, 31
+  orig: 41, 31
+  offset: 0, 0
+  index: -1
+bei9
+  rotate: true
+  xy: 2, 2
+  size: 75, 79
+  orig: 75, 79
+  offset: 0, 0
+  index: -1
+ce8
+  rotate: true
+  xy: 2, 2
+  size: 75, 79
+  orig: 75, 79
+  offset: 0, 0
+  index: -1
+ce01
+  rotate: true
+  xy: 1453, 108
+  size: 31, 39
+  orig: 31, 39
+  offset: 0, 0
+  index: -1
+ce010
+  rotate: false
+  xy: 214, 15
+  size: 113, 67
+  orig: 113, 67
+  offset: 0, 0
+  index: -1
+ce011
+  rotate: false
+  xy: 610, 2
+  size: 50, 30
+  orig: 50, 30
+  offset: 0, 0
+  index: -1
+ce012
+  rotate: true
+  xy: 1435, 141
+  size: 40, 33
+  orig: 40, 33
+  offset: 0, 0
+  index: -1
+ce013
+  rotate: true
+  xy: 1133, 127
+  size: 140, 93
+  orig: 140, 93
+  offset: 0, 0
+  index: -1
+ce014
+  rotate: false
+  xy: 902, 7
+  size: 155, 103
+  orig: 155, 103
+  offset: 0, 0
+  index: -1
+ce015
+  rotate: true
+  xy: 1286, 132
+  size: 135, 56
+  orig: 136, 56
+  offset: 1, 0
+  index: -1
+ce02
+  rotate: false
+  xy: 214, 5
+  size: 15, 8
+  orig: 15, 8
+  offset: 0, 0
+  index: -1
+ce03
+  rotate: true
+  xy: 1223, 2
+  size: 28, 38
+  orig: 28, 38
+  offset: 0, 0
+  index: -1
+ce04
+  rotate: false
+  xy: 248, 9
+  size: 27, 4
+  orig: 27, 4
+  offset: 0, 0
+  index: -1
+ce4
+  rotate: false
+  xy: 248, 9
+  size: 27, 4
+  orig: 27, 4
+  offset: 0, 0
+  index: -1
+ce05
+  rotate: true
+  xy: 558, 34
+  size: 59, 44
+  orig: 59, 44
+  offset: 0, 0
+  index: -1
+ce06
+  rotate: false
+  xy: 1303, 2
+  size: 36, 28
+  orig: 36, 28
+  offset: 0, 0
+  index: -1
+ce07
+  rotate: true
+  xy: 1475, 226
+  size: 41, 31
+  orig: 41, 31
+  offset: 0, 0
+  index: -1
+ce08
+  rotate: true
+  xy: 83, 2
+  size: 75, 79
+  orig: 75, 79
+  offset: 0, 0
+  index: -1
+ce09
+  rotate: true
+  xy: 1402, 140
+  size: 41, 31
+  orig: 41, 31
+  offset: 0, 0
+  index: -1
+ce1
+  rotate: true
+  xy: 1453, 75
+  size: 31, 39
+  orig: 31, 39
+  offset: 0, 0
+  index: -1
+ce10
+  rotate: false
+  xy: 329, 15
+  size: 113, 67
+  orig: 113, 67
+  offset: 0, 0
+  index: -1
+ce11
+  rotate: true
+  xy: 1400, 22
+  size: 50, 30
+  orig: 50, 30
+  offset: 0, 0
+  index: -1
+ce12
+  rotate: true
+  xy: 1470, 141
+  size: 40, 33
+  orig: 40, 33
+  offset: 0, 0
+  index: -1
+ce13
+  rotate: false
+  xy: 1223, 32
+  size: 140, 93
+  orig: 140, 93
+  offset: 0, 0
+  index: -1
+ce14
+  rotate: true
+  xy: 933, 112
+  size: 155, 103
+  orig: 155, 103
+  offset: 0, 0
+  index: -1
+ce15
+  rotate: true
+  xy: 1344, 132
+  size: 135, 56
+  orig: 136, 56
+  offset: 0, 0
+  index: -1
+ce2
+  rotate: false
+  xy: 231, 5
+  size: 15, 8
+  orig: 15, 8
+  offset: 0, 0
+  index: -1
+ce3
+  rotate: true
+  xy: 1263, 2
+  size: 28, 38
+  orig: 28, 38
+  offset: 0, 0
+  index: -1
+ce5
+  rotate: true
+  xy: 604, 34
+  size: 59, 44
+  orig: 59, 44
+  offset: 0, 0
+  index: -1
+ce6
+  rotate: false
+  xy: 1341, 2
+  size: 36, 28
+  orig: 36, 28
+  offset: 0, 0
+  index: -1
+ce7
+  rotate: true
+  xy: 1475, 183
+  size: 41, 31
+  orig: 41, 31
+  offset: 0, 0
+  index: -1
+zheng8
+  rotate: true
+  xy: 1475, 183
+  size: 41, 31
+  orig: 41, 31
+  offset: 0, 0
+  index: -1
+zheng1
+  rotate: false
+  xy: 650, 35
+  size: 50, 58
+  orig: 50, 58
+  offset: 0, 0
+  index: -1
+zheng10
+  rotate: true
+  xy: 1432, 35
+  size: 38, 32
+  orig: 38, 32
+  offset: 0, 0
+  index: -1
+zheng11
+  rotate: false
+  xy: 1466, 41
+  size: 38, 32
+  orig: 38, 32
+  offset: 0, 0
+  index: -1
+zheng12
+  rotate: false
+  xy: 1059, 13
+  size: 138, 112
+  orig: 138, 112
+  offset: 0, 0
+  index: -1
+zheng13
+  rotate: true
+  xy: 164, 7
+  size: 70, 23
+  orig: 70, 23
+  offset: 0, 0
+  index: -1
+zheng2
+  rotate: false
+  xy: 845, 6
+  size: 55, 104
+  orig: 55, 104
+  offset: 0, 0
+  index: -1
+zheng3
+  rotate: false
+  xy: 1365, 74
+  size: 53, 56
+  orig: 53, 56
+  offset: 0, 0
+  index: -1
+zheng4
+  rotate: false
+  xy: 1432, 3
+  size: 30, 30
+  orig: 30, 30
+  offset: 0, 0
+  index: -1
+zheng5
+  rotate: false
+  xy: 1432, 226
+  size: 41, 41
+  orig: 41, 41
+  offset: 0, 0
+  index: -1
+zheng6
+  rotate: false
+  xy: 1432, 183
+  size: 41, 41
+  orig: 41, 41
+  offset: 0, 0
+  index: -1
+zheng7
+  rotate: true
+  xy: 1420, 97
+  size: 41, 31
+  orig: 41, 31
+  offset: 0, 0
+  index: -1
+zheng9
+  rotate: false
+  xy: 705, 4
+  size: 138, 95
+  orig: 138, 95
+  offset: 0, 0
+  index: -1

+ 12 - 0
assets/package/spine/xiongmao/skeleton.atlas.meta

@@ -0,0 +1,12 @@
+{
+  "ver": "1.0.0",
+  "importer": "*",
+  "imported": true,
+  "uuid": "0c138990-6c13-4f00-8fa5-90b2ca90b4eb",
+  "files": [
+    ".atlas",
+    ".json"
+  ],
+  "subMetas": {},
+  "userData": {}
+}

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 0 - 0
assets/package/spine/xiongmao/skeleton.json


+ 11 - 0
assets/package/spine/xiongmao/skeleton.json.meta

@@ -0,0 +1,11 @@
+{
+  "ver": "1.2.6",
+  "importer": "spine-data",
+  "imported": true,
+  "uuid": "520d9b41-a575-479b-9b5e-8ccf0edcb4db",
+  "files": [
+    ".json"
+  ],
+  "subMetas": {},
+  "userData": {}
+}

BIN
assets/package/spine/xiongmao/skeleton.png


+ 134 - 0
assets/package/spine/xiongmao/skeleton.png.meta

@@ -0,0 +1,134 @@
+{
+  "ver": "1.0.27",
+  "importer": "image",
+  "imported": true,
+  "uuid": "ff0bdf72-9d64-40ad-918d-39e5dc6a44fa",
+  "files": [
+    ".json",
+    ".png"
+  ],
+  "subMetas": {
+    "6c48a": {
+      "importer": "texture",
+      "uuid": "ff0bdf72-9d64-40ad-918d-39e5dc6a44fa@6c48a",
+      "displayName": "skeleton",
+      "id": "6c48a",
+      "name": "texture",
+      "userData": {
+        "wrapModeS": "clamp-to-edge",
+        "wrapModeT": "clamp-to-edge",
+        "imageUuidOrDatabaseUri": "ff0bdf72-9d64-40ad-918d-39e5dc6a44fa",
+        "isUuid": true,
+        "visible": false,
+        "minfilter": "linear",
+        "magfilter": "linear",
+        "mipfilter": "none",
+        "anisotropy": 0
+      },
+      "ver": "1.0.22",
+      "imported": true,
+      "files": [
+        ".json"
+      ],
+      "subMetas": {}
+    },
+    "f9941": {
+      "importer": "sprite-frame",
+      "uuid": "ff0bdf72-9d64-40ad-918d-39e5dc6a44fa@f9941",
+      "displayName": "skeleton",
+      "id": "f9941",
+      "name": "spriteFrame",
+      "userData": {
+        "trimType": "auto",
+        "trimThreshold": 1,
+        "rotated": false,
+        "offsetX": 0,
+        "offsetY": 0,
+        "trimX": 2,
+        "trimY": 2,
+        "width": 1504,
+        "height": 265,
+        "rawWidth": 1508,
+        "rawHeight": 269,
+        "borderTop": 0,
+        "borderBottom": 0,
+        "borderLeft": 0,
+        "borderRight": 0,
+        "packable": true,
+        "pixelsToUnit": 100,
+        "pivotX": 0.5,
+        "pivotY": 0.5,
+        "meshType": 0,
+        "vertices": {
+          "rawPosition": [
+            -752,
+            -132.5,
+            0,
+            752,
+            -132.5,
+            0,
+            -752,
+            132.5,
+            0,
+            752,
+            132.5,
+            0
+          ],
+          "indexes": [
+            0,
+            1,
+            2,
+            2,
+            1,
+            3
+          ],
+          "uv": [
+            2,
+            267,
+            1506,
+            267,
+            2,
+            2,
+            1506,
+            2
+          ],
+          "nuv": [
+            0.001326259946949602,
+            0.007434944237918215,
+            0.9986737400530504,
+            0.007434944237918215,
+            0.001326259946949602,
+            0.9925650557620818,
+            0.9986737400530504,
+            0.9925650557620818
+          ],
+          "minPos": [
+            -752,
+            -132.5,
+            0
+          ],
+          "maxPos": [
+            752,
+            132.5,
+            0
+          ]
+        },
+        "isUuid": true,
+        "imageUuidOrDatabaseUri": "ff0bdf72-9d64-40ad-918d-39e5dc6a44fa@6c48a",
+        "atlasUuid": ""
+      },
+      "ver": "1.0.12",
+      "imported": true,
+      "files": [
+        ".json"
+      ],
+      "subMetas": {}
+    }
+  },
+  "userData": {
+    "type": "sprite-frame",
+    "hasAlpha": true,
+    "fixAlphaTransparencyArtifacts": false,
+    "redirect": "ff0bdf72-9d64-40ad-918d-39e5dc6a44fa@6c48a"
+  }
+}

BIN
assets/package/texture/tower/ui/02-1.png


+ 44 - 44
assets/package/texture/tower/ui/02.png.meta → assets/package/texture/tower/ui/02-1.png.meta

@@ -2,7 +2,7 @@
   "ver": "1.0.27",
   "importer": "image",
   "imported": true,
-  "uuid": "997dc113-8362-43d4-9a1f-cc6077f56153",
+  "uuid": "7b57d050-2afe-427e-b0b6-dcbdce46705a",
   "files": [
     ".json",
     ".png"
@@ -10,14 +10,14 @@
   "subMetas": {
     "6c48a": {
       "importer": "texture",
-      "uuid": "997dc113-8362-43d4-9a1f-cc6077f56153@6c48a",
-      "displayName": "02",
+      "uuid": "7b57d050-2afe-427e-b0b6-dcbdce46705a@6c48a",
+      "displayName": "02-1",
       "id": "6c48a",
       "name": "texture",
       "userData": {
         "wrapModeS": "clamp-to-edge",
         "wrapModeT": "clamp-to-edge",
-        "imageUuidOrDatabaseUri": "997dc113-8362-43d4-9a1f-cc6077f56153",
+        "imageUuidOrDatabaseUri": "7b57d050-2afe-427e-b0b6-dcbdce46705a",
         "isUuid": true,
         "visible": false,
         "minfilter": "linear",
@@ -34,22 +34,22 @@
     },
     "f9941": {
       "importer": "sprite-frame",
-      "uuid": "997dc113-8362-43d4-9a1f-cc6077f56153@f9941",
-      "displayName": "02",
+      "uuid": "7b57d050-2afe-427e-b0b6-dcbdce46705a@f9941",
+      "displayName": "02-1",
       "id": "f9941",
       "name": "spriteFrame",
       "userData": {
         "trimType": "auto",
         "trimThreshold": 1,
         "rotated": false,
-        "offsetX": -0.5,
-        "offsetY": 3,
-        "trimX": 4,
-        "trimY": 5,
-        "width": 741,
-        "height": 1318,
-        "rawWidth": 750,
-        "rawHeight": 1334,
+        "offsetX": 0,
+        "offsetY": 0,
+        "trimX": 0,
+        "trimY": 0,
+        "width": 713,
+        "height": 218,
+        "rawWidth": 713,
+        "rawHeight": 218,
         "borderTop": 0,
         "borderBottom": 0,
         "borderLeft": 0,
@@ -61,17 +61,17 @@
         "meshType": 0,
         "vertices": {
           "rawPosition": [
-            -370.5,
-            -659,
+            -356.5,
+            -109,
             0,
-            370.5,
-            -659,
+            356.5,
+            -109,
             0,
-            -370.5,
-            659,
+            -356.5,
+            109,
             0,
-            370.5,
-            659,
+            356.5,
+            109,
             0
           ],
           "indexes": [
@@ -83,38 +83,38 @@
             3
           ],
           "uv": [
-            4,
-            1329,
-            745,
-            1329,
-            4,
-            11,
-            745,
-            11
+            0,
+            218,
+            713,
+            218,
+            0,
+            0,
+            713,
+            0
           ],
           "nuv": [
-            0.005333333333333333,
-            0.008245877061469266,
-            0.9933333333333333,
-            0.008245877061469266,
-            0.005333333333333333,
-            0.9962518740629686,
-            0.9933333333333333,
-            0.9962518740629686
+            0,
+            0,
+            1,
+            0,
+            0,
+            1,
+            1,
+            1
           ],
           "minPos": [
-            -370.5,
-            -659,
+            -356.5,
+            -109,
             0
           ],
           "maxPos": [
-            370.5,
-            659,
+            356.5,
+            109,
             0
           ]
         },
         "isUuid": true,
-        "imageUuidOrDatabaseUri": "997dc113-8362-43d4-9a1f-cc6077f56153@6c48a",
+        "imageUuidOrDatabaseUri": "7b57d050-2afe-427e-b0b6-dcbdce46705a@6c48a",
         "atlasUuid": ""
       },
       "ver": "1.0.12",
@@ -129,6 +129,6 @@
     "type": "sprite-frame",
     "hasAlpha": true,
     "fixAlphaTransparencyArtifacts": false,
-    "redirect": "997dc113-8362-43d4-9a1f-cc6077f56153@6c48a"
+    "redirect": "7b57d050-2afe-427e-b0b6-dcbdce46705a@6c48a"
   }
 }

BIN
assets/package/texture/tower/ui/02.png


BIN
assets/package/texture/tower/ui/1.png


+ 20 - 20
assets/package/texture/tower/ui/1.png.meta

@@ -46,10 +46,10 @@
         "offsetY": 0,
         "trimX": 0,
         "trimY": 0,
-        "width": 66,
-        "height": 66,
-        "rawWidth": 66,
-        "rawHeight": 66,
+        "width": 80,
+        "height": 80,
+        "rawWidth": 80,
+        "rawHeight": 80,
         "borderTop": 0,
         "borderBottom": 0,
         "borderLeft": 0,
@@ -61,17 +61,17 @@
         "meshType": 0,
         "vertices": {
           "rawPosition": [
-            -33,
-            -33,
+            -40,
+            -40,
             0,
-            33,
-            -33,
+            40,
+            -40,
             0,
-            -33,
-            33,
+            -40,
+            40,
             0,
-            33,
-            33,
+            40,
+            40,
             0
           ],
           "indexes": [
@@ -84,12 +84,12 @@
           ],
           "uv": [
             0,
-            66,
-            66,
-            66,
+            80,
+            80,
+            80,
             0,
             0,
-            66,
+            80,
             0
           ],
           "nuv": [
@@ -103,13 +103,13 @@
             1
           ],
           "minPos": [
-            -33,
-            -33,
+            -40,
+            -40,
             0
           ],
           "maxPos": [
-            33,
-            33,
+            40,
+            40,
             0
           ]
         },

+ 4 - 6
assets/script/framework/config/LayerConf.ts

@@ -1,9 +1,8 @@
 import { LayerConf, LayerType } from "../layer/LayerManager";
 
 export enum ViewID {
-    MainUI = 0,
 
-    Restart,                    //重新开始
+    Restart = 1,                    //重新开始
     LoginUI,                    //登录
     LoadingUI,                  //加载
     MaskUI,                  //蒙板 
@@ -20,16 +19,15 @@ export enum ViewID {
 }
 
 export let Layer_Conf: { [key: number]: LayerConf } = {
-    [ViewID.MainUI]: { bundle: "package", url: "prefab/login/MainUI", type: LayerType.UI, bottom: true, special: true, preload: true },
+
     [ViewID.Restart]: { bundle: "package", url: "prefab/login/Restart", type: LayerType.Notice },
     [ViewID.LoginUI]: { bundle: "package", url: "prefab/login/LoginUI", type: LayerType.UI },
     [ViewID.LoadingUI]: { bundle: "package", url: "prefab/login/LoadingUI", type: LayerType.UI },
     [ViewID.MaskUI]: { bundle: "package", url: "prefab/ui/relogin/MaskUI", type: LayerType.Notice,special: true, preload: true  },
     [ViewID.TempTipsUI]: { bundle: "package", url: "prefab/ui/TempTipsUI", type: LayerType.Notice },
-    
     [ViewID.GameWind]: { bundle: "package", url: "prefab/ui/GameUI", type: LayerType.UI, anim: 0 },
-	[ViewID.TowerUI]: { bundle: "package", url: "prefab/ui/tower/tower", type: LayerType.Game, anim: 2 },
-    [ViewID.ZombieUI]: { bundle: "package", url: "prefab/ui/tower/zombie", type: LayerType.Game, anim: 2 },
+	[ViewID.TowerUI]: { bundle: "package", url: "prefab/ui/tower/tower", type: LayerType.Game, anim: 0 },
+    [ViewID.ZombieUI]: { bundle: "package", url: "prefab/ui/tower/zombie", type: LayerType.Game, anim: 0 },
 
     [ViewID.MailMain]: { bundle: "mail", url: "prefab/MailMain", type: LayerType.UI, anim: 2 },
     [ViewID.MailDetail]: { bundle: "mail", url: "prefab/MailDetail", type: LayerType.UI, anim: 2 },

+ 15 - 0
assets/script/framework/util/StringUtil.ts

@@ -214,4 +214,19 @@ export class StringUtil {
             return key; 
         }
     }
+
+
+    // 数字转字符串
+    static bigNumberToStr(num) {
+        if(num < 10000){
+            return  Math.floor(num).toString();
+        }else if(num <  1000000){
+            return (num / 1000).toFixed(2) + 'K'
+        }else if(num < 1000000000){
+            return (num / 1000000).toFixed(2) + 'M'
+        }else{
+            return (num / 1000000000).toFixed(2) + 'B'
+        }
+        
+    }
 }

+ 7 - 7
assets/script/game/ui/login/LoginUI.ts

@@ -114,6 +114,7 @@ export class LoginUI extends BaseView {
 		let choose_server = UserData.save_locally('choose_server', null, {})
 		let lastArea = UserData.save_locally('LastArea', null, '1');
 		UserData.setAreanId(lastArea);
+		
 		this.loginData = {
 			url: getParameterByName("url") || ServergatewaylistConf.data.debug['Url' + lastArea],
 			uid: getParameterByName("uid") || uid || "ttq3",
@@ -123,7 +124,7 @@ export class LoginUI extends BaseView {
 
 		// this.server_list.push(choose_server)
 
-		this.userName.string = this.loginData.uid
+		this.userName.string = this.loginData.uid || ""
 		// this.serverName.string = "997"
 
 		this.agreementState = UserData.save_locally('AgreementState', null, 0)
@@ -191,13 +192,12 @@ export class LoginUI extends BaseView {
 			UserData.save_locally('LastArea', lastArea);
 			if (UserData['mark'].first_login && UserData['mark'].first_login == 1) {
 
-				Framework.layer.open(ViewID.MainUI, () => {
-					Framework.layer.close(ViewID.LoginUI);
-					Framework.layer.close(ViewID.SelectServer);
-				});
-
+			Framework.layer.open(ViewID.TowerUI, () => {
+						Framework.layer.close(ViewID.LoginUI);
+						Framework.layer.close(ViewID.SelectServer);
+					});
 			} else {
-				Framework.layer.open(ViewID.MainUI, () => {
+				Framework.layer.open(ViewID.TowerUI, () => {
 					Framework.layer.close(ViewID.LoginUI);
 					Framework.layer.close(ViewID.SelectServer);
 				});

+ 0 - 156
assets/script/game/ui/login/MainUI.ts

@@ -1,156 +0,0 @@
-import { Sprite, Vec3, _decorator } from 'cc';
-import { AudioID } from '../../../framework/config/AudioConf';
-import { ViewID } from '../../../framework/config/LayerConf';
-import { Framework } from '../../../framework/Framework';
-import { BaseView } from '../../../framework/layer/BaseView';
-
-import { UserData } from '../../data/UserData';
-import { LoginMgr } from '../../common/LoginManager';
-const { ccclass, property } = _decorator;
-
-@ccclass('MainUI')
-export class MainUI extends BaseView {
-	private GameUI = {}
-	private openGameUI = 'Unpacking';
-	private _timer_uuid = 0;
-	onLoad() {
-		super.onLoad();
-	}
-
-
-	// 所有监听事件
-	EventAll() {
-
-	}
-
-	onDestroy() {
-		Framework.event.removeEvent(this);
-		super.onDestroy();
-	}
-
-	onOpen() {
-		// this.mainRedDot();
-		Framework.layer.open(ViewID.TowerUI, null, (the) => {
-		// Framework.layer.open(ViewID.ZombieUI, null, (the) => {
-			this.GameUI[this.openGameUI] = the
-		});
-	}
-
-		onMiningRedDotChanged(redNum: number) {
-		this.Node.Mining_red.active = redNum > 0;
-	}
-
-	onArena() {
-		Framework.audio.playEffect(AudioID.Click);
-		LoginMgr.sendPost('arena', 'get', (data) => {
-			if (data) {
-				//Framework.layer.open(ViewID.Arena, null, data);
-			}
-		})
-	}
-	onOpenWin(event: Event, openUI) {
-		Framework.audio.playEffect(AudioID.Click);
-		let target: any = event.target;
-		if (openUI) {
-			if (openUI == 'Legion') {
-				if (UserData['legion'].id != 0) {
-					//Framework.layer.open(ViewID.Legion);
-				} else {
-					//Framework.layer.open(ViewID.NoLegion);
-				}
-			} else {
-				let open_url = Number(ViewID[openUI])
-				Framework.layer.open(open_url);
-			}
-
-		}
-	}
-	onClose() {
-
-	}
-
-	onShow() {
-		this._ui_opacity.opacity = 255;
-		this.node.setPosition(0, 0);
-	}
-
-	onHide() {
-		this._ui_opacity.opacity = 0;
-		this.node.setPosition(0, -5000);
-	}
-	private onTouchButton(event: Event, openUI) {
-		Framework.audio.playEffect(AudioID.Click);
-		let target: any = event.target;
-		// UserData.getNodeFullPath(target)
-		if (openUI) {
-
-
-			let open_url = Number(ViewID[openUI])
-			Framework.layer.open(open_url, () => {
-				if (openUI == 'Territory') {
-					if (!UserData['RoomId']) {
-						UserData['RoomId'] = UserData['_id']
-					}
-				}
-			});
-		}
-	}
-	private BottonBtn(e, str) {
-		Framework.audio.playEffect(AudioID.Click);
-		let target = e.target
-		// UserData.getNodeFullPath(target)
-		if (this.openGameUI != target.name) {
-			if (str == 'Mining') {
-				// let openState = GameUtil.checkSystemOpen(Number(ViewID.Mining));
-				// if (!openState.state) {
-				// 	Framework.tips.setTips(openState.tips);
-				// 	return;
-				// }
-			}
-			let openGameUI = this.openGameUI
-			let onBgFrame = target.parent.getComponent(Sprite).spriteFrame
-			let unBgFrame = this.Node[this.openGameUI].parent.getComponent(Sprite).spriteFrame
-			this.Node[this.openGameUI].children[0].scale = new Vec3(0.75, 0.75)
-			target.parent.getComponent(Sprite).spriteFrame = unBgFrame
-			this.Node[this.openGameUI].parent.getComponent(Sprite).spriteFrame = onBgFrame
-			target.children[0].scale = new Vec3(1, 1)
-			if (this.GameUI[this.openGameUI]) {
-				this.GameUI[this.openGameUI].onHide()
-			}
-			this.openGameUI = str;
-
-			if (!this.GameUI[str]) {
-				console.log(str);
-				Framework.layer.open(Number(ViewID[str]), () => {
-					console.log(str);
-					// let onBgFrame = this.Node[this.openGameUI].parent.getComponent(Sprite).spriteFrame;
-					// let unBgFrame = this.Node[openGameUI].parent.getComponent(Sprite).spriteFrame;
-					// console.log(this.openGameUI);
-					// this.Node[this.openGameUI].children[0].scale = new Vec3(0.75, 0.75);
-					// this.Node[this.openGameUI].parent.getComponent(Sprite).spriteFrame = unBgFrame;
-					// this.Node[openGameUI].parent.getComponent(Sprite).spriteFrame = onBgFrame;
-					// this.Node[openGameUI].children[0].scale = new Vec3(1, 1);
-					// if (this.GameUI[openGameUI]) {
-					// 	this.GameUI[openGameUI].onHide();
-					// }
-					// this.openGameUI = openGameUI;
-				}, (the) => {
-					// this.GameUI[str] = the
-					// UserData['GameUIPage'] = GameConf.GamePageType[str];
-				});
-			} else {
-				this.GameUI[str].onShow()
-			}
-
-		}
-
-	}
-
-	private _startTimer() {
-		(this._timer_uuid != 0) && this._unschedule(this._timer_uuid);
-		// this._timer_uuid = this._schedule(() => {
-		// 	// LoginMgr.saveData();
-		// }, GameConf.Macro.default_update_time);
-	}
-
-}

+ 0 - 9
assets/script/game/ui/login/MainUI.ts.meta

@@ -1,9 +0,0 @@
-{
-  "ver": "4.0.24",
-  "importer": "typescript",
-  "imported": true,
-  "uuid": "33372e65-eb43-465f-85cd-60059f753576",
-  "files": [],
-  "subMetas": {},
-  "userData": {}
-}

+ 136 - 47
assets/script/game/ui/tower/TowerUI.ts

@@ -1,4 +1,4 @@
-import { _decorator, instantiate, Node, Prefab, Size, Tween, tween, UITransform, Vec2, Vec3 ,Animation, EventTouch, Button, sp, Enum, Label, Toggle, Sprite, SpriteFrame, v3} from 'cc';
+import { _decorator, instantiate, Node, Prefab, Size, Tween, tween, UITransform, Vec2, Vec3 ,Animation, EventTouch, Button, sp, Enum, Label, Toggle, Sprite, SpriteFrame, v3, utils} from 'cc';
 import { BaseView } from '../../../framework/layer/BaseView';
 import { Framework } from '../../../framework/Framework';
 import { FrameworkConf } from '../../../framework/config/FrameworkConf';
@@ -12,10 +12,11 @@ import { BattleNodeBase } from './node/BattleNodeBase';
 import { BattleControl } from './control/BattleControl';
 import { BattleUtil } from './data/BattleUtil';
 import { BattleEventManager } from './base/BattleEventManager';
-import { BattleEventData_EnemyBorn, BattleEventData_EnemyBuff, BattleEventData_EnemyDie, BattleEventData_EnemyHurt, BattleEventData_EnemyMove, BattleEventData_HeroAttack, BattleEventData_Over, BattleEventTarget, BattleEventType } from './base/BattleEventUtil';
+import { BattleEventData_EnemyBorn, BattleEventData_EnemyBuff, BattleEventData_EnemyDie, BattleEventData_EnemyHurt, BattleEventData_EnemyMove, BattleEventData_HeroAction, BattleEventData_HeroAttack, BattleEventData_Over, BattleEventTarget, BattleEventType } from './base/BattleEventUtil';
 import { MapConf } from './conf/MapConf';
 import { isValid } from 'cc';
 import { HeroDataPool } from './data/HeroData';
+import { StringUtil } from '../../../framework/util/StringUtil';
 
 
 //地图比例尺 1:70
@@ -50,6 +51,7 @@ export interface PosData {
 	posNumber: number
 }
 
+
 @ccclass('TowerUI')
 export class TowerUI extends BaseView {
 
@@ -96,17 +98,31 @@ export class TowerUI extends BaseView {
 	@property({ type:Node, tooltip: "攻击范围" })
 	radiusNode: Node = null;
 
+	@property({ type:[Node], tooltip: "统计节点" })
+	countList: Node[] = [];
+	@property({ type: Label, tooltip: "精力统计" })
+	powerLabel: Label = null;
+
 	bStart = false;
 	waitTime = 5;
 	touchStart: Node = null;
 	gameTime = 0;
 
+	//当前精力
+	private powerCur = 180;
+	//最大精力
+	private powerMax = 180
+
+	//伤害统计  key:typeID value:伤害值
+	private damageCountData:Map<number,number> = new Map();
+	private damageUpdateTime = 0;
+
 
 	battleControl: BattleControl = null;
 	//当前动画下标
 	levelUpEffectIndex = 0;
 	//是否自动合成
-	isAutoMerge = false;
+	isAutoMerge = true;
 
 	protected onLoad() {
 		super.onLoad();
@@ -166,6 +182,12 @@ export class TowerUI extends BaseView {
 				});
 				this.battleControl.update();
 			}
+
+			this.damageUpdateTime += dt;
+			if(this.damageUpdateTime > 0.1){
+				this.damageUpdateTime = 0;
+				this.updateDamageCount()
+			}
 			
 		}
 		else{
@@ -207,6 +229,8 @@ export class TowerUI extends BaseView {
 					enemy.getComponent(Enemy).hurt(enemyData.hurt);
 					this.addHurt(enemy.position,enemyData.hurt)
 				}
+
+				this.setDamageCount(enemyData.typeID,enemyData.hurt)
 				break;
 			}
 			case BattleEventType.EnemyDie:{
@@ -231,21 +255,45 @@ export class TowerUI extends BaseView {
 				}
 				break;
 			}
+			case BattleEventType.HeroAction:{
+				// console.log("攻击动作",event)
+				let attackData = event as BattleEventData_HeroAction;
+				if(this.attackPosMap.has(attackData.posID)){
+					let posData = this.attackPosMap.get(attackData.posID);
+					let enemy = this.enemyMap.get(attackData.targetID);
+					if( posData && posData.hero){
+						let hero = posData.hero.getComponent(Hero);
+						if(enemy){
+							hero.attack(enemy)
+							// enemy.getComponent(Enemy).hurt(attackData.hurt);
+							// this.addHurt(enemy.position,attackData.hurt)
+						}
+						else{
+							hero.stand()
+						}
+						// this.setDamageCount(hero.typeID,attackData.hurt)
+					}
+				}
+				break;
+			}
+
 			case BattleEventType.HeroAttack:{
-				// console.log("攻击",event)
+				console.log("攻击",event)
 				let attackData = event as BattleEventData_HeroAttack;
 				if(this.attackPosMap.has(attackData.posID)){
 					let posData = this.attackPosMap.get(attackData.posID);
 					let enemy = this.enemyMap.get(attackData.targetID);
 					if( posData && posData.hero){
+						let hero = posData.hero.getComponent(Hero);
 						if(enemy){
-							posData.hero.getComponent(Hero).attack(enemy)
+							// hero.attack(enemy)
 							enemy.getComponent(Enemy).hurt(attackData.hurt);
 							this.addHurt(enemy.position,attackData.hurt)
+							this.setDamageCount(hero.typeID,attackData.hurt)
 						}
-						else{
-							posData.hero.getComponent(Hero).stand()
-						}
+						// else{
+						// 	hero.stand()
+						// }
 					}
 				}
 				break;
@@ -304,7 +352,7 @@ export class TowerUI extends BaseView {
 			this.touchStart = posData.hero;
 			hero.stand() 
 			this.touchStart.setSiblingIndex(30);
-			let index = posData.posID - this.bagPosList.length
+			let index = posData.posID - BattleUtil.BagListSize
 			if(index >= 0){
 				this.battleControl.removeHeroInPos(index)
 			}
@@ -316,7 +364,7 @@ export class TowerUI extends BaseView {
 		if (this.touchStart ) {
 			this.touchStart .setPosition(this.roleNode.getComponent(UITransform).convertToNodeSpaceAR(new Vec3(event.getUILocation().x, event.getUILocation().y)))
 			let posData = this.getItemBaseByPosition(event.getLocation());
-			if(posData&&(posData.posID >= this.bagPosList.length)){
+			if(posData&&(posData.posID >= BattleUtil.BagListSize)){
 				this.radiusNode.position = v3(this.touchStart.position.x,this.touchStart.position.y);
 				this.radiusNode.active = true;
 				this.setRadius(this.touchStart.getComponent(Hero).radius)
@@ -460,7 +508,7 @@ export class TowerUI extends BaseView {
 		})
 
 		let bagChildren = this.bagNode.children
-		for (let i = 0; i < 10; i++) {
+		for (let i = 0; i < BattleUtil.BagListSize; i++) {
 			let node = bagChildren[i];
 			let pos = roleTransform.convertToNodeSpaceAR(node.getWorldPosition())
 			let posData: PosData = {
@@ -534,14 +582,14 @@ export class TowerUI extends BaseView {
 						node: node,
 						hero: null,
 						bLock: false,
-						posID: this.bagPosList.length+i,
+						posID: BattleUtil.BagListSize+i,
 						pos: new Vec3(posXX.x, posXX.y, 0),
 						posNumber: posNumber
 					}
 					this.attackPosList.push(posData);
 				}
 				else{
-					posData.posID = this.bagPosList.length+i;
+					posData.posID = BattleUtil.BagListSize+i;
 					posData.pos = new Vec3(posXX.x, posXX.y, 0);
 					posData.posNumber = posNumber;
 					if(posData.hero){
@@ -565,6 +613,8 @@ export class TowerUI extends BaseView {
 		this.waitTime = 5;
 		this.gameTime = 0;
 		this.radiusNode.active = false;
+		this.damageCountData.clear()
+		this.updateDamageCount()
 	}
 
 
@@ -594,7 +644,11 @@ export class TowerUI extends BaseView {
 
 	addHero() {
 		let posID = -1;
-		for (let i = 0; i < this.bagPosList.length; i++) {
+		if(this.powerCur <= 0){
+			console.log("没有精力了");
+			return;
+		}
+		for (let i = 0; i < BattleUtil.BagListSize; i++) {
 			if(this.bagPosList[i].hero == null){
 				posID = this.bagPosList[i].posID;
 				break;
@@ -604,11 +658,12 @@ export class TowerUI extends BaseView {
 			console.log("没有空位了");
 			return;
 		}
+		
 		//添加英雄
 		let heroID = Math.floor(Math.random() * this.heroModelList.length)%this.heroModelList.length + 1;
 		let heroData = HeroDataPool.getObject();
 		heroData.init(heroID,1,posID)
-
+		
 		let node:Node = null;
 		if(this.heroPool[heroID] == null){
 			this.heroPool[heroID] = [];
@@ -623,21 +678,23 @@ export class TowerUI extends BaseView {
 			node.parent = this.roleNode;
 			this.heroList.push(node);
 		}
-	
+		
 		let hero = node.getComponent(Hero);
 		hero.resetData(heroData);
 		HeroDataPool.putObject(heroData);
-
+		
 		hero.posID = posID;
 		let posData = this.bagPosList[posID];
 		if(!posData){
-		    return;
+			return;
 		}
 		posData.hero = node;
-	
+		
 		node.position = posData.pos;
 		console.log("添加英雄", node.position);
-
+		this.powerLabel.string = `${this.powerCur}/${this.powerMax}`;
+		this.powerCur--;
+		
 		this.checkMerge(node);
 
 	}	
@@ -648,7 +705,7 @@ export class TowerUI extends BaseView {
 			return;
 		}
 		let bFind = false;
-	    if(this.isAutoMerge && !hero.isLock && hero.posID < this.bagPosList.length){
+	    if(this.isAutoMerge && !hero.isLock && hero.posID < BattleUtil.BagListSize){
 			for (let i = 0; i < this.attackPosList.length; i++) {
 			    let dstPosData = this.attackPosList[i];
 				if(dstPosData.hero != null && dstPosData.hero != node){
@@ -664,7 +721,7 @@ export class TowerUI extends BaseView {
 			}
 
 			if(!bFind){
-				for (let i = 0; i < this.bagPosList.length; i++) {
+				for (let i = 0; i < BattleUtil.BagListSize; i++) {
 					let dstPosData = this.bagPosList[i];
 					if(dstPosData.hero != null && dstPosData.hero != node){
 						let dstHero = dstPosData.hero.getComponent(Hero);
@@ -689,13 +746,13 @@ export class TowerUI extends BaseView {
 			return false;
 		}
 		dstHero.isLock = true;
-		// srcNode.setSiblingIndex(this.bagPosList.length+this.attackPosList.length)
+		// srcNode.setSiblingIndex(BattleUtil.BagListSize+this.attackPosList.length)
 		srcNode.getComponent(Hero).flyTo(dstNode.position,()=>{
 			if(isValid(dstHero)){
 				dstHero.isLock = false;
 				dstHero.levelUp()
-				if(dstHero.posID >= this.bagPosList.length){
-					let index = dstHero.posID - this.bagPosList.length;
+				if(dstHero.posID >= BattleUtil.BagListSize){
+					let index = dstHero.posID - BattleUtil.BagListSize;
 					this.battleControl.levelUp(index)
 				}
 				this.levelUpEffectIndex = this.levelUpEffectIndex++%this.levelUpEffect.length;
@@ -751,11 +808,11 @@ export class TowerUI extends BaseView {
 		}
 		let posID = hero.posID;
 		if(posID != -1){
-			if(posID < this.bagPosList.length)
+			if(posID < BattleUtil.BagListSize)
 				heroNode.position = this.bagPosList[posID].pos;
-			else if(posID < this.bagPosList.length + this.attackPosList.length){
-				heroNode.position = this.attackPosList[posID - this.bagPosList.length].pos;
-				this.battleControl.addHeroInPos(hero.typeID,hero.level,posID - this.bagPosList.length)
+			else if(posID < BattleUtil.BagListSize + this.attackPosList.length){
+				heroNode.position = this.attackPosList[posID - BattleUtil.BagListSize].pos;
+				this.battleControl.addHeroInPos(hero.typeID,hero.level,posID - BattleUtil.BagListSize)
 			}
 		}
 	}
@@ -764,22 +821,22 @@ export class TowerUI extends BaseView {
 	setHeroPos(hero:Node,newPosID:number) {
 		let posID = hero.getComponent(Hero).posID;
 		if(posID != -1){
-			if(posID < this.bagPosList.length)
+			if(posID < BattleUtil.BagListSize)
 				this.bagPosList[posID].hero = null;
-			else if(posID < this.bagPosList.length + this.attackPosList.length){
-				this.attackPosList[posID - this.bagPosList.length].hero = null;
+			else if(posID < BattleUtil.BagListSize + this.attackPosList.length){
+				this.attackPosList[posID - BattleUtil.BagListSize].hero = null;
 				
 				
 			}
 		}
 
 		if(newPosID != -1){
-			if(newPosID < this.bagPosList.length){
+			if(newPosID < BattleUtil.BagListSize){
 				this.bagPosList[newPosID].hero = hero;
 				hero.position = this.bagPosList[newPosID].pos;
 			}
-			else if(newPosID < this.bagPosList.length + this.attackPosList.length){
-				let index = newPosID - this.bagPosList.length;
+			else if(newPosID < BattleUtil.BagListSize + this.attackPosList.length){
+				let index = newPosID - BattleUtil.BagListSize;
 				this.attackPosList[index].hero = hero;
 				hero.position = this.attackPosList[index].pos;
 				let heroObj = hero.getComponent(Hero)
@@ -796,11 +853,11 @@ export class TowerUI extends BaseView {
 			this.heroList.splice(this.heroList.indexOf(hero), 1)
 			this.heroPool[hero.getComponent(Hero).typeID].push(hero)
 			hero.getComponent(Hero).clearData();
-			if(posID < this.bagPosList.length)
+			if(posID < BattleUtil.BagListSize)
 				this.bagPosList[posID].hero = null;
-			else if(posID < this.bagPosList.length + this.attackPosList.length){
-				this.attackPosList[posID - this.bagPosList.length].hero = null;
-				this.battleControl.removeHeroInPos(posID - this.bagPosList.length)
+			else if(posID < BattleUtil.BagListSize + this.attackPosList.length){
+				this.attackPosList[posID - BattleUtil.BagListSize].hero = null;
+				this.battleControl.removeHeroInPos(posID - BattleUtil.BagListSize)
 			}
 		}
 	}
@@ -812,13 +869,13 @@ export class TowerUI extends BaseView {
 		hero2.getComponent(Hero).posID = posID1
 
 		if(posID1 != -1){
-			if(posID1 < this.bagPosList.length){
+			if(posID1 < BattleUtil.BagListSize){
 				hero2.position = this.bagPosList[posID1].pos;
 				this.bagPosList[posID1].hero = hero2;
 			}
-			else if(posID1 < this.bagPosList.length + this.attackPosList.length){
-				hero2.position =  this.attackPosList[posID1 - this.bagPosList.length].pos;
-				let index = posID1 - this.bagPosList.length;
+			else if(posID1 < BattleUtil.BagListSize + this.attackPosList.length){
+				hero2.position =  this.attackPosList[posID1 - BattleUtil.BagListSize].pos;
+				let index = posID1 - BattleUtil.BagListSize;
 				this.attackPosList[index].hero = hero2;
 				let heroObj = hero2.getComponent(Hero)
 				this.battleControl.addHeroInPos(heroObj.typeID,heroObj.level,index)
@@ -827,13 +884,13 @@ export class TowerUI extends BaseView {
 		}
 
 		if(posID2 != -1){
-			if(posID2 < this.bagPosList.length){
+			if(posID2 < BattleUtil.BagListSize){
 				hero1.position = this.bagPosList[posID2].pos;
 				this.bagPosList[posID2].hero = hero1;
 			}
-			else if(posID2 < this.bagPosList.length + this.attackPosList.length){
-				hero1.position =  this.attackPosList[posID2 - this.bagPosList.length].pos;
-				let index = posID2 - this.bagPosList.length;
+			else if(posID2 < BattleUtil.BagListSize + this.attackPosList.length){
+				hero1.position =  this.attackPosList[posID2 - BattleUtil.BagListSize].pos;
+				let index = posID2 - BattleUtil.BagListSize;
 				this.attackPosList[index].hero = hero1;
 				let heroObj = hero1.getComponent(Hero)
 				this.battleControl.addHeroInPos(heroObj.typeID,heroObj.level,index)
@@ -844,6 +901,7 @@ export class TowerUI extends BaseView {
 	}
 
 	addHurt(pos:Vec3,value:number){
+		console.log("addHurt",value)
 		let node:Node = null;
 		if(this.hurtPool.length > 0){
 			node = this.hurtPool.pop();
@@ -905,4 +963,35 @@ export class TowerUI extends BaseView {
 	setRadius(radius:number){
 	    this.radiusNode.scale = v3(0.4*radius,0.4*radius,1)
 	}
+
+
+	updateDamageCount(){
+		let num = 0
+		this.damageCountData.forEach((value,typeID)=>{
+			let countNode = this.countList[num]
+			if(num < this.countList.length){
+
+				this.countList[num].active = true
+			}
+			if(countNode){
+				let headSprite = countNode.getChildByName("head")
+				let valueLabel = countNode.getChildByName("number")
+
+				//headSprite.getComponent(Sprite).spriteFrame = this.headSprite[typeID]
+				valueLabel.getComponent(Label).string = StringUtil.bigNumberToStr(value)
+			}
+
+
+			num++
+		})
+
+		for(let i = num;i<this.countList.length;i++){
+			this.countList[i].active = false
+		}
+	}
+
+	setDamageCount(typeID:number,value:number){
+		let valueOld = this.damageCountData.get(typeID) || 0
+		this.damageCountData.set(typeID,value+valueOld)
+	}
 }

+ 33 - 1
assets/script/game/ui/tower/base/BattleEventUtil.ts

@@ -3,6 +3,8 @@ import { BattleUtil } from "../data/BattleUtil";
 //战斗消息工具类
 export enum BattleEventTarget{
     Update = "update",
+    HeroAction = "hero_action",
+    
 }
 export enum BattleEventType{
     //敌人出生
@@ -15,6 +17,8 @@ export enum BattleEventType{
     EnemyDie = "enemy_die",
     //敌人buff改变
     EnemyBuff = "enemy_buff",
+    //英雄动作
+    HeroAction = "hero_action",
     //英雄攻击
     HeroAttack = "hero_attack",
     //英雄打出子弹
@@ -48,6 +52,18 @@ export enum HurtEventState{
     Snow,
 }
 
+//英雄动作
+export enum HeroActionType{
+    //普通
+    Normal,
+    //暴击
+    Critical,
+    //技能1
+    Skill1,
+    //技能2
+    Skill2,
+}
+
 export interface BattleEventData{
     eventType:BattleEventType;
 }
@@ -81,6 +97,14 @@ export interface BattleEventData_EnemyDie extends BattleEventData{
     eventType:BattleEventType.EnemyDie;
     ID:number;
 }
+//英雄开始做动作
+export interface BattleEventData_HeroAction extends BattleEventData{
+    eventType:BattleEventType.HeroAction;
+    //攻击者位置
+    posID:number;
+    targetID:number;
+    action:HeroActionType;
+}
 //英雄直接伤害
 export interface BattleEventData_HeroAttack extends BattleEventData{
     eventType:BattleEventType.HeroAttack;
@@ -90,6 +114,7 @@ export interface BattleEventData_HeroAttack extends BattleEventData{
     hurt:number;
     status:HurtEventState;
 }
+
 //打出子弹
 export interface BattleEventData_HeroAttackBullet extends BattleEventData{
     eventType:BattleEventType.HeroAttackBullet;
@@ -121,9 +146,16 @@ export interface BattleEventData_EnemyBuff extends BattleEventData{
     eventState:BuffEventState;
 }
 
-
+//战斗结束
 export interface BattleEventData_Over extends BattleEventData{
     eventType:BattleEventType.Over;
     bWin:boolean;
 }
 
+//动作触发计算
+export interface BattleEventHeroAction{
+    action:HeroActionType;
+    //攻击位置的下标
+    posIndex:number;
+}
+

+ 1 - 1
assets/script/game/ui/tower/conf/HeroConf.ts

@@ -2,7 +2,7 @@ export namespace HeroConf {
     export const data = {
         "1": {
                 "Id": 1,
-                "Speed": 12,
+                "Speed": 20,
                 "Damage": 1,
                 "Critical": 0.1,
                 "CriticalDamage": 1.4,

+ 1 - 1
assets/script/game/ui/tower/conf/MapConf.ts

@@ -72,7 +72,7 @@ export namespace MapConf {
                                 1,
                                 1,
                                 10,
-                                10
+                                30
                         ]
                 ],
                 "AttackPositionArray": [

+ 41 - 14
assets/script/game/ui/tower/control/HeroControl.ts

@@ -1,6 +1,6 @@
 import { BattleBase } from "../base/BattleBase";
 import { BattleEventManager } from "../base/BattleEventManager";
-import { BattleEventData_EnemyHurt, BattleEventData_HeroAttack, BattleEventData_HeroAttackBullet, BattleEventTarget, BattleEventType, HurtEventState } from "../base/BattleEventUtil";
+import { BattleEventData_EnemyHurt, BattleEventData_HeroAction, BattleEventData_HeroAttack, BattleEventData_HeroAttackBullet, BattleEventHeroAction, BattleEventTarget, BattleEventType, HeroActionType, HurtEventState } from "../base/BattleEventUtil";
 import { BulletType } from "../data/BattleEnum";
 import { BattleUtil } from "../data/BattleUtil";
 import { BuffData } from "../data/BuffData";
@@ -19,40 +19,62 @@ export class HeroControl extends BattleBase{
     skillControl:SkillControl = null;
     battleEventManager: BattleEventManager;
 
-    init(){
+    actionList:Array<BattleEventHeroAction> = []
+
+    constructor(){
+        super();
         this.battleEventManager = BattleEventManager.instance
+        BattleEventManager.instance.addEvent(BattleEventTarget.HeroAction, this.heroActionEvent.bind(this), -1);
+    }
+
+    init(){
         this.map = MapData.GetInstance()
         this.attackPosDataMap = this.map.attackPosDataMap
         this.enemyDataList = this.map.enemyDataList
 
         this.skillControl = SkillControl.GetInstance()
+
+        
     }
 
     //每次加一帧
     update(){
+        this.actionList.forEach(actionData=>{
+            let hero = this.attackPosDataMap.get(this.map.attackPosition[actionData.posIndex]).hero
+            if(hero){
+                this.checkAttack(hero)
+            }
+        })
+        this.actionList = []
+
         this.attackPosDataMap.forEach((posData:PosData)=>{
             let hero = posData.hero
             if(hero){
                 hero.coolDown -= 1
                 if(hero.coolDown <= 0){
-                    
-                    if(this.checkAttack(hero)){
-                        hero.coolDown = hero.speed
-                    }
-                    else{
-                        let eventData:BattleEventData_HeroAttack = {
-                            eventType: BattleEventType.HeroAttack,
-                            posID: hero.posID,
-                            hurt: 0,
-                            status: HurtEventState.Normal,
-                            targetID: BattleUtil.IndexID_Init
+                    let targetID = -1
+                    for(let i = 0;i<this.enemyDataList.length;i++){
+                        let enemy = this.enemyDataList[i]
+                        if(this.isInRadius(hero.position,enemy.position,hero.attackRadius)){
+                            targetID = enemy.ID
+                            
+                            hero.coolDown = hero.speed
+                            break;
                         }
-                        this.battleEventManager.fireEvent(BattleEventTarget.Update,eventData)
                     }
+
+                    let eventData:BattleEventData_HeroAction = {
+                        eventType: BattleEventType.HeroAction,
+                        posID: hero.posID,
+                        targetID: targetID,
+                        action: HeroActionType.Normal
+                    }
+                    this.battleEventManager.fireEvent(BattleEventTarget.Update,eventData)
                 }
             }
         
         })
+
     }
 
 
@@ -142,5 +164,10 @@ export class HeroControl extends BattleBase{
         // return true
     }
 
+    heroActionEvent(eventData:BattleEventHeroAction){
+
+        this.actionList.push(eventData)
+    }
+
     
 }

+ 3 - 1
assets/script/game/ui/tower/data/BattleUtil.ts

@@ -1,7 +1,9 @@
 import { ObjectValueType } from "./BattleEnum";
 
 export namespace BattleUtil {
-//战斗辅助工具类
+    //背包容量
+    export const BagListSize = 10;
+    //战斗辅助工具类
     export const FrameRate = 30; //帧率
     export const FrameTime = 1 / FrameRate; //帧间隔
     export const PI = 3.1415926; //圆周率

+ 4 - 4
assets/script/game/ui/tower/data/MapData.ts

@@ -58,19 +58,19 @@ export class MapData {
     endPosition:number;
     //攻击点
     attackPosition:Array<number>;
-    //敌人出生列表
+    //敌人出生列表<turn,Array<EnemyBornData>>
     enemyBornMap:Map<number,Array<EnemyBornData>> = new Map();
     //出生时长
     bornNeedTime:number = 0;
 
 //-------------------动态数据----------------------
-    // 攻击位<>
+    // 攻击位<posID,PosData>
 	attackPosDataMap: Map<number,PosData> = new Map();
     //所有存活的敌人
     enemyDataList:Array<EnemyData> = []
     //所有子弹
     bulletList:Array<BulletData> = []
-
+    //<ID,BuffData>
     buffMap: Map<number,BuffData> = new Map();
 
     //地图点对应坐标坐标
@@ -82,7 +82,7 @@ export class MapData {
     protected _battleEnd:boolean = false;
     protected _bWin:boolean = false;
 
-    //操作列表  number表示帧数
+    //操作列表  number表示帧数<turn,Array<BattleUtil.HeroDataChange>>
     actionMap:Map<number,Array<BattleUtil.HeroDataChange>> = new Map();
     
     static GetInstance():MapData{

+ 72 - 13
assets/script/game/ui/tower/node/Hero.ts

@@ -6,6 +6,9 @@ import { AudioID } from '../../../../framework/config/AudioConf';
 import { Framework } from '../../../../framework/Framework';
 import { UptypeConf } from '../conf/UptypeConf';
 import { HeroConf } from '../conf/HeroConf';
+import { BattleEventManager } from '../base/BattleEventManager';
+import { BattleEventHeroAction, BattleEventTarget, HeroActionType } from '../base/BattleEventUtil';
+import { BattleUtil } from '../data/BattleUtil';
 const { ccclass, property } = _decorator;
 
 
@@ -33,7 +36,17 @@ export class Hero extends BattleNodeBase {
     private _bAttackAnimation: boolean = false;
 
     attackNode = null;
-    attackBone = null;
+    //
+    attackBone1 = null;
+    attackBone2 = null;
+    attackBone3 = null;
+    attackBone4 = null;
+
+    attackAngle1 = 0;
+    attackAngle2 = 0;
+    attackAngle3 = 0;
+    attackAngle4 = 0;
+
     attackSlot = null;
     typeID: number = -1; 
     level: number = 1; 
@@ -41,6 +54,7 @@ export class Hero extends BattleNodeBase {
 
 
 
+    battleEventManager: BattleEventManager;
 
 
     set posID(posID:number){
@@ -54,13 +68,41 @@ export class Hero extends BattleNodeBase {
          this.modelSpine.setCompleteListener(this.actionComplete.bind(this))
         this.modelSpine.setEventListener(this.actionCallback.bind(this))
 
-        let bone = this.modelSpine.findBone("gun")
-        if(bone){
-            this.attackBone = bone
-            let rot = this.attackBone.rotation
+        this.battleEventManager = BattleEventManager.instance
+        let bone1 = this.modelSpine.findBone("gun1")
+        if(bone1){
+            this.attackBone1= bone1
+            let rot = this.attackBone1.rotation
+            this.attackAngle1 = rot
+            console.log("rot",rot)
+        }
+
+        let bone2 = this.modelSpine.findBone("gun2")
+        if(bone2){
+            this.attackBone2 = bone2
+            let rot = this.attackBone2.rotation
+            this.attackAngle2 = rot
+            console.log("rot",rot)
+        }
+
+        let bone3 = this.modelSpine.findBone("gun3")
+        if(bone3){
+            this.attackBone3 = bone3
+            let rot = this.attackBone3.rotation
+            this.attackAngle3 = rot
+            console.log("rot",rot)
         }
 
-        this.clickBox.setContentSize(this.modelSpine.getComponent(UITransform).contentSize)
+        let bone4 = this.modelSpine.findBone("gun")
+        if(bone4){
+            this.attackBone4 = bone4
+            let rot = this.attackBone4.rotation
+            this.attackAngle4 = rot
+            console.log("rot",rot)
+        }
+
+
+        // this.clickBox.setContentSize(this.modelSpine.getComponent(UITransform).contentSize)
     }
 
     start() {
@@ -130,23 +172,29 @@ export class Hero extends BattleNodeBase {
             // }
             // this.modelSpine.node.scale = new Vec3(scaleX,this.modelSpine.node.scale.y,this.modelSpine.node.scale.z);
             // console.log("旋转角度:", rotationAngleDegrees);
+
+            this.attackBone1.rotation = 0
+            this.attackBone2.rotation = 0
+            this.attackBone3.rotation = 0
+            this.attackBone4.rotation = 0
+
             if(rotationAngleDegrees<67.5 || rotationAngleDegrees > 292.5){
-                this.attackBone.rotation = rotationAngleDegrees
+                this.attackBone1.rotation = rotationAngleDegrees+this.attackAngle1
                 if(this.modelSpine.animation != "attack_right")
                     this.modelSpine.setAnimation(0, 'attack_right', true);
             }
             else if(rotationAngleDegrees < 112.5){
-                this.attackBone.rotation = rotationAngleDegrees
+                this.attackBone3.rotation = rotationAngleDegrees+this.attackAngle3-90
                 if(this.modelSpine.animation != "attack_up")
                     this.modelSpine.setAnimation(0, 'attack_up', true);
             }
             else if(rotationAngleDegrees < 247.5){
-                this.attackBone.rotation = rotationAngleDegrees
+                this.attackBone4.rotation = rotationAngleDegrees+this.attackAngle4-180
                 if(this.modelSpine.animation != "attack_left")
                     this.modelSpine.setAnimation(0, 'attack_left', true);
             }
             else if(rotationAngleDegrees < 292.5){
-                this.attackBone.rotation = rotationAngleDegrees
+                this.attackBone2.rotation = rotationAngleDegrees+this.attackAngle2-270
                 if(this.modelSpine.animation != "attack_down")
                     this.modelSpine.setAnimation(0, 'attack_down', true);
             }
@@ -181,7 +229,10 @@ export class Hero extends BattleNodeBase {
         this._bAttackAnimation = false;
         // this.gunNode.angle = 0;
         this.gunNode.active = true;
-                this.attackBone.rotation = 0
+                this.attackBone1.rotation = 0
+                this.attackBone2.rotation = 0
+                this.attackBone3.rotation = 0
+                this.attackBone4.rotation = 0
                 // this._attackCallback = null;
         if(this.modelSpine.animation == "stand_right") return; 
         this.modelSpine.setAnimation(0, 'stand_right', true);
@@ -199,12 +250,20 @@ export class Hero extends BattleNodeBase {
     }
 
     actionCallback(trackEntry){
-        // console.log("动作回调:",trackEntry.animation.name)
-        if (trackEntry.animation.name && trackEntry.animation.name.includes("fire")) {
+         console.log("动作回调:",trackEntry.animation.name)
+        if (trackEntry.animation.name && trackEntry.animation.name.includes("attack")) {
 
             // if (this._attackCallback) {
             //     this._attackCallback(trackEntry);
             // }
+            console.log("攻击动作完成:",trackEntry.animation.name)
+            if(this.posID > BattleUtil.PosID_Init){
+                let eventData:BattleEventHeroAction = {
+                    action: HeroActionType.Normal,
+                    posIndex: this._posID - BattleUtil.BagListSize
+                }
+                this.battleEventManager.fireEvent(BattleEventTarget.HeroAction,eventData)
+            }
         } 
     }
 

برخی فایل ها در این مقایسه diff نمایش داده نمی شوند زیرا تعداد فایل ها بسیار زیاد است