Exemplo n.º 1
0
 public void LoadData(StructureSystemSaveData structureSystemData)
 {
     StructuresLearned.Clear();
     StructureInformation[] structureInfos = Resources.LoadAll <StructureInformation>("Configuration");
     foreach (string learned in structureSystemData.learneds)
     {
         StructureInformation find = Array.Find(structureInfos, x => x.ID == learned);
         if (find)
         {
             StructuresLearned.Add(find);
         }
     }
     foreach (StructureSaveData saveData in structureSystemData.structureDatas)
     {
         StructureInformation find = Array.Find(structureInfos, x => x.ID == saveData.modelID);
         if (find)
         {
             StructureData data = new StructureData(find, new Vector3(saveData.posX, saveData.posY, saveData.posZ));
             data.LoadBuild(find, saveData);
             if (data.leftBuildTime <= 0)
             {
                 DoneBuild(data);
             }
             else if (saveData.scene == UnityEngine.SceneManagement.SceneManager.GetActiveScene().name)
             {
                 StructurePreview2D preview = Instantiate(find.Preview);
                 preview.StartBuild(data);
                 MakeFlag(preview);
             }
             AddStructure(data);
         }
     }
     AStarManager.Instance.UpdateGraphs();
 }