private void OnPlayStateChanged(UnityEditor.PlayModeStateChange stateChange) { if (_floatValue != null && _floatValue is ISOWatchable) { ISOWatchable watchableFloatValue = _floatValue as ISOWatchable; watchableFloatValue.onSOChanged -= OnValueChanged; } }
private void TryWatchFloatChanges() { if (_floatValue != null && _floatValue is ISOWatchable) { ISOWatchable watchableFloatValue = _floatValue as ISOWatchable; watchableFloatValue.onSOChanged -= OnValueChanged; watchableFloatValue.onSOChanged += OnValueChanged; } }
void Start() { ISOWatchable watchableValue = GetWatchableObject(); if (watchableValue != null) { watchableValue.onSOChanged += OnValueChanged; } toggle.onValueChanged.AddListener(OnToggleValueChanged); SafeSyncSOValueToToggle(); }
protected virtual void OnValidate() { if (GetWatchableObject() != null) { // Watch the evolution of the asset so we can sync in editor! // Assure to subscribe only once ISOWatchable watchableValue = GetWatchableObject(); watchableValue.onSOChanged -= OnValueChanged; watchableValue.onSOChanged += OnValueChanged; } SafeSyncSOValueToToggle(); }
private void WatchVariablesIfPossible() { if (variables != null) { for (int i = 0; i < variables.Length; ++i) { ISOWatchable watchableVariable = variables[i] as ISOWatchable; if (watchableVariable != null) { watchableVariable.onSOChanged -= OnSOVariableChanged; // Assure to subscribe only once watchableVariable.onSOChanged += OnSOVariableChanged; } } } }
private void OnValueChanged(ISOWatchable obj) { UpdateMaterialPropertyValue(); }
private void OnValueChanged(ISOWatchable watchableObject) { SafeSyncSOValueToToggle(); }
private void OnSOVariableChanged(ISOWatchable soVariable) { UpdateText(); }