Пример #1
0
    public void OnClickNextPuzzleButton()
    {
        Toggle activateToggle = puzzleSelectionToggleGroup.GetFirstActiveToggle();
        PuzzleDefinitionContainer container = activateToggle.GetComponent <PuzzleDefinitionContainer>();

        currentPuzzleDefinition.image      = container.puzzle.image;
        currentPuzzleDefinition.revealText = container.puzzle.revealText;

        StartNewGamePuzzle();
    }
Пример #2
0
    // Start is called before the first frame update
    void Start()
    {
        ScrollRect scrollRect = puzzleSelectionToggleGroup.GetComponentInParent <ScrollRect>();
        Scrollbar  scrollbar  = scrollRect.GetComponentInChildren <Scrollbar>();

        for (int i = 0; i < puzzleDefinitions.Length; i++)
        {
            RectTransform toggleGroupRectTransform = puzzleSelectionToggleGroup.GetComponent <RectTransform>();
            GameObject    toggleGameObject         = Instantiate <GameObject>(puzzleSelectionTogglePrefab, toggleGroupRectTransform);

            RectTransform toggleRectTransform = toggleGameObject.GetComponent <RectTransform>();

            RectTransform scrollRectRectTransform = scrollRect.GetComponent <RectTransform>();
            RectTransform scrollbarRectTransform  = scrollbar.GetComponent <RectTransform>();
            float         toggleGroupWidth        = scrollRectRectTransform.rect.width - scrollbarRectTransform.rect.width;

            toggleRectTransform.anchorMin        = new Vector2(0, 1);
            toggleRectTransform.anchorMax        = new Vector2(0, 1);
            toggleRectTransform.anchoredPosition = new Vector2(toggleGroupWidth / 2, -toggleGroupWidth * i);
            toggleRectTransform.sizeDelta        = new Vector2(toggleGroupWidth, toggleGroupWidth);

            PuzzleDefinitionContainer container = toggleGameObject.GetComponent <PuzzleDefinitionContainer>();
            container.puzzle.image      = puzzleDefinitions[i].image;
            container.puzzle.revealText = puzzleDefinitions[i].revealText;

            Image   toggleImage = toggleGameObject.GetComponentInChildren <Image>();
            Vector2 imageSize   = new Vector2(container.puzzle.image.width, container.puzzle.image.height);

            toggleImage.sprite = Sprite.Create(container.puzzle.image, new Rect(new Vector2(0, 0), imageSize), new Vector2(0.5f, 0.5f));

            Toggle toggle = toggleGameObject.GetComponent <Toggle>();
            toggle.group = puzzleSelectionToggleGroup;
        }

        puzzleSelectionToggleGroup.GetComponent <RectTransform>().anchoredPosition = new Vector2(0, 0);

        currentPuzzleDefinition = puzzleDefinitions[0];

        StartNewGamePuzzle();
    }