WXGame/Blacksmith/Assets/Script/PrefabPool.cs.rej
DESKTOP-DDTRVOR\asus 34cb342fd2 提交人物
2024-12-22 20:56:03 +08:00

29 lines
1.0 KiB
Plaintext

diff a/Blacksmith/Assets/Script/PrefabPool.cs b/Blacksmith/Assets/Script/PrefabPool.cs (rejected hunks)
@@ -34,6 +34,26 @@
obj.SetActive(true);
action.Invoke(obj);
}
+ public void LoadObj(string key,int i,Action<GameObject,int> action)
+ {
+ //如果池中没有该游戏物体或者游戏物体的队列中已经没有剩余的游戏对象时。
+ //在这种情况下需要实例化一个新的物体,然后在判断是否需要在池中新加一个健值对还是直接放入队列中去
+ //然后把新生成的放入池中。
+
+ if (!objDic.ContainsKey(key)||objDic[key].Count==0) {
+ AssetBundleManager.ins.LoadAsset(key, (GameObject obj) =>
+ {
+ obj.name = key;
+ obj.SetActive(true);
+ action.Invoke(obj,i);
+ });
+ return;
+ }
+
+ var obj = objDic[key].Dequeue();
+ obj.SetActive(true);
+ action.Invoke(obj,i);
+ }
public void AddPond(string key,int num)
{