public Transform GetPools(PoolEnums.PoolId poolID, bool IsEnable = true) { var poolKey = PoolEnums.GetPoolKey(poolID); Transform poolReturn = null; List <Transform> poolExport = null; if (poolSaver.TryGetValue(poolKey, out poolExport)) { if (poolExport.Count > 0) { poolReturn = poolExport[0]; poolExport.RemoveAt(0); } } if (ReferenceEquals(poolReturn, null)) { poolReturn = InstancePool(poolID); } if (!ReferenceEquals(poolReturn, null) && poolReturn.gameObject.activeSelf != IsEnable) { poolReturn.gameObject.SetActive(IsEnable); } return(poolReturn); }
public PoolManager SetPools(PoolEnums.PoolId poolID, Transform poolComponent) { var poolKey = PoolEnums.GetPoolKey(poolID); List <Transform> poolImport = null; if (poolSaver.TryGetValue(poolKey, out poolImport)) { if (!poolImport.Contains(poolComponent)) { poolImport.Add(poolComponent); } } else { poolImport = new List <Transform> { poolComponent }; poolSaver.Add(poolKey, poolImport); } if (poolComponent.gameObject.activeSelf == true) { poolComponent.gameObject.SetActive(false); } return(this); }
private Transform InstancePool(PoolEnums.PoolId poolID) { for (int i = 0; i < poolRegister.Count; i++) { var poolReturn = poolRegister[i].InstancePool(poolID); if (!ReferenceEquals(poolReturn, null)) { return(poolReturn); } } return(null); }
public Transform InstancePool(PoolEnums.PoolId poolID) { for (int i = 0; i < poolData.Length; i++) { var item = poolData[i]; if (item.poolID == poolID) { if (item.IsExpand == false) { return(null); } var poolInstance = Instantiate(item.poolPrefab.gameObject, transform); return(poolInstance.transform); } } return(null); }
public PoolManager RemovePoolKeys(PoolEnums.PoolId poolID, bool IsDestroy = true) { var poolKey = PoolEnums.GetPoolKey(poolID); if (IsDestroy) { List <Transform> poolExport = null; if (poolSaver.TryGetValue(poolKey, out poolExport)) { for (int i = 0; i < poolExport.Count; i++) { Destroy(poolExport[i].gameObject); } } } if (poolSaver.ContainsKey(poolKey)) { poolSaver.Remove(poolKey); } return(this); }
public void Start1() { List <CarDataProperties> _carData = new List <CarDataProperties>(); for (int i = 0; i < 81; i++) { CarDataProperties _Properties = new CarDataProperties(); int _index = 0; int _level = 0; if (i < _BulletsData.GetBulletDatas().Length) { _level = _BulletsData.GetBulletDatas()[i].Level; _index = i; } else { _level = i + 1; _index = 29; } _Properties.BulletId = _BulletsData.GetBulletDatas()[_index].BulletId; _Properties.Level = _level; _Properties.PrefabName = "[Node] Item " + (i + 1); _Properties.Damage = _BulletsData.GetBulletDatas()[_index].Damage; _Properties.DamageUnit = _BulletsData.GetBulletDatas()[_index].DamageUnit; _Properties.SpeedMoving = _BulletsData.GetBulletDatas()[_index].SpeedMoving; _Properties.CritChange = _BulletsData.GetBulletDatas()[_index].CritChange; _Properties.CritAmount = _BulletsData.GetBulletDatas()[_index].CritAmount; _Properties.DamageMissRange = _BulletsData.GetBulletDatas()[_index].DamageMissRange; _Properties.DamageCoefficient = _BulletsData.GetBulletDatas()[_index].DamageCoefficient; if (i < _ItemNodeImage.GetIcons().Length) { _Properties.Icon = _ItemNodeImage.GetIcons()[i].Icon; } else { _Properties.Icon = _BasePlaneComponents[i]._Sprite(); } PoolEnums.PoolId ItemPoolId = 0; if (i < _ItemNodeDatal.GetItemNodeData().Length) { ItemPoolId = _ItemNodeDatal.GetItemNodeData()[_index].ItemPoolId; _index = i; } else { ItemPoolId = (PoolEnums.PoolId)(123 + (i - 30)); _index = 29; } _Properties.ItemPoolId = ItemPoolId; _Properties.PerCircleTime = _ItemNodeDatal.GetItemNodeData()[_index].PerCircleTime; _Properties.ProfitPerSec = _ItemNodeDatal.GetItemNodeData()[_index].ProfitPerSec; _Properties.ProfitPerSecUnit = _ItemNodeDatal.GetItemNodeData()[_index].ProfitPerSecUnit; _Properties.Exp = _ItemNodeDatal.GetItemNodeData()[_index].Exp; _Properties.Prices = _ItemNodeDatal.GetItemNodeData()[_index].Prices; _Properties.PricesUnit = _ItemNodeDatal.GetItemNodeData()[_index].PricesUnit; _Properties.PricesUpgrade = _ItemNodeDatal.GetItemNodeData()[_index].PricesUpgrade; _Properties.PricesUnitUpgrade = _ItemNodeDatal.GetItemNodeData()[_index].PricesUnitUpgrade; _Properties.PricesCoefficient = _ItemNodeDatal.GetItemNodeData()[_index].PricesCoefficient; _Properties.PriceUpgradeCoefficient = _ItemNodeDatal.GetItemNodeData()[_index].PriceUpgradeCoefficient; _Properties.ProfitPerUpgradeCoefficient = _ItemNodeDatal.GetItemNodeData()[_index].ProfitPerUpgradeCoefficient; _Properties.BuyFromLevel = _ItemNodeDatal.GetItemNodeData()[_index].BuyFromLevel; if (i < _WeaponData.GetWeaponProperties().Length) { _index = i; } else { _index = 29; } _Properties.FireRate = _WeaponData.GetWeaponProperties()[_index].FireRate; _Properties.NumberBullets = _WeaponData.GetWeaponProperties()[_index].NumberBullets; if (i < _ItemShopDetail.GetItemProperties().Length) { _index = i; } else { _index = 29; } _Properties.VSpeed = _ItemShopDetail.GetItemProperties()[_index].Speed; _Properties.VEarning = _ItemShopDetail.GetItemProperties()[_index].Earning; _Properties.VDamage = _ItemShopDetail.GetItemProperties()[_index].Damage; _carData.Add(_Properties); } _CarData.SetCarDataPropertie(_carData.ToArray()); /* * public float Speed; * public float Earning; * public float Damage; */ }
public static PoolManager RemovePoolKeyExtension(PoolEnums.PoolId poolID, bool IsDestroy = true) { return(PoolManager.InstanceAwake() == null ? null : PoolManager.Instance.RemovePoolKeys(poolID, IsDestroy)); }
public static Transform GetPool(PoolEnums.PoolId poolID, bool IsEnable = true) { return(PoolManager.InstanceAwake().GetPools(poolID, IsEnable)); }
public static PoolManager SetPool(PoolEnums.PoolId poolID, Transform poolComponent) { return(PoolManager.InstanceAwake() == null ? null : PoolManager.Instance.SetPools(poolID, poolComponent)); }