/// <summary> /// Open UI in World Space /// </summary> /// <param name="target"></param> /// <param name="ui"></param> /// <param name="fadeTime"></param> /// <returns></returns> public GameObject Open(GameObject target, assGameUI ui, assUItoOpen interactableType = assUItoOpen.Unassigned, float fadeTime = 0.4f) { GameObject opened = null; GameObject orig = _uiBags[ui].UIPrefab; if (orig != null) { CreateCanvas(); WorldSpaceCanvas.transform.SetParent(target.transform, false); WorldSpaceCanvas.transform.localPosition = Vector2.up * 2; GameObject newObj = (GameObject)Instantiate(orig); newObj.TryGetComponent(out assButton button); button.UIToOpenIsNull(interactableType); newObj.transform.SetParent(WorldSpaceCanvas.transform, false); opened = newObj; //CurrentUIObjects.Add(newObj); CanvasGroup cg = newObj.GetComponent <CanvasGroup>(); if (cg != null) { StartCoroutine(Fade(UIFade.In, fadeTime, cg)); } } return(opened); }
public void UIToOpenIsNull(assUItoOpen type) { switch (type) { case assUItoOpen.Unassigned: break; case assUItoOpen.ShopTrigger: UIToShow = assGameUI.ShopTrigger; break; case assUItoOpen.ShopPanel: UIToShow = assGameUI.ShopPanel; break; } }
/// <summary> /// Open UI in Screen Space /// </summary> /// <param name="ui"></param> /// <param name="fadeTime"></param> /// <returns></returns> public GameObject Open(assGameUI ui, float fadeTime = 0.4f) { GameObject opened = null; GameObject orig = _uiBags[ui].UIPrefab; if (orig != null) { CreateCanvas(); GameObject newObj = (GameObject)Instantiate(orig); newObj.transform.SetParent(SceneCanvas.transform, false); opened = newObj; //CurrentUIObjects.Add(newObj); CanvasGroup cg = newObj.GetComponent <CanvasGroup>(); if (cg != null) { StartCoroutine(Fade(UIFade.In, fadeTime, cg)); } } return(opened); }