/// <summary> /// Returns random non-unique activities. /// </summary> /// <param name="numOfActivitiesArg"></param> /// <returns></returns> private List <HavenActivityData> GetRandomNonUniqueActivities(int numOfActivitiesArg) { // load all non-unique activity templates HavenActivityDataTemplate[] loadedActivityTemplates = AssetRefMethods. LoadAllBundleAssetHavenActivityTemplates(); // if NOT enough loaded activites to return if (numOfActivitiesArg > loadedActivityTemplates.Length) { // print warning to console Debug.LogWarning("Not enough loaded activites to return! " + $"Only found {loadedActivityTemplates.Length} potential activites."); // return some default value return(null); } // get shuffled template list List <HavenActivityDataTemplate> shuffledTemplateList = GeneralMethods. Shuffle <HavenActivityDataTemplate>(loadedActivityTemplates.ToList()); // initialize return list as empty list List <HavenActivityData> returnList = new List <HavenActivityData>(); // loop for as many activites as should return for (int i = 0; i < numOfActivitiesArg; i++) { // add iterating activity to return list returnList.Add(new HavenActivityData(shuffledTemplateList[i])); } // return populated list return(returnList); }