private void InitializationPool() { for (var i = 0; i < _sizePool; i++) { TimeRemaining = new TimeRemaining(); var ammunition = CreateAmmunition(); AddTime(TimeRemaining); PoolObjectsAmmunition[ammunition.GetHashCode()] = ammunition; AddAmmunition(ammunition); ReturnToPool(ammunition.GetHashCode()); } }
public virtual void SetActive(bool value) { IsActive = value; if (value) { Transform.SetParent(null); GameObject.SetActive(true); TimeRemaining.StartTimer(AmmunitionProviders.TimeToDestruct); } else { GameObject.SetActive(false); Transform.position = Vector3.zero; TimeRemaining.StopTimer(); Force = 0; } }