Level editor – saving/loading levels to file
Now that we have the groundwork all placed and ready, let's get to the real meat of the level editor: saving and loading! Perform the following steps:
Open our
LevelEditor
class inMonoDevelop
. The first step will be to include some additional functionality at the beginning of our file://You must include these namespaces //to use BinaryFormatter using System; using System.Runtime.Serialization.Formatters.Binary; using System.IO;
The first thing we'll want to add is a variable, as follows:
string levelName = "Level1";
Now, we'll need to add the following code to the
OnGUI
function:GUILayout.BeginArea(new Rect(10, 20, 100, 100)); levelName = GUILayout.TextField(levelName); if (GUILayout.Button ("Save")) { SaveLevel(); } if (GUILayout.Button ("Load")) { //If we have a file with the name typed in, load it! if(File.Exists(Application.persistentDataPath + "/" + levelName + ".lvl")) { LoadLevelFile(levelName); PlayerStart.spawned = false...