Book Image

Extending Unity with Editor Scripting

Book Image

Extending Unity with Editor Scripting

Overview of this book

Table of Contents (18 chapters)
Extending Unity with Editor Scripting
Credits
Foreword
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Implementing the Palette


In this section, we will get hands on with the implementation of the Palette. Just to maintain a certain level of abstraction, in some cases, we will talk about Palette items instead level piece prefabs.

For us, a Palette item is what is displayed in the Palette, and this can be anything; in this case, a level piece prefab.

Creating a category system

We need some data to make the Palette window functional. The first step is to categorize the available level piece prefabs in the game. In Run & Jump, all the level piece prefabs are located in Prefabs/LevelPieces:

We will create a script with a mission to save information about the level piece prefabs, which includes the category. Inside the Tools/LevelCreator/Scripts folder, create a script called PaletteItem.cs with the following code:

using UnityEngine;

namespace RunAndJump.LevelCreator {
  public class PaletteItem: MonoBehaviour {
    #if UNITY_EDITOR
        public enum Category {
            Misc,
           ...