// Update is called once per frame void Update() { var now = Time.time; if (last + 5 < now) { Debug.Log("Update!"); switch (Animation) { case ECharacterAnimation.Idle: Animation = ECharacterAnimation.Walk; break; case ECharacterAnimation.Walk: Animation = ECharacterAnimation.Smith; break; case ECharacterAnimation.Smith: Animation = ECharacterAnimation.Cast; break; case ECharacterAnimation.Cast: Animation = ECharacterAnimation.Idle; break; } last = now; } }
/// <summary> /// Set the internal animation flag state /// </summary> /// <param name="Key"></param> /// <param name="bEnabled"></param> private void SetAnimationFlag(ECharacterAnimation Key, bool bEnabled) { switch (Key) { case ECharacterAnimation.Idle: Anim.SetBool("Idle", bEnabled); break; case ECharacterAnimation.Walk: Anim.SetBool("Walk", bEnabled); break; case ECharacterAnimation.Smith: Anim.SetBool("Smith", bEnabled); break; case ECharacterAnimation.Cast: Anim.SetBool("Cast", bEnabled); break; } }