IEnumerator ChooseLogoButtonsPanelRefresh(DisplayedLogo toDisplay) { ChooseLogoButtonsPanelOffScreen(); yield return(new WaitForEndOfFrame()); ChooseLogoButtonsPanelOnScreen(toDisplay); }
public void ChooseLogoButtonsPanelOffScreen() { if (currentLogoWithDisabledRaycasting != null) { currentLogoWithDisabledRaycasting.GetComponent <BoxCollider>().enabled = true; } currentLogoWithDisabledRaycasting = null; if (currentlyDisplayedButtonsPanel != null) { Destroy(currentlyDisplayedButtonsPanel.gameObject); } currentlyDisplayedButtonsPanel = null; if (currentlySelectedDisplayedLogo != null) { currentlySelectedDisplayedLogo.animator.transform.SetSiblingIndex(defaultLogoSiblingIndex); } currentlySelectedDisplayedLogo = null; chooseLogoButtonsPanelOnScreen = false; }
public void ChooseLogoButtonsPanelOnScreen(DisplayedLogo displayedLogo) { if (chooseLogoButtonsPanelOnScreen) { ChooseLogoButtonsPanelOffScreen(); } currentlySelectedDisplayedLogo = displayedLogo; defaultLogoSiblingIndex = currentlySelectedDisplayedLogo.animator.transform.GetSiblingIndex(); print("Default: " + defaultLogoSiblingIndex); int buttonsPanelSiblingIndex = defaultLogoSiblingIndex + 2; chooseLogoButtonsPanelOnScreen = true; if (displayedLogo.NeedsRightButtonsPanel()) { currentLogoWithDisabledRaycasting = right_chooseLogoButtonsPanelPrefab.transform.parent.GetChild(defaultLogoSiblingIndex + 1).GetComponent <UIObjectAnimator>(); currentLogoWithDisabledRaycasting.GetComponent <BoxCollider>().enabled = false; currentlyDisplayedButtonsPanel = Instantiate(right_chooseLogoButtonsPanelPrefab, right_chooseLogoButtonsPanelPrefab.transform.position, right_chooseLogoButtonsPanelPrefab.transform.rotation, mainChooseLogoContentPanel.transform); currentlyDisplayedButtonsPanel.gameObject.SetActive(true); currentlyDisplayedButtonsPanel.transform.SetSiblingIndex(buttonsPanelSiblingIndex); currentlySelectedDisplayedLogo.animator.transform.SetSiblingIndex(buttonsPanelSiblingIndex); print("new: " + currentlyDisplayedButtonsPanel.transform.GetSiblingIndex()); Vector2 prefabAnchorMin = right_chooseLogoButtonsPanelPrefab.GetComponent <RectTransform>().anchorMin; Vector2 prefabAnchorMax = right_chooseLogoButtonsPanelPrefab.GetComponent <RectTransform>().anchorMax; currentlyDisplayedButtonsPanel.GetComponent <RectTransform>().anchorMin = prefabAnchorMin + new Vector2(7.875f / 40 * displayedLogo.index.x, -7.875f / 21 * displayedLogo.index.y); currentlyDisplayedButtonsPanel.GetComponent <RectTransform>().anchorMax = prefabAnchorMax + new Vector2(7.875f / 40 * displayedLogo.index.x, -7.875f / 21 * displayedLogo.index.y); currentlyDisplayedButtonsPanel.OnScreen(); } else { currentLogoWithDisabledRaycasting = right_chooseLogoButtonsPanelPrefab.transform.parent.GetChild(defaultLogoSiblingIndex - 1).GetComponent <UIObjectAnimator>(); currentLogoWithDisabledRaycasting.GetComponent <BoxCollider>().enabled = false; currentlyDisplayedButtonsPanel = Instantiate(left_chooseLogoButtonsPanelPrefab, left_chooseLogoButtonsPanelPrefab.transform.position, left_chooseLogoButtonsPanelPrefab.transform.rotation, mainChooseLogoContentPanel.transform); currentlyDisplayedButtonsPanel.gameObject.SetActive(true); currentlyDisplayedButtonsPanel.transform.SetSiblingIndex(buttonsPanelSiblingIndex); currentlySelectedDisplayedLogo.animator.transform.SetSiblingIndex(buttonsPanelSiblingIndex); Vector2 prefabAnchorMin = left_chooseLogoButtonsPanelPrefab.GetComponent <RectTransform>().anchorMin; Vector2 prefabAnchorMax = left_chooseLogoButtonsPanelPrefab.GetComponent <RectTransform>().anchorMax; currentlyDisplayedButtonsPanel.GetComponent <RectTransform>().anchorMin = prefabAnchorMin + new Vector2(0, -7.875f / 21 * displayedLogo.index.y); currentlyDisplayedButtonsPanel.GetComponent <RectTransform>().anchorMax = prefabAnchorMax + new Vector2(0, -7.875f / 21 * displayedLogo.index.y); currentlyDisplayedButtonsPanel.OnScreen(); } }