private IEnumerator ArrowsCoroutine() { while (true) { transform.position = Vector3.Lerp( transform.position, transform.position.With(x: transform.position.x - globalSpeed.value), Time.fixedDeltaTime * lerpSpeed.value); if (transform.position.x < -60.0f) { pools.Spawn( PoolTag.Arrows, Vector3.zero.With(x: Consts.ARROWS_SEPARATION) ); pools.Spawn( PoolTag.Arrows, Vector3.zero.With(x: 0f) ); pools.Spawn( PoolTag.Arrows, Vector3.zero.With(x: -Consts.ARROWS_SEPARATION) ); } yield return(new WaitForFixedUpdate()); } }
private void OnPoolLoaded() { for (int i = 0; i < pools.arrowsPool.count; i++) { pools.Spawn( PoolTag.Arrows, Vector3.zero.With(x: Consts.ARROWS_SEPARATION * i) ); } }