public override void OnInteractivePreviewGUI(Rect r, GUIStyle background)
{
bool flag = Event.current.type == EventType.Repaint;
this.InitController();
if (flag)
{
this.m_AvatarPreview.timeControl.Update();
}
AnimationClip target = this.target as AnimationClip;
AnimationClipSettings animationClipSettings = AnimationUtility.GetAnimationClipSettings(target);
this.m_AvatarPreview.timeControl.loop = true;
if (flag && (this.m_AvatarPreview.PreviewObject != null))
{
if (this.m_AvatarPreview.Animator != null)
{
if (this.m_State != null)
{
this.m_State.iKOnFeet = this.m_AvatarPreview.IKOnFeet;
}
float normalizedTime = ((animationClipSettings.stopTime - animationClipSettings.startTime) == 0f) ? 0f : ((this.m_AvatarPreview.timeControl.currentTime - animationClipSettings.startTime) / (animationClipSettings.stopTime - animationClipSettings.startTime));
this.m_AvatarPreview.Animator.Play(0, 0, normalizedTime);
this.m_AvatarPreview.Animator.Update(this.m_AvatarPreview.timeControl.deltaTime);
}
else
{
target.SampleAnimation(this.m_AvatarPreview.PreviewObject, this.m_AvatarPreview.timeControl.currentTime);
}
}
this.m_AvatarPreview.DoAvatarPreview(r, background);
}