private void Update() { if (move.canMove) { if (timerStarted) { currentTime += Time.deltaTime; if (currentTime >= lifeDuration) { timerStarted = false; currentTime = 0f; gameObject.SetActive(false); parentPool.Return(this); } } move.Move(direction); } }