public override void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) { foreach (BoolObject b in boolObjectsEnter) { animator.SetBool(b.boolName, b.value); } foreach (IntObject i in intObjectsEnter) { animator.SetInteger(i.intName, i.value); } if (animatorManager != null) { foreach (MethodInfo m in instanceVoidEnteres) { animatorManager.InvokeMethod(m, null); } foreach (FloatMethodInfo m in instanceFloatEnteres) { animatorManager.InvokeMethod(m.methodInfo, m.value); } foreach (BoolMethodInfo m in instanceBoolEnteres) { animatorManager.InvokeMethod(m.methodInfo, m.value); } foreach (Vec3MethodInfo m in instanceVec3Enter) { animatorManager.InvokeMethod(m.methodInfo, m.value); } } else { animatorManager = animator.transform.parent.GetComponent <AnimationSys>(); //Convert.ChangeType(animatorManager, animatorManagerType); if (!animatorManager) { Debug.LogError("No AnimationController attach to this animator's GameObject"); } else { foreach (MethodInfo m in instanceVoidEnteres) { animatorManager.InvokeMethod(m, null); } foreach (FloatMethodInfo m in instanceFloatEnteres) { animatorManager.InvokeMethod(m.methodInfo, m.value); } foreach (BoolMethodInfo m in instanceBoolEnteres) { animatorManager.InvokeMethod(m.methodInfo, m.value); } foreach (Vec3MethodInfo m in instanceVec3Enter) { animatorManager.InvokeMethod(m.methodInfo, m.value); } } } }
public void GetAnimationSys(AnimationSys s) { animationSys = s; }