difenduandada
2024-12-31 34abe6963b344c882358274957f4b992456fee40
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
 
                (function() {
                    var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined';
                    var __module = nodeEnv ? module : {exports:{}};
                    var __filename = 'preview-scripts/assets/Scripts/mod/battle/battle_role_pool.js';
                    var __require = nodeEnv ? function (request) {
                        return cc.require(request);
                    } : function (request) {
                        return __quick_compile_project__.require(request, __filename);
                    };
                    function __define (exports, require, module) {
                        if (!nodeEnv) {__quick_compile_project__.registerModule(__filename, module);}"use strict";
cc._RF.push(module, 'a1aa6boItVC84F8MhXqHGe7', 'battle_role_pool');
// Scripts/mod/battle/battle_role_pool.js
 
"use strict";
 
// --------------------------------------------------------------------
// @author: shiraho@syg.com(必填, 创建模块的人员)
// @description:
//      战斗中需要的对象的对象池,区分真假战斗
// <br/>Create: new Date().toISOString()
// --------------------------------------------------------------------
var BattleRolePool = cc.Class({
  "extends": BaseClass,
  statics: {
    instance: null
  },
  initConfig: function initConfig() {
    this.realPools = new cc.NodePool(); // 战斗对象的预制体缓存对象池
 
    this.effectPools = new cc.NodePool(); // 战斗特效缓存对象池
 
    this.fontPools = new cc.NodePool(); // 战斗中的程序字缓存,主要是被动或者buff播报
 
    this.buffpools = new cc.NodePool(); // 战斗中的buff图标缓存
 
    this.dmgPoolsList = {}; // 战斗中伤害具体区分的对象池
  },
  // 返回这个对象池
  getRealPools: function getRealPools() {
    return this.realPools;
  },
  // 战斗对象丢到对象池中
  pushBackRole: function pushBackRole(role) {
    this.realPools.put(role);
  },
  // 获取特效对象池
  getEffectPools: function getEffectPools() {
    return this.effectPools;
  },
  // 回收特效对象池
  pushBackEffect: function pushBackEffect(effect) {
    this.effectPools.put(effect);
  },
  // 返回文字对象
  getFontPools: function getFontPools() {
    return this.fontPools;
  },
  // 回收文字对象
  pushBackFont: function pushBackFont(font) {
    this.fontPools.put(font);
  },
  // bufficon对象
  getBuffPools: function getBuffPools() {
    return this.buffpools;
  },
  // 回收buff对象
  pushBackBuffPools: function pushBackBuffPools(buff) {
    this.buffpools.put(buff);
  },
  // 战斗治疗和伤害数字节点对象池
  getDmgPools: function getDmgPools(type) {
    var pool = this.dmgPoolsList[type];
 
    if (pool == null) {
      pool = new cc.NodePool();
      this.dmgPoolsList[type] = pool;
    }
 
    return pool;
  },
  // 回收伤害数字
  pushBackDmgPools: function pushBackDmgPools(type, dmg) {
    var pool = this.dmgPoolsList[type];
 
    if (pool == null) {
      pool = new cc.NodePool();
      this.dmgPoolsList[type] = pool;
    }
 
    pool.put(dmg);
  }
});
 
BattleRolePool.getInstance = function () {
  if (!BattleRolePool.instance) {
    BattleRolePool.instance = new BattleRolePool();
    BattleRolePool.instance.initConfig();
  }
 
  return BattleRolePool.instance;
};
 
module.exports = BattleRolePool;
 
cc._RF.pop();
                    }
                    if (nodeEnv) {
                        __define(__module.exports, __require, __module);
                    }
                    else {
                        __quick_compile_project__.registerModuleFunc(__filename, function () {
                            __define(__module.exports, __require, __module);
                        });
                    }
                })();
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0c1xcbW9kXFxiYXR0bGVcXGJhdHRsZV9yb2xlX3Bvb2wuanMiXSwibmFtZXMiOlsiQmF0dGxlUm9sZVBvb2wiLCJjYyIsIkNsYXNzIiwiQmFzZUNsYXNzIiwic3RhdGljcyIsImluc3RhbmNlIiwiaW5pdENvbmZpZyIsInJlYWxQb29scyIsIk5vZGVQb29sIiwiZWZmZWN0UG9vbHMiLCJmb250UG9vbHMiLCJidWZmcG9vbHMiLCJkbWdQb29sc0xpc3QiLCJnZXRSZWFsUG9vbHMiLCJwdXNoQmFja1JvbGUiLCJyb2xlIiwicHV0IiwiZ2V0RWZmZWN0UG9vbHMiLCJwdXNoQmFja0VmZmVjdCIsImVmZmVjdCIsImdldEZvbnRQb29scyIsInB1c2hCYWNrRm9udCIsImZvbnQiLCJnZXRCdWZmUG9vbHMiLCJwdXNoQmFja0J1ZmZQb29scyIsImJ1ZmYiLCJnZXREbWdQb29scyIsInR5cGUiLCJwb29sIiwicHVzaEJhY2tEbWdQb29scyIsImRtZyIsImdldEluc3RhbmNlIiwibW9kdWxlIiwiZXhwb3J0cyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJQSxjQUFjLEdBQUdDLEVBQUUsQ0FBQ0MsS0FBSCxDQUFTO0FBQzFCLGFBQVNDLFNBRGlCO0FBRTFCQyxFQUFBQSxPQUFPLEVBQUU7QUFDTEMsSUFBQUEsUUFBUSxFQUFFO0FBREwsR0FGaUI7QUFNMUJDLEVBQUFBLFVBQVUsRUFBQyxzQkFBVTtBQUNqQixTQUFLQyxTQUFMLEdBQWlCLElBQUlOLEVBQUUsQ0FBQ08sUUFBUCxFQUFqQixDQURpQixDQUMyQjs7QUFDNUMsU0FBS0MsV0FBTCxHQUFtQixJQUFJUixFQUFFLENBQUNPLFFBQVAsRUFBbkIsQ0FGaUIsQ0FFMkI7O0FBQzVDLFNBQUtFLFNBQUwsR0FBaUIsSUFBSVQsRUFBRSxDQUFDTyxRQUFQLEVBQWpCLENBSGlCLENBRzJCOztBQUM1QyxTQUFLRyxTQUFMLEdBQWlCLElBQUlWLEVBQUUsQ0FBQ08sUUFBUCxFQUFqQixDQUppQixDQUkyQjs7QUFFNUMsU0FBS0ksWUFBTCxHQUFvQixFQUFwQixDQU5pQixDQU0yQjtBQUMvQyxHQWJ5QjtBQWUxQjtBQUNBQyxFQUFBQSxZQUFZLEVBQUMsd0JBQVU7QUFDbkIsV0FBTyxLQUFLTixTQUFaO0FBQ0gsR0FsQnlCO0FBb0IxQjtBQUNBTyxFQUFBQSxZQUFZLEVBQUMsc0JBQVNDLElBQVQsRUFBYztBQUN2QixTQUFLUixTQUFMLENBQWVTLEdBQWYsQ0FBbUJELElBQW5CO0FBQ0gsR0F2QnlCO0FBeUIxQjtBQUNBRSxFQUFBQSxjQUFjLEVBQUMsMEJBQVU7QUFDckIsV0FBTyxLQUFLUixXQUFaO0FBQ0gsR0E1QnlCO0FBOEIxQjtBQUNBUyxFQUFBQSxjQUFjLEVBQUMsd0JBQVNDLE1BQVQsRUFBZ0I7QUFDM0IsU0FBS1YsV0FBTCxDQUFpQk8sR0FBakIsQ0FBcUJHLE1BQXJCO0FBQ0gsR0FqQ3lCO0FBbUMxQjtBQUNBQyxFQUFBQSxZQUFZLEVBQUMsd0JBQVU7QUFDbkIsV0FBTyxLQUFLVixTQUFaO0FBQ0gsR0F0Q3lCO0FBd0MxQjtBQUNBVyxFQUFBQSxZQUFZLEVBQUMsc0JBQVNDLElBQVQsRUFBYztBQUN2QixTQUFLWixTQUFMLENBQWVNLEdBQWYsQ0FBbUJNLElBQW5CO0FBQ0gsR0EzQ3lCO0FBNkMxQjtBQUNBQyxFQUFBQSxZQUFZLEVBQUMsd0JBQVU7QUFDbkIsV0FBTyxLQUFLWixTQUFaO0FBQ0gsR0FoRHlCO0FBa0QxQjtBQUNBYSxFQUFBQSxpQkFBaUIsRUFBQywyQkFBU0MsSUFBVCxFQUFjO0FBQzVCLFNBQUtkLFNBQUwsQ0FBZUssR0FBZixDQUFtQlMsSUFBbkI7QUFDSCxHQXJEeUI7QUF1RDFCO0FBQ0FDLEVBQUFBLFdBQVcsRUFBQyxxQkFBU0MsSUFBVCxFQUFjO0FBQ3RCLFFBQUlDLElBQUksR0FBRyxLQUFLaEIsWUFBTCxDQUFrQmUsSUFBbEIsQ0FBWDs7QUFDQSxRQUFHQyxJQUFJLElBQUksSUFBWCxFQUFnQjtBQUNaQSxNQUFBQSxJQUFJLEdBQUcsSUFBSTNCLEVBQUUsQ0FBQ08sUUFBUCxFQUFQO0FBQ0EsV0FBS0ksWUFBTCxDQUFrQmUsSUFBbEIsSUFBMEJDLElBQTFCO0FBQ0g7O0FBQ0QsV0FBT0EsSUFBUDtBQUNILEdBL0R5QjtBQWlFMUI7QUFDQUMsRUFBQUEsZ0JBQWdCLEVBQUMsMEJBQVNGLElBQVQsRUFBZUcsR0FBZixFQUFtQjtBQUNoQyxRQUFJRixJQUFJLEdBQUcsS0FBS2hCLFlBQUwsQ0FBa0JlLElBQWxCLENBQVg7O0FBQ0EsUUFBSUMsSUFBSSxJQUFJLElBQVosRUFBa0I7QUFDZEEsTUFBQUEsSUFBSSxHQUFHLElBQUkzQixFQUFFLENBQUNPLFFBQVAsRUFBUDtBQUNBLFdBQUtJLFlBQUwsQ0FBa0JlLElBQWxCLElBQTBCQyxJQUExQjtBQUNIOztBQUNEQSxJQUFBQSxJQUFJLENBQUNaLEdBQUwsQ0FBU2MsR0FBVDtBQUNIO0FBekV5QixDQUFULENBQXJCOztBQTRFQTlCLGNBQWMsQ0FBQytCLFdBQWYsR0FBNkIsWUFBWTtBQUNyQyxNQUFJLENBQUMvQixjQUFjLENBQUNLLFFBQXBCLEVBQThCO0FBQzFCTCxJQUFBQSxjQUFjLENBQUNLLFFBQWYsR0FBMEIsSUFBSUwsY0FBSixFQUExQjtBQUNBQSxJQUFBQSxjQUFjLENBQUNLLFFBQWYsQ0FBd0JDLFVBQXhCO0FBQ0g7O0FBQ0QsU0FBT04sY0FBYyxDQUFDSyxRQUF0QjtBQUNILENBTkQ7O0FBUUEyQixNQUFNLENBQUNDLE9BQVAsR0FBaUJqQyxjQUFqQiIsInNvdXJjZVJvb3QiOiIvIiwic291cmNlc0NvbnRlbnQiOlsiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEBhdXRob3I6IHNoaXJhaG9Ac3lnLmNvbSjlv4XloassIOWIm+W7uuaooeWdl+eahOS6uuWRmClcbi8vIEBkZXNjcmlwdGlvbjpcbi8vICAgICAg5oiY5paX5Lit6ZyA6KaB55qE5a+56LGh55qE5a+56LGh5rGgLOWMuuWIhuecn+WBh+aImOaWl1xuLy8gPGJyLz5DcmVhdGU6IG5ldyBEYXRlKCkudG9JU09TdHJpbmcoKVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbnZhciBCYXR0bGVSb2xlUG9vbCA9IGNjLkNsYXNzKHtcbiAgICBleHRlbmRzOiBCYXNlQ2xhc3MsXG4gICAgc3RhdGljczoge1xuICAgICAgICBpbnN0YW5jZTogbnVsbFxuICAgIH0sXG5cbiAgICBpbml0Q29uZmlnOmZ1bmN0aW9uKCl7XG4gICAgICAgIHRoaXMucmVhbFBvb2xzID0gbmV3IGNjLk5vZGVQb29sKCk7ICAgICAgICAgLy8g5oiY5paX5a+56LGh55qE6aKE5Yi25L2T57yT5a2Y5a+56LGh5rGgXG4gICAgICAgIHRoaXMuZWZmZWN0UG9vbHMgPSBuZXcgY2MuTm9kZVBvb2woKTsgICAgICAgLy8g5oiY5paX54m55pWI57yT5a2Y5a+56LGh5rGgXG4gICAgICAgIHRoaXMuZm9udFBvb2xzID0gbmV3IGNjLk5vZGVQb29sKCk7ICAgICAgICAgLy8g5oiY5paX5Lit55qE56iL5bqP5a2X57yT5a2YLOS4u+imgeaYr+iiq+WKqOaIluiAhWJ1Zmbmkq3miqVcbiAgICAgICAgdGhpcy5idWZmcG9vbHMgPSBuZXcgY2MuTm9kZVBvb2woKTsgICAgICAgICAvLyDmiJjmlpfkuK3nmoRidWZm5Zu+5qCH57yT5a2YXG5cbiAgICAgICAgdGhpcy5kbWdQb29sc0xpc3QgPSB7fTsgICAgICAgICAgICAgICAgICAgICAvLyDmiJjmlpfkuK3kvKTlrrPlhbfkvZPljLrliIbnmoTlr7nosaHmsaBcbiAgICB9LFxuXG4gICAgLy8g6L+U5Zue6L+Z5Liq5a+56LGh5rGgXG4gICAgZ2V0UmVhbFBvb2xzOmZ1bmN0aW9uKCl7XG4gICAgICAgIHJldHVybiB0aGlzLnJlYWxQb29scztcbiAgICB9LFxuXG4gICAgLy8g5oiY5paX5a+56LGh5Lii5Yiw5a+56LGh5rGg5LitXG4gICAgcHVzaEJhY2tSb2xlOmZ1bmN0aW9uKHJvbGUpe1xuICAgICAgICB0aGlzLnJlYWxQb29scy5wdXQocm9sZSk7XG4gICAgfSxcblxuICAgIC8vIOiOt+WPlueJueaViOWvueixoeaxoFxuICAgIGdldEVmZmVjdFBvb2xzOmZ1bmN0aW9uKCl7XG4gICAgICAgIHJldHVybiB0aGlzLmVmZmVjdFBvb2xzO1xuICAgIH0sXG5cbiAgICAvLyDlm57mlLbnibnmlYjlr7nosaHmsaBcbiAgICBwdXNoQmFja0VmZmVjdDpmdW5jdGlvbihlZmZlY3Qpe1xuICAgICAgICB0aGlzLmVmZmVjdFBvb2xzLnB1dChlZmZlY3QpO1xuICAgIH0sXG5cbiAgICAvLyDov5Tlm57mloflrZflr7nosaFcbiAgICBnZXRGb250UG9vbHM6ZnVuY3Rpb24oKXtcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9udFBvb2xzO1xuICAgIH0sXG5cbiAgICAvLyDlm57mlLbmloflrZflr7nosaFcbiAgICBwdXNoQmFja0ZvbnQ6ZnVuY3Rpb24oZm9udCl7XG4gICAgICAgIHRoaXMuZm9udFBvb2xzLnB1dChmb250KVxuICAgIH0sXG5cbiAgICAvLyBidWZmaWNvbuWvueixoVxuICAgIGdldEJ1ZmZQb29sczpmdW5jdGlvbigpe1xuICAgICAgICByZXR1cm4gdGhpcy5idWZmcG9vbHM7XG4gICAgfSxcblxuICAgIC8vIOWbnuaUtmJ1Zmblr7nosaFcbiAgICBwdXNoQmFja0J1ZmZQb29sczpmdW5jdGlvbihidWZmKXtcbiAgICAgICAgdGhpcy5idWZmcG9vbHMucHV0KGJ1ZmYpO1xuICAgIH0sXG5cbiAgICAvLyDmiJjmlpfmsrvnlpflkozkvKTlrrPmlbDlrZfoioLngrnlr7nosaHmsaBcbiAgICBnZXREbWdQb29sczpmdW5jdGlvbih0eXBlKXtcbiAgICAgICAgdmFyIHBvb2wgPSB0aGlzLmRtZ1Bvb2xzTGlzdFt0eXBlXTtcbiAgICAgICAgaWYocG9vbCA9PSBudWxsKXtcbiAgICAgICAgICAgIHBvb2wgPSBuZXcgY2MuTm9kZVBvb2woKTtcbiAgICAgICAgICAgIHRoaXMuZG1nUG9vbHNMaXN0W3R5cGVdID0gcG9vbDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcG9vbDtcbiAgICB9LFxuXG4gICAgLy8g5Zue5pS25Lyk5a6z5pWw5a2XXG4gICAgcHVzaEJhY2tEbWdQb29sczpmdW5jdGlvbih0eXBlLCBkbWcpe1xuICAgICAgICB2YXIgcG9vbCA9IHRoaXMuZG1nUG9vbHNMaXN0W3R5cGVdO1xuICAgICAgICBpZiAocG9vbCA9PSBudWxsKSB7XG4gICAgICAgICAgICBwb29sID0gbmV3IGNjLk5vZGVQb29sKCk7XG4gICAgICAgICAgICB0aGlzLmRtZ1Bvb2xzTGlzdFt0eXBlXSA9IHBvb2w7XG4gICAgICAgIH1cbiAgICAgICAgcG9vbC5wdXQoZG1nKTtcbiAgICB9LFxufSk7XG5cbkJhdHRsZVJvbGVQb29sLmdldEluc3RhbmNlID0gZnVuY3Rpb24gKCkge1xuICAgIGlmICghQmF0dGxlUm9sZVBvb2wuaW5zdGFuY2UpIHtcbiAgICAgICAgQmF0dGxlUm9sZVBvb2wuaW5zdGFuY2UgPSBuZXcgQmF0dGxlUm9sZVBvb2woKTtcbiAgICAgICAgQmF0dGxlUm9sZVBvb2wuaW5zdGFuY2UuaW5pdENvbmZpZygpO1xuICAgIH1cbiAgICByZXR1cm4gQmF0dGxlUm9sZVBvb2wuaW5zdGFuY2U7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gQmF0dGxlUm9sZVBvb2w7XG4iXX0=