public void SetBool(string name, bool value) { JediumAnimatorMessage dfmsg = new JediumAnimatorMessage(JEDIUM_TYPE_ANIMATOR.BOOL, name, value, true, 0, 0); _updater.AddUpdate(dfmsg); }
public void SetFloat(string name, float value, float dampTime, float deltaTime) { // Debug.Log("___DIRECT FLOAT:"+name+";"+value); float cval = _animator.GetFloat(name); if (Math.Abs(cval - value) > 0.05f || Math.Abs(value) < 0.001f) { JediumAnimatorMessage dfmsg = new JediumAnimatorMessage(JEDIUM_TYPE_ANIMATOR.FLOAT, name, value, true, dampTime, deltaTime); _updater.AddUpdate(dfmsg); } }
public void SafeSetAnimatorParam(JediumAnimatorMessage value) { // Debug.Log("___GOT PARAM:"+value.NameParameter+";"+value.Value); if (_lastAnimatorParams.ContainsKey(value.NameParameter)) { if (_currrentAnimatorParams[value.NameParameter].Type == value.Type) { if (value.Type == JEDIUM_TYPE_ANIMATOR.BOOL || value.Type == JEDIUM_TYPE_ANIMATOR.TRIGGER) { // AnimatorControllerParameterType par = AnimatorControllerParameterType.Bool; // animatorParamsChange change = new animatorParamsChange(par); // change.b = (bool) value._value; _animator.SetBool(value.NameParameter, (bool)value.Value); _lastAnimatorParams[value.NameParameter].b = (bool)value.Value; _currrentAnimatorParams[value.NameParameter].b = (bool)value.Value; } if (value.Type == JEDIUM_TYPE_ANIMATOR.FLOAT) { // Debug.Log("__SETTING FLOAT:"+value.NameParameter+";"+(float)value.Value); _animator.SetFloat(value.NameParameter, (float)value.Value, value.DampTime, value.DeltaTime); // _animator.SetFloat("V",1); _lastAnimatorParams[value.NameParameter].f = (float)value.Value; _currrentAnimatorParams[value.NameParameter].f = (float)value.Value; } if (value.Type == JEDIUM_TYPE_ANIMATOR.INT) { _animator.SetInteger(value.NameParameter, (int)value.Value); _lastAnimatorParams[value.NameParameter].i = (int)value.Value; _currrentAnimatorParams[value.NameParameter].i = (int)value.Value; } } else { _log.Info($"Wrong animator param type:{value.NameParameter},{value.Type}"); } } else { _log.Info($"Wrong animator param name:{value.NameParameter}"); } }
public override bool ProcessUpdate(JediumBehaviourMessage message) { if (message == null && DoAnimStateTracking) //empty message update { CheckAllParams(); return(false); } if (!(message is JediumAnimatorMessage)) { return(false); } JediumAnimatorMessage amsg = (JediumAnimatorMessage)message; SafeSetAnimatorParam(amsg); if (DoAnimStateTracking) { CheckAllParams(); } return(true); }
void CheckAllParams() { GetCurrentValues(); foreach (var param in _currrentAnimatorParams) { // Debug.Log("______CHECKING PARAM:" + param.Key + "," + param.Value.GetObjParametr().ToString() + ";" + _lastAnimatorParams[param.Key].ToString()); // Debug.Log("__TOTAL PARAMS:"+_currrentAnimatorParams.Count); //if (param.Value.GetObjParametr() != _lastAnimatorParams[param.Key].GetObjParametr()) //comparing objects here - wrong! if (param.Value != _lastAnimatorParams[param.Key]) { // Debug.Log("___SENDING PARAM:" + param.Key); // if (param.Value.Type == JEDIUM_TYPE_ANIMATOR.BOOL) //AnimatorChanges?.Invoke(param.Value.Type, param.Key, param.Value.GetObjParametr()); //send it JediumAnimatorMessage par = new JediumAnimatorMessage(param.Value.Type, param.Key, param.Value.GetObjParametr(), false, 0, 0); Debug.Log("______SENDING ANIMATOR MESSAGE:" + param.Key); _updater.AddUpdate(par); } } }
public bool FindAnimatorParametr(JediumAnimatorMessage p) { return(_animatorParams.Contains(p)); }
public void RemoveAnimatorParametr(JediumAnimatorMessage p) { _animatorParams.Remove(p); }
public void AddAnimatorParametr(JediumAnimatorMessage p) { _animatorParams.Add(p); }