47 lines
1.6 KiB
C#
47 lines
1.6 KiB
C#
|
#if UNITY_EDITOR
|
|||
|
using UnityEngine;
|
|||
|
using UnityEditor;
|
|||
|
using System.Collections.Generic;
|
|||
|
|
|||
|
namespace VLB
|
|||
|
{
|
|||
|
[CustomEditor(typeof(TriggerZone))]
|
|||
|
[CanEditMultipleObjects]
|
|||
|
public class Editor_TriggerZone : Editor_CommonSD
|
|||
|
{
|
|||
|
SerializedProperty setIsTrigger = null;
|
|||
|
SerializedProperty rangeMultiplier = null;
|
|||
|
TargetList<VolumetricLightBeamAbstractBase> m_Targets;
|
|||
|
|
|||
|
protected override void OnEnable()
|
|||
|
{
|
|||
|
base.OnEnable();
|
|||
|
m_Targets = new TargetList<VolumetricLightBeamAbstractBase>(targets);
|
|||
|
}
|
|||
|
|
|||
|
public override void OnInspectorGUI()
|
|||
|
{
|
|||
|
base.OnInspectorGUI();
|
|||
|
|
|||
|
EditorGUILayout.PropertyField(setIsTrigger, EditorStrings.TriggerZone.SetIsTrigger);
|
|||
|
EditorGUILayout.PropertyField(rangeMultiplier, EditorStrings.TriggerZone.RangeMultiplier);
|
|||
|
|
|||
|
if (FoldableHeader.Begin(this, EditorStrings.TriggerZone.HeaderInfos))
|
|||
|
{
|
|||
|
EditorGUILayout.HelpBox(
|
|||
|
UtilsBeamProps.GetDimensions(m_Targets.m_Targets[0]) == Dimensions.Dim3D ? EditorStrings.TriggerZone.HelpDescription3D : EditorStrings.TriggerZone.HelpDescription2D
|
|||
|
, MessageType.Info);
|
|||
|
|
|||
|
if(m_Targets.HasAtLeastOneTargetWith((VolumetricLightBeamAbstractBase beam) => { return UtilsBeamProps.CanChangeDuringPlaytime(beam); }))
|
|||
|
{
|
|||
|
EditorGUILayout.HelpBox(EditorStrings.TriggerZone.HelpTrackChangesDuringPlaytimeEnabled, MessageType.Warning);
|
|||
|
}
|
|||
|
}
|
|||
|
FoldableHeader.End();
|
|||
|
|
|||
|
serializedObject.ApplyModifiedProperties();
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
#endif
|