private static List <Flower> LoadFlowers(PlantDatabase data) { List <Flower> flowers = new List <Flower>(); if (File.Exists(flowerPath)) { using (StreamReader sr = new StreamReader(flowerPath)) { string line; while ((line = sr.ReadLine()) != null) { //Debug.Log("Load Flower: " + line); flowers.Add(new Flower(data, line)); Inventory.NumberOfFlower++; } } } if (flowers.Count == 0) { flowers.Add(new Flower(data, data.Scavenge())); flowers.Add(new Flower(data, data.Scavenge())); flowers.Add(new Flower(data, data.Scavenge())); Inventory.NumberOfFlower += 3; } Debug.Log(flowers.Count); return(flowers); }
private void Awake() { inspectorManager = inspectorArea.GetComponent <InspectorManager>(); previewCamera.GetComponent <FlyCameraController>().enabled = true; inspectorCamera.GetComponent <FlyCameraController>().enabled = false; materialDatabase = GetComponent <MaterialDatabase>(); plantDatabase = GetComponent <PlantDatabase>(); }
//Save and Load Constructor public Flower(PlantDatabase data, string str) { this.data = data; string[] inputList = str.Split(','); List <string> inputList2 = new List <string>(inputList); creationTime = DateTime.Parse(inputList[0]); inputList2.Remove(inputList[0]); this.genes = inputList2.ToArray(); }
private static void Save(PlantDatabase FlowerData, List <Flower> Flowers, PlantGoal Goal, TeacupDatabase TeacupData, List <Teacup> Teacups) { SaveMachine(); SavePlantDatabase(FlowerData); SaveFlowers(Flowers); SavePlantGoal(Goal); SaveTeacupDatabase(TeacupData); SaveTeacups(Teacups); Debug.Log(Application.persistentDataPath); }
public PlantGoal(PlantDatabase data, int goalTier, string[] goal) { myDatabase = data; if (!data.IsValidFlower(goal, true)) { throw new System.Exception("invalid trait"); } myGoalTier = goalTier; myGoal = goal; }
public static PlantDatabase Load(string str, bool debug = false) { PlantDatabase loaded = new PlantDatabase(); if (debug) { Console.WriteLine("PlantDatabase Load: " + str); } string[] parsed = str.Split('\n'); if (debug) { Console.WriteLine("Parsed string"); } foreach (string line in parsed) { if (line.Length == 0) { continue; } if (debug) { Console.WriteLine("Load: " + line); } string[] traitstrings = line.Split(';'); string trait_name = traitstrings[0]; if (debug) { Console.WriteLine("trait_name: " + trait_name); } string trait_data = traitstrings[1]; if (debug) { Console.WriteLine("trait_data: " + trait_data); } TraitType trait = TraitType.Load(trait_data); loaded.AddTraitType(trait_name, trait); if (debug) { Console.WriteLine("Local Load Complete"); } } if (debug) { Console.WriteLine("PlantDatabase Load Complete"); } return(loaded); }
private static void SavePlantDatabase(PlantDatabase data) { try{ using (StreamWriter sw = new StreamWriter(plantdatabasePath, false)) { sw.Write(data.ToString()); //Console.WriteLine("Saved " + PlantDatabase_path); //Console.WriteLine(data.ToString()); } }catch (System.Exception e) { //Console.WriteLine("error saving at" + PlantDatabase_path); //Console.WriteLine(e); //Environment.Exit(1); } }
private static void Save(PlantDatabase FlowerData, CircularLinkedList <Flower> Flowers, PlantGoal Goal, TeacupDatabase TeacupData, CircularLinkedList <Teacup> Teacups) { List <Flower> flowers = new List <Flower>(); foreach (Flower flower in Flowers) { flowers.Add(flower); } List <Teacup> teacups = new List <Teacup>(); foreach (Teacup teacup in Teacups) { teacups.Add(teacup); } Save(FlowerData, flowers, Goal, TeacupData, teacups); }
/*////////////////////////////////////////////////////////////////////////////// * Saving and Loading all savefiles * SaveData.Load (PlantDatabase FlowerData,List<Flower> Flowers,PlantGoal Goal); */////////////////////////////////////////////////////////////////////////////// public static void Load() { string loadedMachineInfo = LoadMachine(); //Deletes all files if not used on the same computer //so everything resets if (loadedMachineInfo != getMachineInfo()) { File.Delete(plantdatabasePath); File.Delete(flowerPath); File.Delete(goalPath); File.Delete(teacupdatabasePath); File.Delete(teacupPath); } PlantDatabase plantData = LoadPlantDatabase(); //1 Inventory.FlowerData = plantData; TeacupDatabase teacupData = LoadTeacupDatabase(); //2 Inventory.TeacupData = teacupData; List <Flower> flowers = LoadFlowers(Inventory.FlowerData); //3 Inventory.FlowerList = new CircularLinkedList <Flower>(flowers); List <Teacup> teacups = LoadTeacups(teacupData); //4 Inventory.TeacupList = new CircularLinkedList <Teacup>(teacups); Inventory.Goal = LoadPlantGoal(Inventory.FlowerData); //5 Save(); Debug.Log(check()); }
private static PlantDatabase LoadPlantDatabase() { try{ if (!File.Exists(plantdatabasePath)) { //Console.WriteLine(Path.GetFullPath(PlantDatabase_path) + " does not exist"); } else { using (StreamReader sr = new StreamReader(plantdatabasePath)) { string readPlantDatabase = sr.ReadToEnd(); return(PlantDatabase.Load(readPlantDatabase)); } } }catch (System.Exception e) { //Console.WriteLine("error loading at" + PlantDatabase_path); //Console.WriteLine(e); //Environment.Exit(1); } return(new TeacupCactusDatabase()); }
private static string[] GetGenerateGoal(PlantDatabase data, int goalTier) { Random rnd = new Random(Guid.NewGuid().GetHashCode()); Dictionary <string, List <string>[]> tierDictonary = data.GetTiers(); string[] keys = tierDictonary.Keys.ToArray(); string[] goal = new string[keys.Length]; int[] tierOfGoal = new int[keys.Length]; for (int i = 0; i < keys.Length; i++) { string key = keys[i]; List <string>[] tierArray = tierDictonary[key]; int maxTier = tierArray.Length; tierOfGoal[i] = rnd.Next(1, maxTier); } for (int i = 0; i < keys.Length; i++) { string key = keys[i]; List <string>[] tierArray = tierDictonary[key]; int currTier = tierOfGoal[i]; //Console.WriteLine(currTier + "/" + tierArray.Length); string[] array = tierArray[currTier].ToArray(); int index = rnd.Next(0, array.Length); //Console.WriteLine(index + "/" + array.Length); goal[i] = array[index]; } return(goal); }
private static PlantGoal LoadPlantGoal(PlantDatabase data) { try{ if (!File.Exists(goalPath)) { //Console.WriteLine(Path.GetFullPath(goalPath) + " does not exist"); } else { using (StreamReader sr = new StreamReader(goalPath)){ string str = sr.ReadToEnd(); return(new PlantGoal(data, str)); //Console.WriteLine("Loaded: "+ PlantGoal_path); //Console.WriteLine(goal); } } }catch (System.Exception e) { //Console.WriteLine("error loading at" + Flowers_path); //Console.WriteLine(e); //Environment.Exit(1); } return(new PlantGoal(data)); }
//Scavenged Flower Constructor public Flower(PlantDatabase data) { this.creationTime = DateTime.Now; this.data = data; this.genes = data.Scavenge(); }
public static void Save(PlantDatabase FlowerData, List <Flower> Flowers, PlantGoal Goal) { SavePlantDatabase(FlowerData); SaveFlowers(Flowers); SavePlantGoal(Goal); }
public PlantGoal(PlantDatabase data, string str) : this(data, pgt(str), pg(str)) { }
//The main constructor public Flower(PlantDatabase data, string[] genes) { this.creationTime = DateTime.Now; this.data = data; this.genes = genes; }
public PlantGoal(PlantDatabase data) : this(data, 1, GetGenerateGoal(data, 1)) { }
public PlantGoal(PlantDatabase data, int goalTier) : this(data, goalTier, GetGenerateGoal(data, goalTier)) { }