Action to rewind a named animation.
// (c) Copyright HutongGames, LLC 2010-2011. All rights reserved.
using UnityEngine;
namespace HutongGames.PlayMaker.Actions
{
[ActionCategory(ActionCategory.Animation)]
[Tooltip("Rewinds the named animation.")]
public class RewindAnimation : FsmStateAction
{
[RequiredField]
[CheckForComponent(typeof(Animation))]
public FsmOwnerDefault gameObject;
[UIHint(UIHint.Animation)]
public FsmString animName;
public override void Reset()
{
gameObject = null;
animName = null;
}
public override void OnEnter()
{
DoRewindAnimation();
Finish();
}
void DoRewindAnimation()
{
if (string.IsNullOrEmpty(animName.Value))
{
return;
}
var go = Fsm.GetOwnerDefaultTarget(gameObject);
if (go == null)
{
return;
}
if (go.animation == null)
{
LogWarning("Missing animation component: " + go.name);
return;
}
go.animation.Rewind(animName.Value);
}
}
}