コード例 #1
0
    void CheckActivities()
    {
        foreach (var activity in allProcessingActivies)
        {
            switch (activity.Value.activityType)
            {
            case ActivityType.Quest:
            {
                GameObject ActivityTimerGO = new GameObject(activity.Value.activityID.ToString());
                ActivityTimerGO.transform.SetParent(transform.Find("ActivitiesList"));
                ClockTimer questTimer = ActivityTimerGO.AddComponent <ClockTimer>();
                questTimer.activityInformation = activity.Value;
                break;
            }

            case ActivityType.Craft:
            {
                GameObject ActivityTimerGO = new GameObject(activity.Value.activityID.ToString());
                ActivityTimerGO.transform.SetParent(transform.Find("ActivitiesList"));
                PointTimer craftTimer = ActivityTimerGO.AddComponent <PointTimer>();
                craftTimer.activityInformation = (activity.Value);
                break;
            }

            case ActivityType.Build:
            {
                Builder builder = BuildingManager.Instance.AllBuildings.SingleOrDefault(b => b.ID == activity.Value.informationID);

                BuildTimer buildTimer = builder.representGameObject.GetComponent <BuildTimer>();
                if (buildTimer)
                {
                    buildTimer.activityInformation = activity.Value;
                    buildTimer.UpdateNewFinishTime();
                }
                break;
            }

            case ActivityType.Pregnancy:
            {
                GameObject ActivityTimerGO = new GameObject(activity.Value.activityID.ToString());
                ActivityTimerGO.transform.SetParent(NotificationManager.Instance.gameObject.transform.Find("ActivitiesList"));
                ClockTimer questTimer = ActivityTimerGO.AddComponent <ClockTimer>();
                questTimer.activityInformation = activity.Value;

                break;
            }

            case ActivityType.CharacterGrowing:
            {
                GameObject ActivityTimerGO = new GameObject(activity.Value.activityID.ToString());
                ActivityTimerGO.transform.SetParent(NotificationManager.Instance.gameObject.transform.Find("ActivitiesList"));
                ClockTimer questTimer = ActivityTimerGO.AddComponent <ClockTimer>();
                questTimer.activityInformation = activity.Value;

                break;
            }

            default:
            {
                Debug.LogWarning($"{activity.Value.activityType} is currently unhandled.");
                break;
            }
            }
        }
    }