Folders and files Β
Β
Β
Β
Β
Β
Β
Β
Β
Β
Β
Β
Β
Β
Β
Β
Β
Β
Β
Β
Β
Β
View all files
Repository files navigation
Collection of general use drawer and decorator attributes.
Stripped in production: [Conditional("UNITY_EDITOR")]
π€ Reasonably lightweight.
Open Package Manager
Paste GitHub URL:
https://github.com/Smidgens/unity-attributes.git#<version_tag>
π BoxHeader
[ BoxHeader ( "Example Header" ) ]
[ TextArea ]
public string documentedField ;
π BoxComment
[ BoxComment ( "Some information about bla" ) ]
[ TextArea ]
public string documentedField ;
π BoxLink
[ BoxLink ( "Documentation" , "https://en.wikipedia.org/wiki/Slartibartfast" ) ]
[ TextArea ]
public string documentedField ;
π³ StaticAction
class StaticGreets
{
public static void SayHi ( )
{
Debug . Log ( "Hello, wurst!" ) ;
}
public static void LogValue ( int v )
{
Debug . Log ( "Your value is: " + v ) ;
}
}
[ StaticAction ( "Say Hi" , "SayHi" , typeof ( StaticGreets ) ) ]
[ StaticAction ( "Log 10" , "LogValue" , typeof ( StaticGreets ) , 10 ) ]
public string staticActionField ;
π Inline
[ System . Serializable ]
public struct T1
{
public string name ;
public Texture2D icon ;
}
[ Inline ]
public Vector3 inlinedVector ;
[ FieldSize ( "name" , 40f ) ]
[ Inline ]
public T1 inlinedCustom ;
π Expand
[ Serializable ]
public struct T1
{
public string name ;
public Texture2D icon ;
}
[ Serializable ]
public struct T2
{
public int someValue ;
public T1 nested ;
}
[ Expand ]
public T1 expanded1 ;
[ Expand ]
public T2 expanded2 ;
π Tabs
[ System . Serializable ]
struct ToggleData
{
public bool v1 , v2 , v3 ;
}
[ Tabs ]
public ToggleData options ;
[ System . Flags ]
enum Options
{
Item1 = 1 ,
Item2 = 2 ,
Item3 = 4 ,
}
[ Tabs ]
public Options options ;
π Switch
[ Switch ]
public bool switch1 ;
[ Switch ( "Off" , "On" ) ]
public bool switch2 ;
[ Switch ( "Disabled" , "Enabled" ) ]
public bool switch3 ;
[ System . Flags ]
enum Options
{
Item1 = 1 ,
Item2 = 2 ,
Item3 = 4 ,
}
[ Switch ]
public Options options ;
ποΈ Slider
[ Slider ( 1f , 10f , 1 ) ]
public float sliderPrecision ;
[ Slider ( 1f , 10f , 0.5f ) ]
public float sliderStep ;
[ Slider ( 1 , 10 ) ]
public int sliderInt ;
ποΈ Slider01
[ Slider01 ]
public float slider01 ;
π¨ HexColor
[ HexColor ]
public string hexColor = "#f00";
π SearchType
[ SearchType ]
public string anyType ;
// only show component types
[ SearchType ( baseTypes = new Type [ ] { typeof ( Component ) } ) ]
public string componentType ;
// only show static classes
[ SearchType ( onlyStatic = true ) ]
public string staticType ;
// only show system types
[ SearchType ( assemblies = new string [ ] { "mscorlib" } ) ]
public string systemType ;
π» Dropdown__
[ DropdownString ( "option1" , "option2" ) ]
public string _string ;
[ DropdownFloat ( 0.5f , 1.2f , 2.4f ) ]
public float _float ;
[ DropdownColor ( "red" , "blue" , "cyan" ) ]
public Color _color ;
[ DropdownBool ( "Off" , "On" ) ]
public bool _bool ;
[ DropdownInt ( 0 , 10 ) ]
public int _int ;
[ DropdownAsset ( "Assets/Demo/" ) ]
public Texture2D _texture ;
π» Layer
[ Layer ]
public int _layer ;
π» SortLayer
[ SortLayer ]
public int _sortingLayer ;
π» Tag
[ Tag ]
public string _tag ;
π» BuildScene
[ BuildScene ]
public string scenePath ;
[ BuildScene ]
public int sceneIndex ;
π» AnimatorParameter
public Animator myAnimator ;
[ AnimatorParameter ( "myAnimator" ) ]
public string parameterName ;
[ AnimatorParameter ( "myAnimator" ) ]
public int parameterIndex ;
π» RendererMaterial
public Renderer myRenderer ;
[ AnimatorParameter ( "myRenderer" ) ]
public int materialIndex
π» BlendShape
public SkinnedMeshRenderer myRenderer ;
[ AnimatorParameter ( "myRenderer" ) ]
public string blendShapeName
[ AnimatorParameter ( "myRenderer" ) ]
public int blendShapeIndex
π³ FieldAction
[ System . Serializable ]
internal class OwnerOfFunctions
{
public int myValue = 10 ;
public void SetMyValue ( int v )
{
myValue = v ;
}
public void CallMe ( )
{
Debug . Log ( "Yay!" ) ;
}
public void CallMeAsWell ( )
{
Debug . Log ( "OMG YAY" ) ;
}
}
class MyScript : MonoBehaviour
{
[ FieldAction ( "Action 1" , "CallMe" ) ]
[ FieldAction ( "Action 2" , "CallMeAsWell" ) ]
[ FieldAction ( "Set value: 100" , "SetMyValue" , 100 , onlyPlayMode = true ) ]
[ FieldAction ( "Call Target" , "ScriptMethod" , callRoot = true ) ]
[ Expand ]
public OwnerOfFunctions fieldWithActions ;
private void ScriptMethod ( )
{
Debug . Log ( "Script method called!" ) ;
}
}
π Indent
[ Indent ( 1 ) ]
[ DefaultDrawer ]
public int iAmIndented ;
[ Indent ( 2 ) ]
[ DefaultDrawer ]
public int iAmMoreSo ;
About
Inspector attributes for Unity
Topics
Resources
License
Stars
Watchers
Forks
You canβt perform that action at this time.