Exemplo n.º 1
0
        public void ActivitySelector_SavesState()
        {
            var sut = new ActivitySelector();

            sut.SaveState("Casual", 3);
            var sut2   = new ActivitySelector();
            var result = sut2.GetLastActivity("Casual");

            Assert.Equal(3, result);
        }
Exemplo n.º 2
0
        public void ActivitySelector_ReadsState()
        {
            var sut = new ActivitySelector();

            Assert.True(sut.Counts().Equals(2));
        }
Exemplo n.º 3
0
    public void GenerateActivitySelectors()
    {
        if (!ObjectSelection.instance.selectingPrereqs)
        {
            int           activitiesAdded     = 0;
            ProjectObject firstSelectedObject = ObjectSelection.instance.GetSelectedObjects() [0];
            for (int i = 0; i < firstSelectedObject.activities.Count; i++)
            {
                if (Activities.instance.CheckActivityPermission(firstSelectedObject.activities [i]) && !firstSelectedObject.scheduledActivities.Contains(firstSelectedObject.activities [i]))
                {
                    if (activitiesAdded > 6)
                    {
                        break;
                    }
                    GameObject activitySelectorGo = (GameObject)Instantiate(activitySelectorPrefab);
                    activitySelectorGo.transform.SetParent(activitySelectorParent, false);
                    ActivitySelector activitySelector = activitySelectorGo.GetComponent <ActivitySelector> ();
                    Activity         activity         = Activities.instance.GetActivityByCode(firstSelectedObject.activities [i]);
                    activitySelector.SetUp(firstSelectedObject, activity, false);
                    activitySelectors.Add(activitySelector);
                    activitiesAdded++;
                }
            }
        }
        else
        {
            List <string> circularActivities = new List <string> ();
            ProjectObject lastSelectedPrereq = ObjectSelection.instance.GetPrerequisiteObjects() [ObjectSelection.instance.GetPrerequisiteObjects().Count - 1];
            for (int i = 0; i < lastSelectedPrereq.circularObjects.Count; i++)
            {
                for (int e = 0; e < lastSelectedPrereq.circularObjects [i].projectStepObjects.Count; e++)
                {
                    if (ObjectSelection.instance.IsObjectSelectedById(lastSelectedPrereq.circularObjects [i].projectStepObjects [e].objectId) &&
                        lastSelectedPrereq.circularObjects [i].projectStepObjects [e].activity == ActivityMenu.instance.selectedActivity.activity)
                    {
                        circularActivities.Add(lastSelectedPrereq.circularObjects [i].activity);
                        break;
                    }
                }
            }

            // Remove selected obj activity as an option because thats invalid
            List <string> validPrereqActivities = new List <string> (lastSelectedPrereq.activities);
            if (ObjectSelection.instance.IsObjectSelected(lastSelectedPrereq))
            {
                validPrereqActivities.Remove(ActivityMenu.instance.selectedActivity.activity);
            }
            // Remove any codes that would cause circular
            foreach (string tc in circularActivities)
            {
                if (validPrereqActivities.Contains(tc))
                {
                    validPrereqActivities.Remove(tc);
                }
            }

            int activitiesAdded = 0;
            for (int i = 0; i < validPrereqActivities.Count; i++)
            {
                if (activitiesAdded > 6)
                {
                    break;
                }
                GameObject activitySelectorGo = (GameObject)Instantiate(activitySelectorPrefab);
                activitySelectorGo.transform.SetParent(activitySelectorParent, false);
                ActivitySelector activitySelector = activitySelectorGo.GetComponent <ActivitySelector> ();
                Activity         activity         = Activities.instance.GetActivityByCode(validPrereqActivities[i]);
                bool             activitySelected = false;
                for (int x = 0; x < ObjectSelection.instance.selectedPrereqs.Count; x++)
                {
                    if (ObjectSelection.instance.selectedPrereqs[x] == lastSelectedPrereq)
                    {
                        if (ObjectSelection.instance.prereqActivities.Count > x)
                        {
                            if (ObjectSelection.instance.prereqActivities[x] == validPrereqActivities[i])
                            {
                                activitySelected = true;
                            }
                        }
                    }
                }
                activitySelector.SetUp(lastSelectedPrereq, activity, activitySelected);
                activitySelectors.Add(activitySelector);
                activitiesAdded++;
            }
        }
    }