33 lines
786 B
C#
33 lines
786 B
C#
using UnityEngine;
|
|
|
|
namespace CW.Common
|
|
{
|
|
/// <summary>This attribute can be added to any int field to make it a random seed value that can easily be randomized.</summary>
|
|
public class CwSeedAttribute : PropertyAttribute
|
|
{
|
|
}
|
|
}
|
|
|
|
#if UNITY_EDITOR
|
|
namespace CW.Common
|
|
{
|
|
using UnityEditor;
|
|
|
|
[CustomPropertyDrawer(typeof(CwSeedAttribute))]
|
|
public class CwSeedDrawer : PropertyDrawer
|
|
{
|
|
public override void OnGUI(Rect position, SerializedProperty property, GUIContent label)
|
|
{
|
|
var rect1 = position; rect1.xMax = position.xMax - 20;
|
|
var rect2 = position; rect2.xMin = position.xMax - 18;
|
|
|
|
EditorGUI.PropertyField(rect1, property, label);
|
|
|
|
if (GUI.Button(rect2, "R") == true)
|
|
{
|
|
property.intValue = Random.Range(int.MinValue, int.MaxValue);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
#endif |