Book Image

Unity Game Development Blueprints

By : John P. Doran
Book Image

Unity Game Development Blueprints

By: John P. Doran

Overview of this book

Table of Contents (16 chapters)
Unity Game Development Blueprints
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

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:

  1. Open our LevelEditor class in MonoDevelop. 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;
  2. The first thing we'll want to add is a variable, as follows:

    string levelName = "Level1";
  3. 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...