예제 #1
0
 private void ResetSortToggles(Toggle exceptToggle)
 {
     for (int i = 0; i < ColumnTitlesContainer.childCount; i++)
     {
         Toggle           component           = ColumnTitlesContainer.GetChild(i).GetComponent <Toggle>();
         ImageToggleState componentInChildren = component.GetComponentInChildren <ImageToggleState>(true);
         if ((Object)component != (Object)exceptToggle)
         {
             componentInChildren.SetDisabled();
         }
     }
 }
예제 #2
0
 private void SetInteractable(bool state)
 {
     if (state)
     {
         if (!IsOpen)
         {
             expandArrow.SetInactive();
         }
         else
         {
             expandArrow.SetActive();
         }
     }
     else
     {
         SetOpen(false);
         expandArrow.SetDisabled();
     }
 }
    private void ResetSortToggles(Toggle exceptToggle)
    {
        for (int i = 0; i < ColumnTitlesContainer.childCount; i++)
        {
            Toggle componentInChildren = ColumnTitlesContainer.GetChild(i).Find("Title").GetComponentInChildren <Toggle>();
            if (!((UnityEngine.Object)componentInChildren == (UnityEngine.Object)null))
            {
                ImageToggleState componentInChildren2 = componentInChildren.GetComponentInChildren <ImageToggleState>(true);
                if ((UnityEngine.Object)componentInChildren != (UnityEngine.Object)exceptToggle)
                {
                    componentInChildren2.SetDisabled();
                }
            }
        }
        ImageToggleState componentInChildren3 = SortEveryoneToggle.GetComponentInChildren <ImageToggleState>(true);

        if ((UnityEngine.Object)SortEveryoneToggle != (UnityEngine.Object)exceptToggle)
        {
            componentInChildren3.SetDisabled();
        }
    }
예제 #4
0
    private void Refresh(object data = null)
    {
        if ((UnityEngine.Object)identity == (UnityEngine.Object)null)
        {
            dirty = false;
        }
        else if (dirty)
        {
            Attributes attributes = identity.GetAttributes();
            foreach (PriorityButton priorityButton in PriorityButtons)
            {
                PriorityButton current = priorityButton;
                bool           flag    = consumer.IsPermittedByUser(current.choreGroup);
                if (current.ToggleIcon.activeSelf != flag)
                {
                    current.ToggleIcon.SetActive(flag);
                }
                float             num = 0f;
                AttributeInstance attributeInstance = attributes.Get(current.choreGroup.attribute);
                num = Mathf.Min(attributeInstance.GetTotalValue() / 10f, 1f);
                Color baseBorderColor = current.baseBorderColor;
                baseBorderColor.r = Mathf.Lerp(current.baseBorderColor.r, 0.721568644f, num);
                baseBorderColor.g = Mathf.Lerp(current.baseBorderColor.g, 0.443137258f, num);
                baseBorderColor.b = Mathf.Lerp(current.baseBorderColor.b, 0.5803922f, num);
                if (current.border.color != baseBorderColor)
                {
                    current.border.color = baseBorderColor;
                }
                Color color = current.baseBackgroundColor;
                color.a = Mathf.Lerp(0f, 1f, num);
                bool flag2 = consumer.IsPermittedByTraits(current.choreGroup);
                if (!flag2)
                {
                    color = Color.clear;
                    current.border.color = Color.clear;
                    current.ToggleIcon.SetActive(false);
                }
                current.button.interactable = flag2;
                if (current.background.color != color)
                {
                    current.background.color = color;
                }
            }
            int num2 = 0;
            int num3 = 0;
            foreach (ChoreGroup resource in Db.Get().ChoreGroups.resources)
            {
                if (consumer.IsPermittedByTraits(resource))
                {
                    num3++;
                    if (consumer.IsPermittedByUser(resource))
                    {
                        num2++;
                    }
                }
            }
            if (num2 == 0)
            {
                rowToggleState = CrewJobsScreen.everyoneToggleState.off;
            }
            else if (num2 < num3)
            {
                rowToggleState = CrewJobsScreen.everyoneToggleState.mixed;
            }
            else
            {
                rowToggleState = CrewJobsScreen.everyoneToggleState.on;
            }
            ImageToggleState component = AllTasksButton.ToggleIcon.GetComponent <ImageToggleState>();
            switch (rowToggleState)
            {
            case CrewJobsScreen.everyoneToggleState.mixed:
                component.SetInactive();
                break;

            case CrewJobsScreen.everyoneToggleState.on:
                component.SetActive();
                break;

            case CrewJobsScreen.everyoneToggleState.off:
                component.SetDisabled();
                break;
            }
            dirty = false;
        }
    }
    private void Refresh()
    {
        if (dirty)
        {
            int  childCount = ColumnTitlesContainer.childCount;
            bool flag       = false;
            bool flag2      = false;
            for (int i = 0; i < childCount; i++)
            {
                bool flag3 = false;
                bool flag4 = false;
                if (choreGroups.Count - 1 >= i)
                {
                    ChoreGroup chore_group = choreGroups[i];
                    for (int j = 0; j < EntryObjects.Count; j++)
                    {
                        ChoreConsumer consumer = EntryObjects[j].GetComponent <CrewJobsEntry>().consumer;
                        if (consumer.IsPermittedByTraits(chore_group))
                        {
                            if (consumer.IsPermittedByUser(chore_group))
                            {
                                flag3 = true;
                                flag  = true;
                            }
                            else
                            {
                                flag4 = true;
                                flag2 = true;
                            }
                        }
                    }
                    if (flag3 && flag4)
                    {
                        EveryoneToggles[EveryoneToggles.ElementAt(i).Key] = everyoneToggleState.mixed;
                    }
                    else if (flag3)
                    {
                        EveryoneToggles[EveryoneToggles.ElementAt(i).Key] = everyoneToggleState.on;
                    }
                    else
                    {
                        EveryoneToggles[EveryoneToggles.ElementAt(i).Key] = everyoneToggleState.off;
                    }
                    Button           componentInChildren = ColumnTitlesContainer.GetChild(i).GetComponentInChildren <Button>();
                    ImageToggleState component           = componentInChildren.GetComponentsInChildren <Image>(true)[1].GetComponent <ImageToggleState>();
                    switch (EveryoneToggles[componentInChildren])
                    {
                    case everyoneToggleState.off:
                        component.SetDisabled();
                        break;

                    case everyoneToggleState.mixed:
                        component.SetInactive();
                        break;

                    case everyoneToggleState.on:
                        component.SetActive();
                        break;
                    }
                }
            }
            if (flag && flag2)
            {
                EveryoneAllTaskToggle = new KeyValuePair <Button, everyoneToggleState>(EveryoneAllTaskToggle.Key, everyoneToggleState.mixed);
            }
            else if (flag)
            {
                EveryoneAllTaskToggle = new KeyValuePair <Button, everyoneToggleState>(EveryoneAllTaskToggle.Key, everyoneToggleState.on);
            }
            else if (flag2)
            {
                EveryoneAllTaskToggle = new KeyValuePair <Button, everyoneToggleState>(EveryoneAllTaskToggle.Key, everyoneToggleState.off);
            }
            ImageToggleState component2 = EveryoneAllTaskToggle.Key.GetComponentsInChildren <Image>(true)[1].GetComponent <ImageToggleState>();
            switch (EveryoneAllTaskToggle.Value)
            {
            case everyoneToggleState.off:
                component2.SetDisabled();
                break;

            case everyoneToggleState.mixed:
                component2.SetInactive();
                break;

            case everyoneToggleState.on:
                component2.SetActive();
                break;
            }
            Vector2 sizeDelta = EntriesPanelTransform.rectTransform().sizeDelta;
            screenWidth = sizeDelta.x;
            ScrollRectTransform.GetComponent <LayoutElement>().minWidth = screenWidth;
            float num = 31f;
            GetComponent <LayoutElement>().minWidth = screenWidth + num;
            dirty = false;
        }
    }