فهرست منبع

Merge branch 'dev' into datasheet

smallqiang 5 سال پیش
والد
کامیت
444d182d92
33فایلهای تغییر یافته به همراه2896 افزوده شده و 255 حذف شده
  1. 488 35
      assets/resources/prefabs/precedence/skill_content.prefab
  2. 7 0
      assets/resources/prefabs/setting.meta
  3. 1446 0
      assets/resources/prefabs/setting/game_setting.prefab
  4. 7 0
      assets/resources/prefabs/setting/game_setting.prefab.meta
  5. 481 27
      assets/resources/prefabs/star/StarItem.prefab
  6. 7 0
      assets/resources/textures/setting.meta
  7. BIN
      assets/resources/textures/setting/bgm_close.png
  8. 31 0
      assets/resources/textures/setting/bgm_close.png.meta
  9. BIN
      assets/resources/textures/setting/bgm_open.png
  10. 31 0
      assets/resources/textures/setting/bgm_open.png.meta
  11. BIN
      assets/resources/textures/setting/setting_bg_top.png
  12. 31 0
      assets/resources/textures/setting/setting_bg_top.png.meta
  13. BIN
      assets/resources/textures/setting/sound_effect_close.png
  14. 31 0
      assets/resources/textures/setting/sound_effect_close.png.meta
  15. BIN
      assets/resources/textures/setting/sound_effect_open.png
  16. 31 0
      assets/resources/textures/setting/sound_effect_open.png.meta
  17. 4 0
      assets/scripts/draw/DrawCycleScroll.js
  18. 2 1
      assets/scripts/game/Game.js
  19. 7 0
      assets/scripts/setting.meta
  20. 74 0
      assets/scripts/setting/SettingCtrl.js
  21. 9 0
      assets/scripts/setting/SettingCtrl.js.meta
  22. 1 0
      assets/scripts/signIn/SignIn.js
  23. 56 88
      assets/scripts/skill/SkillItem.js
  24. 7 2
      assets/scripts/skill/SkillTopItem.js
  25. 4 2
      assets/scripts/star/StarContent.js
  26. 0 3
      assets/scripts/star/StarHandbookItem.js
  27. 64 86
      assets/scripts/star/StarItem.js
  28. 1 1
      assets/scripts/star/StarMask.js
  29. 5 6
      assets/scripts/utils/ADVideo.js
  30. 10 0
      assets/scripts/utils/AlertManager.js
  31. 57 0
      assets/scripts/utils/AudioMng.js
  32. 2 2
      assets/scripts/utils/Global.js
  33. 2 2
      settings/builder.json

+ 488 - 35
assets/resources/prefabs/precedence/skill_content.prefab

@@ -30,11 +30,11 @@
     "_level": 1,
     "_components": [
       {
-        "__id__": 279
+        "__id__": 292
       }
     ],
     "_prefab": {
-      "__id__": 280
+      "__id__": 293
     },
     "_opacity": 255,
     "_color": {
@@ -214,18 +214,18 @@
         "__id__": 18
       },
       {
-        "__id__": 269
+        "__id__": 282
       }
     ],
     "_active": true,
     "_level": 2,
     "_components": [
       {
-        "__id__": 277
+        "__id__": 290
       }
     ],
     "_prefab": {
-      "__id__": 278
+      "__id__": 291
     },
     "_opacity": 255,
     "_color": {
@@ -570,7 +570,7 @@
     "asset": {
       "__uuid__": "515ad1c6-1cc8-4069-9798-62a1eb5a61c8"
     },
-    "fileId": "62j9aSSiJHYodBeUcTY3T7",
+    "fileId": "94wenSMKtBQ6/rO20ZjIEK",
     "sync": false
   },
   {
@@ -645,17 +645,17 @@
     "_level": 3,
     "_components": [
       {
-        "__id__": 265
+        "__id__": 278
       },
       {
-        "__id__": 266
+        "__id__": 279
       },
       {
-        "__id__": 267
+        "__id__": 280
       }
     ],
     "_prefab": {
-      "__id__": 268
+      "__id__": 281
     },
     "_opacity": 255,
     "_color": {
@@ -718,14 +718,14 @@
     "_level": 0,
     "_components": [
       {
-        "__id__": 262
+        "__id__": 275
       },
       {
-        "__id__": 263
+        "__id__": 276
       }
     ],
     "_prefab": {
-      "__id__": 264
+      "__id__": 277
     },
     "_opacity": 255,
     "_color": {
@@ -791,14 +791,14 @@
     "_level": 0,
     "_components": [
       {
-        "__id__": 259
+        "__id__": 272
       },
       {
-        "__id__": 260
+        "__id__": 273
       }
     ],
     "_prefab": {
-      "__id__": 261
+      "__id__": 274
     },
     "_opacity": 255,
     "_color": {
@@ -5386,17 +5386,20 @@
       },
       {
         "__id__": 249
+      },
+      {
+        "__id__": 257
       }
     ],
     "_active": true,
     "_level": 0,
     "_components": [
       {
-        "__id__": 257
+        "__id__": 270
       }
     ],
     "_prefab": {
-      "__id__": 258
+      "__id__": 271
     },
     "_opacity": 255,
     "_color": {
@@ -6003,7 +6006,7 @@
     "asset": {
       "__uuid__": "515ad1c6-1cc8-4069-9798-62a1eb5a61c8"
     },
-    "fileId": "61iROy51JL8rldRnhiw3qw",
+    "fileId": "f1kSF29TxCx5hZELYofGyI",
     "sync": false
   },
   {
@@ -6233,7 +6236,7 @@
     "asset": {
       "__uuid__": "515ad1c6-1cc8-4069-9798-62a1eb5a61c8"
     },
-    "fileId": "1acVRvbbVEg6bfFeoBnqVI",
+    "fileId": "fcQcyoephEk5mqw/7ZiFqU",
     "sync": false
   },
   {
@@ -6332,7 +6335,7 @@
     "asset": {
       "__uuid__": "515ad1c6-1cc8-4069-9798-62a1eb5a61c8"
     },
-    "fileId": "ed35/kyg1G5qH2M/J9QjKH",
+    "fileId": "c5noit4v5O87HC/CpWVZ6e",
     "sync": false
   },
   {
@@ -8136,7 +8139,7 @@
     "asset": {
       "__uuid__": "515ad1c6-1cc8-4069-9798-62a1eb5a61c8"
     },
-    "fileId": "ff8cqEhNJHSYTi4tT1BpfT",
+    "fileId": "c3r4TrILlEJ64vNn4bLhH9",
     "sync": false
   },
   {
@@ -8235,7 +8238,7 @@
     "asset": {
       "__uuid__": "515ad1c6-1cc8-4069-9798-62a1eb5a61c8"
     },
-    "fileId": "fcYWRHXc1OAo5g3dSj8gce",
+    "fileId": "46ZvGt9LZOk6wLstscq4IE",
     "sync": false
   },
   {
@@ -9003,6 +9006,450 @@
     "sync": false
   },
   {
+    "__type__": "cc.Node",
+    "_name": "button",
+    "_objFlags": 0,
+    "_parent": {
+      "__id__": 151
+    },
+    "_children": [
+      {
+        "__id__": 258
+      },
+      {
+        "__id__": 261
+      }
+    ],
+    "_active": false,
+    "_level": 1,
+    "_components": [
+      {
+        "__id__": 265
+      },
+      {
+        "__id__": 266
+      },
+      {
+        "__id__": 268
+      }
+    ],
+    "_prefab": {
+      "__id__": 269
+    },
+    "_opacity": 255,
+    "_color": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "_contentSize": {
+      "__type__": "cc.Size",
+      "width": 200,
+      "height": 100
+    },
+    "_anchorPoint": {
+      "__type__": "cc.Vec2",
+      "x": 0.5,
+      "y": 0.5
+    },
+    "_position": {
+      "__type__": "cc.Vec3",
+      "x": 229,
+      "y": 0,
+      "z": 0
+    },
+    "_scale": {
+      "__type__": "cc.Vec3",
+      "x": 1,
+      "y": 1,
+      "z": 1
+    },
+    "_rotationX": 0,
+    "_rotationY": 0,
+    "_quat": {
+      "__type__": "cc.Quat",
+      "x": 0,
+      "y": 0,
+      "z": 0,
+      "w": 1
+    },
+    "_skewX": 0,
+    "_skewY": 0,
+    "_zIndex": 0,
+    "groupIndex": 0,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.Node",
+    "_name": "button_sprite",
+    "_objFlags": 0,
+    "_parent": {
+      "__id__": 257
+    },
+    "_children": [],
+    "_active": true,
+    "_level": 2,
+    "_components": [
+      {
+        "__id__": 259
+      }
+    ],
+    "_prefab": {
+      "__id__": 260
+    },
+    "_opacity": 255,
+    "_color": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "_contentSize": {
+      "__type__": "cc.Size",
+      "width": 200,
+      "height": 100
+    },
+    "_anchorPoint": {
+      "__type__": "cc.Vec2",
+      "x": 0.5,
+      "y": 0.5
+    },
+    "_position": {
+      "__type__": "cc.Vec3",
+      "x": 0,
+      "y": 0,
+      "z": 0
+    },
+    "_scale": {
+      "__type__": "cc.Vec3",
+      "x": 1,
+      "y": 1,
+      "z": 1
+    },
+    "_rotationX": 0,
+    "_rotationY": 0,
+    "_quat": {
+      "__type__": "cc.Quat",
+      "x": 0,
+      "y": 0,
+      "z": 0,
+      "w": 1
+    },
+    "_skewX": 0,
+    "_skewY": 0,
+    "_zIndex": 0,
+    "groupIndex": 0,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.Sprite",
+    "_name": "",
+    "_objFlags": 0,
+    "node": {
+      "__id__": 258
+    },
+    "_enabled": true,
+    "_srcBlendFactor": 770,
+    "_dstBlendFactor": 771,
+    "_spriteFrame": {
+      "__uuid__": "ee2ec630-d472-45d3-9fd9-fabc38903c23"
+    },
+    "_type": 0,
+    "_sizeMode": 1,
+    "_fillType": 0,
+    "_fillCenter": {
+      "__type__": "cc.Vec2",
+      "x": 0,
+      "y": 0
+    },
+    "_fillStart": 0,
+    "_fillRange": 0,
+    "_isTrimmedMode": true,
+    "_state": 0,
+    "_atlas": null,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.PrefabInfo",
+    "root": {
+      "__id__": 1
+    },
+    "asset": {
+      "__uuid__": "515ad1c6-1cc8-4069-9798-62a1eb5a61c8"
+    },
+    "fileId": "cdpEC47oVE3LbRZj+g6KLL",
+    "sync": false
+  },
+  {
+    "__type__": "cc.Node",
+    "_name": "skill_use_title",
+    "_objFlags": 0,
+    "_parent": {
+      "__id__": 257
+    },
+    "_children": [],
+    "_active": true,
+    "_level": 2,
+    "_components": [
+      {
+        "__id__": 262
+      },
+      {
+        "__id__": 263
+      }
+    ],
+    "_prefab": {
+      "__id__": 264
+    },
+    "_opacity": 255,
+    "_color": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "_contentSize": {
+      "__type__": "cc.Size",
+      "width": 0,
+      "height": 35
+    },
+    "_anchorPoint": {
+      "__type__": "cc.Vec2",
+      "x": 0.5,
+      "y": 0.5
+    },
+    "_position": {
+      "__type__": "cc.Vec3",
+      "x": 0,
+      "y": 0,
+      "z": 0
+    },
+    "_scale": {
+      "__type__": "cc.Vec3",
+      "x": 1,
+      "y": 1,
+      "z": 1
+    },
+    "_rotationX": 0,
+    "_rotationY": 0,
+    "_quat": {
+      "__type__": "cc.Quat",
+      "x": 0,
+      "y": 0,
+      "z": 0,
+      "w": 1
+    },
+    "_skewX": 0,
+    "_skewY": 0,
+    "_zIndex": 0,
+    "groupIndex": 0,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.RichText",
+    "_name": "",
+    "_objFlags": 0,
+    "node": {
+      "__id__": 261
+    },
+    "_enabled": true,
+    "_N$string": "",
+    "_N$horizontalAlign": 1,
+    "_N$fontSize": 24,
+    "_N$font": null,
+    "_N$maxWidth": 0,
+    "_N$lineHeight": 35,
+    "_N$imageAtlas": {
+      "__uuid__": "9a199f9b-2e79-467b-85f6-b6ebe5f54f18"
+    },
+    "_N$handleTouchEvent": true,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.Widget",
+    "_name": "",
+    "_objFlags": 0,
+    "node": {
+      "__id__": 261
+    },
+    "_enabled": true,
+    "alignMode": 1,
+    "_target": null,
+    "_alignFlags": 18,
+    "_left": 0,
+    "_right": 0,
+    "_top": 0,
+    "_bottom": 0,
+    "_verticalCenter": 0,
+    "_horizontalCenter": 0,
+    "_isAbsLeft": true,
+    "_isAbsRight": true,
+    "_isAbsTop": true,
+    "_isAbsBottom": true,
+    "_isAbsHorizontalCenter": true,
+    "_isAbsVerticalCenter": true,
+    "_originalWidth": 0,
+    "_originalHeight": 0,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.PrefabInfo",
+    "root": {
+      "__id__": 1
+    },
+    "asset": {
+      "__uuid__": "515ad1c6-1cc8-4069-9798-62a1eb5a61c8"
+    },
+    "fileId": "cb9Zl9V4BGNYcOaUIjGdjL",
+    "sync": false
+  },
+  {
+    "__type__": "cc.Sprite",
+    "_name": "",
+    "_objFlags": 0,
+    "node": {
+      "__id__": 257
+    },
+    "_enabled": true,
+    "_srcBlendFactor": 770,
+    "_dstBlendFactor": 771,
+    "_spriteFrame": null,
+    "_type": 1,
+    "_sizeMode": 0,
+    "_fillType": 0,
+    "_fillCenter": {
+      "__type__": "cc.Vec2",
+      "x": 0,
+      "y": 0
+    },
+    "_fillStart": 0,
+    "_fillRange": 0,
+    "_isTrimmedMode": true,
+    "_state": 0,
+    "_atlas": null,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.Button",
+    "_name": "",
+    "_objFlags": 0,
+    "node": {
+      "__id__": 257
+    },
+    "_enabled": true,
+    "transition": 1,
+    "pressedColor": {
+      "__type__": "cc.Color",
+      "r": 120,
+      "g": 120,
+      "b": 120,
+      "a": 255
+    },
+    "hoverColor": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "duration": 0.1,
+    "zoomScale": 1.2,
+    "clickEvents": [
+      {
+        "__id__": 267
+      }
+    ],
+    "_N$interactable": true,
+    "_N$enableAutoGrayEffect": false,
+    "_N$normalColor": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "_N$disabledColor": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "_N$normalSprite": {
+      "__uuid__": "f0048c10-f03e-4c97-b9d3-3506e1d58952"
+    },
+    "_N$pressedSprite": {
+      "__uuid__": "e9ec654c-97a2-4787-9325-e6a10375219a"
+    },
+    "pressedSprite": {
+      "__uuid__": "e9ec654c-97a2-4787-9325-e6a10375219a"
+    },
+    "_N$hoverSprite": {
+      "__uuid__": "f0048c10-f03e-4c97-b9d3-3506e1d58952"
+    },
+    "hoverSprite": {
+      "__uuid__": "f0048c10-f03e-4c97-b9d3-3506e1d58952"
+    },
+    "_N$disabledSprite": {
+      "__uuid__": "29158224-f8dd-4661-a796-1ffab537140e"
+    },
+    "_N$target": {
+      "__id__": 258
+    },
+    "_id": ""
+  },
+  {
+    "__type__": "cc.ClickEvent",
+    "target": {
+      "__id__": 151
+    },
+    "component": "SkillItem",
+    "handler": "freeUpSKillAction",
+    "customEventData": ""
+  },
+  {
+    "__type__": "cc.Widget",
+    "_name": "",
+    "_objFlags": 0,
+    "node": {
+      "__id__": 257
+    },
+    "_enabled": true,
+    "alignMode": 1,
+    "_target": null,
+    "_alignFlags": 34,
+    "_left": 0,
+    "_right": 10,
+    "_top": 0,
+    "_bottom": 0,
+    "_verticalCenter": 0,
+    "_horizontalCenter": 0,
+    "_isAbsLeft": true,
+    "_isAbsRight": true,
+    "_isAbsTop": true,
+    "_isAbsBottom": true,
+    "_isAbsHorizontalCenter": true,
+    "_isAbsVerticalCenter": true,
+    "_originalWidth": 0,
+    "_originalHeight": 0,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.PrefabInfo",
+    "root": {
+      "__id__": 1
+    },
+    "asset": {
+      "__uuid__": "515ad1c6-1cc8-4069-9798-62a1eb5a61c8"
+    },
+    "fileId": "2chApVH/lMFYtOZWo5nHNP",
+    "sync": false
+  },
+  {
     "__type__": "a0684q3bQZHJb0/efsR5NoZ",
     "_name": "",
     "_objFlags": 0,
@@ -9050,6 +9497,12 @@
       "__id__": 181
     },
     "diamondCount": 0,
+    "freeSkillNode": {
+      "__id__": 257
+    },
+    "freeSkillTitleRichText": {
+      "__id__": 262
+    },
     "coinCount": 0,
     "building": 0,
     "_awardCount": 0,
@@ -9282,21 +9735,21 @@
     },
     "_children": [
       {
-        "__id__": 270
+        "__id__": 283
       }
     ],
     "_active": true,
     "_level": 3,
     "_components": [
       {
-        "__id__": 273
+        "__id__": 286
       },
       {
-        "__id__": 275
+        "__id__": 288
       }
     ],
     "_prefab": {
-      "__id__": 276
+      "__id__": 289
     },
     "_opacity": 255,
     "_color": {
@@ -9348,18 +9801,18 @@
     "_name": "back_btn_bg",
     "_objFlags": 0,
     "_parent": {
-      "__id__": 269
+      "__id__": 282
     },
     "_children": [],
     "_active": true,
     "_level": 4,
     "_components": [
       {
-        "__id__": 271
+        "__id__": 284
       }
     ],
     "_prefab": {
-      "__id__": 272
+      "__id__": 285
     },
     "_opacity": 255,
     "_color": {
@@ -9411,7 +9864,7 @@
     "_name": "",
     "_objFlags": 0,
     "node": {
-      "__id__": 270
+      "__id__": 283
     },
     "_enabled": true,
     "_srcBlendFactor": 770,
@@ -9450,7 +9903,7 @@
     "_name": "",
     "_objFlags": 0,
     "node": {
-      "__id__": 269
+      "__id__": 282
     },
     "_enabled": true,
     "transition": 1,
@@ -9472,7 +9925,7 @@
     "zoomScale": 1.2,
     "clickEvents": [
       {
-        "__id__": 274
+        "__id__": 287
       }
     ],
     "_N$interactable": true,
@@ -9510,7 +9963,7 @@
       "__uuid__": "29158224-f8dd-4661-a796-1ffab537140e"
     },
     "_N$target": {
-      "__id__": 269
+      "__id__": 282
     },
     "_id": ""
   },
@@ -9528,7 +9981,7 @@
     "_name": "",
     "_objFlags": 0,
     "node": {
-      "__id__": 269
+      "__id__": 282
     },
     "_enabled": true,
     "alignMode": 1,

+ 7 - 0
assets/resources/prefabs/setting.meta

@@ -0,0 +1,7 @@
+{
+  "ver": "1.0.1",
+  "uuid": "3c74b8f2-6943-4a0a-ac86-f7cd56357db3",
+  "isSubpackage": false,
+  "subpackageName": "",
+  "subMetas": {}
+}

+ 1446 - 0
assets/resources/prefabs/setting/game_setting.prefab

@@ -0,0 +1,1446 @@
+[
+  {
+    "__type__": "cc.Prefab",
+    "_name": "",
+    "_objFlags": 0,
+    "_native": "",
+    "data": {
+      "__id__": 1
+    },
+    "optimizationPolicy": 0,
+    "asyncLoadAssets": false
+  },
+  {
+    "__type__": "cc.Node",
+    "_name": "game_setting",
+    "_objFlags": 0,
+    "_parent": null,
+    "_children": [
+      {
+        "__id__": 2
+      },
+      {
+        "__id__": 5
+      }
+    ],
+    "_active": true,
+    "_level": 1,
+    "_components": [
+      {
+        "__id__": 40
+      }
+    ],
+    "_prefab": {
+      "__id__": 41
+    },
+    "_opacity": 255,
+    "_color": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "_contentSize": {
+      "__type__": "cc.Size",
+      "width": 750,
+      "height": 1334
+    },
+    "_anchorPoint": {
+      "__type__": "cc.Vec2",
+      "x": 0.5,
+      "y": 0.5
+    },
+    "_position": {
+      "__type__": "cc.Vec3",
+      "x": 0,
+      "y": 0,
+      "z": 0
+    },
+    "_scale": {
+      "__type__": "cc.Vec3",
+      "x": 1,
+      "y": 1,
+      "z": 1
+    },
+    "_rotationX": 0,
+    "_rotationY": 0,
+    "_quat": {
+      "__type__": "cc.Quat",
+      "x": 0,
+      "y": 0,
+      "z": 0,
+      "w": 1
+    },
+    "_skewX": 0,
+    "_skewY": 0,
+    "_zIndex": 0,
+    "groupIndex": 0,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.Node",
+    "_name": "mask",
+    "_objFlags": 0,
+    "_parent": {
+      "__id__": 1
+    },
+    "_children": [],
+    "_active": true,
+    "_level": 2,
+    "_components": [
+      {
+        "__id__": 3
+      }
+    ],
+    "_prefab": {
+      "__id__": 4
+    },
+    "_opacity": 255,
+    "_color": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "_contentSize": {
+      "__type__": "cc.Size",
+      "width": 2000,
+      "height": 2500
+    },
+    "_anchorPoint": {
+      "__type__": "cc.Vec2",
+      "x": 0.5,
+      "y": 0.5
+    },
+    "_position": {
+      "__type__": "cc.Vec3",
+      "x": 0,
+      "y": 0,
+      "z": 0
+    },
+    "_scale": {
+      "__type__": "cc.Vec3",
+      "x": 1,
+      "y": 1,
+      "z": 1
+    },
+    "_rotationX": 0,
+    "_rotationY": 0,
+    "_quat": {
+      "__type__": "cc.Quat",
+      "x": 0,
+      "y": 0,
+      "z": 0,
+      "w": 1
+    },
+    "_skewX": 0,
+    "_skewY": 0,
+    "_zIndex": 0,
+    "groupIndex": 0,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.BlockInputEvents",
+    "_name": "",
+    "_objFlags": 0,
+    "node": {
+      "__id__": 2
+    },
+    "_enabled": true,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.PrefabInfo",
+    "root": {
+      "__id__": 1
+    },
+    "asset": {
+      "__uuid__": "c1e87ad1-66ab-4721-babd-241619b1acd6"
+    },
+    "fileId": "72nQph6mZD9ocI6fKvWY6K",
+    "sync": false
+  },
+  {
+    "__type__": "cc.Node",
+    "_name": "content",
+    "_objFlags": 0,
+    "_parent": {
+      "__id__": 1
+    },
+    "_children": [
+      {
+        "__id__": 6
+      },
+      {
+        "__id__": 9
+      },
+      {
+        "__id__": 25
+      }
+    ],
+    "_active": true,
+    "_level": 2,
+    "_components": [],
+    "_prefab": {
+      "__id__": 39
+    },
+    "_opacity": 255,
+    "_color": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "_contentSize": {
+      "__type__": "cc.Size",
+      "width": 530,
+      "height": 310
+    },
+    "_anchorPoint": {
+      "__type__": "cc.Vec2",
+      "x": 0.5,
+      "y": 0.5
+    },
+    "_position": {
+      "__type__": "cc.Vec3",
+      "x": 0,
+      "y": 0,
+      "z": 0
+    },
+    "_scale": {
+      "__type__": "cc.Vec3",
+      "x": 1,
+      "y": 1,
+      "z": 1
+    },
+    "_rotationX": 0,
+    "_rotationY": 0,
+    "_quat": {
+      "__type__": "cc.Quat",
+      "x": 0,
+      "y": 0,
+      "z": 0,
+      "w": 1
+    },
+    "_skewX": 0,
+    "_skewY": 0,
+    "_zIndex": 0,
+    "groupIndex": 0,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.Node",
+    "_name": "common_frame_bg",
+    "_objFlags": 0,
+    "_parent": {
+      "__id__": 5
+    },
+    "_children": [],
+    "_active": true,
+    "_level": 3,
+    "_components": [
+      {
+        "__id__": 7
+      }
+    ],
+    "_prefab": {
+      "__id__": 8
+    },
+    "_opacity": 255,
+    "_color": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "_contentSize": {
+      "__type__": "cc.Size",
+      "width": 530,
+      "height": 310
+    },
+    "_anchorPoint": {
+      "__type__": "cc.Vec2",
+      "x": 0.5,
+      "y": 0.5
+    },
+    "_position": {
+      "__type__": "cc.Vec3",
+      "x": 0,
+      "y": 0,
+      "z": 0
+    },
+    "_scale": {
+      "__type__": "cc.Vec3",
+      "x": 1,
+      "y": 1,
+      "z": 1
+    },
+    "_rotationX": 0,
+    "_rotationY": 0,
+    "_quat": {
+      "__type__": "cc.Quat",
+      "x": 0,
+      "y": 0,
+      "z": 0,
+      "w": 1
+    },
+    "_skewX": 0,
+    "_skewY": 0,
+    "_zIndex": 0,
+    "groupIndex": 0,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.Sprite",
+    "_name": "",
+    "_objFlags": 0,
+    "node": {
+      "__id__": 6
+    },
+    "_enabled": true,
+    "_srcBlendFactor": 770,
+    "_dstBlendFactor": 771,
+    "_spriteFrame": {
+      "__uuid__": "47ce8a87-06e6-4fa9-b7f8-bf15f9c21c54"
+    },
+    "_type": 1,
+    "_sizeMode": 0,
+    "_fillType": 0,
+    "_fillCenter": {
+      "__type__": "cc.Vec2",
+      "x": 0,
+      "y": 0
+    },
+    "_fillStart": 0,
+    "_fillRange": 0,
+    "_isTrimmedMode": true,
+    "_state": 0,
+    "_atlas": null,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.PrefabInfo",
+    "root": {
+      "__id__": 1
+    },
+    "asset": {
+      "__uuid__": "c1e87ad1-66ab-4721-babd-241619b1acd6"
+    },
+    "fileId": "b0HwLiKsNA+6w1Ci4BGf7v",
+    "sync": false
+  },
+  {
+    "__type__": "cc.Node",
+    "_name": "setting_bg_top",
+    "_objFlags": 0,
+    "_parent": {
+      "__id__": 5
+    },
+    "_children": [
+      {
+        "__id__": 10
+      },
+      {
+        "__id__": 16
+      }
+    ],
+    "_active": true,
+    "_level": 3,
+    "_components": [
+      {
+        "__id__": 22
+      },
+      {
+        "__id__": 23
+      }
+    ],
+    "_prefab": {
+      "__id__": 24
+    },
+    "_opacity": 255,
+    "_color": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "_contentSize": {
+      "__type__": "cc.Size",
+      "width": 530,
+      "height": 60
+    },
+    "_anchorPoint": {
+      "__type__": "cc.Vec2",
+      "x": 0.5,
+      "y": 0.5
+    },
+    "_position": {
+      "__type__": "cc.Vec3",
+      "x": 0,
+      "y": 125,
+      "z": 0
+    },
+    "_scale": {
+      "__type__": "cc.Vec3",
+      "x": 1,
+      "y": 1,
+      "z": 1
+    },
+    "_rotationX": 0,
+    "_rotationY": 0,
+    "_quat": {
+      "__type__": "cc.Quat",
+      "x": 0,
+      "y": 0,
+      "z": 0,
+      "w": 1
+    },
+    "_skewX": 0,
+    "_skewY": 0,
+    "_zIndex": 0,
+    "groupIndex": 0,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.Node",
+    "_name": "richtext",
+    "_objFlags": 0,
+    "_parent": {
+      "__id__": 9
+    },
+    "_children": [
+      {
+        "__id__": 11
+      }
+    ],
+    "_active": true,
+    "_level": 4,
+    "_components": [
+      {
+        "__id__": 14
+      }
+    ],
+    "_prefab": {
+      "__id__": 15
+    },
+    "_opacity": 255,
+    "_color": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "_contentSize": {
+      "__type__": "cc.Size",
+      "width": 72,
+      "height": 50
+    },
+    "_anchorPoint": {
+      "__type__": "cc.Vec2",
+      "x": 0.5,
+      "y": 0.5
+    },
+    "_position": {
+      "__type__": "cc.Vec3",
+      "x": 0,
+      "y": 0,
+      "z": 0
+    },
+    "_scale": {
+      "__type__": "cc.Vec3",
+      "x": 1,
+      "y": 1,
+      "z": 1
+    },
+    "_rotationX": 0,
+    "_rotationY": 0,
+    "_quat": {
+      "__type__": "cc.Quat",
+      "x": 0,
+      "y": 0,
+      "z": 0,
+      "w": 1
+    },
+    "_skewX": 0,
+    "_skewY": 0,
+    "_zIndex": 0,
+    "groupIndex": 0,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.PrivateNode",
+    "_name": "RICHTEXT_CHILD",
+    "_objFlags": 0,
+    "_parent": {
+      "__id__": 10
+    },
+    "_children": [],
+    "_active": true,
+    "_level": 5,
+    "_components": [
+      {
+        "__id__": 12
+      }
+    ],
+    "_prefab": {
+      "__id__": 13
+    },
+    "_opacity": 255,
+    "_color": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "_contentSize": {
+      "__type__": "cc.Size",
+      "width": 72,
+      "height": 50
+    },
+    "_anchorPoint": {
+      "__type__": "cc.Vec2",
+      "x": 0,
+      "y": 0
+    },
+    "_position": {
+      "__type__": "cc.Vec3",
+      "x": -36,
+      "y": -25,
+      "z": 0
+    },
+    "_scale": {
+      "__type__": "cc.Vec3",
+      "x": 1,
+      "y": 1,
+      "z": 1
+    },
+    "_rotationX": 0,
+    "_rotationY": 0,
+    "_quat": {
+      "__type__": "cc.Quat",
+      "x": 0,
+      "y": 0,
+      "z": 0,
+      "w": 1
+    },
+    "_skewX": 0,
+    "_skewY": 0,
+    "_zIndex": -32768,
+    "groupIndex": 0,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.Label",
+    "_name": "",
+    "_objFlags": 0,
+    "node": {
+      "__id__": 11
+    },
+    "_enabled": true,
+    "_srcBlendFactor": 1,
+    "_dstBlendFactor": 771,
+    "_useOriginalSize": true,
+    "_string": "设置",
+    "_N$string": "设置",
+    "_fontSize": 36,
+    "_lineHeight": 50,
+    "_enableWrapText": true,
+    "_N$file": null,
+    "_isSystemFontUsed": true,
+    "_spacingX": 0,
+    "_N$horizontalAlign": 0,
+    "_N$verticalAlign": 1,
+    "_N$fontFamily": "Arial",
+    "_N$overflow": 0,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.PrefabInfo",
+    "root": {
+      "__id__": 1
+    },
+    "asset": {
+      "__uuid__": "c1e87ad1-66ab-4721-babd-241619b1acd6"
+    },
+    "fileId": "60ktbNm85By7vcIcxQurt7",
+    "sync": false
+  },
+  {
+    "__type__": "cc.RichText",
+    "_name": "",
+    "_objFlags": 0,
+    "node": {
+      "__id__": 10
+    },
+    "_enabled": true,
+    "_N$string": "<b>设置</b>",
+    "_N$horizontalAlign": 0,
+    "_N$fontSize": 36,
+    "_N$font": null,
+    "_N$maxWidth": 0,
+    "_N$lineHeight": 50,
+    "_N$imageAtlas": null,
+    "_N$handleTouchEvent": true,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.PrefabInfo",
+    "root": {
+      "__id__": 1
+    },
+    "asset": {
+      "__uuid__": "c1e87ad1-66ab-4721-babd-241619b1acd6"
+    },
+    "fileId": "90fK0lBK9NsLltZHYYPgJk",
+    "sync": false
+  },
+  {
+    "__type__": "cc.Node",
+    "_name": "button",
+    "_objFlags": 0,
+    "_parent": {
+      "__id__": 9
+    },
+    "_children": [],
+    "_active": true,
+    "_level": 4,
+    "_components": [
+      {
+        "__id__": 17
+      },
+      {
+        "__id__": 18
+      },
+      {
+        "__id__": 20
+      }
+    ],
+    "_prefab": {
+      "__id__": 21
+    },
+    "_opacity": 255,
+    "_color": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "_contentSize": {
+      "__type__": "cc.Size",
+      "width": 30,
+      "height": 31
+    },
+    "_anchorPoint": {
+      "__type__": "cc.Vec2",
+      "x": 0.5,
+      "y": 0.5
+    },
+    "_position": {
+      "__type__": "cc.Vec3",
+      "x": 222,
+      "y": 0,
+      "z": 0
+    },
+    "_scale": {
+      "__type__": "cc.Vec3",
+      "x": 1,
+      "y": 1,
+      "z": 1
+    },
+    "_rotationX": 0,
+    "_rotationY": 0,
+    "_quat": {
+      "__type__": "cc.Quat",
+      "x": 0,
+      "y": 0,
+      "z": 0,
+      "w": 1
+    },
+    "_skewX": 0,
+    "_skewY": 0,
+    "_zIndex": 0,
+    "groupIndex": 0,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.Sprite",
+    "_name": "",
+    "_objFlags": 0,
+    "node": {
+      "__id__": 16
+    },
+    "_enabled": true,
+    "_srcBlendFactor": 770,
+    "_dstBlendFactor": 771,
+    "_spriteFrame": {
+      "__uuid__": "63b0233f-f1c0-4581-bcc1-a7cfbd16af1c"
+    },
+    "_type": 0,
+    "_sizeMode": 0,
+    "_fillType": 0,
+    "_fillCenter": {
+      "__type__": "cc.Vec2",
+      "x": 0,
+      "y": 0
+    },
+    "_fillStart": 0,
+    "_fillRange": 0,
+    "_isTrimmedMode": true,
+    "_state": 0,
+    "_atlas": null,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.Button",
+    "_name": "",
+    "_objFlags": 0,
+    "node": {
+      "__id__": 16
+    },
+    "_enabled": true,
+    "transition": 1,
+    "pressedColor": {
+      "__type__": "cc.Color",
+      "r": 120,
+      "g": 120,
+      "b": 120,
+      "a": 255
+    },
+    "hoverColor": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "duration": 0.1,
+    "zoomScale": 1.2,
+    "clickEvents": [
+      {
+        "__id__": 19
+      }
+    ],
+    "_N$interactable": true,
+    "_N$enableAutoGrayEffect": false,
+    "_N$normalColor": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "_N$disabledColor": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "_N$normalSprite": {
+      "__uuid__": "63b0233f-f1c0-4581-bcc1-a7cfbd16af1c"
+    },
+    "_N$pressedSprite": {
+      "__uuid__": "e9ec654c-97a2-4787-9325-e6a10375219a"
+    },
+    "pressedSprite": {
+      "__uuid__": "e9ec654c-97a2-4787-9325-e6a10375219a"
+    },
+    "_N$hoverSprite": {
+      "__uuid__": "f0048c10-f03e-4c97-b9d3-3506e1d58952"
+    },
+    "hoverSprite": {
+      "__uuid__": "f0048c10-f03e-4c97-b9d3-3506e1d58952"
+    },
+    "_N$disabledSprite": {
+      "__uuid__": "29158224-f8dd-4661-a796-1ffab537140e"
+    },
+    "_N$target": {
+      "__id__": 16
+    },
+    "_id": ""
+  },
+  {
+    "__type__": "cc.ClickEvent",
+    "target": {
+      "__id__": 1
+    },
+    "component": "SettingCtrl",
+    "handler": "closeNode",
+    "customEventData": ""
+  },
+  {
+    "__type__": "cc.Widget",
+    "_name": "",
+    "_objFlags": 0,
+    "node": {
+      "__id__": 16
+    },
+    "_enabled": true,
+    "alignMode": 1,
+    "_target": null,
+    "_alignFlags": 32,
+    "_left": 0,
+    "_right": 28,
+    "_top": 0,
+    "_bottom": 0,
+    "_verticalCenter": 0,
+    "_horizontalCenter": 0,
+    "_isAbsLeft": true,
+    "_isAbsRight": true,
+    "_isAbsTop": true,
+    "_isAbsBottom": true,
+    "_isAbsHorizontalCenter": true,
+    "_isAbsVerticalCenter": true,
+    "_originalWidth": 0,
+    "_originalHeight": 0,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.PrefabInfo",
+    "root": {
+      "__id__": 1
+    },
+    "asset": {
+      "__uuid__": "c1e87ad1-66ab-4721-babd-241619b1acd6"
+    },
+    "fileId": "1duhXXK39FpKgWXY7gvSKA",
+    "sync": false
+  },
+  {
+    "__type__": "cc.Sprite",
+    "_name": "",
+    "_objFlags": 0,
+    "node": {
+      "__id__": 9
+    },
+    "_enabled": true,
+    "_srcBlendFactor": 770,
+    "_dstBlendFactor": 771,
+    "_spriteFrame": {
+      "__uuid__": "431ee26e-7ff4-42e7-a7d9-a9c357565464"
+    },
+    "_type": 0,
+    "_sizeMode": 1,
+    "_fillType": 0,
+    "_fillCenter": {
+      "__type__": "cc.Vec2",
+      "x": 0,
+      "y": 0
+    },
+    "_fillStart": 0,
+    "_fillRange": 0,
+    "_isTrimmedMode": true,
+    "_state": 0,
+    "_atlas": null,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.Widget",
+    "_name": "",
+    "_objFlags": 0,
+    "node": {
+      "__id__": 9
+    },
+    "_enabled": true,
+    "alignMode": 1,
+    "_target": null,
+    "_alignFlags": 1,
+    "_left": 0,
+    "_right": 0,
+    "_top": 0,
+    "_bottom": 0,
+    "_verticalCenter": 0,
+    "_horizontalCenter": 0,
+    "_isAbsLeft": true,
+    "_isAbsRight": true,
+    "_isAbsTop": true,
+    "_isAbsBottom": true,
+    "_isAbsHorizontalCenter": true,
+    "_isAbsVerticalCenter": true,
+    "_originalWidth": 0,
+    "_originalHeight": 0,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.PrefabInfo",
+    "root": {
+      "__id__": 1
+    },
+    "asset": {
+      "__uuid__": "c1e87ad1-66ab-4721-babd-241619b1acd6"
+    },
+    "fileId": "caaMivYPBLY48qThzvDgbP",
+    "sync": false
+  },
+  {
+    "__type__": "cc.Node",
+    "_name": "layout",
+    "_objFlags": 0,
+    "_parent": {
+      "__id__": 5
+    },
+    "_children": [
+      {
+        "__id__": 26
+      },
+      {
+        "__id__": 31
+      }
+    ],
+    "_active": true,
+    "_level": 3,
+    "_components": [
+      {
+        "__id__": 36
+      },
+      {
+        "__id__": 37
+      }
+    ],
+    "_prefab": {
+      "__id__": 38
+    },
+    "_opacity": 255,
+    "_color": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "_contentSize": {
+      "__type__": "cc.Size",
+      "width": 280,
+      "height": 120
+    },
+    "_anchorPoint": {
+      "__type__": "cc.Vec2",
+      "x": 0.5,
+      "y": 0.5
+    },
+    "_position": {
+      "__type__": "cc.Vec3",
+      "x": 0,
+      "y": -15,
+      "z": 0
+    },
+    "_scale": {
+      "__type__": "cc.Vec3",
+      "x": 1,
+      "y": 1,
+      "z": 1
+    },
+    "_rotationX": 0,
+    "_rotationY": 0,
+    "_quat": {
+      "__type__": "cc.Quat",
+      "x": 0,
+      "y": 0,
+      "z": 0,
+      "w": 1
+    },
+    "_skewX": 0,
+    "_skewY": 0,
+    "_zIndex": 0,
+    "groupIndex": 0,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.Node",
+    "_name": "bgmButton",
+    "_objFlags": 0,
+    "_parent": {
+      "__id__": 25
+    },
+    "_children": [],
+    "_active": true,
+    "_level": 4,
+    "_components": [
+      {
+        "__id__": 27
+      },
+      {
+        "__id__": 28
+      }
+    ],
+    "_prefab": {
+      "__id__": 30
+    },
+    "_opacity": 255,
+    "_color": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "_contentSize": {
+      "__type__": "cc.Size",
+      "width": 120,
+      "height": 120
+    },
+    "_anchorPoint": {
+      "__type__": "cc.Vec2",
+      "x": 0.5,
+      "y": 0.5
+    },
+    "_position": {
+      "__type__": "cc.Vec3",
+      "x": -80,
+      "y": 0,
+      "z": 0
+    },
+    "_scale": {
+      "__type__": "cc.Vec3",
+      "x": 1,
+      "y": 1,
+      "z": 1
+    },
+    "_rotationX": 0,
+    "_rotationY": 0,
+    "_quat": {
+      "__type__": "cc.Quat",
+      "x": 0,
+      "y": 0,
+      "z": 0,
+      "w": 1
+    },
+    "_skewX": 0,
+    "_skewY": 0,
+    "_zIndex": 0,
+    "groupIndex": 0,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.Sprite",
+    "_name": "",
+    "_objFlags": 0,
+    "node": {
+      "__id__": 26
+    },
+    "_enabled": true,
+    "_srcBlendFactor": 770,
+    "_dstBlendFactor": 771,
+    "_spriteFrame": {
+      "__uuid__": "909620d6-ad93-4985-a923-581a204e9469"
+    },
+    "_type": 1,
+    "_sizeMode": 0,
+    "_fillType": 0,
+    "_fillCenter": {
+      "__type__": "cc.Vec2",
+      "x": 0,
+      "y": 0
+    },
+    "_fillStart": 0,
+    "_fillRange": 0,
+    "_isTrimmedMode": true,
+    "_state": 0,
+    "_atlas": null,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.Button",
+    "_name": "",
+    "_objFlags": 0,
+    "node": {
+      "__id__": 26
+    },
+    "_enabled": true,
+    "transition": 1,
+    "pressedColor": {
+      "__type__": "cc.Color",
+      "r": 120,
+      "g": 120,
+      "b": 120,
+      "a": 255
+    },
+    "hoverColor": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "duration": 0.1,
+    "zoomScale": 1.2,
+    "clickEvents": [
+      {
+        "__id__": 29
+      }
+    ],
+    "_N$interactable": true,
+    "_N$enableAutoGrayEffect": false,
+    "_N$normalColor": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "_N$disabledColor": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "_N$normalSprite": {
+      "__uuid__": "f0048c10-f03e-4c97-b9d3-3506e1d58952"
+    },
+    "_N$pressedSprite": {
+      "__uuid__": "e9ec654c-97a2-4787-9325-e6a10375219a"
+    },
+    "pressedSprite": {
+      "__uuid__": "e9ec654c-97a2-4787-9325-e6a10375219a"
+    },
+    "_N$hoverSprite": {
+      "__uuid__": "f0048c10-f03e-4c97-b9d3-3506e1d58952"
+    },
+    "hoverSprite": {
+      "__uuid__": "f0048c10-f03e-4c97-b9d3-3506e1d58952"
+    },
+    "_N$disabledSprite": {
+      "__uuid__": "29158224-f8dd-4661-a796-1ffab537140e"
+    },
+    "_N$target": {
+      "__id__": 26
+    },
+    "_id": ""
+  },
+  {
+    "__type__": "cc.ClickEvent",
+    "target": {
+      "__id__": 1
+    },
+    "component": "SettingCtrl",
+    "handler": "handleChangeBgmState",
+    "customEventData": ""
+  },
+  {
+    "__type__": "cc.PrefabInfo",
+    "root": {
+      "__id__": 1
+    },
+    "asset": {
+      "__uuid__": "c1e87ad1-66ab-4721-babd-241619b1acd6"
+    },
+    "fileId": "8bHpkb3kxPFrIWM2skKfyV",
+    "sync": false
+  },
+  {
+    "__type__": "cc.Node",
+    "_name": "effectButton",
+    "_objFlags": 0,
+    "_parent": {
+      "__id__": 25
+    },
+    "_children": [],
+    "_active": true,
+    "_level": 4,
+    "_components": [
+      {
+        "__id__": 32
+      },
+      {
+        "__id__": 33
+      }
+    ],
+    "_prefab": {
+      "__id__": 35
+    },
+    "_opacity": 255,
+    "_color": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "_contentSize": {
+      "__type__": "cc.Size",
+      "width": 120,
+      "height": 120
+    },
+    "_anchorPoint": {
+      "__type__": "cc.Vec2",
+      "x": 0.5,
+      "y": 0.5
+    },
+    "_position": {
+      "__type__": "cc.Vec3",
+      "x": 80,
+      "y": 0,
+      "z": 0
+    },
+    "_scale": {
+      "__type__": "cc.Vec3",
+      "x": 1,
+      "y": 1,
+      "z": 1
+    },
+    "_rotationX": 0,
+    "_rotationY": 0,
+    "_quat": {
+      "__type__": "cc.Quat",
+      "x": 0,
+      "y": 0,
+      "z": 0,
+      "w": 1
+    },
+    "_skewX": 0,
+    "_skewY": 0,
+    "_zIndex": 0,
+    "groupIndex": 0,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.Sprite",
+    "_name": "",
+    "_objFlags": 0,
+    "node": {
+      "__id__": 31
+    },
+    "_enabled": true,
+    "_srcBlendFactor": 770,
+    "_dstBlendFactor": 771,
+    "_spriteFrame": {
+      "__uuid__": "71cd17e7-e560-49b3-b0e9-e857da39ce0e"
+    },
+    "_type": 1,
+    "_sizeMode": 0,
+    "_fillType": 0,
+    "_fillCenter": {
+      "__type__": "cc.Vec2",
+      "x": 0,
+      "y": 0
+    },
+    "_fillStart": 0,
+    "_fillRange": 0,
+    "_isTrimmedMode": true,
+    "_state": 0,
+    "_atlas": null,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.Button",
+    "_name": "",
+    "_objFlags": 0,
+    "node": {
+      "__id__": 31
+    },
+    "_enabled": true,
+    "transition": 1,
+    "pressedColor": {
+      "__type__": "cc.Color",
+      "r": 120,
+      "g": 120,
+      "b": 120,
+      "a": 255
+    },
+    "hoverColor": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "duration": 0.1,
+    "zoomScale": 1.2,
+    "clickEvents": [
+      {
+        "__id__": 34
+      }
+    ],
+    "_N$interactable": true,
+    "_N$enableAutoGrayEffect": false,
+    "_N$normalColor": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "_N$disabledColor": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "_N$normalSprite": {
+      "__uuid__": "f0048c10-f03e-4c97-b9d3-3506e1d58952"
+    },
+    "_N$pressedSprite": {
+      "__uuid__": "e9ec654c-97a2-4787-9325-e6a10375219a"
+    },
+    "pressedSprite": {
+      "__uuid__": "e9ec654c-97a2-4787-9325-e6a10375219a"
+    },
+    "_N$hoverSprite": {
+      "__uuid__": "f0048c10-f03e-4c97-b9d3-3506e1d58952"
+    },
+    "hoverSprite": {
+      "__uuid__": "f0048c10-f03e-4c97-b9d3-3506e1d58952"
+    },
+    "_N$disabledSprite": {
+      "__uuid__": "29158224-f8dd-4661-a796-1ffab537140e"
+    },
+    "_N$target": {
+      "__id__": 31
+    },
+    "_id": ""
+  },
+  {
+    "__type__": "cc.ClickEvent",
+    "target": {
+      "__id__": 1
+    },
+    "component": "SettingCtrl",
+    "handler": "handleChangeEffectState",
+    "customEventData": ""
+  },
+  {
+    "__type__": "cc.PrefabInfo",
+    "root": {
+      "__id__": 1
+    },
+    "asset": {
+      "__uuid__": "c1e87ad1-66ab-4721-babd-241619b1acd6"
+    },
+    "fileId": "c4tb3IQZJNG5xR1tezqTv3",
+    "sync": false
+  },
+  {
+    "__type__": "cc.Layout",
+    "_name": "",
+    "_objFlags": 0,
+    "node": {
+      "__id__": 25
+    },
+    "_enabled": true,
+    "_layoutSize": {
+      "__type__": "cc.Size",
+      "width": 280,
+      "height": 120
+    },
+    "_resize": 1,
+    "_N$layoutType": 1,
+    "_N$padding": 0,
+    "_N$cellSize": {
+      "__type__": "cc.Size",
+      "width": 40,
+      "height": 40
+    },
+    "_N$startAxis": 0,
+    "_N$paddingLeft": 0,
+    "_N$paddingRight": 0,
+    "_N$paddingTop": 0,
+    "_N$paddingBottom": 0,
+    "_N$spacingX": 40,
+    "_N$spacingY": 0,
+    "_N$verticalDirection": 1,
+    "_N$horizontalDirection": 0,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.Widget",
+    "_name": "",
+    "_objFlags": 0,
+    "node": {
+      "__id__": 25
+    },
+    "_enabled": true,
+    "alignMode": 1,
+    "_target": null,
+    "_alignFlags": 1,
+    "_left": 0,
+    "_right": 0,
+    "_top": 110,
+    "_bottom": 0,
+    "_verticalCenter": 0,
+    "_horizontalCenter": 0,
+    "_isAbsLeft": true,
+    "_isAbsRight": true,
+    "_isAbsTop": true,
+    "_isAbsBottom": true,
+    "_isAbsHorizontalCenter": true,
+    "_isAbsVerticalCenter": true,
+    "_originalWidth": 0,
+    "_originalHeight": 0,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.PrefabInfo",
+    "root": {
+      "__id__": 1
+    },
+    "asset": {
+      "__uuid__": "c1e87ad1-66ab-4721-babd-241619b1acd6"
+    },
+    "fileId": "cf77AcudVL/q/axmmMf1yG",
+    "sync": false
+  },
+  {
+    "__type__": "cc.PrefabInfo",
+    "root": {
+      "__id__": 1
+    },
+    "asset": {
+      "__uuid__": "c1e87ad1-66ab-4721-babd-241619b1acd6"
+    },
+    "fileId": "3d9CsM3ctMlq7zgIUPT88A",
+    "sync": false
+  },
+  {
+    "__type__": "0b936z5r6hO3KwoedhwfRVw",
+    "_name": "",
+    "_objFlags": 0,
+    "node": {
+      "__id__": 1
+    },
+    "_enabled": true,
+    "bgmSpriteFrameArray": [
+      {
+        "__uuid__": "909620d6-ad93-4985-a923-581a204e9469"
+      },
+      {
+        "__uuid__": "c7e4ee1f-68ac-4484-8e97-c0a91df9b731"
+      }
+    ],
+    "effectSpriteFrameArray": [
+      {
+        "__uuid__": "71cd17e7-e560-49b3-b0e9-e857da39ce0e"
+      },
+      {
+        "__uuid__": "54bcc4c3-a7b8-4895-969d-44f50fe767e1"
+      }
+    ],
+    "bgmButton": {
+      "__id__": 28
+    },
+    "effectButton": {
+      "__id__": 33
+    },
+    "_id": ""
+  },
+  {
+    "__type__": "cc.PrefabInfo",
+    "root": {
+      "__id__": 1
+    },
+    "asset": {
+      "__uuid__": "c1e87ad1-66ab-4721-babd-241619b1acd6"
+    },
+    "fileId": "5fXFuZPE1FOYbDtZs6pR6T",
+    "sync": false
+  }
+]

+ 7 - 0
assets/resources/prefabs/setting/game_setting.prefab.meta

@@ -0,0 +1,7 @@
+{
+  "ver": "1.0.0",
+  "uuid": "c1e87ad1-66ab-4721-babd-241619b1acd6",
+  "optimizationPolicy": "AUTO",
+  "asyncLoadAssets": false,
+  "subMetas": {}
+}

+ 481 - 27
assets/resources/prefabs/star/StarItem.prefab

@@ -42,17 +42,20 @@
       },
       {
         "__id__": 46
+      },
+      {
+        "__id__": 53
       }
     ],
     "_active": true,
     "_level": 1,
     "_components": [
       {
-        "__id__": 53
+        "__id__": 66
       }
     ],
     "_prefab": {
-      "__id__": 54
+      "__id__": 67
     },
     "_opacity": 255,
     "_color": {
@@ -188,7 +191,7 @@
     "_isTrimmedMode": true,
     "_state": 0,
     "_atlas": null,
-    "_id": "5fVomylZdGz5jzWw4z2iz0"
+    "_id": ""
   },
   {
     "__type__": "cc.PrefabInfo",
@@ -293,7 +296,7 @@
     "_isTrimmedMode": true,
     "_state": 0,
     "_atlas": null,
-    "_id": "6cGa+4WWBJMaROygyW+pkK"
+    "_id": ""
   },
   {
     "__type__": "cc.Widget",
@@ -320,7 +323,7 @@
     "_isAbsVerticalCenter": true,
     "_originalWidth": 0,
     "_originalHeight": 0,
-    "_id": "ebOeUBzA5PPq5FYlav1nbb"
+    "_id": ""
   },
   {
     "__type__": "cc.PrefabInfo",
@@ -425,7 +428,7 @@
     "_isTrimmedMode": false,
     "_state": 0,
     "_atlas": null,
-    "_id": "75+vxnx+5LXa48tqnXLXIU"
+    "_id": ""
   },
   {
     "__type__": "cc.Widget",
@@ -452,7 +455,7 @@
     "_isAbsVerticalCenter": true,
     "_originalWidth": 0,
     "_originalHeight": 0,
-    "_id": "dcbrRA1KVEvaekR0+cQUDx"
+    "_id": ""
   },
   {
     "__type__": "cc.PrefabInfo",
@@ -557,7 +560,7 @@
     "_isTrimmedMode": true,
     "_state": 0,
     "_atlas": null,
-    "_id": "be8aqHqDFL5p0foWsXZhLY"
+    "_id": ""
   },
   {
     "__type__": "cc.Widget",
@@ -584,7 +587,7 @@
     "_isAbsVerticalCenter": true,
     "_originalWidth": 0,
     "_originalHeight": 0,
-    "_id": "71OVH857ZApp/h2Xh+a2wu"
+    "_id": ""
   },
   {
     "__type__": "cc.PrefabInfo",
@@ -686,7 +689,7 @@
     "_N$verticalAlign": 1,
     "_N$fontFamily": "Arial",
     "_N$overflow": 0,
-    "_id": "5aY1edhgNO450xL0/ZwAeq"
+    "_id": ""
   },
   {
     "__type__": "cc.Widget",
@@ -713,7 +716,7 @@
     "_isAbsVerticalCenter": true,
     "_originalWidth": 0,
     "_originalHeight": 0,
-    "_id": "b966u3kzZPrKEtD5/UoDxR"
+    "_id": ""
   },
   {
     "__type__": "cc.PrefabInfo",
@@ -810,7 +813,7 @@
       "__uuid__": "9a199f9b-2e79-467b-85f6-b6ebe5f54f18"
     },
     "_N$handleTouchEvent": true,
-    "_id": "3acMuUcHVCQbgBCtFu2Zyj"
+    "_id": ""
   },
   {
     "__type__": "cc.Widget",
@@ -837,7 +840,7 @@
     "_isAbsVerticalCenter": true,
     "_originalWidth": 0,
     "_originalHeight": 0,
-    "_id": "a529t3Y8RPGKMZDzzyrdr9"
+    "_id": ""
   },
   {
     "__type__": "cc.PrefabInfo",
@@ -934,7 +937,7 @@
       "__uuid__": "9a199f9b-2e79-467b-85f6-b6ebe5f54f18"
     },
     "_N$handleTouchEvent": true,
-    "_id": "89dZlm8CFBi5Dlh2zjXW+5"
+    "_id": ""
   },
   {
     "__type__": "cc.Widget",
@@ -961,7 +964,7 @@
     "_isAbsVerticalCenter": true,
     "_originalWidth": 0,
     "_originalHeight": 0,
-    "_id": "71+ty/djxI37KRUFKC/FAP"
+    "_id": ""
   },
   {
     "__type__": "cc.PrefabInfo",
@@ -1136,7 +1139,7 @@
     "_isTrimmedMode": true,
     "_state": 0,
     "_atlas": null,
-    "_id": "8dKRiT7f9KkbHCqUtxDaOs"
+    "_id": ""
   },
   {
     "__type__": "cc.PrefabInfo",
@@ -1310,7 +1313,7 @@
     "_atlas": {
       "__uuid__": "9a199f9b-2e79-467b-85f6-b6ebe5f54f18"
     },
-    "_id": "ddziIhxf9MQ7Lmw6Qsu2Jj"
+    "_id": ""
   },
   {
     "__type__": "cc.PrefabInfo",
@@ -1320,7 +1323,7 @@
     "asset": {
       "__uuid__": "9bb6c878-1aa5-4714-9d3d-54bff2a722f6"
     },
-    "fileId": "51YWYGd3ZGgau43s4TeJWd",
+    "fileId": "bcDOic1LtHmab1A/p5lMpy",
     "sync": false
   },
   {
@@ -1409,7 +1412,7 @@
     "_N$verticalAlign": 1,
     "_N$fontFamily": "Arial",
     "_N$overflow": 0,
-    "_id": "d4Xfz9JQ1L15Xcd15x27zc"
+    "_id": ""
   },
   {
     "__type__": "cc.PrefabInfo",
@@ -1419,7 +1422,7 @@
     "asset": {
       "__uuid__": "9bb6c878-1aa5-4714-9d3d-54bff2a722f6"
     },
-    "fileId": "b2V4brsGpMdaDsrUtwPqvi",
+    "fileId": "62rLl9l/tAI5Y0By364BSP",
     "sync": false
   },
   {
@@ -1440,7 +1443,7 @@
       "__uuid__": "9a199f9b-2e79-467b-85f6-b6ebe5f54f18"
     },
     "_N$handleTouchEvent": true,
-    "_id": "b3YzX1naZIBZLFe5RNSpGS"
+    "_id": ""
   },
   {
     "__type__": "cc.PrefabInfo",
@@ -1520,7 +1523,7 @@
     "_N$target": {
       "__id__": 30
     },
-    "_id": "8670JeNN9Okof3Psvk+JtG"
+    "_id": ""
   },
   {
     "__type__": "cc.ClickEvent",
@@ -1556,7 +1559,7 @@
     "_isAbsVerticalCenter": true,
     "_originalWidth": 0,
     "_originalHeight": 0,
-    "_id": "75wI+YpC9ItaQsrNmtUxv4"
+    "_id": ""
   },
   {
     "__type__": "cc.PrefabInfo",
@@ -1725,7 +1728,7 @@
     "_N$verticalAlign": 1,
     "_N$fontFamily": "Arial",
     "_N$overflow": 2,
-    "_id": "1epzCUOfpEN6kRlROEkWp+"
+    "_id": ""
   },
   {
     "__type__": "cc.PrefabInfo",
@@ -1764,7 +1767,7 @@
     "_isTrimmedMode": true,
     "_state": 0,
     "_atlas": null,
-    "_id": "48AzP2iLNIRob35m42D+fC"
+    "_id": ""
   },
   {
     "__type__": "cc.Widget",
@@ -1791,7 +1794,7 @@
     "_isAbsVerticalCenter": true,
     "_originalWidth": 0,
     "_originalHeight": 35,
-    "_id": "07sW25iL1N8LqP+W5pGjEl"
+    "_id": ""
   },
   {
     "__type__": "cc.PrefabInfo",
@@ -1805,6 +1808,450 @@
     "sync": false
   },
   {
+    "__type__": "cc.Node",
+    "_name": "button",
+    "_objFlags": 0,
+    "_parent": {
+      "__id__": 1
+    },
+    "_children": [
+      {
+        "__id__": 54
+      },
+      {
+        "__id__": 57
+      }
+    ],
+    "_active": false,
+    "_level": 2,
+    "_components": [
+      {
+        "__id__": 61
+      },
+      {
+        "__id__": 62
+      },
+      {
+        "__id__": 64
+      }
+    ],
+    "_prefab": {
+      "__id__": 65
+    },
+    "_opacity": 255,
+    "_color": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "_contentSize": {
+      "__type__": "cc.Size",
+      "width": 200,
+      "height": 100
+    },
+    "_anchorPoint": {
+      "__type__": "cc.Vec2",
+      "x": 0.5,
+      "y": 0.5
+    },
+    "_position": {
+      "__type__": "cc.Vec3",
+      "x": 229,
+      "y": 0,
+      "z": 0
+    },
+    "_scale": {
+      "__type__": "cc.Vec3",
+      "x": 1,
+      "y": 1,
+      "z": 1
+    },
+    "_rotationX": 0,
+    "_rotationY": 0,
+    "_quat": {
+      "__type__": "cc.Quat",
+      "x": 0,
+      "y": 0,
+      "z": 0,
+      "w": 1
+    },
+    "_skewX": 0,
+    "_skewY": 0,
+    "_zIndex": 0,
+    "groupIndex": 0,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.Node",
+    "_name": "button_sprite",
+    "_objFlags": 0,
+    "_parent": {
+      "__id__": 53
+    },
+    "_children": [],
+    "_active": true,
+    "_level": 2,
+    "_components": [
+      {
+        "__id__": 55
+      }
+    ],
+    "_prefab": {
+      "__id__": 56
+    },
+    "_opacity": 255,
+    "_color": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "_contentSize": {
+      "__type__": "cc.Size",
+      "width": 200,
+      "height": 100
+    },
+    "_anchorPoint": {
+      "__type__": "cc.Vec2",
+      "x": 0.5,
+      "y": 0.5
+    },
+    "_position": {
+      "__type__": "cc.Vec3",
+      "x": 0,
+      "y": 0,
+      "z": 0
+    },
+    "_scale": {
+      "__type__": "cc.Vec3",
+      "x": 1,
+      "y": 1,
+      "z": 1
+    },
+    "_rotationX": 0,
+    "_rotationY": 0,
+    "_quat": {
+      "__type__": "cc.Quat",
+      "x": 0,
+      "y": 0,
+      "z": 0,
+      "w": 1
+    },
+    "_skewX": 0,
+    "_skewY": 0,
+    "_zIndex": 0,
+    "groupIndex": 0,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.Sprite",
+    "_name": "",
+    "_objFlags": 0,
+    "node": {
+      "__id__": 54
+    },
+    "_enabled": true,
+    "_srcBlendFactor": 770,
+    "_dstBlendFactor": 771,
+    "_spriteFrame": {
+      "__uuid__": "ee2ec630-d472-45d3-9fd9-fabc38903c23"
+    },
+    "_type": 0,
+    "_sizeMode": 1,
+    "_fillType": 0,
+    "_fillCenter": {
+      "__type__": "cc.Vec2",
+      "x": 0,
+      "y": 0
+    },
+    "_fillStart": 0,
+    "_fillRange": 0,
+    "_isTrimmedMode": true,
+    "_state": 0,
+    "_atlas": null,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.PrefabInfo",
+    "root": {
+      "__id__": 1
+    },
+    "asset": {
+      "__uuid__": "9bb6c878-1aa5-4714-9d3d-54bff2a722f6"
+    },
+    "fileId": "12HzAEKBhNi6kXgVvVIEtv",
+    "sync": false
+  },
+  {
+    "__type__": "cc.Node",
+    "_name": "skill_use_title",
+    "_objFlags": 0,
+    "_parent": {
+      "__id__": 53
+    },
+    "_children": [],
+    "_active": true,
+    "_level": 2,
+    "_components": [
+      {
+        "__id__": 58
+      },
+      {
+        "__id__": 59
+      }
+    ],
+    "_prefab": {
+      "__id__": 60
+    },
+    "_opacity": 255,
+    "_color": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "_contentSize": {
+      "__type__": "cc.Size",
+      "width": 0,
+      "height": 35
+    },
+    "_anchorPoint": {
+      "__type__": "cc.Vec2",
+      "x": 0.5,
+      "y": 0.5
+    },
+    "_position": {
+      "__type__": "cc.Vec3",
+      "x": 0,
+      "y": 0,
+      "z": 0
+    },
+    "_scale": {
+      "__type__": "cc.Vec3",
+      "x": 1,
+      "y": 1,
+      "z": 1
+    },
+    "_rotationX": 0,
+    "_rotationY": 0,
+    "_quat": {
+      "__type__": "cc.Quat",
+      "x": 0,
+      "y": 0,
+      "z": 0,
+      "w": 1
+    },
+    "_skewX": 0,
+    "_skewY": 0,
+    "_zIndex": 0,
+    "groupIndex": 0,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.RichText",
+    "_name": "",
+    "_objFlags": 0,
+    "node": {
+      "__id__": 57
+    },
+    "_enabled": true,
+    "_N$string": "",
+    "_N$horizontalAlign": 1,
+    "_N$fontSize": 24,
+    "_N$font": null,
+    "_N$maxWidth": 0,
+    "_N$lineHeight": 35,
+    "_N$imageAtlas": {
+      "__uuid__": "9a199f9b-2e79-467b-85f6-b6ebe5f54f18"
+    },
+    "_N$handleTouchEvent": true,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.Widget",
+    "_name": "",
+    "_objFlags": 0,
+    "node": {
+      "__id__": 57
+    },
+    "_enabled": true,
+    "alignMode": 1,
+    "_target": null,
+    "_alignFlags": 18,
+    "_left": 0,
+    "_right": 0,
+    "_top": 0,
+    "_bottom": 0,
+    "_verticalCenter": 0,
+    "_horizontalCenter": 0,
+    "_isAbsLeft": true,
+    "_isAbsRight": true,
+    "_isAbsTop": true,
+    "_isAbsBottom": true,
+    "_isAbsHorizontalCenter": true,
+    "_isAbsVerticalCenter": true,
+    "_originalWidth": 0,
+    "_originalHeight": 0,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.PrefabInfo",
+    "root": {
+      "__id__": 1
+    },
+    "asset": {
+      "__uuid__": "9bb6c878-1aa5-4714-9d3d-54bff2a722f6"
+    },
+    "fileId": "b8DrAdmpZCmaXbaZQ+PSm+",
+    "sync": false
+  },
+  {
+    "__type__": "cc.Sprite",
+    "_name": "",
+    "_objFlags": 0,
+    "node": {
+      "__id__": 53
+    },
+    "_enabled": true,
+    "_srcBlendFactor": 770,
+    "_dstBlendFactor": 771,
+    "_spriteFrame": null,
+    "_type": 1,
+    "_sizeMode": 0,
+    "_fillType": 0,
+    "_fillCenter": {
+      "__type__": "cc.Vec2",
+      "x": 0,
+      "y": 0
+    },
+    "_fillStart": 0,
+    "_fillRange": 0,
+    "_isTrimmedMode": true,
+    "_state": 0,
+    "_atlas": null,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.Button",
+    "_name": "",
+    "_objFlags": 0,
+    "node": {
+      "__id__": 53
+    },
+    "_enabled": true,
+    "transition": 1,
+    "pressedColor": {
+      "__type__": "cc.Color",
+      "r": 120,
+      "g": 120,
+      "b": 120,
+      "a": 255
+    },
+    "hoverColor": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "duration": 0.1,
+    "zoomScale": 1.2,
+    "clickEvents": [
+      {
+        "__id__": 63
+      }
+    ],
+    "_N$interactable": true,
+    "_N$enableAutoGrayEffect": false,
+    "_N$normalColor": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "_N$disabledColor": {
+      "__type__": "cc.Color",
+      "r": 255,
+      "g": 255,
+      "b": 255,
+      "a": 255
+    },
+    "_N$normalSprite": {
+      "__uuid__": "f0048c10-f03e-4c97-b9d3-3506e1d58952"
+    },
+    "_N$pressedSprite": {
+      "__uuid__": "e9ec654c-97a2-4787-9325-e6a10375219a"
+    },
+    "pressedSprite": {
+      "__uuid__": "e9ec654c-97a2-4787-9325-e6a10375219a"
+    },
+    "_N$hoverSprite": {
+      "__uuid__": "f0048c10-f03e-4c97-b9d3-3506e1d58952"
+    },
+    "hoverSprite": {
+      "__uuid__": "f0048c10-f03e-4c97-b9d3-3506e1d58952"
+    },
+    "_N$disabledSprite": {
+      "__uuid__": "29158224-f8dd-4661-a796-1ffab537140e"
+    },
+    "_N$target": {
+      "__id__": 54
+    },
+    "_id": ""
+  },
+  {
+    "__type__": "cc.ClickEvent",
+    "target": {
+      "__id__": 1
+    },
+    "component": "StarItem",
+    "handler": "freeBuyBtnAction",
+    "customEventData": ""
+  },
+  {
+    "__type__": "cc.Widget",
+    "_name": "",
+    "_objFlags": 0,
+    "node": {
+      "__id__": 53
+    },
+    "_enabled": true,
+    "alignMode": 1,
+    "_target": null,
+    "_alignFlags": 34,
+    "_left": 0,
+    "_right": 10,
+    "_top": 0,
+    "_bottom": 0,
+    "_verticalCenter": 0,
+    "_horizontalCenter": 0,
+    "_isAbsLeft": true,
+    "_isAbsRight": true,
+    "_isAbsTop": true,
+    "_isAbsBottom": true,
+    "_isAbsHorizontalCenter": true,
+    "_isAbsVerticalCenter": true,
+    "_originalWidth": 0,
+    "_originalHeight": 0,
+    "_id": ""
+  },
+  {
+    "__type__": "cc.PrefabInfo",
+    "root": {
+      "__id__": 1
+    },
+    "asset": {
+      "__uuid__": "9bb6c878-1aa5-4714-9d3d-54bff2a722f6"
+    },
+    "fileId": "d1nzvVaQtHVJTLgvAkc3pj",
+    "sync": false
+  },
+  {
     "__type__": "ef505UipqFKc6vsDKuKBBJY",
     "_name": "",
     "_objFlags": 0,
@@ -1851,7 +2298,14 @@
     "lockedSpriteFrame": {
       "__uuid__": "193273b4-9135-4328-b2a5-38c0c7e24eff"
     },
-    "_id": "e5yjOdXupDUJ0kVuGen6fK"
+    "freeBuyStarNode": {
+      "__id__": 53
+    },
+    "freeBuyStarRichText": {
+      "__id__": 58
+    },
+    "_adState": 0,
+    "_id": ""
   },
   {
     "__type__": "cc.PrefabInfo",

+ 7 - 0
assets/resources/textures/setting.meta

@@ -0,0 +1,7 @@
+{
+  "ver": "1.0.1",
+  "uuid": "94a9713e-4f20-4a19-9818-faee9b3de92c",
+  "isSubpackage": false,
+  "subpackageName": "",
+  "subMetas": {}
+}

BIN
assets/resources/textures/setting/bgm_close.png


+ 31 - 0
assets/resources/textures/setting/bgm_close.png.meta

@@ -0,0 +1,31 @@
+{
+  "ver": "2.2.0",
+  "uuid": "e471dcb7-13d6-4aa6-9d22-7badd653e990",
+  "type": "sprite",
+  "wrapMode": "clamp",
+  "filterMode": "bilinear",
+  "premultiplyAlpha": false,
+  "subMetas": {
+    "bgm_close": {
+      "ver": "1.0.3",
+      "uuid": "c7e4ee1f-68ac-4484-8e97-c0a91df9b731",
+      "rawTextureUuid": "e471dcb7-13d6-4aa6-9d22-7badd653e990",
+      "trimType": "auto",
+      "trimThreshold": 1,
+      "rotated": false,
+      "offsetX": 0,
+      "offsetY": -1,
+      "trimX": 6,
+      "trimY": 7,
+      "width": 108,
+      "height": 108,
+      "rawWidth": 120,
+      "rawHeight": 120,
+      "borderTop": 0,
+      "borderBottom": 0,
+      "borderLeft": 0,
+      "borderRight": 0,
+      "subMetas": {}
+    }
+  }
+}

BIN
assets/resources/textures/setting/bgm_open.png


+ 31 - 0
assets/resources/textures/setting/bgm_open.png.meta

@@ -0,0 +1,31 @@
+{
+  "ver": "2.2.0",
+  "uuid": "25c69462-1950-4413-b505-a2da0d3d8b32",
+  "type": "sprite",
+  "wrapMode": "clamp",
+  "filterMode": "bilinear",
+  "premultiplyAlpha": false,
+  "subMetas": {
+    "bgm_open": {
+      "ver": "1.0.3",
+      "uuid": "909620d6-ad93-4985-a923-581a204e9469",
+      "rawTextureUuid": "25c69462-1950-4413-b505-a2da0d3d8b32",
+      "trimType": "auto",
+      "trimThreshold": 1,
+      "rotated": false,
+      "offsetX": 0,
+      "offsetY": -1,
+      "trimX": 6,
+      "trimY": 7,
+      "width": 108,
+      "height": 108,
+      "rawWidth": 120,
+      "rawHeight": 120,
+      "borderTop": 0,
+      "borderBottom": 0,
+      "borderLeft": 0,
+      "borderRight": 0,
+      "subMetas": {}
+    }
+  }
+}

BIN
assets/resources/textures/setting/setting_bg_top.png


+ 31 - 0
assets/resources/textures/setting/setting_bg_top.png.meta

@@ -0,0 +1,31 @@
+{
+  "ver": "2.2.0",
+  "uuid": "4ffc8d39-fdf0-4710-bdf7-ac1082329adc",
+  "type": "sprite",
+  "wrapMode": "clamp",
+  "filterMode": "bilinear",
+  "premultiplyAlpha": false,
+  "subMetas": {
+    "setting_bg_top": {
+      "ver": "1.0.3",
+      "uuid": "431ee26e-7ff4-42e7-a7d9-a9c357565464",
+      "rawTextureUuid": "4ffc8d39-fdf0-4710-bdf7-ac1082329adc",
+      "trimType": "auto",
+      "trimThreshold": 1,
+      "rotated": false,
+      "offsetX": 0,
+      "offsetY": 0,
+      "trimX": 0,
+      "trimY": 0,
+      "width": 530,
+      "height": 60,
+      "rawWidth": 530,
+      "rawHeight": 60,
+      "borderTop": 0,
+      "borderBottom": 0,
+      "borderLeft": 0,
+      "borderRight": 0,
+      "subMetas": {}
+    }
+  }
+}

BIN
assets/resources/textures/setting/sound_effect_close.png


+ 31 - 0
assets/resources/textures/setting/sound_effect_close.png.meta

@@ -0,0 +1,31 @@
+{
+  "ver": "2.2.0",
+  "uuid": "49978a6f-0a24-44bf-a587-e1a7045ddef8",
+  "type": "sprite",
+  "wrapMode": "clamp",
+  "filterMode": "bilinear",
+  "premultiplyAlpha": false,
+  "subMetas": {
+    "sound_effect_close": {
+      "ver": "1.0.3",
+      "uuid": "54bcc4c3-a7b8-4895-969d-44f50fe767e1",
+      "rawTextureUuid": "49978a6f-0a24-44bf-a587-e1a7045ddef8",
+      "trimType": "auto",
+      "trimThreshold": 1,
+      "rotated": false,
+      "offsetX": 0,
+      "offsetY": -1,
+      "trimX": 6,
+      "trimY": 7,
+      "width": 108,
+      "height": 108,
+      "rawWidth": 120,
+      "rawHeight": 120,
+      "borderTop": 0,
+      "borderBottom": 0,
+      "borderLeft": 0,
+      "borderRight": 0,
+      "subMetas": {}
+    }
+  }
+}

BIN
assets/resources/textures/setting/sound_effect_open.png


+ 31 - 0
assets/resources/textures/setting/sound_effect_open.png.meta

@@ -0,0 +1,31 @@
+{
+  "ver": "2.2.0",
+  "uuid": "3b1b9927-d8b1-42c9-a43b-23f6ca68a6dc",
+  "type": "sprite",
+  "wrapMode": "clamp",
+  "filterMode": "bilinear",
+  "premultiplyAlpha": false,
+  "subMetas": {
+    "sound_effect_open": {
+      "ver": "1.0.3",
+      "uuid": "71cd17e7-e560-49b3-b0e9-e857da39ce0e",
+      "rawTextureUuid": "3b1b9927-d8b1-42c9-a43b-23f6ca68a6dc",
+      "trimType": "auto",
+      "trimThreshold": 1,
+      "rotated": false,
+      "offsetX": 0,
+      "offsetY": -1,
+      "trimX": 6,
+      "trimY": 7,
+      "width": 108,
+      "height": 108,
+      "rawWidth": 120,
+      "rawHeight": 120,
+      "borderTop": 0,
+      "borderBottom": 0,
+      "borderLeft": 0,
+      "borderRight": 0,
+      "subMetas": {}
+    }
+  }
+}

+ 4 - 0
assets/scripts/draw/DrawCycleScroll.js

@@ -1,6 +1,7 @@
 const lotteryContent = require('../data/lotteryNew');
 const DWTool = require("../utils/DWTool");
 const AlertManager = require('../utils/AlertManager');
+const GameModule = require("../utils/GameModule");
 
 cc.Class({
     extends: cc.Component,
@@ -111,6 +112,8 @@ cc.Class({
     
 
     startDraw() {
+        GameModule.audioMng.stopBgm();
+        GameModule.audioMng.playGetDraw();
         this.drawStartButton.interactable = false; 
         let pointFinished1 = cc.callFunc(() => {
             this._pointUp = true;            
@@ -119,6 +122,7 @@ cc.Class({
             this.pointNode.rotation = 0;            
         });
         let finished = cc.callFunc(() => {
+            GameModule.audioMng.playBgm();
             setTimeout(() => {
                 AlertManager.showDrawSuccessAlert(this._drawData, this._typeId);
             }, 700);

+ 2 - 1
assets/scripts/game/Game.js

@@ -509,9 +509,10 @@ cc.Class({
         AlertManager.showInviteAlert();
     }, 1000, true),
 
-    //显示邀请好友任务
+    //显示7天登录
     handleShowLoginReward: _.debounce((event) => {
         AlertManager.showLoginRewardAlert();
+        // AlertManager.showGameSetting();
     }, 1000, true),
 
     showGroupRank() {

+ 7 - 0
assets/scripts/setting.meta

@@ -0,0 +1,7 @@
+{
+  "ver": "1.0.1",
+  "uuid": "b8cccfe3-4c2d-417c-9cbf-83508fb860c4",
+  "isSubpackage": false,
+  "subpackageName": "",
+  "subMetas": {}
+}

+ 74 - 0
assets/scripts/setting/SettingCtrl.js

@@ -0,0 +1,74 @@
+const GameModule = require('../utils/GameModule');
+
+cc.Class({
+    extends: cc.Component,
+
+    properties: {
+        bgmSpriteFrameArray: [cc.SpriteFrame],
+        effectSpriteFrameArray: [cc.SpriteFrame],
+
+        bgmButton: cc.Button,
+        effectButton: cc.Button
+    },
+
+    // LIFE-CYCLE CALLBACKS:
+
+    onLoad () {
+        let self = this;
+        //改变背景音乐开启、关闭
+        this.changeBgmState = _.throttle(() => {
+            GameModule.audioMng.playClickButton();
+            if (GameModule.audioMng.bgmOpen) {
+                GameModule.audioMng.bgmOpen = false;
+                self.bgmButton.getComponent(cc.Sprite).spriteFrame = this.bgmSpriteFrameArray[1];
+            } else {
+                GameModule.audioMng.bgmOpen = true;
+                self.bgmButton.getComponent(cc.Sprite).spriteFrame = this.bgmSpriteFrameArray[0];
+            }
+        }, 500, true);
+
+        //改变音效开启、关闭
+        this.changeEffectState = _.throttle(() => {
+            if (GameModule.audioMng.soundEffectOpen) {
+                GameModule.audioMng.playClickButton();
+                GameModule.audioMng.soundEffectOpen = false;
+                self.effectButton.getComponent(cc.Sprite).spriteFrame = this.effectSpriteFrameArray[1];
+            } else {
+                GameModule.audioMng.soundEffectOpen = true;
+                self.effectButton.getComponent(cc.Sprite).spriteFrame = this.effectSpriteFrameArray[0];
+            }
+        }, 500, true);
+
+        if (GameModule.audioMng.bgmOpen) {
+            this.bgmButton.getComponent(cc.Sprite).spriteFrame = this.bgmSpriteFrameArray[0];
+        } else {
+            this.bgmButton.getComponent(cc.Sprite).spriteFrame = this.bgmSpriteFrameArray[1];
+        }
+
+        if (GameModule.audioMng.soundEffectOpen) {
+            this.effectButton.getComponent(cc.Sprite).spriteFrame = this.effectSpriteFrameArray[0];
+        } else {
+            this.effectButton.getComponent(cc.Sprite).spriteFrame = this.effectSpriteFrameArray[1];
+        }
+    },
+
+    start () {
+
+    },
+
+    closeNode() {
+        GameModule.audioMng.playClickButton();
+        this.node.destroy();
+    },
+
+    handleChangeBgmState() {
+        this.changeBgmState();
+    },
+
+    //改变音效开启、关闭
+    handleChangeEffectState() {
+        this.changeEffectState();
+    },
+
+    // update (dt) {},
+});

+ 9 - 0
assets/scripts/setting/SettingCtrl.js.meta

@@ -0,0 +1,9 @@
+{
+  "ver": "1.0.5",
+  "uuid": "0b936cf9-afa8-4edc-ac28-79d8707d1570",
+  "isPlugin": false,
+  "loadPluginInWeb": true,
+  "loadPluginInNative": true,
+  "loadPluginInEditor": false,
+  "subMetas": {}
+}

+ 1 - 0
assets/scripts/signIn/SignIn.js

@@ -63,6 +63,7 @@ cc.Class({
             this.configData(respondData);
         }).catch((code) => {
             console.log(code);
+            this.node.destroy();
         });
     },
 

+ 56 - 88
assets/scripts/skill/SkillItem.js

@@ -56,6 +56,9 @@ cc.Class({
         alertNode: cc.Node,
         ///砖石数
         diamondCount: 0,
+
+        freeSkillNode: cc.Node,
+        freeSkillTitleRichText: cc.RichText,
         /// 金币数
         coinCount: 0,
         building: 0,
@@ -64,7 +67,7 @@ cc.Class({
         /// 0说明是用金币 1 说明是用分享  2 看广告
         _adState: 0,
         //// 当前使用的广告状态
-        _useAdState: 0,
+        // _useAdState: 0,
 
         _isInitAd: false
     },
@@ -89,34 +92,31 @@ cc.Class({
         /// 如果说是建筑 并且没有处于响应
         if (this.fillBuldingNode.active && this._isAction === false)  {
             let isCanUse = this.judgeIsCanUse();
-            let isAd = DWTool.checkIsOldUser() && Global._upBuildingInfo.maxCount > Global._upBuildingInfo.count && Global._upBuildingInfo.cdTime <= 0;
-            /// 如果有广告或者分享
-            if (!this._isInitAd && isAd) {
-                this._isInitAd = true;
-                this.initBuildingAd();
-            }
-            if (isAd && !isCanUse) {
-                if (this._useAdState != this.adState) {
-                    this._useAdState = this._adState;
-                    this.updateBuildingUsingUI();
-                    this.setupGrayBg(true);
-                }
-            } else {
-                if (this._useAdState != 0) {
-                    this._useAdState = 0;
-                    this.updateBuildingUsingUI();
+            if (CC_WECHATGAME) {
+                let isAd = DWTool.checkIsOldUser() && Global._upBuildingInfo.maxCount > Global._upBuildingInfo.count && Global._upBuildingInfo.cdTime <= 0;
+                /// 如果有广告或者分享
+                if (!this._isInitAd && isAd) {
+                    this._isInitAd = true;
+                    this.initBuildingAd();
                 }
-                let inter = this.userSkillButton.interactable;
-                if (isCanUse != inter) {
-                    this.setupGrayBg(!inter);
+                if (isAd && !isCanUse) {
+                    this.freeSkillNode.active = true;
+                    this.userSkillButton.node.active = false;
+                } else {
+                    this.freeSkillNode.active = false;
+                    this.userSkillButton.node.active = true;
                 }
             }
+            
+            let inter = this.userSkillButton.interactable;
+            if (isCanUse != inter) {
+                this.setupGrayBg(!inter);
+            }
         }
     },
 
     /// 初始化第一个建筑相关的数据
     initBuilding(awardCount) {
-        
         this.initAward(awardCount)
         this.userSkillButton.interactable = false;
         this.updateBuildingData();
@@ -145,7 +145,6 @@ cc.Class({
             } 
             if (adState === 0 || adState === 1) {
                 this.initBuildingAd();
-
             }
         });
         GameModule.homeGuide.on('Fire_state16', this.awardBtnAction, this);
@@ -160,8 +159,10 @@ cc.Class({
         //// 说明有广告
         if (Global._adVideoState == 0) {
             this._adState = 2;
+            this.freeSkillTitleRichText.string = '<color=#ffffff> 看视频\n免费升级' + '</c>';
         } else if (Global._adVideoState === 1) {
             this._adState = 1;
+            this.freeSkillTitleRichText.string = '<color=#ffffff> 分享\n免费升级' + '</c>';
         }
     },
 
@@ -170,19 +171,7 @@ cc.Class({
             Global._upBuildingInfo.count += 1;
             /// 时间重置为5分钟
             Global._upBuildingInfo.cdTime = 5 * 60 * 1000;
-            /// 恢复到正常的状态
-                /// 如果已经达到当天最大的次数
-            // if (Global._upBuildingInfo.maxCount <= Global._upBuildingInfo.count) {
-            //     if (this._video != undefined) {
-            //         /// 销毁这个对象
-            //         this._video = null;
-            //     }
-            //     return;
-            // }
-            /// 请求升级建筑
-            this._adState = 0;
-            this._useAdState = 0;
-            this.requestUpBuildingLevel();
+            this.requestUpBuildingLevel(true);
         }, (code, msg) => {
             console.log(msg);
         })
@@ -191,6 +180,7 @@ cc.Class({
     //// 初始化技能数据
     init(skillData) {
         this.fillBuldingNode.active = false;
+        this.freeSkillNode.active = false;
         this.awardButton.node.active = false;
         this.loadSpriteFrame(skillData);
         this.skillData = skillData;
@@ -229,7 +219,8 @@ cc.Class({
             let mul = TapTapTool.toPower(currentLevel - 26);
             this._upGold = TapTapTool.multiple({'n': 1056, 'e': 0}, mul);
         }
-        this.updateBuildingUsingUI();
+        this.skillUseTitleRichText.string = '<color=#ffffff>+' + TapTapTool.parseToString(this._upGet) + '收益</c>' + `<br/><img src='coin_small'/><color=#ffffff>${TapTapTool.parseToString(this._upGold)}</c>`;
+
         // this.skillUseTitleRichText.string = '<color=#ffffff>+' + TapTapTool.parseToString(upGet) + '收益</c>' + `<br/><img src='coin_small'/><color=#ffffff>${TapTapTool.parseToString(this._upGold)}</c>`;
         this.fillBuldingNode.active = true;
         this.fillBuldingSprite.fillRange = (currentLevel % 25) / 25;
@@ -240,20 +231,6 @@ cc.Class({
         this.titleRichText.string = '<color=#df5400>等级' + currentLevel + '</c>' + '<color=#1c1c1c>' + ' 总部大楼' + '</c>';
         this.subTitleRichText.string = `<img src='skill_click_coin'/><color=#df5400> ${TapTapTool.parseToString(GameModule.userInfo.coinTap)}收益</c><color=#1c1c1c>/点击</c>`;
     },
-
-    /// 根据视频 分享 升级更新使用的UI
-    updateBuildingUsingUI() {
-        /// 如果是直接使用金币
-        if (this._useAdState === 0) {
-            this.skillUseTitleRichText.string = '<color=#ffffff>+' + TapTapTool.parseToString(this._upGet) + '收益</c>' + `<br/><img src='coin_small'/><color=#ffffff>${TapTapTool.parseToString(this._upGold)}</c>`;
-            /// 如果是分享
-        } else if (this._useAdState === 1) {
-            this.skillUseTitleRichText.string = '<color=#ffffff> 分享\n免费升级' + '</c>';
-        } else {
-            this.skillUseTitleRichText.string = '<color=#ffffff> 看视频\n免费升级' + '</c>';
-        }
-    },
-
     /// 更新技能相关数据
     updateData() {
         let levelInfo = Global.BuildingManager.getSkillLevelInfo(this.skillData.skillId, this.skillData.skillLevel); 
@@ -393,7 +370,6 @@ cc.Class({
     useSkillButtonAction() {
         GameModule.audioMng.playClickButton();
         this.userSkillButton.interactable = false;
-        this._isAction = true;
         /// 如果是升级建筑
         if (this.fillBuldingNode.active) {
             this.upBuildingLevelAction();
@@ -402,58 +378,50 @@ cc.Class({
         }
     },
 
-    upBuildingLevelAction() {
-        
-        if (CC_WECHATGAME) {
-            if (this._useAdState == 0) {
-                this.requestUpBuildingLevel();
-                /// 说明是分享        
-            } else if (this._useAdState == 1) {
-                GameEvent.on(GameNotificationKey.ShowShareAction, this, (type, isOk) => {
-                    if (type == WechatShareType.UpBuilding) {
-                        if (isOk) {
-                            this.finishAction();
-                        } else {
-                            this.userSkillButton.interactable = true;
-                            this._isAction = false;
-                        }
-                        GameEvent.off(GameNotificationKey.ShowShareAction, this);
+    /// 免费升级技能的按钮
+    freeUpSKillAction() {
+        GameModule.audioMng.playClickButton();
+        if (this._adState == 1) {
+            GameEvent.on(GameNotificationKey.ShowShareAction, this, (type, isOk) => {
+                if (type == WechatShareType.UpBuilding) {
+                    if (isOk) {
+                        this.finishAction();
                     }
-                });
-                WeChat.shareAction(WechatShareType.UpBuilding, () => {
-
-                }, () => {
-                    this.userSkillButton.interactable = true;
-                    this._isAction = false;
-                    console.log('分享失败或取消');
-                });
-                /// 如果是看视频
-            } else {
-                this.userSkillButton.interactable = true;
-                this._isAction = false;
-                Global._adVideo.showVideo('skill');
-            }
+                    GameEvent.off(GameNotificationKey.ShowShareAction, this);
+                }
+            });
+            WeChat.shareAction(WechatShareType.UpBuilding, () => {
+
+            }, () => {
+                console.log('分享失败或取消');
+            });
+            /// 如果是看视频
         } else {
-            this.requestUpBuildingLevel();
+            Global._adVideo.showVideo('skill');
         }
+    },
 
+    upBuildingLevelAction() {
+        this._isAction = true;
+        this.requestUpBuildingLevel(false);  
     },
 
-    requestUpBuildingLevel() {
+    requestUpBuildingLevel(isFree) {
         this.upBuildingLevel(1).then((respondData) => {
             this.userSkillButton.interactable = true;
             this._isAction = false;
             // Global.userData.buildingLevel = respondData.level;
             GameModule.userInfo.buildingLevel = respondData.level;
-            GameModule.userInfo.gold = TapTapTool.sub(GameModule.userInfo.gold, this._upGold);
+            if (!isFree) {
+                if (GameModule.userInfo.buildingLevel > 5) {
+                    this.showSkillBuidingAlert(respondData.gold10, respondData.gold100);
+                }
+                GameModule.userInfo.gold = TapTapTool.sub(GameModule.userInfo.gold, this._upGold);
+            }
             this.initAward(this._awardCount);
             GameEvent.fire(GameNotificationKey.UpBuildingLevel);
             Global._gold10 = respondData.gold10;
             this.updateBuildingData();
-            
-            if (GameModule.userInfo.buildingLevel > 5 && this._useAdState === 0) {
-                this.showSkillBuidingAlert(respondData.gold10, respondData.gold100);
-            }
           }).catch(({code, msg}) => {
               Global.commonAlert.showCommonErrorAlert(msg);
               console.log(code, msg);

+ 7 - 2
assets/scripts/skill/SkillTopItem.js

@@ -421,8 +421,12 @@ cc.Class({
         if (CC_WECHATGAME) {
             this.button.interactable = false;
             if (this._adState === 0) {
-                /// 弹出弹窗让它花砖石购买
-                this.resetSkillAlertNode.active = true;
+                if (Global.rsDiamond <= GameModule.userInfo.diamond) {
+                     /// 弹出弹窗让它花砖石购买
+                    this.resetSkillAlertNode.active = true;
+                } else {
+                    Global.commonAlert.showCommonErrorAlert('钻石不够,无法重置技能!');
+                }
            } else {
             Global._adVideo.showVideo('resetSkill');
             this.button.interactable = true;
@@ -457,6 +461,7 @@ cc.Class({
             GameEvent.fire(GameNotificationKey.ResetSkill);
         }).catch(({code, msg}) => {
             console.log(code, msg);
+            Global.commonAlert.showCommonErrorAlert(msg);
             this.button.interactable = true;
         });
     },

+ 4 - 2
assets/scripts/star/StarContent.js

@@ -168,7 +168,7 @@ cc.Class({
         this.alertMask.node.active = false;
         this._isShowGetStar = false;
         GameModule.audioMng.playBgm();
-        this.alertMask.getStarAudio.pause();
+        // this.alertMask.getStarAudio.pause();
         let imageId = 50000 + this._starId;
         // let path = `./textures/star_handbook/${imageId}`;
         let desc = `<color=#fe4e00>签约奖励</c><br/><br/><img src='skill_click_coin'/><color=#540904>每次点击产出金币提升200%</c><br/><img src='userInfo_rate_coin'/><color=#540904>所有房间产出金币提升200%</c>`;
@@ -241,7 +241,9 @@ cc.Class({
         }).catch((err) => {
             console.log(err);
         });
-        this.alertMask.getStarAudio.play();
+        GameModule.audioMng.playGetStar();
+
+        // this.alertMask.getStarAudio.play();
     },
 
     update (dt) {

+ 0 - 3
assets/scripts/star/StarHandbookItem.js

@@ -14,9 +14,6 @@ cc.Class({
 
         isUnlocked: {
             get: function() {
-                if (!this._isUnlocked) {
-                    this._isUnlocked = false;
-                }
                 return this._isUnlocked;
             },
             set: function(value) {

+ 64 - 86
assets/scripts/star/StarItem.js

@@ -28,11 +28,14 @@ cc.Class({
         graySpriteFrame: cc.SpriteFrame,
         lockedSpriteFrame: cc.SpriteFrame,
 
+        freeBuyStarNode: cc.Node,
+        freeBuyStarRichText: cc.RichText,
+
         /// 0说明是用金币 1 说明是用分享  2 看广告
         _adState: 0,
         //// 当前使用的广告状态
-        _useAdState: 0,
-        
+        // _useAdState: 0,
+
     },
 
     // LIFE-CYCLE CALLBACKS:
@@ -87,30 +90,27 @@ cc.Class({
                 // }  
             // }
             let isCanUse = TapTapTool.compare(GameModule.userInfo.gold, this._buyGold);
-            let isAd = DWTool.checkIsOldUser() && Global._buyStarInfo.maxCount > Global._buyStarInfo.count && Global._buyStarInfo.cdTime <= 0;
+            if (CC_WECHATGAME) {
+                let isAd = DWTool.checkIsOldUser() && Global._buyStarInfo.maxCount > Global._buyStarInfo.count && Global._buyStarInfo.cdTime <= 0;
             
-            if (isAd && !this._isInitAd) {
-                this._isInitAd = true;
-                this.initStarAd();
-            }
-
-            if (isAd && !isCanUse) {
-                if (this._adState != this._useAdState) {
-                    this._useAdState = this._adState;
-                    this.updateBuyStarUI();
-                    this.setUpUseBtnBg(true);
+                if (isAd && !this._isInitAd) {
+                    this._isInitAd = true;
+                    this.initStarAd();
                 }
-            } else {
-                if (this._useAdState != 0) {
-                    this._useAdState = 0;
-                    this.updateBuyStarUI();
-                }
-                
-                let inter = this.starUseBtn.interactable;
-                if (isCanUse != inter) {
-                    this.setUpUseBtnBg(!inter);
+
+                if (isAd && !isCanUse) {
+                    this.freeBuyStarNode.active = true;
+                    this.starUseBtn.node.active = false;
+                } else {
+                    this.freeBuyStarNode.active = false;
+                    this.starUseBtn.node.active = true;
                 }
             }
+            
+            let inter = this.starUseBtn.interactable;
+            if (isCanUse != inter) {
+                this.setUpUseBtnBg(!inter);
+            }
         }
     },
 
@@ -121,10 +121,11 @@ cc.Class({
         //// 说明有广告
         if (Global._adVideoState == 0) {
             this._adState = 2;
+            this.freeBuyStarRichText.string = '<color=#ffffff> 看视频\n免费签约' + '</c>';
         } else if (Global._adVideoState === 1) {
             this._adState = 1;
+            this.freeBuyStarRichText.string = '<color=#ffffff> 分享\n免费签约' + '</c>';
         }
-
     },
 
     finishAction() {
@@ -133,10 +134,8 @@ cc.Class({
             /// 时间重置为5分钟
             Global._buyStarInfo.cdTime = 5 * 60 * 1000;
             /// 恢复到正常的状态
-            this._adState = 0;
-            this._useAdState = 0;
             this._isAcion = false;
-            this.buyStarRequest();
+            this.buyStarRequest(true);
         }, (code, msg) => {
             console.log(msg);
         })
@@ -245,34 +244,20 @@ cc.Class({
         if (this._isStarLocked == false && this._isRoomLocked == false) {
             /// 如果金币满足
             this.starUseTitleRichText.node.active = true;
-            if (this._useAdState === 0) {
-                this.setUpUseBtnBg(TapTapTool.compare(GameModule.userInfo.gold, this._buyGold));
-            } else {
-                this.setUpUseBtnBg(true);
-            }
-            this.updateBuyStarUI();
-            // this.starUseTitleRichText.string = `<color=#ffffff>签约</c><br/><img src='coin_small'/><color=#ffffff>${TapTapTool.parseToString(this._buyGold)}</c>`;
+            // if (this._adState === 0) {
+            // } else {
+            //     this.setUpUseBtnBg(true);
+            // }
+            this.setUpUseBtnBg(TapTapTool.compare(GameModule.userInfo.gold, this._buyGold));
+            this.starUseTitleRichText.string = `<color=#ffffff>签约</c><br/><img src='coin_small'/><color=#ffffff>${TapTapTool.parseToString(this._buyGold)}</c>`;
             this.starIconBlackBg.active = false;
         } else {
+            this.freeBuyStarNode.active = false;
             this.starUseTitleRichText.node.active = false;
             this.starUseBtn.interactable = false;
             this.starUserSprite.spriteFrame = this.lockedSpriteFrame;
             this.starIconBlackBg.active = true;
         }
-
-    },
-
-    /// 根据视频 分享 升级更新使用的UI
-    updateBuyStarUI() {
-        /// 如果是直接使用金币
-        if (this._useAdState === 0) {
-            this.starUseTitleRichText.string = `<color=#ffffff>签约</c><br/><img src='coin_small'/><color=#ffffff>${TapTapTool.parseToString(this._buyGold)}</c>`;
-            /// 如果是分享
-        } else if (this._useAdState === 1) {
-            this.starUseTitleRichText.string = '<color=#ffffff> 分享\n免费签约' + '</c>';
-        } else {
-            this.starUseTitleRichText.string = '<color=#ffffff> 看视频\n免费签约' + '</c>';
-        }
     },
     /// 设置签约的button是否能点击
     setUpUseBtnBg(isActive) {
@@ -280,57 +265,50 @@ cc.Class({
         this.starUserSprite.spriteFrame = isActive ? this.lightSpriteFrame : this.graySpriteFrame;
     },
 
+    freeBuyBtnAction() {
+        GameModule.audioMng.playClickButton();
+        if (this._adState == 1) {
+            GameEvent.on(GameNotificationKey.ShowShareAction, this, (type, isOk) => {
+                if (type == WechatShareType.BuyStar) {
+                    if (isOk) {
+                        this.finishAction();
+                    }
+                    GameEvent.off(GameNotificationKey.ShowShareAction, this);
+                }
+            });
+            WeChat.shareAction(WechatShareType.BuyStar, () => {
+
+            }, () => {
+
+                console.log('分享失败或取消');
+            });
+            /// 如果是看视频
+        } else {
+            Global._adVideo.showVideo('buyStar' + this._starData.starId);
+        }
+    },
+
     // 签约明星
     signUseBtnAction() {
         
         GameModule.audioMng.playClickButton();
         this.starUseBtn.interactable = false;
         this._isAction = true;
-
-        if (CC_WECHATGAME) {
-            if (this._useAdState == 0) {
-                        /// 只能同时买一个
-                if (this._listViewAdapter.isBuying) {
-                    return;
-                }
-                this._listViewAdapter.isBuying = true;
-                this.buyStarRequest();
-                /// 说明是分享        
-            } else if (this._useAdState == 1) {
-                GameEvent.on(GameNotificationKey.ShowShareAction, this, (type, isOk) => {
-                    if (type == WechatShareType.BuyStar) {
-                        if (isOk) {
-                            this.finishAction();
-                        } else {
-                            this.starUseBtn.interactable = true;
-                            this._isAction = false;
-                        }
-                        GameEvent.off(GameNotificationKey.ShowShareAction, this);
-                    }
-                });
-                WeChat.shareAction(WechatShareType.BuyStar, () => {
-
-                }, () => {
-                    this.starUseBtn.interactable = true;
-                    this._isAction = false;
-                    console.log('分享失败或取消');
-                });
-                /// 如果是看视频
-            } else {
-                this.starUseBtn.interactable = true;
-                this._isAction = false;
-                Global._adVideo.showVideo('buyStar' + this._starData.starId);
-            }
-        } else {
-            this.buyStarRequest();
+        /// 只能同时买一个
+        if (this._listViewAdapter.isBuying) {
+            return;
         }
+        this._listViewAdapter.isBuying = true;
+        this.buyStarRequest(false);
     },
 
-    buyStarRequest() {
+    buyStarRequest(isFree) {
         this.buyStar().then((respondData) => {
             this.starUseBtn.interactable = true;
             this._isAction = false;
-            GameModule.userInfo.gold = TapTapTool.sub(GameModule.userInfo.gold, this._buyGold);
+            if (!isFree) {
+                GameModule.userInfo.gold = TapTapTool.sub(GameModule.userInfo.gold, this._buyGold);
+            }
             /// 本地购买的明星数量加1
             GameModule.userInfo.buyStarCount += 1;
             // this._starData.starRoomCount += 1;

+ 1 - 1
assets/scripts/star/StarMask.js

@@ -6,7 +6,7 @@ cc.Class({
     properties: {
         getStarSkeleton: sp.Skeleton,
         starSkeleton: sp.Skeleton,
-        getStarAudio: cc.AudioSource,
+        // getStarAudio: cc.AudioSource,
     },
     // LIFE-CYCLE CALLBACKS:
 

+ 5 - 6
assets/scripts/utils/ADVideo.js

@@ -28,7 +28,7 @@ class ADVideo {
                 // } else {
                 //     Global.commonAlert.showCommonErrorAlert('获取视频失败');
                 // }
-             this.handelVideoErr(err);
+             this.handelVideoErr(err, false);
         });
 
         // videoAd.onLoad(() => {
@@ -40,7 +40,7 @@ class ADVideo {
 
         //处理获取视频错误
         videoAd.onError( (res) => {
-            this.handelVideoErr(res);
+            this.handelVideoErr(res, true);
         });
 
         
@@ -81,17 +81,16 @@ class ADVideo {
                     Global.commonAlert.showCommonErrorAlert('视频正在播放请不要重复点击~~');
                     return;
                 } else {
-                    this.handelVideoErr(err);
+                    this.handelVideoErr(err, true);
                 }
         });
     }
 
-    handelVideoErr(res) {
-        if (this.isNeedShowErr) {
+    handelVideoErr(res, isShow) {
+        if (isShow) {
             Global.commonAlert.showCommonErrorAlert('获取视频失败');
         } 
         Global._adVideoState = ADVideoLoadState.fail;
-        this.isNeedShowErr = true;
         console.log('获取视频失败 fa' + res.errMsg);
         GameEvent.fire(GameNotificationKey.AdUpdateStateNotification, ADVideoLoadState.fail);
     }

+ 10 - 0
assets/scripts/utils/AlertManager.js

@@ -316,6 +316,16 @@ class AlertManager {
         });
     }
 
+    // 显示音效设置
+    static showGameSetting() {
+        DWTool.loadResPrefab("./prefabs/setting/game_setting")
+            .then((result) => {
+            let alert = cc.instantiate(result);
+            let canvas = cc.find("Canvas");
+            canvas.addChild(alert);
+        });
+    }
+
 }
 
 module.exports = AlertManager;

+ 57 - 0
assets/scripts/utils/AudioMng.js

@@ -43,13 +43,54 @@ cc.Class({
             tooltip: '总音量',
             default: 1,
             type: cc.Integer
+        },
+
+        bgmOpen: {
+            get: function() {
+                return this._bgmOpen;
+            },
+            set: function(value) {
+                this._bgmOpen = value;
+                if (this._bgmOpen) {
+                    this.playBgm();
+                } else {
+                    this.stopBgm();
+                }
+                cc.sys.localStorage.setItem("game_bgm_state", value);
+            }
+        },
+
+        soundEffectOpen: {
+            get: function() {
+                return this._soundEffectOpen;
+            },
+            set: function(value) {
+                this._soundEffectOpen = value;
+                cc.sys.localStorage.setItem("game_sound_effect_state", value);
+            }
         }
     },
 
     onLoad () {
         GameModule.audioMng = this;
+
         this.currentAudio = {};
         this.stopAll();
+
+        let bgmState = cc.sys.localStorage.getItem("game_bgm_state");
+        if (bgmState!= undefined) {
+            this.bgmOpen = (bgmState === 'true');
+        } else {
+            this.bgmOpen = true;
+        }
+
+        let soundEffectState = cc.sys.localStorage.getItem("game_sound_effect_state");
+        if (soundEffectState!= undefined) {
+            this.soundEffectOpen = (soundEffectState === 'true');
+        } else {
+            this.soundEffectOpen = true;
+        }
+
         this.playBgm();
     },
 
@@ -65,6 +106,7 @@ cc.Class({
      */
     playBgm () {
         cc.audioEngine.stop(this.currentAudio['bgm']);
+        if (!this.bgmOpen) { return }
         this.currentAudio['bgm'] = cc.audioEngine.play(this.bgm, true, this.volume);
     },
 
@@ -86,6 +128,7 @@ cc.Class({
      * 播放按钮音效
      */
     playClickButton () {
+        if (!this.soundEffectOpen) { return }
         cc.audioEngine.play(this.buttonClickAudio, false, this.volume);
     },
 
@@ -93,6 +136,7 @@ cc.Class({
      * 播放获得奖励音效
      */
     playGetAward () {
+        if (!this.soundEffectOpen) { return }
         cc.audioEngine.play(this.getAwardAudio, false, this.volume);
     },
 
@@ -100,6 +144,7 @@ cc.Class({
      * 播放升级建筑音效
      */
     playUpdateBuilding () {
+        if (!this.soundEffectOpen) { return }
         cc.audioEngine.play(this.updateBuildingAudio, false, this.volume);
     },
 
@@ -107,6 +152,7 @@ cc.Class({
      * 点击招财猫
      */
     playClickCat () {
+        if (!this.soundEffectOpen) { return }
         cc.audioEngine.play(this.clickCatAudio, false, this.volume);
     },
 
@@ -114,6 +160,7 @@ cc.Class({
      * 抽奖音效
      */
     playGetDraw () {
+        if (!this.soundEffectOpen) { return }
         cc.audioEngine.play(this.getDrawAudio, false, this.volume);
     },
 
@@ -121,7 +168,17 @@ cc.Class({
      * 获取到明星音效
      */
     playGetStar () {
+        if (!this.soundEffectOpen) { return }
         cc.audioEngine.play(this.getStarAudio, false, this.volume);
     },
+
+    /**
+     * 停止播放获取明星音效
+     */
+    // pauseGetStar () {
+    //     this.currentAudio['bgm'] = cc.audioEngine.play(this.bgm, true, this.volume);
+
+    //     cc.audioEngine.pause(this.currentAudio['bgm']);
+    // },
     // update (dt) {},
 });

+ 2 - 2
assets/scripts/utils/Global.js

@@ -12,9 +12,9 @@ window.Global = {
     // 建筑管理
     BuildingManager: BuildingManager.instance,
 
-    debug: false,
+    debug: true,
 
-    ver: 118, //游戏版本号发版时需要核对
+    ver: 119, //游戏版本号发版时需要核对
     
     isCheck: false,
 

+ 2 - 2
settings/builder.json

@@ -37,11 +37,11 @@
   "title": "taptapstar",
   "webOrientation": "auto",
   "wechatgame": {
-    "REMOTE_SERVER_ROOT": "https://pub.dwstatic.com/wxgame/taptapstar",
+    "REMOTE_SERVER_ROOT": "https://pub.dwstatic.com/wxgame/taptapstar_test",
     "appid": "wx36581990a2e76fba",
     "isSubdomain": false,
     "orientation": "portrait",
-    "subContext": "wechatgame-subcontext"
+    "subContext": ""
   },
   "xxteaKey": "7480184a-3b45-4d",
   "zipCompressJs": true