Skip to content
Snippets Groups Projects
Select Git revision
  • 60b0bef8ca1a7453167564b1e734412a04c9668f
  • master default protected
  • 61-upgrade-framework-and-dependencies
  • 42-improve-app-metadata
  • 17-improve-and-complete-offline-words-list-and-tips
  • 6-allow-translate-application
  • 9-improve-documentation
  • Release_1.10.0_44 protected
  • Release_1.9.2_43 protected
  • Release_1.9.1_42 protected
  • Release_1.9.0_41 protected
  • Release_1.8.0_40 protected
  • Release_1.7.0_39 protected
  • Release_1.6.0_38 protected
  • Release_1.5.2_37 protected
  • Release_1.5.1_36 protected
  • Release_1.5.0_35 protected
  • Release_1.4.1_34 protected
  • Release_1.4.0_33 protected
  • Release_1.3.2_32 protected
  • Release_1.3.1_31 protected
  • Release_1.3.0_30 protected
  • Release_1.2.18_29 protected
  • Release_1.2.17_28 protected
  • Release_1.2.16_27 protected
  • Release_1.2.15_26 protected
  • Release_1.2.14_25 protected
27 results

data.dart

  • data.dart 3.40 KiB
    import 'package:flutter/foundation.dart';
    import '../utils/shared_prefs.dart';
    import '../utils/constants.dart';
    
    class Data extends ChangeNotifier {
      // settings
      final SharedPrefs _sharedPrefs = SharedPrefs();
    
      // screen settings
      bool _gameModeValue = false;
      String _levelValue = defaultLevel;
    
      // randomization
      String _secretWord = '';
      bool _searching = false;
      String _clue = '';
      List<String> _hiddenWord = [];
      List<String> _usedLetters = [];
    
      bool get searching => _searching;
    
      set searching(bool value) {
        _searching = value;
        notifyListeners();
      }
    
      // scores
      int _errors = 0;
      int _victoryCount = 0;
      int _defeatCount = 0;
    
      Data() {
        _getPrefs();
      }
    
      void _getPrefs() async {
        await _sharedPrefs.init();
    
        _gameModeValue = onlineGameMode.keys.firstWhere(
            (k) => onlineGameMode[k]?.contains(_sharedPrefs.level) ?? false,
            orElse: () => false);
    
        _levelValue = onlineGameMode[_gameModeValue]?.contains(_sharedPrefs.level) ?? false
            ? _sharedPrefs.level
            : onlineGameMode[_gameModeValue]?.first ?? '';
    
        _victoryCount = _sharedPrefs.victoryCount;
        _defeatCount = _sharedPrefs.defeatCount;
        notifyListeners();
      }
    
      bool get gameModePref => _sharedPrefs.gameMode;
      String get levelPref => (_sharedPrefs.level != '')
          ? _sharedPrefs.level
          : onlineGameMode[gameModePref]?.first ?? '';
    
      void resetValues() => _getPrefs();
    
      set setPrefGameMode(bool prefGameMode) {
        _sharedPrefs.gameMode = prefGameMode;
        notifyListeners();
      }
    
      set setPrefLevel(String prefLevel) {
        _sharedPrefs.level = prefLevel;
        notifyListeners();
      }
    
      bool get gameModeValue => _gameModeValue;