Exemplo n.º 1
0
    public void PrepareSaveFile()
    {
        if (SaveFile.LoadInstance().CoreConfig.player == null)
        {
            Player player = new Player();
            SaveFile.LoadInstance().CoreConfig.player = player;
        }
        List <IItemObservable> items;

        if (SaveFile.LoadInstance().CoreConfig.items == null)
        {
            items = new List <IItemObservable>();
        }
        else
        {
            items = SaveFile.LoadInstance().CoreConfig.items;
        }
        if (SaveFile.LoadInstance().CoreConfig.itemInventory == null)
        {
            SaveFile.LoadInstance().CoreConfig.itemInventory = new ItemInventory();
        }
        if (SaveFile.LoadInstance().CoreConfig.TimeWhenQuit == DateTime.MinValue)
        {
            SaveFile.LoadInstance().CoreConfig.TimeWhenQuit = DateTime.Now;
        }


        try
        {
            Debug.Log("Instantiating Game Items");
            PrepareMissionFile();
            InstantiateGameItems(items);
            Debug.Log("Game Items Instantiated");
        }
        catch (Exception e)
        {
            Debug.Log(e.Message);
            Debug.Log("SAVE FILE CORRUPTED");
            Debug.Log("DELETING SAVE FILE");
            DeleteSave();
            Debug.Log("RE-INITIATING");

            SaveFile.DeleteInstance();
            SaveFile.GetInstance();
        }
    }