OvertakingLegend/Assets/Amazing Assets/Curved World/Editor/Material Property Drawers/CurvedWorldToggleFloatDrawe...

34 lines
954 B
C#

// Curved World <http://u3d.as/1W8h>
// Copyright (c) Amazing Assets <https://amazingassets.world>
using System;
using UnityEngine;
using UnityEditor;
namespace AmazingAssets.CurvedWorld.Editor
{
public class CurvedWorldToggleFloatDrawer : MaterialPropertyDrawer
{
public override void OnGUI(Rect position, MaterialProperty prop, String label, MaterialEditor editor)
{
// Setup
bool value = (prop.floatValue > 0.5f);
EditorGUI.BeginChangeCheck();
EditorGUI.showMixedValue = prop.hasMixedValue;
// Show the toggle control
value = EditorGUI.Toggle(position, label, value);
EditorGUI.showMixedValue = false;
if (EditorGUI.EndChangeCheck())
{
// Set the new value if it has changed
prop.floatValue = value ? 1.0f : 0.0f;
}
}
}
}