Ejemplo n.º 1
0
    public static void SaveLevelData(GameLevel level)
    {
        GlobalSaveData globalSaveData = GameManager.instance.globalSaveData;

        //look for a matching data piece in the level list
        LevelSaveData data = globalSaveData.levelSaveData.Where(obj => obj.dataName == level.levelName).SingleOrDefault();

        if (data != null)
        {
            //update global level save data again
            data.damageSustainedOnLevel = globalSaveData.damageSustainedOnLevel;
            data.earnedQuickTeacup      = globalSaveData.currentLevelSaveData.earnedQuickTeacup;
            data.earnedSafeTeacup       = globalSaveData.currentLevelSaveData.earnedSafeTeacup;
            data.timeLeftOnLevel        = globalSaveData.timeLeftOnLevel;
        }
        else
        {
            //create a new one
            LevelSaveData newData = new LevelSaveData();
            newData.dataName = level.levelName;
            newData.damageSustainedOnLevel = globalSaveData.damageSustainedOnLevel;
            newData.teacupsEarnedOnLevel   = globalSaveData.currentLevelSaveData.teacupsEarnedOnLevel;
            newData.earnedQuickTeacup      = globalSaveData.currentLevelSaveData.earnedQuickTeacup;
            newData.earnedSafeTeacup       = globalSaveData.currentLevelSaveData.earnedSafeTeacup;
            newData.timeLeftOnLevel        = globalSaveData.timeLeftOnLevel;
            globalSaveData.levelSaveData.Add(newData);
        }
    }
Ejemplo n.º 2
0
    //retrieve data by finding the matching element in the level save data list
    public static LevelSaveData GetLevelData(GameLevel level)
    {
        GlobalSaveData globalSaveData = GameManager.instance.globalSaveData;

        List <LevelSaveData> levelSaveDataList = new List <LevelSaveData>(globalSaveData.levelSaveData);
        LevelSaveData        data = levelSaveDataList.Where(obj => obj.dataName == level.levelName).SingleOrDefault();

        return(data);
    }
Ejemplo n.º 3
0
 public void LoadGlobalData()
 {
     this.GlobalData = GlobalSaveData.LoadFile(AIProject.Definitions.Path.GlobalSaveDataFile);
     if (this.GlobalData != null)
     {
         return;
     }
     this.GlobalData = new GlobalSaveData();
     this.SaveGlobalData();
 }
Ejemplo n.º 4
0
 public static bool AddGlobalSave(GlobalSaveData item)
 {
     if (globalSaves.ContainsKey(item.GetType()))
     {
         return(false);
     }
     else
     {
         globalSaves.Add(item.GetType(), item);
         return(true);
     }
 }
    public static bool ShouldShowPlantCard(IngredientData ingredientData)
    {
        GlobalSaveData data = GameManager.instance.globalSaveData;

        if (data.encounteredIngredients.Contains(ingredientData.plantName))
        {
            return(false);
        }
        else
        {
            return(true);
        }
    }
Ejemplo n.º 6
0
    //Check if upgrade has already been bought
    public static bool AlreadyPurchased(Upgrade upgradeToSave)
    {
        GlobalSaveData globalSaveData = GameManager.instance.globalSaveData;
        //look for a matching data piece in the level list
        ShopSaveData data = globalSaveData.shopSaveData.Where(obj => obj.dataName == upgradeToSave.upgradeName).SingleOrDefault();

        if (data != null)
        {
            //update global level save data again
            return(true);
        }
        else
        {
            return(false);
        }
    }
Ejemplo n.º 7
0
    public void GlobalSave(bool reloadTextFile = false)
    {
        Debug.Log($"Saving settings to {_globalSaveLocation}");
        BinaryFormatter bf         = new BinaryFormatter();
        GlobalSaveData  globalData = new GlobalSaveData();

        using (FileStream file = File.Create(_globalSaveLocation))
        {
            globalData.language = LanguageOption;
            bf.Serialize(file, globalData);
        }

        if (reloadTextFile == true && LocalisationManager.instance != null)
        {
            LocalisationManager.instance.LoadlocalisedText();
        }
    }
    public void ShowPlantTutorial(IngredientData ingredientData)
    {
        UpdatePlantTutorial(ingredientData);
        uiGroup.SetActive(true);
        tutorialVisible = true;

        //update global save data
        GlobalSaveData data = GameManager.instance.globalSaveData;

        if (!data.encounteredIngredients.Contains(ingredientData.plantName))
        {
            data.encounteredIngredients.Add(ingredientData.plantName);
        }

        StartCoroutine(PauseTimeWithDelay(showCardClip.length));
        GrayscaleEffect.Instance.FadeToAndFromGray(true);
    }
Ejemplo n.º 9
0
        private void ChangeGameCleared()
        {
            if (!Singleton <Game> .IsInstance())
            {
                return;
            }
            Game           instance   = Singleton <Game> .Instance;
            GlobalSaveData globalData = instance.GlobalData;
            WorldData      worldData  = instance.WorldData;

            if (globalData != null)
            {
                globalData.Cleared = true;
            }
            if (worldData != null)
            {
                worldData.Cleared = true;
            }
            instance.SaveGlobalData();
        }
Ejemplo n.º 10
0
    //Save the new data, based on the level save data approach
    public void SaveUpgradeData(Upgrade upgradeToSave)
    {
        Debug.Log("Attempting to save shop data");
        GlobalSaveData globalSaveData = GameManager.instance.globalSaveData;

        //look for a matching data piece in the level list
        ShopSaveData data = globalSaveData.shopSaveData.Where(obj => obj.dataName == upgradeToSave.upgradeName).SingleOrDefault();

        if (data != null)
        {
            //update global level save data again
            data.unlocked = true;
        }
        else
        {
            //create a new one using default constructor
            ShopSaveData newData = new ShopSaveData();
            newData.dataName = upgradeToSave.upgradeName;
            newData.unlocked = true;
            globalSaveData.shopSaveData.Add(newData);
        }

        SaveManager.SaveGlobal();
    }