public override void OnInspectorGUI()
{
InitStyles();
base.serializedObject.Update();
if (this.m_LowpassObject != null)
{
this.m_LowpassObject.Update();
}
this.HandleLowPassFilter();
foreach (AudioCurveWrapper wrapper in this.m_AudioCurves)
{
CurveWrapper wrapper2 = this.m_CurveEditor.getCurveWrapperById(wrapper.id);
if (wrapper.curveProp != null)
{
AnimationCurve animationCurveValue = wrapper.curveProp.animationCurveValue;
if ((wrapper2 == null) != wrapper.curveProp.hasMultipleDifferentValues)
{
this.m_RefreshCurveEditor = true;
}
else if (wrapper2 != null)
{
if (wrapper2.curve.length == 0)
{
this.m_RefreshCurveEditor = true;
}
else if ((animationCurveValue.length >= 1) && (animationCurveValue.keys[0].value != wrapper2.curve.keys[0].value))
{
this.m_RefreshCurveEditor = true;
}
}
}
else if (wrapper2 != null)
{
this.m_RefreshCurveEditor = true;
}
}
this.UpdateWrappersAndLegend();
EditorGUILayout.PropertyField(this.m_AudioClip, ms_Styles.audioClipLabel, new GUILayoutOption[0]);
EditorGUILayout.Space();
EditorGUILayout.PropertyField(this.m_OutputAudioMixerGroup, ms_Styles.outputMixerGroupLabel, new GUILayoutOption[0]);
EditorGUILayout.PropertyField(this.m_Mute, new GUILayoutOption[0]);
if (AudioUtil.canUseSpatializerEffect)
{
EditorGUILayout.PropertyField(this.m_Spatialize, new GUILayoutOption[0]);
}
EditorGUILayout.PropertyField(this.m_BypassEffects, new GUILayoutOption[0]);
if (<>f__am$cache20 == null)
{
<>f__am$cache20 = t => (t as AudioSource).outputAudioMixerGroup != null;