NaughtyAttributes
NaughtyAttributes copied to clipboard
TypeDropdown Attribute
I've written this attribute using the SerializedReference API. It should work with pretty much any Non UnityEngine.Object derived type. Here is an example of it in action. I would submit a pull request for it, but it requires the project to be upgraded to 2021.2.
I could use a preprocessor directive to hide it, after I make my pull request. What are your thoughts?
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class AnimalTest : MonoBehaviour
{
[SerializeReference, TypeDropdown(typeof(Animal))] Animal MyPet;
}
[System.Serializable]
public class Animal
{
public string nickname = "Silly Billy";
}
public class Dog : Animal
{
public string Breed = "Golden Retriever";
}
public class Cat : Animal
{
public int lives = 9;
}
Quck Note: When switching between types, the property will automatically try to copy any fields from the original object to the destination object.
I am really interested in this !
What do you think? Should I submit a pull request with a preprocessor directive hiding it from older versions of unity?
Hey! What's the progress on this?
I am about to merge a lot of pull requests next weekend, so I will include it :)
Formerly Created a PR here: https://github.com/dbrizov/NaughtyAttributes/pull/368