void DrawFormationIndication() { Vector3 formationOrigin = Utilities.GetMouseWorldPosition(); List <Vector3> formationPositions; int positionsToDraw; // Grabs formation positions if (selectedPhalanx != null) { formationPositions = selectedPhalanx.GetPhalanxFrontline(formationOrigin, formationDirection); positionsToDraw = formationPositions.Count; } else { formationPositions = fGen.GetCircleFormation(formationOrigin); positionsToDraw = selectedEntities.Count; } // Draws formation for (int i = 0; i < positionsToDraw; i++) { // Generates new indicator if neccessary if (positionIndicators.Count <= i) { GameObject instance = Instantiate(unitPositionIndicatorPrefab, Vector2.zero, Quaternion.identity, positionIndicatorParent); positionIndicators.Add(instance); } // Sets indicator active and position if (i < formationPositions.Count) { positionIndicators[i].SetActive(true); positionIndicators[i].transform.position = formationPositions[i]; } else { positionIndicators[i].SetActive(false); } } }