Skip to content
Snippets Groups Projects
Select Git revision
  • be7903a8151f9cb60f8f9fb6548dbaf9c9f5ea6f
  • master default protected
  • 56-upgrade-framework-and-dependencies
  • 39-improve-app-metadata
  • 28-add-high-scores
  • 32-add-block-size-limit-parameter
  • 29-use-real-board-painter-to-draw-parameters-items
  • Release_0.9.0_47 protected
  • Release_0.8.2_46 protected
  • Release_0.8.1_45 protected
  • Release_0.8.0_44 protected
  • Release_0.7.0_43 protected
  • Release_0.6.0_42 protected
  • Release_0.5.0_41 protected
  • Release_0.4.2_40 protected
  • Release_0.4.1_39 protected
  • Release_0.4.0_38 protected
  • Release_0.3.1_37 protected
  • Release_0.3.0_36 protected
  • Release_0.2.1_35 protected
  • Release_0.2.0_34 protected
  • Release_0.1.1_33 protected
  • Release_0.1.0_32 protected
  • Release_0.0.31_31 protected
  • Release_0.0.30_30 protected
  • Release_0.0.29_29 protected
  • Release_0.0.28_28 protected
27 results

game_board.dart

Blame
  • 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;