Game
TwoDoors


4 years ago

[v0.4.2] (https://gamejolt.com/games/TwoDoors-Game/511189)

-New Save-System

-Version/Update hint

Sorry for the long wait, I had some problems getting the Save-System up and running.

-----------------------------------

▼---Save System Code---▼


Code meant for Unity, but could work the same for normal C# as no essential code is Unity specific, just the "Debug.Log" and "Application.persistentDataPath".

The read function returns an Array of strings.

The write function needs an Array of strings to write to the text-file.

PS: The Update/Version Check uses Unitys Remote Config (https://www.youtube.com/watch?v=14njHI4CGgA&t=156s).

		
			//Read .txt File
private string[] getDataFromFile(string fileName = "SaveManager")
{
    string line;

    //Pass the file path and file name to the StreamReader constructor
    Debug.Log("Path: " + Application.persistentDataPath + "/" + fileName + ".txt");
    checkTextFileExists();
    StreamReader file = new StreamReader(Application.persistentDataPath + "/" + fileName + ".txt");
    if(!File.Exists(Application.persistentDataPath + "/" + fileName + ".txt"))
    {
        Debug.LogError("File doesn't exist.");
        return null;
    }
    else
    {
        //instatiates the temporary List list
        List<string> list = new List<string>();

        try
        {
            //Read the first line of text
            line = file.ReadLine();
            //Continue to read until you reach end of file
            while (line != null)
            {
                //add the new line to the List
                list.Add(line);

                //Read the next line
                line = file.ReadLine();
            }
            //close the file
            file.Close();
        }
        catch (Exception e)
        {
            Debug.LogError("Exception: " + e.Message);
        }

        //unloads the file
        file.Close();

        //turns the List list into an Array and returns it
        return list.ToArray();
    }
}

//You can turn a string into an int with int/float.Parse(string)
//You could also use Convert.ToInt()/.ToFloat()

//Write to .txt File
private void writeToFile(string[] data, string fileName = "SaveManager")
{
    string path = Application.persistentDataPath + "/" + fileName + ".txt";

    if (File.Exists(path))
    {
        File.Delete(path); // deletes the file, if it already exists
    }

    // Create a file to write to.
    using (StreamWriter sw = File.CreateText(path))
    {
        for (int i = 0; i < data.Length; i++)
        {
            sw.WriteLine(data[i]);
        }
        sw.Close();
    }
}
		
	


0 comments

Loading...

Next up

[v0.2] This update, was mainly focused on quality of life changes, f. e. that crates now interrupt lasers when held.

Some confusing parts have been reworked, as well as the progression/pacing of the puzzles.

Plus some new models and bugg-fixes.

[v0.2.0]

-Added VFX (see in gifs)

-Added Defeat Animation (see in gif)

-fixed bugs/issues

[v0.4.1]

-Dynamic loading/unloading of level (see gif)

-reworked the last two sections, added in v0.4.0

-added new model for the small crate

-improved audio-mixing

-crates now break when walking through doors

Happy #WIPWednesday!

Are you working on a game? A song? Something else? Tell us in the comments!

[v0.1.1] New Game I made during Weekend-Jam#02 https://itch.io/jam/weekend-jam-2

Tower-Defense/Puzzle Game

Updates coming soon : )

🕹️ Enter The Highrise Game Jam Before It Ends On May 5! 🕹️

Learn the rules here: https://gamejolt.com/c/gamedev/highrisejam

Learn how to make a world on Highrise (which you MUST do to enter the jam) here: https://gamejolt.com/p/the-highrise-game-jam-is-underway-watch-t…

The jam has cash prizes! 💸💸💸

[v0.3] Web / Linux / Mac support has been added. As stated in the 'Readme.txt' file, I currently do not have acces to Linux or Mac OS and therefore it is difficult to check for buggs.

I will try to set up a harddrive with Linux for testing in the future.

[v0.3.1]

-Vases now break when dropped from greater heights : )

-UI now has scroll functionality.

-The player can finally now jump.

-----------------------------------

▼---Impact Detection Code---▼

Highrise Game Jam Reminder: In order to enter to win the Jam, your game must be created in Unity and submitted using the Highrise Studio Hub.

Learn all the deets about the jam at https://gamejolt.com/c/gamedev/highrisejam

[Announcement] I will no longer be working on TwoDoors

I got stuck redoing the art in the game (see screenshots).

There are going to be new games on my profile.