public void SaveToDisk()
        {
            var payload = new SceneContextModel()
            {
                sceneName  = SceneManager.GetActiveScene().name,
                boolStates = MapEntityBoolStates.Select(x =>
                {
                    return(new BoolStateModel()
                    {
                        name = x.name,
                        state = x.State
                    });
                })
                             .Distinct()
                             .ToList(),
                quantityStates = MapEntityQtyStates.Select(x =>
                {
                    return(new QuantityStateModel()
                    {
                        name = x.name,
                        state = x.State
                    });
                })
                                 .Distinct()
                                 .ToList()
            };

            GlobalDataContext.UpdateSceneData(payload);
        }
        public void UpdateSceneData(SceneContextModel sceneModel)
        {
            var existingSceneData = LoadedScenes.Where(x => x.sceneName == sceneModel.sceneName)
                                    .FirstOrDefault();

            if (existingSceneData != null)
            {
                existingSceneData.boolStates = sceneModel.boolStates;
            }
            else
            {
                LoadedScenes.Add(sceneModel);
            }

            SaveDataManager.SaveData(LoadedScenes, DataConsts.SCENE_DATA_FILE);
        }
Exemple #3
0
        public void UpdateSceneData(SceneContextModel sceneModel)
        {
            var existingSceneData = LoadedScenes.Where(x => x.sceneName == sceneModel.sceneName)
                                    .FirstOrDefault();

            if (existingSceneData != null)
            {
                existingSceneData.boolStates     = new List <BoolStateModel>(sceneModel.boolStates);
                existingSceneData.quantityStates = new List <QuantityStateModel>(sceneModel.quantityStates);
            }
            else
            {
                LoadedScenes.Add(sceneModel);
            }

            SaveDataManager.SaveData(LoadedScenes, DataConsts.SCENE_DATA_FILE);

            Debug.Log($"Game saved to: {DataConsts.SCENE_DATA_FILE} in {Application.persistentDataPath}.");
        }