void OnDataChange(ThermalDataProvider provider) { if (currentPipelineVersion != dataProvider.pipelineVersion) { Restart(); } if (Application.isPlaying && isActiveAndEnabled) { DisplayHeatData(); } }
void OnEnable() { _dataProvider = dataProvider; Restart(); if (dataProvider) { dataProvider.Subscribe(OnDataChange); DisplayHeatData(); } }
void OnValidate() { if (Application.isPlaying && isActiveAndEnabled) { ValidateResources(); if (_dataProvider != dataProvider) { if (_dataProvider != null) { _dataProvider.Unsubscribe(OnDataChange); Shutdown(); } _dataProvider = dataProvider; if (dataProvider != null) { Init(); dataProvider.Subscribe(OnDataChange); } } DisplayHeatData(); } }