private GameObject MakeFormation(MetaFormationData metaData) { GameObject formation = Instantiate(newFormation); formation.transform.SetParent(target); formation.GetComponent <FormationUI>().SetState(); formation.transform.localScale = new Vector3(1f, 1f, 1f); formation.GetComponent <FormationUI>().metaFormationData = metaData; return(formation); }
private void RebuildFormation(Formation formation) { MetaFormationData metaData = allowedFormations.Find(x => formation.GetType() == x.formationType); if (metaData == null) { return; } GameObject newFormation = MakeFormation(metaData); newFormation.GetComponent <FormationUI>().realFormation = formation; Instantiate(metaData.creator(uiElements)).transform.SetParent(newFormation.transform); }
private void MakeNewFormation() { string formation_name = formation_selector.options[formation_selector.value].text; MetaFormationData metaData = allowedFormations.Find(x => x.name.Equals(formation_name)); GameObject newFormation = new GameObject(); newFormation.transform.parent = formations; newFormation.AddComponent(metaData.formationType); GameObject formationUI = MakeFormation(metaData); formationUI.GetComponent <FormationUI>().realFormation = newFormation.GetComponent <Formation>(); Instantiate(metaData.creator(uiElements)).transform.SetParent(formationUI.transform); }