Esempio n. 1
0
        public void fromSaveData(SaveData saveData)
        {
            ColonyData data = (ColonyData)saveData;

            Debug.Log("加载殖民地====!!");
            this.container = new Container(data.containerID);
            if (data.buildingIndexID != null)
            {
                Debug.Log("data.buildingIndexID : " + data.buildingIndexID.Count);
                foreach (var kv in data.buildingIndexID)
                {
                    SaveData originData = SaveManager.Instance.GetSaveData(kv.Value);
                    if (originData == null)
                    {
                        continue;
                    }
                    CreatableSaveData buildingData = (CreatableSaveData)originData;
                    BuildingBase      building     = buildingData.Create <BuildingBase>(kv.Value);
                    SetBuildingAtIndex(kv.Key, building);
                    if (kv.Value.Equals(data.controlCenterID))
                    {
                        controllCenter = building;
                    }
                }
            }
            Debug.Log("殖民地加载完毕====!!");
        }
Esempio n. 2
0
        public SaveData toSaveData()
        {
            ColonyData data = new ColonyData();

            Debug.Log("储存殖民地====!!");
            Dictionary <int, ID> indexID = new Dictionary <int, ID>();

            foreach (var kv in buildings)
            {
                indexID.Add(kv.Key, kv.Value.Save());
            }
            data.buildingIndexID = indexID;
            data.controlCenterID = controllCenter.id;
            data.containerID     = this.container.Save();
            Debug.Log("殖民地储存完毕====!!");
            return(data);
        }