attachSettings method

void attachSettings(
  1. SettingsController settingsController
)

Implementation

void attachSettings(SettingsController settingsController) {
  if (_settings == settingsController) {
    // Already attached to this instance. Nothing to do.
    return;
  }

  if (_settings != null) {
    _settings!.muted.removeListener(_mutedHandler);
    _settings!.musicOn.removeListener(_musicOnHandler);
    _settings!.soundsOn.removeListener(_soundsOnHandler);
  }

  _settings = settingsController;

  _settings!.muted.addListener(_mutedHandler);
  _settings!.musicOn.addListener(_musicOnHandler);
  _settings!.soundsOn.addListener(_soundsOnHandler);

  if (!_settings!.muted.value && _settings!.musicOn.value) {
    _startMusic();
  }
}