public void AddBg(GemBg gem) { if (GemBg != null) { throw new UnityException("GemBg is not empty"); } GemBg = gem; }
public void RemoveOneGemBg(GemBg gem) { gem.OnDeActivate(); if (usePool == true) { var id = GemBGConverter.GetGemInt(gem.Id); var poolItem = GemPoolItems.Find(pool => pool.GemId == id); if (poolItem == null) { poolItem = new GemPoolItem { GemId = id, Gems = new List<GameObject>() }; GemPoolItems.Add(poolItem); } gem.gameObject.transform.parent = transform; gem.gameObject.transform.localPosition = offPos; // Vector3.zero; gem.gameObject.SetActive(false); poolItem.Gems.Add(gem.gameObject); } else { Destroy(gem.gameObject); } }
public void RemoveOneGemBg(GemBg gem) { gem.OnDeActivate(); if (usePool == true) { var id = GemBGConverter.GetGemInt(gem.Id); var poolItem = GemPoolItems.Find(pool => pool.GemId == id); if (poolItem == null) { poolItem = new GemPoolItem { GemId = id, Gems = new List <GameObject>() }; GemPoolItems.Add(poolItem); } gem.gameObject.transform.parent = transform; gem.gameObject.transform.localPosition = offPos; // Vector3.zero; gem.gameObject.SetActive(false); poolItem.Gems.Add(gem.gameObject); } else { Destroy(gem.gameObject); } }
public GemBg GetOneGemBg(int id) { GemBg gemObject = null; var poolItem = GemPoolItems.Find(pool => pool.GemId == id); if (usePool == true && poolItem != null && poolItem.Gems.Count > 0) { var gem = poolItem.Gems[0]; gemObject = gem.GetComponent <GemBg>(); gem.gameObject.transform.parent = null; gem.gameObject.transform.localPosition = Vector3.zero; poolItem.Gems.RemoveAt(0); gem.gameObject.SetActive(true); } else { var name = GemBGConverter.GetGemName(id); var prefabItem = GemPrefabList.Find(a => a.Name.Equals(name)); var gObject = Instantiate(prefabItem.Prefab) as GameObject; gemObject = gObject.GetComponent <GemBg>(); } gemObject.OnActivate(); return(gemObject); }
public void AddBg(GemBg gem) { if (GemBg != null) throw new UnityException("GemBg is not empty"); GemBg = gem; }