public T GenerateRadialAction <T>(ManageableObjet obj) where T : UserAction { var action = Instantiate(_objectGenerator.GetAction <T>()); action.RadialButton.Parent = _objectManager.MainPlanet.MainRadial.transform; action.Type = obj.Type; action.transform.SetParent(action.RadialButton.Parent, false); action.RadialButton.Init(); action.gameObject.SetActive(action.RadialButton.Active); action.SubMenu.SetActive(action.RadialButton.Active); action.RadialButton.Image.color = obj.Stats.Color; _objectManager.MainPlanet.MainRadial.Elements.Add(action); return(action); }