HomeAction.ts 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. import { _decorator, Button, Component, director, game, instantiate, Node, Sprite, tween, Vec3 } from 'cc';
  2. import ResMgr from './ResMgr';
  3. import { AssetType, Clips } from './Enums';
  4. import { AudioMgr } from './AudioMgr';
  5. import { Tools } from './Tools';
  6. import { Global } from './Global';
  7. import { PoolMgr } from './PoolMagr';
  8. import { LevelAction } from './LevelAction';
  9. import { WxPlatform } from './ad/WxPlatform';
  10. import { LayerAction } from './LayerAction';
  11. import { ElementAction } from './ElementAction';
  12. const { ccclass, property } = _decorator;
  13. @ccclass('HomeAction')
  14. export class HomeAction extends Component {
  15. @property({type:Node})
  16. logo:Node = null;
  17. @property(Sprite)
  18. load: Sprite = null;
  19. @property({type:Node})
  20. btns_layer:Node = null;
  21. private isload = true;
  22. load_num = 0;
  23. @property({type:String})
  24. ad_intersitial_id:string;
  25. @property({type:String})
  26. ad_video_id:string;
  27. onLoad() {
  28. console.log("zh:homeAction.ts onLoad");
  29. game.frameRate = 60;
  30. }
  31. async start() {
  32. this.btns_layer.active = false;
  33. Global.ad_intersitial_id = this.ad_intersitial_id;
  34. Global.ad_video_id = this.ad_video_id;
  35. WxPlatform.ins.wechat_setting();
  36. await this.loadRes();
  37. }
  38. async loadRes() {
  39. director.preloadScene("main",()=>{
  40. console.log(">>>main scene preload completed!!");
  41. this.show_btns();
  42. });
  43. await ResMgr.ins.loadBundle(1, 0.1);
  44. await ResMgr.ins.loadRes(1, AssetType.Prefab, 0.6)
  45. await ResMgr.ins.loadRes(1, AssetType.Sound, 0.32)
  46. }
  47. start_game(){
  48. AudioMgr.ins.playSound(Clips.btn_1);
  49. director.loadScene("main");
  50. }
  51. show_btns() {
  52. this.load_num++;
  53. if(this.load_num>=2){
  54. this.load.node.parent.parent.active = false;
  55. this.btns_layer.active = true;
  56. }
  57. }
  58. update(deltaTime: number) {
  59. if (!this.isload) return;
  60. this.load.fillRange = Global.LoadingRate;
  61. if (Global.LoadingRate >= 0.99) {
  62. this.isload = false;
  63. this.show_btns();
  64. }
  65. }
  66. check_lvl_data(){
  67. console.log("测试数据安全性");
  68. for(let lvl=1;lvl<=50;lvl++){
  69. let level_prebab = PoolMgr.ins.getPrefab("lvl_"+lvl);
  70. if(!level_prebab){
  71. console.log(lvl,"没有这个等级");
  72. break;
  73. }
  74. let lvl_node = instantiate(level_prebab);
  75. let pin_total = lvl_node.getComponent(LevelAction).get_hole_num();
  76. console.log(lvl,"关,钉子总数:",pin_total,"取模:",pin_total%3);
  77. {
  78. lvl_node.children.forEach(layer_node => {
  79. // console.log("init_level this.node>>>>>:", this.node);
  80. let layer = layer_node.getComponent(LayerAction);
  81. if(!layer_node.active){
  82. console.log("错误》〉",lvl,"关 ",layer_node.name," layer 是隐藏的");
  83. }
  84. if(!layer){
  85. console.log("错误》〉",lvl,"关 ",layer_node.name," layer action错误");
  86. }
  87. layer_node.children.forEach(ele_node=>{
  88. if(!ele_node.active){
  89. console.log("错误》〉",lvl,"关 ",layer_node.name," layer 节点>>",ele_node.name," 是隐藏的");
  90. }
  91. if(!ele_node.getComponent(ElementAction)){
  92. console.log("错误》〉",lvl,"关 ",layer_node.name," layer 节点>>",ele_node.name," action错误");
  93. }
  94. })
  95. // console.log("获取钉子数量:",num,layer_node.active);
  96. });
  97. }
  98. }
  99. }
  100. }