636d3adcdd7a5a46c0d9e3ad1d500b1b0c6479ff 5.6 KB

12345678
  1. {
  2. "code": "import Dictionary from \"../Util/Dictionary\";\r\nvar Sprite3D = Laya.Sprite3D;\r\nexport var PoolType;\r\n(function (PoolType) {\r\n PoolType[PoolType[\"CoinText1\"] = 0] = \"CoinText1\";\r\n PoolType[PoolType[\"WarnTips\"] = 1] = \"WarnTips\";\r\n PoolType[PoolType[\"CoinText2\"] = 2] = \"CoinText2\";\r\n PoolType[PoolType[\"XiaofeiEffect\"] = 3] = \"XiaofeiEffect\";\r\n PoolType[PoolType[\"Jianzhushengji\"] = 4] = \"Jianzhushengji\";\r\n PoolType[PoolType[\"jinbi\"] = 5] = \"jinbi\";\r\n})(PoolType || (PoolType = {}));\r\nexport class PoolManager {\r\n constructor() {\r\n this.poolDic = new Dictionary();\r\n this.prefabDic = new Dictionary();\r\n this.singleobjDic = new Dictionary();\r\n }\r\n static get Instance() {\r\n return PoolManager.instance || (PoolManager.instance = new PoolManager());\r\n }\r\n InitData(name, prefab) {\r\n if (prefab != null) {\r\n if (!this.prefabDic.has(name))\r\n this.prefabDic.set(name, prefab);\r\n }\r\n }\r\n HasSprInPool(name) {\r\n return this.prefabDic.has(name);\r\n }\r\n SetActiveObject(name) {\r\n if (this.poolDic.has(name)) {\r\n if (this.poolDic.get(name).length > 0) {\r\n var result = this.poolDic.get(name).shift();\r\n result.active = true;\r\n return result;\r\n }\r\n else {\r\n if (this.prefabDic.has(name)) {\r\n var curObj = Sprite3D.instantiate(this.prefabDic.get(name));\r\n curObj.name = name;\r\n console.log(\"正在克隆中>>>>>\" + name + \"__id:\" + curObj.id);\r\n return curObj;\r\n }\r\n else {\r\n return null;\r\n }\r\n }\r\n }\r\n else {\r\n if (this.prefabDic.has(name)) {\r\n var curObj = Sprite3D.instantiate(this.prefabDic.get(name));\r\n curObj.name = name;\r\n console.log(\"正在克隆中>>>>>\" + name + \"__id:\" + curObj.id);\r\n return curObj;\r\n }\r\n else {\r\n return null;\r\n }\r\n }\r\n }\r\n SetActiveForUi(type) {\r\n if (this.singleobjDic.has(type)) {\r\n if (this.singleobjDic.get(type).length > 0) {\r\n var result = this.singleobjDic.get(type).shift();\r\n result.visible = true;\r\n return result;\r\n }\r\n else {\r\n return this.GetByType(type);\r\n }\r\n }\r\n else {\r\n return this.GetByType(type);\r\n }\r\n }\r\n GetByType(type) {\r\n if (type == PoolType.WarnTips) {\r\n var _t = new Laya.Text();\r\n _t.width = 720;\r\n _t.height = 60;\r\n _t.align = \"center\";\r\n _t.valign = \"middle\";\r\n _t.fontSize = 35;\r\n _t.bold = true;\r\n _t.pivotX = 360;\r\n _t.pivotY = 30;\r\n _t.color = \"#ffffff\";\r\n _t.stroke = 5;\r\n _t.strokeColor = \"#000000\";\r\n return _t;\r\n }\r\n else if (type == PoolType.CoinText1) {\r\n var _t = new Laya.Text();\r\n _t.width = 260;\r\n _t.height = 50;\r\n _t.align = \"center\";\r\n _t.valign = \"middle\";\r\n _t.fontSize = 30;\r\n _t.bold = true;\r\n _t.color = \"#f8ee08\";\r\n _t.stroke = 4;\r\n _t.strokeColor = \"#000000\";\r\n return _t;\r\n }\r\n else if (type == PoolType.CoinText2) {\r\n var _t = new Laya.Text();\r\n _t.width = 260;\r\n _t.height = 50;\r\n _t.align = \"center\";\r\n _t.valign = \"middle\";\r\n _t.fontSize = 35;\r\n _t.bold = true;\r\n _t.pivotX = 130;\r\n _t.pivotY = 25;\r\n _t.color = \"#ff2800\";\r\n _t.stroke = 4;\r\n _t.strokeColor = \"#000000\";\r\n return _t;\r\n }\r\n }\r\n SetDisableForUi(type, go) {\r\n go.visible = false;\r\n go.removeSelf();\r\n if (!this.singleobjDic.has(type)) {\r\n this.singleobjDic.set(type, new Array());\r\n }\r\n this.singleobjDic.get(type).push(go);\r\n }\r\n SetDisableObject(go) {\r\n if (!go)\r\n return;\r\n go.active = false;\r\n go.removeSelf();\r\n var key = go.name;\r\n if (!this.poolDic.has(key)) {\r\n this.poolDic.set(key, new Array());\r\n }\r\n this.poolDic.get(key).push(go);\r\n }\r\n SetDisableMutiObject(go, timer) {\r\n Laya.timer.once(timer, this, () => {\r\n if (go)\r\n go.active = false;\r\n var key = go.name;\r\n if (!this.poolDic.has(key)) {\r\n this.poolDic.set(key, new Array());\r\n }\r\n this.poolDic.get(key).push(go);\r\n });\r\n }\r\n}\r\nPoolManager.pooltype = {\r\n player: \"player\",\r\n plane: \"plane\",\r\n EnemyCar: \"EnemyCar\",\r\n BossCar: \"BossCar\",\r\n Enemy: \"Enemy\",\r\n PlayerBullet: \"PlayerBullet\",\r\n helmet: \"helmet\",\r\n EnemyBullet: \"EnemyBullet\",\r\n Gun: \"gun\",\r\n Glass: \"Glass\",\r\n Hat: \"Hat\",\r\n};\r\n",
  3. "references": [
  4. "D:/GitProject/GunGang/gungang_laya/gungang/src/Util/Dictionary.ts",
  5. "D:/GitProject/GunGang/gungang_laya/gungang/src/GameLogic/GameDefined.ts"
  6. ]
  7. }