コガネブログ

平日更新を目標に Unity や C#、Visual Studio、ReSharper などのゲーム開発アレコレを書いていきます

【Unity】Inspector で Flags 属性が適用された列挙型の値を設定しやすくする PropertyDrawer

using System;
using UnityEngine;

[Flags]
public enum TYPE // タイプ
{
    GRASS   = 1 << 0, // くさ
    FIRE    = 1 << 1, // ほのお
    WATER   = 1 << 2, // みず
}

public class NewBehaviourScript : MonoBehaviour
{
    [EnumFlags] public TYPE Type;

    public void OnValidate()
    {
        Debug.Log( Type );
    }
}

f:id:baba_s:20150303181716p:plain

この EnumFlagsAttributeDrawer.cs を使用することで
Inspector で Flags 属性が適用された列挙型の値を設定しやすくなります