// Token: 0x060024F0 RID: 9456 RVA: 0x000A106A File Offset: 0x0009F26A
        private RuleChoiceController CreateChoice()
        {
            GameObject gameObject = UnityEngine.Object.Instantiate <GameObject>(this.choicePrefab, this.choiceContainer);

            gameObject.SetActive(true);
            RuleChoiceController component = gameObject.GetComponent <RuleChoiceController>();

            component.strip = this;
            return(component);
        }
        private static void RuleSelectedHighlightUpdate(RoR2.UI.RuleChoiceController choiceController, bool active)
        {
            var selectedHighlight = choiceController.transform.Find("ButtonSelectionHighlight, Selected");

            if (!selectedHighlight)
            {
                return;
            }

            selectedHighlight.gameObject.SetActive(active);
        }
 // Token: 0x060024F1 RID: 9457 RVA: 0x000A1090 File Offset: 0x0009F290
 private void DestroyChoice(RuleChoiceController choiceController)
 {
     UnityEngine.Object.Destroy(choiceController.gameObject);
 }
        private static IEnumerator RuleScrollCoroutine(RoR2.UI.RuleBookViewerStrip ruleBookViewerStrip, RoR2.UI.RuleChoiceController choiceController)
        {
            var localTime   = 0F;
            var velocity    = 0F;
            var endPosition = -choiceController.transform.localPosition.x;

            ruleBookViewerStrip.currentPosition = ruleBookViewerStrip.choiceContainer.transform.localPosition.x;

            while (localTime < ruleScrollDuration)
            {
                ruleBookViewerStrip.currentPosition = Mathf.SmoothDamp(ruleBookViewerStrip.currentPosition, endPosition, ref velocity, ruleScrollDuration);
                ruleBookViewerStrip.UpdatePosition();

                yield return(new WaitForEndOfFrame());

                localTime += Time.deltaTime;
            }

            ruleBookViewerStrip.currentPosition = endPosition;
            ruleBookViewerStrip.UpdatePosition();
        }
        private static void SetupRuleButton(RoR2.UI.RuleBookViewerStrip ruleBookViewerStrip, RoR2.UI.RuleChoiceController choiceController)
        {
            choiceController.hgButton.onClick.AddListener(OnClick);
            choiceController.hgButton.onSelect.AddListener(OnSelect);

            foreach (var refreshOrder in choiceController.GetComponentsInChildren <RefreshCanvasDrawOrder>(true))
            {
                refreshOrder.enabled = false;
                refreshOrder.canvas.overrideSorting = false;
            }

            void OnClick()
            {
                if (!choiceController.canVote)
                {
                    return;
                }
                choiceController.StartCoroutine(RuleScrollCoroutine(ruleBookViewerStrip, choiceController));
            }

            void OnSelect()
            {
                var eventSystemLocator = choiceController.hgButton.eventSystemLocator;

                if (!eventSystemLocator || !eventSystemLocator.eventSystem || eventSystemLocator.eventSystem.currentInputSource != RoR2.UI.MPEventSystem.InputSource.Gamepad)
                {
                    return;
                }

                choiceController.StartCoroutine(RuleScrollCoroutine(ruleBookViewerStrip, choiceController));
            }
        }