// ******************************************************************** // ******************************************************************** #region Private Data Members // ******************************************************************** #endregion // ******************************************************************** // ******************************************************************** #region MonoBehaviour Methods // ******************************************************************** void Start() { for (int i = 0; i < m_parameters.Count; ++i) { AnimatorControllerParameterData param = m_parameters[i]; switch (param.parameterType) { case AnimatorControllerParameterType.Trigger: param.animator.SetTrigger(param.parameter); break; case AnimatorControllerParameterType.Bool: param.animator.SetBool(param.parameter, param.parameterValueBool); break; case AnimatorControllerParameterType.Int: param.animator.SetInteger(param.parameter, param.parameterValueInt); break; case AnimatorControllerParameterType.Float: param.animator.SetFloat(param.parameter, param.parameterValueFloat); break; } } }
// ******************************************************************** #endregion // ******************************************************************** // ******************************************************************** #region Private Data Members // ******************************************************************** void OnEvent(AnimatorControllerParameterData _event) { if (_event.id == m_id) { _event.Apply(m_animator); } }
// ******************************************************************** #endregion // ******************************************************************** // ******************************************************************** #region Private Data Members // ******************************************************************** void SetParameter(string _id) { if (!m_paramMap.ContainsKey(_id)) { Debug.LogError("No data found for ID: " + _id); return; } AnimatorControllerParameterData param = m_paramMap[_id]; param.Apply(); }
// ******************************************************************** // ******************************************************************** #region MonoBehaviour Methods // ******************************************************************** void Awake() { for (int i = 0; i < m_parameters.Count; ++i) { AnimatorControllerParameterData param = m_parameters[i]; if (m_paramMap.ContainsKey(param.id)) { Debug.LogError("Duplicate ID found: " + param.id); } else { m_paramMap[param.id] = param; } } }