コード例 #1
0
        public void SaveBuildings(List <Building> buildings)
        {
            BuildingSaveData[] saveData = new BuildingSaveData[buildings.Count];
            for (int i = 0; i < buildings.Count; i++)
            {
                saveData[i] = buildings[i].CreateSaveData();
            }

            FullBuildingSave fullSave = new FullBuildingSave
            {
                buildings = saveData
            };

            this.saveService.Save(BuildingSaveService.BUILDUNG_SAVE_KEY, fullSave);
        }
コード例 #2
0
        public List <Building> LoadBuildings()
        {
            List <Building> result = new List <Building>();

            IBuildingConfigurationService buildingConfigurationService = ServiceLocator.Instance.GetService <IBuildingConfigurationService>();

            FullBuildingSave fullSave = this.saveService.Load <FullBuildingSave>(BuildingSaveService.BUILDUNG_SAVE_KEY);

            if (fullSave != null)
            {
                foreach (var saveData in fullSave.buildings)
                {
                    BuildingConfiguration buildingConfig = buildingConfigurationService.GetBuilding(saveData.configName);
                    Building building = new Building(buildingConfig);
                    building.SetGridPosition(saveData.gridPosition);

                    result.Add(building);
                }
            }

            return(result);
        }