using System.Collections; using System.Collections.Generic; using UnityEngine; public class RandomIdleSelector : StateMachineBehaviour { // OnStateEnter is called when a transition starts and the state machine starts to evaluate this state //override public void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) //{ // //} // OnStateUpdate is called on each Update frame between OnStateEnter and OnStateExit callbacks //override public void OnStateUpdate(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) //{ // //} // OnStateExit is called when a transition ends and the state machine finishes evaluating this state //override public void OnStateExit(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) //{ // //} // OnStateMove is called right after Animator.OnAnimatorMove() //override public void OnStateMove(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) //{ // // Implement code that processes and affects root motion //} // OnStateIK is called right after Animator.OnAnimatorIK() //override public void OnStateIK(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) //{ // // Implement code that sets up animation IK (inverse kinematics) //} override public void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) { // Random.value 会返回一个 0.0 到 1.0 之间的随机浮点数 float randomValue = Random.value; // 写入参数,Animator 会根据上面配置的 Conditions 自动分流 animator.SetFloat("IdleRandom", randomValue); } }