Переглянути джерело

修复过关碰撞器未移除问题

zhaochengyang 5 роки тому
батько
коміт
517fc594ef
89 змінених файлів з 1258 додано та 222 видалено
  1. 1 1
      .laya/wxgame.json
  2. 5 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/0b4f7aaf55da9e83cfde73bdb41468ebf71a2cd9
  3. 13 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/0d2e6943a610caa93a06306ab0cf666a08a22e36
  4. 9 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/17c2db5ff8f72e2e49dd837ca7057534bb22aa7a
  5. 8 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/19fe88b8cd287ea60a912c8a5bf356d40b1b1079
  6. 10 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/1a8d97795b028f7889e6ae8076cfac19928657b9
  7. 5 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/2072c14a6957396af4409b2ae9d9ca99c1462cc8
  8. 12 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/308394edb4685cf32bc671dd7ab539c4b0cc5f0c
  9. 16 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/3b929817efc4536c6a3be18915db04f58a507832
  10. 13 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/4e78f6d7cc51cf4918d02eaaa09eccc50aec9ab7
  11. 9 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/5e16f2bce32d8668024d60faa49c2b7c3d9b69a4
  12. 15 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/685737ccade2406221c7cd6f4b517dc16998cf07
  13. 5 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/6e0b2c3d20b4779a9b9746bcaa41c429891af276
  14. 8 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/751a2d027f8230a3b5c6a470ae1eeba5f7add4f6
  15. 4 3
      .rpt2_cache/rpt2_cc0bfc3d47afe8d9b952db4df96ac75052b1fdc1/code/cache/b9c807cd63c22ec739036f3fcda7670d13af754a
  16. 5 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/812d93e3fb0cfa9e5b19f82e84d40f2df7e544de
  17. 0 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/8705114fa6cd8a1898799f2dceab9dd149103015
  18. 17 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/9d3f53633143b34f7e8825e075c97c38212493da
  19. 13 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/c0bd67938feb59a37bb577c7469fccd89a997853
  20. 8 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/c83855964b676abc8b3ca7916f6cfcfa16a0849d
  21. 7 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/d0cf91d73279450e00b9b8ea592561235a917851
  22. 5 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/d2abf98092b33afbf5caac4257c53c4bdb9ed344
  23. 5 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/d5766b3a4f06326e25de5b0008c224af95add27a
  24. 9 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/da2eed01f5316d7490e6187070e84e163846a1db
  25. 15 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/daaeaf5397a2b34901154d72e1096fe59c4ad53b
  26. 5 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/e3835f9a943be93f0b8bf3c972a0f78ee2226d4b
  27. 10 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/eba7d533de5aa0f40904815b712f5e2f5f31dc61
  28. 7 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/ed09a2d121a8b84ae77e471a2f4c8db8e061e85f
  29. 9 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/ee241d45a47ee1cbb61a71e8121303ce5f1ba631
  30. 5 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/ee70e902c798528a9b736d47ffa59d582a66bf03
  31. 12 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/f15b43947bdca47241a8677ced0c547c58dad102
  32. 13 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/f9bdad310029f4312a5be633a501c129effdf4c2
  33. 10 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/fc9093ae580ed7cfa246a00502b2c5e4be5d62e8
  34. 0 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/types/cache/018a0c234f1bfcee189d2e82869bcda565c51159
  35. 0 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/types/cache/3297786e4b2770c3d97efd1fce210e4b5f833260
  36. 0 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/types/cache/80963421924e4289bb51bcba5ff87ae9aac49ab3
  37. 0 0
      .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/types/cache/a95fb10d3d5533e61f1152e78278939bc13ad362
  38. 15 0
      .rpt2_cache/rpt2_cc0bfc3d47afe8d9b952db4df96ac75052b1fdc1/code/cache/1f9e9bf5a501b95b5672ccc93b47786910fe81e9
  39. 5 0
      .rpt2_cache/rpt2_cc0bfc3d47afe8d9b952db4df96ac75052b1fdc1/code/cache/6ad89fea0afe8219d999ebfa9d3aea3f3e4337e3
  40. 5 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/0b4f7aaf55da9e83cfde73bdb41468ebf71a2cd9
  41. 13 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/0d2e6943a610caa93a06306ab0cf666a08a22e36
  42. 9 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/17c2db5ff8f72e2e49dd837ca7057534bb22aa7a
  43. 8 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/19fe88b8cd287ea60a912c8a5bf356d40b1b1079
  44. 10 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/1a8d97795b028f7889e6ae8076cfac19928657b9
  45. 5 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/2072c14a6957396af4409b2ae9d9ca99c1462cc8
  46. 12 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/308394edb4685cf32bc671dd7ab539c4b0cc5f0c
  47. 16 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/3b929817efc4536c6a3be18915db04f58a507832
  48. 13 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/4e78f6d7cc51cf4918d02eaaa09eccc50aec9ab7
  49. 9 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/5e16f2bce32d8668024d60faa49c2b7c3d9b69a4
  50. 15 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/685737ccade2406221c7cd6f4b517dc16998cf07
  51. 5 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/6e0b2c3d20b4779a9b9746bcaa41c429891af276
  52. 8 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/751a2d027f8230a3b5c6a470ae1eeba5f7add4f6
  53. 16 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/76b3c0ec200fd9ec937b0126416c551fec66eaf6
  54. 5 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/812d93e3fb0cfa9e5b19f82e84d40f2df7e544de
  55. 5 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/8705114fa6cd8a1898799f2dceab9dd149103015
  56. 17 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/9d3f53633143b34f7e8825e075c97c38212493da
  57. 13 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/c0bd67938feb59a37bb577c7469fccd89a997853
  58. 8 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/c83855964b676abc8b3ca7916f6cfcfa16a0849d
  59. 7 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/d0cf91d73279450e00b9b8ea592561235a917851
  60. 5 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/d2abf98092b33afbf5caac4257c53c4bdb9ed344
  61. 5 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/d5766b3a4f06326e25de5b0008c224af95add27a
  62. 9 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/da2eed01f5316d7490e6187070e84e163846a1db
  63. 15 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/daaeaf5397a2b34901154d72e1096fe59c4ad53b
  64. 5 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/e3835f9a943be93f0b8bf3c972a0f78ee2226d4b
  65. 10 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/eba7d533de5aa0f40904815b712f5e2f5f31dc61
  66. 7 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/ed09a2d121a8b84ae77e471a2f4c8db8e061e85f
  67. 9 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/ee241d45a47ee1cbb61a71e8121303ce5f1ba631
  68. 5 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/ee70e902c798528a9b736d47ffa59d582a66bf03
  69. 12 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/f15b43947bdca47241a8677ced0c547c58dad102
  70. 13 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/f9bdad310029f4312a5be633a501c129effdf4c2
  71. 10 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/fc9093ae580ed7cfa246a00502b2c5e4be5d62e8
  72. 0 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/types/cache/018a0c234f1bfcee189d2e82869bcda565c51159
  73. 0 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/types/cache/3297786e4b2770c3d97efd1fce210e4b5f833260
  74. 0 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/types/cache/80963421924e4289bb51bcba5ff87ae9aac49ab3
  75. 0 0
      .rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/types/cache/a95fb10d3d5533e61f1152e78278939bc13ad362
  76. 210 82
      bin/js/bundle.js
  77. 1 1
      bin/js/bundle.js.map
  78. 3 3
      laya/.laya
  79. 1 1
      release/wxgame/js/bundle.js
  80. 1 1
      release/wxgame/js/bundle.js.map
  81. 1 34
      release/wxgame/project.config.json
  82. 1 1
      src/Main.ts
  83. 42 0
      src/Main/AssetManager.ts
  84. 27 11
      src/Main/Ball.ts
  85. 123 66
      src/Tool/DropRule.ts
  86. 121 4
      src/Tool/GamePool.ts
  87. 62 0
      src/Tool/ResDic.ts
  88. 52 14
      src/View/InGameView.ts
  89. 1 0
      src/View/LoadView.ts

+ 1 - 1
.laya/wxgame.json

@@ -64,5 +64,5 @@
     "forceCompile": false,
     "onlyIndexJS": true,
     "projectType": "ts",
-    "pubTime": 1578993452103
+    "pubTime": 1579261271418
 }

Різницю між файлами не показано, бо вона завелика
+ 5 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/0b4f7aaf55da9e83cfde73bdb41468ebf71a2cd9


Різницю між файлами не показано, бо вона завелика
+ 13 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/0d2e6943a610caa93a06306ab0cf666a08a22e36


Різницю між файлами не показано, бо вона завелика
+ 9 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/17c2db5ff8f72e2e49dd837ca7057534bb22aa7a


Різницю між файлами не показано, бо вона завелика
+ 8 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/19fe88b8cd287ea60a912c8a5bf356d40b1b1079


Різницю між файлами не показано, бо вона завелика
+ 10 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/1a8d97795b028f7889e6ae8076cfac19928657b9


+ 5 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/2072c14a6957396af4409b2ae9d9ca99c1462cc8

@@ -0,0 +1,5 @@
+{
+  "code": "export class CheckMain {\r\n}\r\nCheckMain.Creat = false;\r\n//# sourceMappingURL=CheckMain.js.map",
+  "references": [],
+  "map": "{\"version\":3,\"file\":\"CheckMain.js\",\"sourceRoot\":\"\",\"sources\":[\"../../../src/Main/CheckMain.ts\"],\"names\":[],\"mappings\":\"AAAA,MAAM,OAAO,SAAS;;AACJ,eAAK,GAAY,KAAK,CAAC\"}"
+}

Різницю між файлами не показано, бо вона завелика
+ 12 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/308394edb4685cf32bc671dd7ab539c4b0cc5f0c


Різницю між файлами не показано, бо вона завелика
+ 16 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/3b929817efc4536c6a3be18915db04f58a507832


Різницю між файлами не показано, бо вона завелика
+ 13 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/4e78f6d7cc51cf4918d02eaaa09eccc50aec9ab7


Різницю між файлами не показано, бо вона завелика
+ 9 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/5e16f2bce32d8668024d60faa49c2b7c3d9b69a4


Різницю між файлами не показано, бо вона завелика
+ 15 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/685737ccade2406221c7cd6f4b517dc16998cf07


Різницю між файлами не показано, бо вона завелика
+ 5 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/6e0b2c3d20b4779a9b9746bcaa41c429891af276


Різницю між файлами не показано, бо вона завелика
+ 8 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/751a2d027f8230a3b5c6a470ae1eeba5f7add4f6


Різницю між файлами не показано, бо вона завелика
+ 4 - 3
.rpt2_cache/rpt2_cc0bfc3d47afe8d9b952db4df96ac75052b1fdc1/code/cache/b9c807cd63c22ec739036f3fcda7670d13af754a


Різницю між файлами не показано, бо вона завелика
+ 5 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/812d93e3fb0cfa9e5b19f82e84d40f2df7e544de


.rpt2_cache/rpt2_cc0bfc3d47afe8d9b952db4df96ac75052b1fdc1/code/cache/8705114fa6cd8a1898799f2dceab9dd149103015 → .rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/8705114fa6cd8a1898799f2dceab9dd149103015


Різницю між файлами не показано, бо вона завелика
+ 17 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/9d3f53633143b34f7e8825e075c97c38212493da


Різницю між файлами не показано, бо вона завелика
+ 13 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/c0bd67938feb59a37bb577c7469fccd89a997853


Різницю між файлами не показано, бо вона завелика
+ 8 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/c83855964b676abc8b3ca7916f6cfcfa16a0849d


Різницю між файлами не показано, бо вона завелика
+ 7 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/d0cf91d73279450e00b9b8ea592561235a917851


Різницю між файлами не показано, бо вона завелика
+ 5 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/d2abf98092b33afbf5caac4257c53c4bdb9ed344


Різницю між файлами не показано, бо вона завелика
+ 5 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/d5766b3a4f06326e25de5b0008c224af95add27a


Різницю між файлами не показано, бо вона завелика
+ 9 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/da2eed01f5316d7490e6187070e84e163846a1db


Різницю між файлами не показано, бо вона завелика
+ 15 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/daaeaf5397a2b34901154d72e1096fe59c4ad53b


Різницю між файлами не показано, бо вона завелика
+ 5 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/e3835f9a943be93f0b8bf3c972a0f78ee2226d4b


Різницю між файлами не показано, бо вона завелика
+ 10 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/eba7d533de5aa0f40904815b712f5e2f5f31dc61


Різницю між файлами не показано, бо вона завелика
+ 7 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/ed09a2d121a8b84ae77e471a2f4c8db8e061e85f


Різницю між файлами не показано, бо вона завелика
+ 9 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/ee241d45a47ee1cbb61a71e8121303ce5f1ba631


Різницю між файлами не показано, бо вона завелика
+ 5 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/ee70e902c798528a9b736d47ffa59d582a66bf03


Різницю між файлами не показано, бо вона завелика
+ 12 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/f15b43947bdca47241a8677ced0c547c58dad102


Різницю між файлами не показано, бо вона завелика
+ 13 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/f9bdad310029f4312a5be633a501c129effdf4c2


Різницю між файлами не показано, бо вона завелика
+ 10 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/code/cache/fc9093ae580ed7cfa246a00502b2c5e4be5d62e8


+ 0 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/types/cache/018a0c234f1bfcee189d2e82869bcda565c51159


+ 0 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/types/cache/3297786e4b2770c3d97efd1fce210e4b5f833260


+ 0 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/types/cache/80963421924e4289bb51bcba5ff87ae9aac49ab3


+ 0 - 0
.rpt2_cache/rpt2_981034996b69972eab67662e90386ed59173930e/types/cache/a95fb10d3d5533e61f1152e78278939bc13ad362


Різницю між файлами не показано, бо вона завелика
+ 15 - 0
.rpt2_cache/rpt2_cc0bfc3d47afe8d9b952db4df96ac75052b1fdc1/code/cache/1f9e9bf5a501b95b5672ccc93b47786910fe81e9


Різницю між файлами не показано, бо вона завелика
+ 5 - 0
.rpt2_cache/rpt2_cc0bfc3d47afe8d9b952db4df96ac75052b1fdc1/code/cache/6ad89fea0afe8219d999ebfa9d3aea3f3e4337e3


Різницю між файлами не показано, бо вона завелика
+ 5 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/0b4f7aaf55da9e83cfde73bdb41468ebf71a2cd9


Різницю між файлами не показано, бо вона завелика
+ 13 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/0d2e6943a610caa93a06306ab0cf666a08a22e36


Різницю між файлами не показано, бо вона завелика
+ 9 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/17c2db5ff8f72e2e49dd837ca7057534bb22aa7a


Різницю між файлами не показано, бо вона завелика
+ 8 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/19fe88b8cd287ea60a912c8a5bf356d40b1b1079


Різницю між файлами не показано, бо вона завелика
+ 10 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/1a8d97795b028f7889e6ae8076cfac19928657b9


+ 5 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/2072c14a6957396af4409b2ae9d9ca99c1462cc8

@@ -0,0 +1,5 @@
+{
+  "code": "export class CheckMain {\r\n}\r\nCheckMain.Creat = false;\r\n//# sourceMappingURL=CheckMain.js.map",
+  "references": [],
+  "map": "{\"version\":3,\"file\":\"CheckMain.js\",\"sourceRoot\":\"\",\"sources\":[\"../../../src/Main/CheckMain.ts\"],\"names\":[],\"mappings\":\"AAAA,MAAM,OAAO,SAAS;;AACJ,eAAK,GAAY,KAAK,CAAC\"}"
+}

Різницю між файлами не показано, бо вона завелика
+ 12 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/308394edb4685cf32bc671dd7ab539c4b0cc5f0c


Різницю між файлами не показано, бо вона завелика
+ 16 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/3b929817efc4536c6a3be18915db04f58a507832


Різницю між файлами не показано, бо вона завелика
+ 13 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/4e78f6d7cc51cf4918d02eaaa09eccc50aec9ab7


Різницю між файлами не показано, бо вона завелика
+ 9 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/5e16f2bce32d8668024d60faa49c2b7c3d9b69a4


Різницю між файлами не показано, бо вона завелика
+ 15 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/685737ccade2406221c7cd6f4b517dc16998cf07


Різницю між файлами не показано, бо вона завелика
+ 5 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/6e0b2c3d20b4779a9b9746bcaa41c429891af276


Різницю між файлами не показано, бо вона завелика
+ 8 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/751a2d027f8230a3b5c6a470ae1eeba5f7add4f6


Різницю між файлами не показано, бо вона завелика
+ 16 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/76b3c0ec200fd9ec937b0126416c551fec66eaf6


Різницю між файлами не показано, бо вона завелика
+ 5 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/812d93e3fb0cfa9e5b19f82e84d40f2df7e544de


Різницю між файлами не показано, бо вона завелика
+ 5 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/8705114fa6cd8a1898799f2dceab9dd149103015


Різницю між файлами не показано, бо вона завелика
+ 17 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/9d3f53633143b34f7e8825e075c97c38212493da


Різницю між файлами не показано, бо вона завелика
+ 13 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/c0bd67938feb59a37bb577c7469fccd89a997853


Різницю між файлами не показано, бо вона завелика
+ 8 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/c83855964b676abc8b3ca7916f6cfcfa16a0849d


Різницю між файлами не показано, бо вона завелика
+ 7 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/d0cf91d73279450e00b9b8ea592561235a917851


Різницю між файлами не показано, бо вона завелика
+ 5 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/d2abf98092b33afbf5caac4257c53c4bdb9ed344


Різницю між файлами не показано, бо вона завелика
+ 5 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/d5766b3a4f06326e25de5b0008c224af95add27a


Різницю між файлами не показано, бо вона завелика
+ 9 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/da2eed01f5316d7490e6187070e84e163846a1db


Різницю між файлами не показано, бо вона завелика
+ 15 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/daaeaf5397a2b34901154d72e1096fe59c4ad53b


Різницю між файлами не показано, бо вона завелика
+ 5 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/e3835f9a943be93f0b8bf3c972a0f78ee2226d4b


Різницю між файлами не показано, бо вона завелика
+ 10 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/eba7d533de5aa0f40904815b712f5e2f5f31dc61


Різницю між файлами не показано, бо вона завелика
+ 7 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/ed09a2d121a8b84ae77e471a2f4c8db8e061e85f


Різницю між файлами не показано, бо вона завелика
+ 9 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/ee241d45a47ee1cbb61a71e8121303ce5f1ba631


Різницю між файлами не показано, бо вона завелика
+ 5 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/ee70e902c798528a9b736d47ffa59d582a66bf03


Різницю між файлами не показано, бо вона завелика
+ 12 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/f15b43947bdca47241a8677ced0c547c58dad102


Різницю між файлами не показано, бо вона завелика
+ 13 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/f9bdad310029f4312a5be633a501c129effdf4c2


Різницю між файлами не показано, бо вона завелика
+ 10 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/code/cache/fc9093ae580ed7cfa246a00502b2c5e4be5d62e8


+ 0 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/types/cache/018a0c234f1bfcee189d2e82869bcda565c51159


+ 0 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/types/cache/3297786e4b2770c3d97efd1fce210e4b5f833260


+ 0 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/types/cache/80963421924e4289bb51bcba5ff87ae9aac49ab3


+ 0 - 0
.rpt2_cache/rpt2_ced057ff145136f44a10ed5d8de26027aa95246d/types/cache/a95fb10d3d5533e61f1152e78278939bc13ad362


+ 210 - 82
bin/js/bundle.js

@@ -102,7 +102,7 @@ var laya = (function (exports) {
             new LoadView();
         }
     }
-    Main.Ver = "1.0.0";
+    Main.Ver = "1.0.3";
     Main.CFG = "123";
     Main.SceneNum = "000";
     new Main();
@@ -1494,37 +1494,60 @@ var laya = (function (exports) {
             ball.anchorY = 0.5;
             ball.height = size;
             ball.width = size;
-            let collider = ball.addComponent(Laya.CircleCollider);
-            collider.restitution = AccountManager.Instance.curplayerData.Restitution;
-            if (this.STAGE == 1 && GameManager.Instance.Wave < 3) {
-                collider.restitution = 0;
-            }
-            collider.radius = size / 2;
-            let rig = ball.addComponent(Laya.RigidBody);
-            rig.allowRotation = true;
-            rig.gravityScale = 3;
-            let num = new Laya.FontClip();
-            num.name = "num";
-            num.skin = "Game/res/Ball/44.png";
-            num.anchorX = 0.5;
-            num.anchorY = 0.5;
-            num.sheet = "0123456789";
-            let zi = this.PrefabName[_index];
-            num.value = zi;
-            ball.addChild(num);
-            num.centerX = 0;
-            num.centerY = 0;
-            let light = new Laya.Image();
-            light.skin = "Game/res/Ball/" + zi + ".png";
-            light.anchorX = 0.5;
-            light.anchorY = 0.5;
-            light.width = this.LightSize(size);
-            light.height = this.LightSize(size);
-            light.name = "light";
-            ball.addChild(light);
-            light.centerX = 0;
-            light.centerY = 0;
-            let script = ball.addComponent(Ball);
+            let _rig = ball.getComponent(Laya.RigidBody);
+            if (!_rig) {
+                let rig = ball.addComponent(Laya.RigidBody);
+                rig.allowRotation = true;
+                rig.gravityScale = 3;
+            }
+            else {
+                _rig.enabled = true;
+            }
+            let _collider = ball.getComponent(Laya.CircleCollider);
+            if (!_collider) {
+                let collider = ball.addComponent(Laya.CircleCollider);
+                collider.restitution = AccountManager.Instance.curplayerData.Restitution;
+                if (this.STAGE == 1 && GameManager.Instance.Wave < 3) {
+                    collider.restitution = 0;
+                }
+                collider.radius = size / 2;
+            }
+            else {
+                _collider.enabled = true;
+                _collider.isSensor = false;
+            }
+            let _num = ball.getChildByName("num");
+            let zi;
+            if (!_num) {
+                let num = new Laya.FontClip();
+                num.name = "num";
+                num.skin = "Game/res/Ball/44.png";
+                num.anchorX = 0.5;
+                num.anchorY = 0.5;
+                num.sheet = "0123456789";
+                zi = this.PrefabName[_index];
+                num.value = zi;
+                ball.addChild(num);
+                num.centerX = 0;
+                num.centerY = 0;
+            }
+            let _light = ball.getChildByName("light");
+            if (!_light) {
+                let light = new Laya.Image();
+                light.skin = "Game/res/Ball/" + zi + ".png";
+                light.anchorX = 0.5;
+                light.anchorY = 0.5;
+                light.width = this.LightSize(size);
+                light.height = this.LightSize(size);
+                light.name = "light";
+                ball.addChild(light);
+                light.centerX = 0;
+                light.centerY = 0;
+            }
+            let _script = ball.getComponent(Ball);
+            if (!_script) {
+                let script = ball.addComponent(Ball);
+            }
             ball.pos(pos.x, pos.y);
             Laya.timer.once(1, this, () => {
                 EventManager.StageTrigger(StageMode.Clone, [ball]);
@@ -1539,37 +1562,60 @@ var laya = (function (exports) {
             ball.anchorY = 0.5;
             ball.height = size;
             ball.width = size;
-            let collider = ball.addComponent(Laya.CircleCollider);
-            collider.restitution = AccountManager.Instance.curplayerData.Restitution;
-            if (this.STAGE == 1 && GameManager.Instance.Wave < 3) {
-                collider.restitution = 0;
-            }
-            collider.radius = size / 2;
-            let rig = ball.addComponent(Laya.RigidBody);
-            rig.allowRotation = true;
-            rig.gravityScale = 3;
-            let num = new Laya.FontClip();
-            num.name = "num";
-            num.skin = "Game/res/Ball/44.png";
-            num.anchorX = 0.5;
-            num.anchorY = 0.5;
-            num.sheet = "0123456789";
-            let zi = this.PrefabName[_index];
-            num.value = zi;
-            ball.addChild(num);
-            num.centerX = 0;
-            num.centerY = 0;
-            let light = new Laya.Image();
-            light.skin = "Game/res/Ball/" + zi + ".png";
-            light.anchorX = 0.5;
-            light.anchorY = 0.5;
-            light.width = this.LightSize(size);
-            light.height = this.LightSize(size);
-            light.name = "light";
-            ball.addChild(light);
-            light.centerX = 0;
-            light.centerY = 0;
-            let script = ball.addComponent(Ball);
+            let _rig = ball.getComponent(Laya.RigidBody);
+            if (!_rig) {
+                let rig = ball.addComponent(Laya.RigidBody);
+                rig.allowRotation = true;
+                rig.gravityScale = 3;
+            }
+            else {
+                _rig.enabled = true;
+            }
+            let _collider = ball.getComponent(Laya.CircleCollider);
+            if (!_collider) {
+                let collider = ball.addComponent(Laya.CircleCollider);
+                collider.restitution = AccountManager.Instance.curplayerData.Restitution;
+                if (this.STAGE == 1 && GameManager.Instance.Wave < 3) {
+                    collider.restitution = 0;
+                }
+                collider.radius = size / 2;
+            }
+            else {
+                _collider.enabled = true;
+                _collider.isSensor = false;
+            }
+            let _num = ball.getChildByName("num");
+            let zi;
+            if (!_num) {
+                let num = new Laya.FontClip();
+                num.name = "num";
+                num.skin = "Game/res/Ball/44.png";
+                num.anchorX = 0.5;
+                num.anchorY = 0.5;
+                num.sheet = "0123456789";
+                zi = this.PrefabName[_index];
+                num.value = zi;
+                ball.addChild(num);
+                num.centerX = 0;
+                num.centerY = 0;
+            }
+            let _light = ball.getChildByName("light");
+            if (!_light) {
+                let light = new Laya.Image();
+                light.skin = "Game/res/Ball/" + zi + ".png";
+                light.anchorX = 0.5;
+                light.anchorY = 0.5;
+                light.width = this.LightSize(size);
+                light.height = this.LightSize(size);
+                light.name = "light";
+                ball.addChild(light);
+                light.centerX = 0;
+                light.centerY = 0;
+            }
+            let _script = ball.getComponent(Ball);
+            if (!_script) {
+                let script = ball.addComponent(Ball);
+            }
             this.SetPosition(ball, pos);
             Laya.timer.once(1, this, () => {
                 EventManager.StageTrigger(StageMode.Clone, [ball]);
@@ -1751,6 +1797,72 @@ var laya = (function (exports) {
         }
     }
 
+    class GamePool {
+        constructor() {
+            this.modelpool = {};
+            this.maxAcount = 30;
+            GamePool.ins = this;
+        }
+        static get Instance() {
+            if (GamePool.ins) {
+                return GamePool.ins;
+            }
+            else {
+                return new GamePool();
+            }
+        }
+        GetModel(title) {
+            var poolname = title;
+            if (this.modelpool[poolname] != null && this.modelpool[poolname] != undefined) {
+                if (this.modelpool[poolname].length > 0) {
+                    var model1 = this.modelpool[poolname][0];
+                    this.modelpool[poolname].splice(0, 1);
+                    if (!model1.active) {
+                        model1.active = true;
+                    }
+                    model1.active = true;
+                    return model1;
+                }
+                else {
+                    var model = new Laya.Image();
+                    return model;
+                }
+            }
+            else {
+                var model = new Laya.Image();
+                model.active = true;
+                return model;
+            }
+        }
+        RecoverModel(_image, title = "", modelstate = false) {
+            if (_image.destroyed) {
+                return;
+            }
+            if (!modelstate && _image.active == false) {
+                return;
+            }
+            var poolname = title;
+            if (this.modelpool[poolname] != null && this.modelpool[poolname] != undefined) {
+                var modelnum = this.modelpool[poolname];
+                if (modelnum.length > this.maxAcount) {
+                    _image.destroy();
+                    return;
+                }
+                else {
+                    modelnum.push(_image);
+                }
+            }
+            else {
+                modelnum = [];
+                modelnum.push(_image);
+                this.modelpool[poolname] = modelnum;
+            }
+            _image.pos(-1000, 0);
+            _image.removeSelf();
+            _image.active = false;
+        }
+    }
+
     var Vector2 = Laya.Vector2;
     class Ball extends Laya.Script {
         constructor() {
@@ -1779,6 +1891,8 @@ var laya = (function (exports) {
             let score = this.owner.getChildByName("num");
             this.score = Number(score.value);
         }
+        onEnable() {
+        }
         onUpdate() {
             this.CheckLight();
             if (this.mark) {
@@ -1835,9 +1949,10 @@ var laya = (function (exports) {
                 let _collider = this.owner.getComponent(Laya.CircleCollider);
                 _collider.enabled = false;
                 _rig.enabled = false;
-                Laya.timer.clearAll(this.owner);
-                this.owner.removeSelf();
-                this.owner.destroy();
+                owner.removeSelf();
+                owner.destroy();
+                let _index = DropRule.Instance.GetBallIndex(this.score).toString();
+                GamePool.Instance.RecoverModel(owner, "img" + _index);
                 let id = DropRule.Instance.GetBallIndex(num);
                 let size = DropRule.Instance.GetBallSize(num);
                 GameManager.Instance.ScoreProgress += num;
@@ -1863,9 +1978,8 @@ var laya = (function (exports) {
                 let _collider = this.owner.getComponent(Laya.CircleCollider);
                 _collider.enabled = false;
                 _rig.enabled = false;
-                Laya.timer.clearAll(owner);
-                this.owner.removeSelf();
-                this.owner.destroy();
+                owner.removeSelf();
+                owner.destroy();
                 InGameView.Instance.SkillNumRefresh();
                 EventManager.EventTrigger(PropEffecf.NONE);
                 InGameView.Instance.EffectMode(false);
@@ -1904,9 +2018,7 @@ var laya = (function (exports) {
                     })
                 }, AccountManager.Instance.curplayerData.MergeSpeed * 1000, Laya.Ease.linearInOut, Laya.Handler.create(this, () => {
                     move.clear();
-                    Laya.timer.clearAll(owner);
                     this.owner.removeSelf();
-                    this.owner.destroy();
                     if (!DropRule.Instance.Cloned) {
                         let num = DropRule.Instance.GetBallIndex(GameManager.Instance.ScoreRecord2);
                         let size = DropRule.Instance.GetBallSize(GameManager.Instance.ScoreRecord2);
@@ -2228,9 +2340,12 @@ var laya = (function (exports) {
                     if (ball.score == DropRule.Instance.MinBall) {
                         GameManager.Instance.ScoreProgress += ball.score;
                         DropRule.Instance.CreateEffect(ball.score, new Laya.Vector2(prefab.x, prefab.y));
+                        let _rig = prefab.getComponent(Laya.RigidBody);
+                        let _collider = prefab.getComponent(Laya.CircleCollider);
+                        _collider.enabled = false;
+                        _rig.enabled = false;
                         Laya.timer.clearAll(prefab);
                         prefab.removeSelf();
-                        prefab.destroy();
                     }
                 }
                 this.SkillNumRefresh();
@@ -2250,9 +2365,12 @@ var laya = (function (exports) {
                     if (ball.score == DropRule.Instance.MinNextBall) {
                         GameManager.Instance.ScoreProgress += ball.score;
                         DropRule.Instance.CreateEffect(ball.score, new Laya.Vector2(prefab.x, prefab.y));
+                        let _rig = prefab.getComponent(Laya.RigidBody);
+                        let _collider = prefab.getComponent(Laya.CircleCollider);
+                        _collider.enabled = false;
+                        _rig.enabled = false;
                         Laya.timer.clearAll(prefab);
                         prefab.removeSelf();
-                        prefab.destroy();
                     }
                 }
                 this.SkillNumRefresh();
@@ -2275,14 +2393,14 @@ var laya = (function (exports) {
         ClearStage() {
             if (!this.prefabbox.destroyed) {
                 for (let i = this.prefabbox.numChildren - 1; i > -1; i--) {
-                    let ball = this.prefabbox.getChildAt(i);
-                    let _rig = ball.getComponent(Laya.RigidBody);
-                    let _collider = ball.getComponent(Laya.CircleCollider);
+                    let prefab = this.prefabbox.getChildAt(i);
+                    let ball = prefab.getComponent(Ball);
+                    let _rig = prefab.getComponent(Laya.RigidBody);
+                    let _collider = prefab.getComponent(Laya.CircleCollider);
                     _collider.enabled = false;
                     _rig.enabled = false;
-                    Laya.timer.clearAll(ball);
-                    ball.removeSelf();
-                    ball.destroy();
+                    Laya.timer.clearAll(prefab);
+                    prefab.removeSelf();
                 }
             }
         }
@@ -2307,6 +2425,10 @@ var laya = (function (exports) {
                     let Score = DropRule.Instance.GetBallIndex(ball.score);
                     if (Score + 1 == Number(DropRule.Instance.BallNum[j])) {
                         DropRule.Instance.CreateEffect(ball.score, new Laya.Vector2(prefab.x, prefab.y));
+                        let _rig = prefab.getComponent(Laya.RigidBody);
+                        let _collider = prefab.getComponent(Laya.CircleCollider);
+                        _collider.enabled = false;
+                        _rig.enabled = false;
                         Laya.timer.clearAll(prefab);
                         prefab.removeSelf();
                         prefab.destroy();
@@ -2333,9 +2455,12 @@ var laya = (function (exports) {
                         let Score = DropRule.Instance.GetBallIndex(ball.score);
                         if (Score + 1 == Number(DropRule.Instance.BallNum[j])) {
                             DropRule.Instance.CreateEffect(ball.score, new Laya.Vector2(prefab.x, prefab.y));
+                            let _rig = prefab.getComponent(Laya.RigidBody);
+                            let _collider = prefab.getComponent(Laya.CircleCollider);
+                            _collider.enabled = false;
+                            _rig.enabled = false;
                             Laya.timer.clearAll(prefab);
                             prefab.removeSelf();
-                            prefab.destroy();
                         }
                     }
                 }
@@ -2356,9 +2481,12 @@ var laya = (function (exports) {
                         }
                         if (dispear) {
                             DropRule.Instance.CreateEffect(ball.score, new Laya.Vector2(prefab.x, prefab.y));
+                            let _rig = prefab.getComponent(Laya.RigidBody);
+                            let _collider = prefab.getComponent(Laya.CircleCollider);
+                            _collider.enabled = false;
+                            _rig.enabled = false;
                             Laya.timer.clearAll(prefab);
                             prefab.removeSelf();
-                            prefab.destroy();
                         }
                     }
                 }
@@ -3502,7 +3630,7 @@ var laya = (function (exports) {
             new LoadView();
         }
     }
-    Main$1.Ver = "1.0.0";
+    Main$1.Ver = "1.0.3";
     Main$1.CFG = "123";
     Main$1.SceneNum = "000";
     new Main$1();

Різницю між файлами не показано, бо вона завелика
+ 1 - 1
bin/js/bundle.js.map


+ 3 - 3
laya/.laya

@@ -1,6 +1,6 @@
 <project version="2.0">
-   <asynRes>img,temp,sound                                                                                                                        </asynRes>
-   <unDealRes>embed                                                                                                                        </unDealRes>
+   <asynRes>img,temp,sound                                                                                                                                 </asynRes>
+   <unDealRes>embed                                                                                                                                 </unDealRes>
    <resTypes>png,jpg   </resTypes>
    <resExportPath>bin/h5   </resExportPath>
    <asynResExportPath>bin   </asynResExportPath>
@@ -15,7 +15,7 @@ var Dialog=laya.ui.Dialog;]]>   </codeImportsJS>
    <shareResPath/>
    <codeType>1   </codeType>
    <resCanCompress/>
-   <resPublishQuality>80                                                                                                                        </resPublishQuality>
+   <resPublishQuality>80                                                                                                                                 </resPublishQuality>
    <langPath/>
    <defaultFont/>
    <codeImportsTS><![CDATA[import View=Laya.View;

Різницю між файлами не показано, бо вона завелика
+ 1 - 1
release/wxgame/js/bundle.js


Різницю між файлами не показано, бо вона завелика
+ 1 - 1
release/wxgame/js/bundle.js.map


+ 1 - 34
release/wxgame/project.config.json

@@ -1,34 +1 @@
-{
-	"description": "项目配置文件。",
-	"setting": {
-		"urlCheck": false,
-		"es6": false,
-		"postcss": true,
-		"minified": false,
-		"newFeature": true
-	},
-	"compileType": "game",
-	"libVersion": "game",
-	"appid": "wx9170ca1ff6f31088",
-	"projectname": "layaWXTest",
-	"simulatorType": "wechat",
-	"simulatorPluginLibVersion": {},
-	"condition": {
-		"search": {
-			"current": -1,
-			"list": []
-		},
-		"conversation": {
-			"current": -1,
-			"list": []
-		},
-		"game": {
-			"currentL": -1,
-			"list": []
-		},
-		"miniprogram": {
-			"current": -1,
-			"list": []
-		}
-	}
-}
+{"description":"项目配置文件。","setting":{"urlCheck":false,"es6":false,"postcss":true,"minified":false,"newFeature":true},"compileType":"game","libVersion":"game","appid":"wx9170ca1ff6f31088","projectname":"layaWXTest","condition":{"search":{"current":-1,"list":[]},"conversation":{"current":-1,"list":[]},"game":{"currentL":-1,"list":[]},"miniprogram":{"current":-1,"list":[]}}}

+ 1 - 1
src/Main.ts

@@ -3,7 +3,7 @@ import { LoadView } from "./View/LoadView";
 import { CheckMain } from "./Main/CheckMain";
 import { WXSDK } from "./Net/WXSDK";
 export  class Main {
-	static Ver = "1.0.0";
+	static Ver = "1.0.3";
 	static CFG = "123";
 	static SceneNum = "000";
 	constructor() {

+ 42 - 0
src/Main/AssetManager.ts

@@ -0,0 +1,42 @@
+import ResDic from "../Tool/ResDic";
+
+export class AssetManager{
+    private static ins:AssetManager;
+    public Ball:ResDic = new ResDic();
+    constructor(){
+        AssetManager.ins = this;
+    }
+    public static get Instance():AssetManager{
+        if(AssetManager.ins){
+            return AssetManager.ins
+        }
+        else{
+            return new AssetManager();
+        }
+    }
+
+}
+export class ResourcesPath{
+    static BallPictrue = 
+    [
+        "Game/res/Ball/blast0.png",
+        "Game/res/Ball/blast1.png",
+        "Game/res/Ball/blast2.png",
+        "Game/res/Ball/blast3.png",
+        "Game/res/Ball/blast4.png",
+        "Game/res/Ball/blast5.png",
+        "Game/res/Ball/blast6.png",
+        "Game/res/Ball/blast7.png",
+        "Game/res/Ball/blast8.png",
+        "Game/res/Ball/blast9.png",
+        "Game/res/Ball/blast10.png",
+        "Game/res/Ball/blast11.png",
+        "Game/res/Ball/blast12.png",
+        "Game/res/Ball/blast13.png",
+        "Game/res/Ball/blast14.png",
+        "Game/res/Ball/blast15.png",
+        "Game/res/Ball/blast16.png",
+        "Game/res/Ball/blast17.png",
+        "Game/res/Ball/blast18.png"
+    ]
+}

+ 27 - 11
src/Main/Ball.ts

@@ -9,6 +9,7 @@ import { AccountManager } from "../Net/AccountManager";
 import { BlastToMerge, ServerManager } from "../Net/ServerManager";
 import { AudioManager, MusicType } from "../Tool/AudioManager";
 import { WXSDK } from "../Net/WXSDK";
+import { GamePool } from "../Tool/GamePool";
 export  default class Ball extends Laya.Script{
     private static ins:Ball;
     private _rig:Laya.RigidBody;
@@ -46,7 +47,9 @@ export  default class Ball extends Laya.Script{
         let score = this.owner.getChildByName("num") as Laya.FontClip;
         this.score = Number(score.value);
     }
-    
+    onEnable(){
+        
+    }
     onUpdate(){
         this.CheckLight();
         if(this.mark){
@@ -135,10 +138,14 @@ export  default class Ball extends Laya.Script{
             let _collider = this.owner.getComponent(Laya.CircleCollider) as Laya.CircleCollider;
             _collider.enabled = false;
             _rig.enabled = false;
-            Laya.timer.clearAll(this.owner);
-            this.owner.removeSelf();
-            this.owner.destroy();
-    
+            // Laya.timer.clearAll(this);
+            owner.removeSelf();
+            owner.destroy();
+            // this.owner.destroy();
+            let _index = DropRule.Instance.GetBallIndex(this.score).toString();
+            // Laya.Pool.recover("img" + _index,owner);
+            GamePool.Instance.RecoverModel(owner,"img"+_index);
+            
             let id = DropRule.Instance.GetBallIndex(num);
             let size = DropRule.Instance.GetBallSize(num);
             GameManager.Instance.ScoreProgress += num;
@@ -170,9 +177,14 @@ export  default class Ball extends Laya.Script{
             let _collider = this.owner.getComponent(Laya.CircleCollider) as Laya.CircleCollider;
             _collider.enabled = false;
             _rig.enabled = false;
-            Laya.timer.clearAll(owner);
-            this.owner.removeSelf();
-            this.owner.destroy();
+            // Laya.timer.clearAll(this);
+            owner.removeSelf();
+            owner.destroy();
+            // let _index = DropRule.Instance.GetBallIndex(this.score).toString();
+            // GamePool.Instance.RecoverModel(owner,"img"+_index);
+
+            // Laya.Pool.recover("img" +_index,owner);
+            // this.owner.destroy();
             // Laya.Pool.recover("img",owner);
             // this.owner.removeSelf();
             // this.owner.destroy();
@@ -273,10 +285,14 @@ export  default class Ball extends Laya.Script{
                 })
             }, AccountManager.Instance.curplayerData.MergeSpeed * 1000, Laya.Ease.linearInOut, Laya.Handler.create(this, () => {
                 move.clear();
-                Laya.timer.clearAll(owner);
+                // Laya.timer.clearAll(this);
                 this.owner.removeSelf();
-                this.owner.destroy();
-                // Laya.Pool.recover("img",owner);
+                // this.owner.destroy();
+                // let _index = DropRule.Instance.GetBallIndex(this.score).toString();
+                // GamePool.Instance.RecoverModel(owner,"img"+_index );
+                // Laya.Pool.recover("img" +_index,owner);
+                
+                // Laya.stage.removeChild(owner)
                 // this.owner.destroy();
                 if(!DropRule.Instance.Cloned){
                     let num = DropRule.Instance.GetBallIndex(GameManager.Instance.ScoreRecord2);

+ 123 - 66
src/Tool/DropRule.ts

@@ -5,6 +5,8 @@ import { GameTools } from "./GameTools";
 import { GameManager } from "../Main/GameManager";
 import { ServerManager, BlastToMerge } from "../Net/ServerManager";
 import { AudioManager, MusicType } from "./AudioManager";
+import { GamePool } from "./GamePool";
+import { AssetManager } from "../Main/AssetManager";
 
 export class DropRule{
     private static ins:DropRule;
@@ -207,7 +209,9 @@ export class DropRule{
     }
     /**创建球的预制  合成克隆*/
     CreatBall(_index:number,size:number,pos:Laya.Vector2){
-        // let ball:Laya.Image = Laya.Pool.getItemByClass("img",Laya.Image);
+        // let ball = GamePool.Instance.GetModel(AssetManager.Instance.Ball.get(_index),_index.toString());
+        // let ball = GamePool.Instance.GetModel("img"+_index.toString());
+        // let ball = Laya.Pool.getItemByClass("img" + _index.toString(),Laya.Image);
         let ball:Laya.Image = new Laya.Image();
         ball.skin = "Game/res/Ball/blast"+ _index + ".png";
         ball.anchorX = 0.5;
@@ -215,42 +219,68 @@ export class DropRule{
         ball.height = size;
         ball.width = size;
         //刚体碰撞器
-        let collider = ball.addComponent(Laya.CircleCollider) as Laya.CircleCollider;
-        collider.restitution = AccountManager.Instance.curplayerData.Restitution;
-        if (this.STAGE == 1 && GameManager.Instance.Wave < 3) {
-            collider.restitution = 0;
-        }
-        collider.radius = size / 2;
-        let rig = ball.addComponent(Laya.RigidBody) as Laya.RigidBody;
-        rig.allowRotation = true;
-        rig.gravityScale = 3;
-       
+        let _rig = ball.getComponent(Laya.RigidBody) as Laya.RigidBody;
+        if(!_rig){
+            let rig = ball.addComponent(Laya.RigidBody) as Laya.RigidBody;
+            rig.allowRotation = true;
+            rig.gravityScale = 3;
+        }
+        else{
+            _rig.enabled = true;
+        }
+        let _collider = ball.getComponent(Laya.CircleCollider) as Laya.CircleCollider;
+        if(!_collider){
+            let collider = ball.addComponent(Laya.CircleCollider) as Laya.CircleCollider;
+            collider.restitution = AccountManager.Instance.curplayerData.Restitution;
+            if (this.STAGE == 1 && GameManager.Instance.Wave < 3) {
+                collider.restitution = 0;
+            }
+            collider.radius = size / 2;
+        }
+        else{
+            _collider.enabled = true;
+            _collider.isSensor = false;
+        }
+        
         //字体
-        let num :Laya.FontClip = new Laya.FontClip();
-        num.name = "num";
-        num.skin = "Game/res/Ball/44.png";
-        num.anchorX = 0.5;
-        num.anchorY = 0.5;
-        num.sheet = "0123456789";
-        let zi = this.PrefabName[_index];
-        num.value = zi;
-        ball.addChild(num);
-        num.centerX = 0;
-        num.centerY = 0;
+        let _num = ball.getChildByName("num") as Laya.FontClip;
+        let zi;
+        if(!_num){
+            let num :Laya.FontClip = new Laya.FontClip();
+            num.name = "num";
+            num.skin = "Game/res/Ball/44.png";
+            num.anchorX = 0.5;
+            num.anchorY = 0.5;
+            num.sheet = "0123456789";
+            zi = this.PrefabName[_index];
+            num.value = zi;
+            ball.addChild(num);
+            num.centerX = 0;
+            num.centerY = 0;
+        }
+        
         //光效
-        let light:Laya.Image = new Laya.Image();
-        light.skin = "Game/res/Ball/"+ zi + ".png";
-        light.anchorX = 0.5;
-        light.anchorY = 0.5;
-        light.width = this.LightSize(size);
-        light.height =this.LightSize(size);
-        light.name = "light";
+        let _light = ball.getChildByName("light") as Laya.Image;
+        if(!_light){
+            let light:Laya.Image = new Laya.Image();
+            light.skin = "Game/res/Ball/"+ zi + ".png";
+            light.anchorX = 0.5;
+            light.anchorY = 0.5;
+            light.width = this.LightSize(size);
+            light.height =this.LightSize(size);
+            light.name = "light";
 
-        ball.addChild(light);
-        light.centerX = 0;
-        light.centerY = 0;
+            ball.addChild(light);
+            light.centerX = 0;
+            light.centerY = 0;
+        }
+        
         //脚本
-        let script = ball.addComponent(Ball) as Ball;
+        let _script = ball.getComponent(Ball) as Ball;
+        if(!_script){
+            let script = ball.addComponent(Ball) as Ball;
+        }
+
         ball.pos(pos.x,pos.y);
         // this.SetPosition(ball,pos);
         Laya.timer.once(1,this,()=>{
@@ -261,50 +291,77 @@ export class DropRule{
     }
     /**创建球的预制  自动掉球*/
     CreatBall2(_index:number,size:number,pos:Laya.Vector2){
-        // let ball:Laya.Image = Laya.Pool.getItemByClass("img",Laya.Image);
+        // let ball = GamePool.Instance.GetModel("img"+_index.toString());
+        // let ball = GamePool.Instance.GetModel(AssetManager.Instance.Ball.get(_index),_index.toString());
+        // let ball = Laya.Pool.getItemByClass("img" +_index.toString(),Laya.Image);
         let ball:Laya.Image = new Laya.Image();
         ball.skin = "Game/res/Ball/blast"+ _index + ".png";
         ball.anchorX = 0.5;
         ball.anchorY = 0.5;
         ball.height = size;
         ball.width = size;
-        
         //刚体碰撞器
-        let collider = ball.addComponent(Laya.CircleCollider) as Laya.CircleCollider;
-        collider.restitution = AccountManager.Instance.curplayerData.Restitution;
-        if(this.STAGE == 1 && GameManager.Instance.Wave<3){
-            collider.restitution = 0;
-        }
-        collider.radius = size/2 ;
-        let rig = ball.addComponent(Laya.RigidBody) as Laya.RigidBody;
-        rig.allowRotation = true;
-        rig.gravityScale = 3;
+        let _rig = ball.getComponent(Laya.RigidBody) as Laya.RigidBody;
+        if(!_rig){
+            let rig = ball.addComponent(Laya.RigidBody) as Laya.RigidBody;
+            rig.allowRotation = true;
+            rig.gravityScale = 3;
+        }
+        else{
+            _rig.enabled = true;
+        }
+        let _collider = ball.getComponent(Laya.CircleCollider) as Laya.CircleCollider;
+        if(!_collider){
+            let collider = ball.addComponent(Laya.CircleCollider) as Laya.CircleCollider;
+            collider.restitution = AccountManager.Instance.curplayerData.Restitution;
+            if (this.STAGE == 1 && GameManager.Instance.Wave < 3) {
+                collider.restitution = 0;
+            }
+            collider.radius = size / 2;
+        }
+        else{
+            _collider.enabled = true;
+            _collider.isSensor = false;
+        }
+        
         //字体
-        let num :Laya.FontClip = new Laya.FontClip();
-        num.name = "num";
-        num.skin = "Game/res/Ball/44.png";
-        num.anchorX = 0.5;
-        num.anchorY = 0.5;
-        num.sheet = "0123456789";
-        let zi = this.PrefabName[_index];
-        num.value = zi;
-        ball.addChild(num);
-        num.centerX = 0;
-        num.centerY = 0;
+        let _num = ball.getChildByName("num") as Laya.FontClip;
+        let zi;
+        if(!_num){
+            let num :Laya.FontClip = new Laya.FontClip();
+            num.name = "num";
+            num.skin = "Game/res/Ball/44.png";
+            num.anchorX = 0.5;
+            num.anchorY = 0.5;
+            num.sheet = "0123456789";
+            zi = this.PrefabName[_index];
+            num.value = zi;
+            ball.addChild(num);
+            num.centerX = 0;
+            num.centerY = 0;
+        }
+        
         //光效
-        let light:Laya.Image = new Laya.Image();
-        light.skin = "Game/res/Ball/"+ zi + ".png";
-        light.anchorX = 0.5;
-        light.anchorY = 0.5;
-        light.width = this.LightSize(size);
-        light.height = this.LightSize(size);
-        light.name = "light";
+        let _light = ball.getChildByName("light") as Laya.Image;
+        if(!_light){
+            let light:Laya.Image = new Laya.Image();
+            light.skin = "Game/res/Ball/"+ zi + ".png";
+            light.anchorX = 0.5;
+            light.anchorY = 0.5;
+            light.width = this.LightSize(size);
+            light.height =this.LightSize(size);
+            light.name = "light";
 
-        ball.addChild(light);
-        light.centerX = 0;
-        light.centerY = 0;
+            ball.addChild(light);
+            light.centerX = 0;
+            light.centerY = 0;
+        }
+        
         //脚本
-        let script = ball.addComponent(Ball) as Ball;
+        let _script = ball.getComponent(Ball) as Ball;
+        if(!_script){
+            let script = ball.addComponent(Ball) as Ball;
+        }
         // ball.pos(pos.x,pos.y);
         this.SetPosition(ball,pos);
         Laya.timer.once(1,this,()=>{

+ 121 - 4
src/Tool/GamePool.ts

@@ -1,10 +1,14 @@
-export class GamePool{
+
+    export class GamePool{
     private static ins:GamePool;
     constructor(){
         GamePool.ins = this;
     }
     //模型库
-    // private modelpool : {[Key:string]:Array<modelConfig> } = {};
+    private modelpool : {[Key:string]:Array<Laya.Image> } = {};
+    //最大存储数量
+    private maxAcount:number = 30;
+
     public static get Instance():GamePool{
         if(GamePool.ins){
             return GamePool.ins
@@ -13,8 +17,121 @@ export class GamePool{
             return new GamePool();
         }
     }
-    public Init(){
-        
+    //获取模型
+    public GetModel(title:string):Laya.Image{
+        var poolname = title ;
+        if(this.modelpool[poolname]!=null && this.modelpool[poolname]!=undefined){
+            if(this.modelpool[poolname].length >0){
+                var model1 = this.modelpool[poolname][0];
+                this.modelpool[poolname].splice(0,1);
+                if(!model1.active){
+                    model1.active = true;  
+                }
+                model1.active = true;
+                return model1;
+            }
+            else{
+                var model = new Laya.Image();
+                return model;
+            }
+        }
+        else{
+            var model = new Laya.Image();
+            // var model = _image;
+            model.active = true;
+            return model;
+        }
+    }
+    //回收模型
+    public RecoverModel(_image:Laya.Image,title = "",modelstate = false){
+        if(_image.destroyed){
+            return;
+        }
+        if(!modelstate && _image.active == false){
+            return;
+        }
+        var poolname = title ; 
+        if(this.modelpool[poolname] != null && this.modelpool[poolname] != undefined){
+            var modelnum = this.modelpool[poolname];
+            if( modelnum.length>this.maxAcount){
+                _image.destroy();
+                return;
+            }
+            else{
+                modelnum.push(_image);
+            }
+        }
+        else{
+            modelnum = [];
+            modelnum.push(_image);
+            this.modelpool[poolname] = modelnum;
+        }
+        _image.pos(-1000,0);
+        _image.removeSelf();
+        _image.active = false;
     }
 
+
+
+    /**取出模型*/
+// GetModel(_model:Laya.Sprite3D,title:string):Laya.Image{
+   
+//     var poolname =title+ _model.name ;
+//     if(this.modelpool[poolname]!=null && this.modelpool[poolname] !=undefined){
+//         if(this.modelpool[poolname].length >0 ){
+//             var model1 = this.modelpool[poolname][0];
+//             this.modelpool[poolname].splice(0,1);
+//             if(model1.modelcur.destroyed){
+//                 model1.modelcur = Sprite3D.instantiate(_model);
+//                 if(!model1.modelcur.active){
+//                     model1.modelcur.active = true;
+//                 }
+//             }
+//             model1.modelcur.active = true;
+//             model1.modelcur.transform.position = _model.transform.position.clone();
+//             model1.modelcur.transform.rotation = _model.transform.rotation.clone();
+//             model1.modelcur.transform.scale = _model.transform.scale.clone();
+//             return model1.modelcur;
+//         }
+//         else{
+//             var model = Sprite3D.instantiate(_model);
+//             model.active = true;
+//             return model;
+//         }
+//     }
+//     else{
+//         var model = Sprite3D.instantiate(_model);
+//         model.active = true;
+//         return model;
+//     }
+// }
+// /**回收模型*/
+// RecoveryModel(model:Sprite3D,title = "",modelstate = false){
+//     if(model.destroyed){
+//         return;
+//     }
+//     if(!modelstate && model.active == false){
+//         return;
+//     }
+//     var poolname =title+ model.name ; 
+//     if(this.modelpool[poolname] != null && this.modelpool[poolname] != undefined){
+//         var modelnum = this.modelpool[poolname];
+//         if( modelnum.length>this.maxAcount){
+//             model.destroy();
+//             return;
+//         }
+//         else{
+//             modelnum.push(new modelConfig(model));
+//         }
+//     }
+//     else{
+//         modelnum = [];
+//         modelnum.push(new modelConfig(model));
+//         this.modelpool[poolname] = modelnum;
+//     }
+//     model.transform.position = new Vector3(0,0,-10000);
+//     model.removeSelf();
+//     model.active = false;
+// }
+
 }

+ 62 - 0
src/Tool/ResDic.ts

@@ -0,0 +1,62 @@
+import Sprite3D = Laya.Sprite3D;
+
+export default class ResDic {
+    private _length:number; 
+    
+    public _container:{[id:number]:Laya.Image};
+
+   constructor(){        
+      this._container = {};   
+      this._length = 0;   
+   }
+  
+   public get container():{[id:number]:Laya.Image}{           
+    return this._container;
+   }
+
+   //获取字典长度    
+   public get size():number{   
+    return this._length; 
+   }
+
+   //添加
+   public set(key:any,value:any):void{
+    if(!this._container.hasOwnProperty(key))
+     { 
+            this._length++;          
+     }
+     this._container[key] = value;      
+  
+    }     
+   //查找   
+   public has(key:any):boolean{   
+      return this._container.hasOwnProperty(key)?true:false;
+   }
+   
+   //获取 
+   public get(key:any):any{   
+      if(this._container.hasOwnProperty(key))
+      {
+             return this._container[key];     
+       }else
+      {
+             return undefined     
+      }
+   }
+    //删除     
+    public delete(key:any):void{
+            
+        if(this._container.hasOwnProperty(key))
+        {           
+            delete this._container[key];     
+            this._length--;          
+        }  
+    }
+   //清空    
+   public clear(){   
+      this._container = {};
+      this._length = 0;
+   }
+    
+
+}

+ 52 - 14
src/View/InGameView.ts

@@ -7,6 +7,7 @@ import Ball from "../Main/Ball";
 import { GameManager } from "../Main/GameManager";
 import { DropRule } from "../Tool/DropRule";
 import { ServerManager, BlastToMerge } from "../Net/ServerManager";
+import { GamePool } from "../Tool/GamePool";
 
 export default class InGameView extends ui.InGameSceneUI implements SC{
     private static ins:InGameView;
@@ -182,7 +183,6 @@ export default class InGameView extends ui.InGameSceneUI implements SC{
     //推球道具
     ClickArrow(){
         console.log("点到了推球道具--");
-       
         if(Number(this.Func5num.text)>0){
             var args = [{"t":AccountManager.Instance.ServerTime.toString()},{"play_id":GameManager.Instance.play_id},{"fid":"5"}]
             ServerManager.Instance.SendHttp(BlastToMerge.Use,args,Laya.Handler.create(this,()=>{
@@ -309,10 +309,17 @@ export default class InGameView extends ui.InGameSceneUI implements SC{
                 if(ball.score == DropRule.Instance.MinBall){
                     GameManager.Instance.ScoreProgress += ball.score;
                     DropRule.Instance.CreateEffect(ball.score,new Laya.Vector2(prefab.x,prefab.y));
+                    let _rig = prefab.getComponent(Laya.RigidBody) as Laya.RigidBody;
+                    let _collider = prefab.getComponent(Laya.CircleCollider) as Laya.CircleCollider;
+                    _collider.enabled = false;
+                    _rig.enabled = false;
                     Laya.timer.clearAll(prefab);
                     prefab.removeSelf();
-                    prefab.destroy();
-                    // Laya.Pool.recover("img",prefab);
+                    // prefab.destroy();
+                    // let _index = DropRule.Instance.GetBallIndex(ball.score);
+                    // GamePool.Instance.RecoverModel(prefab,_index.toString());
+
+                    // Laya.Pool.recover("img"+_index.toString,ball);
                 }
             }
             this.SkillNumRefresh();
@@ -333,10 +340,16 @@ export default class InGameView extends ui.InGameSceneUI implements SC{
                 if(ball.score == DropRule.Instance.MinNextBall){
                     GameManager.Instance.ScoreProgress += ball.score;
                     DropRule.Instance.CreateEffect(ball.score,new Laya.Vector2(prefab.x,prefab.y));
+                    let _rig = prefab.getComponent(Laya.RigidBody) as Laya.RigidBody;
+                    let _collider = prefab.getComponent(Laya.CircleCollider) as Laya.CircleCollider;
+                    _collider.enabled = false;
+                    _rig.enabled = false;
                     Laya.timer.clearAll(prefab);
                     prefab.removeSelf();
-                    prefab.destroy();
-                    // Laya.Pool.recover("img",prefab);
+                    // prefab.destroy();
+                    // let _index = DropRule.Instance.GetBallIndex(ball.score);
+                    // GamePool.Instance.RecoverModel(prefab,_index.toString());
+                    // Laya.Pool.recover("img"+_index.toString,ball);
                     // ball.destroy();
                 }
             }
@@ -362,14 +375,18 @@ export default class InGameView extends ui.InGameSceneUI implements SC{
     ClearStage(){
         if(!this.prefabbox.destroyed){
             for (let i = this.prefabbox.numChildren-1; i > -1; i--) {
-                let ball = this.prefabbox.getChildAt(i) as Laya.Image;
-                let _rig = ball.getComponent(Laya.RigidBody) as Laya.RigidBody;
-                let _collider = ball.getComponent(Laya.CircleCollider) as Laya.CircleCollider;
+                let prefab = this.prefabbox.getChildAt(i) as Laya.Image;
+                let ball = prefab.getComponent(Ball) as Ball;
+                let _rig = prefab.getComponent(Laya.RigidBody) as Laya.RigidBody;
+                let _collider = prefab.getComponent(Laya.CircleCollider) as Laya.CircleCollider;
                 _collider.enabled = false;
                 _rig.enabled = false;
-                Laya.timer.clearAll(ball);
-                ball.removeSelf();
-                ball.destroy();
+                Laya.timer.clearAll(prefab);
+                prefab.removeSelf();
+                // ball.destroy();
+                // let _index = DropRule.Instance.GetBallIndex(ball.score);
+                // GamePool.Instance.RecoverModel(prefab,_index.toString());
+                // Laya.Pool.recover("img"+_index.toString,ball);
             }
         }
     }
@@ -397,9 +414,17 @@ export default class InGameView extends ui.InGameSceneUI implements SC{
                 let Score = DropRule.Instance.GetBallIndex(ball.score);
                 if(Score+1 ==Number(DropRule.Instance.BallNum[j]) ){
                     DropRule.Instance.CreateEffect(ball.score,new Laya.Vector2(prefab.x,prefab.y));
+
+                    let _rig = prefab.getComponent(Laya.RigidBody) as Laya.RigidBody;
+                    let _collider = prefab.getComponent(Laya.CircleCollider) as Laya.CircleCollider;
+                    _collider.enabled = false;
+                    _rig.enabled = false;
                     Laya.timer.clearAll(prefab);
                     prefab.removeSelf();
                     prefab.destroy();
+                    // let _index = DropRule.Instance.GetBallIndex(ball.score);
+                    // GamePool.Instance.RecoverModel(prefab,_index.toString());
+                    // Laya.Pool.recover("img"+_index.toString,prefab);
                 }
             }
         }
@@ -426,9 +451,16 @@ export default class InGameView extends ui.InGameSceneUI implements SC{
                     let Score = DropRule.Instance.GetBallIndex(ball.score);
                     if(Score+1 ==Number(DropRule.Instance.BallNum[j]) ){
                         DropRule.Instance.CreateEffect(ball.score,new Laya.Vector2(prefab.x,prefab.y));
+                        let _rig = prefab.getComponent(Laya.RigidBody) as Laya.RigidBody;
+                        let _collider = prefab.getComponent(Laya.CircleCollider) as Laya.CircleCollider;
+                        _collider.enabled = false;
+                        _rig.enabled = false;
                         Laya.timer.clearAll(prefab);
                         prefab.removeSelf();
-                        prefab.destroy();
+                        // prefab.destroy();
+                        // let _index = DropRule.Instance.GetBallIndex(ball.score);
+                        // GamePool.Instance.RecoverModel(prefab,_index.toString());
+                        // Laya.Pool.recover("img"+_index.toString,prefab);
                     }
                 }
             }
@@ -450,10 +482,16 @@ export default class InGameView extends ui.InGameSceneUI implements SC{
                     }
                     if(dispear){
                         DropRule.Instance.CreateEffect(ball.score,new Laya.Vector2(prefab.x,prefab.y));
+                        let _rig = prefab.getComponent(Laya.RigidBody) as Laya.RigidBody;
+                        let _collider = prefab.getComponent(Laya.CircleCollider) as Laya.CircleCollider;
+                        _collider.enabled = false;
+                        _rig.enabled = false;
                         Laya.timer.clearAll(prefab);
                         prefab.removeSelf();
-                        prefab.destroy();
-                        // Laya.Pool.recover("img",prefab);
+                        // prefab.destroy();
+                        // let _index = DropRule.Instance.GetBallIndex(ball.score);
+                        // GamePool.Instance.RecoverModel(prefab,_index.toString());
+                        // Laya.Pool.recover("img"+_index.toString,prefab);
                     }
                 }
             }

+ 1 - 0
src/View/LoadView.ts

@@ -4,6 +4,7 @@ import { ViewManager, ViewType } from "./ViewManager";
 import { DropRule } from "../Tool/DropRule";
 import { GameControl } from "../Main/GameControl";
 import { GameManager } from "../Main/GameManager";
+import { ResourcesPath, AssetManager } from "../Main/AssetManager";
 export class LoadView{
     private static ins:LoadView;
     constructor(){