private void CreateNewPipes() { var pipesLimit = pipesSettings.GetPipesLimit(); if (currentPipes.Count < pipesLimit) { ISinglePipes pipes = CreatePipes(); InitializeBeginingPosition(pipes); pipes.InitialPipesData(ChooseRandomPipeData()); currentPipes.Add(pipes); } else { ISinglePipes pipes = currentPipes[0]; currentPipes.RemoveAt(0); currentPipes.Insert(pipesLimit - 1, pipes); InitializeBeginingPosition(pipes); } }
private void InitializeBeginingPosition(ISinglePipes pipes) { pipes.GetPipesTransform().position = beginingPoint.position; pipes.GetPipesTransform().position += new Vector3(0, GenerateNextHeight(), 0); }