Skip to content
Snippets Groups Projects
Select Git revision
  • e9560f7cc7182ab3a0b680db311f8a5a09004981
  • 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

main.dart

Blame
  • default_game_settings.dart 2.52 KiB
    import 'package:petitbac/utils/tools.dart';
    
    class DefaultGameSettings {
      // available game parameters codes
      static const String parameterCodeItemsCount = 'itemsCount';
      static const String parameterCodeTimerValue = 'timerValue';
      static const List<String> availableParameters = [
        parameterCodeItemsCount,
        parameterCodeTimerValue,
      ];
    
      // items count: available values
      static const String itemsCountValueNoLimit = 'nolimit';
      static const String itemsCountValueShort = 'short';
      static const String itemsCountValueMedium = 'medium';
      static const String itemsCountValueLong = 'long';
      static const List<String> allowedItemsCountValues = [
        itemsCountValueNoLimit,
        itemsCountValueShort,
        itemsCountValueMedium,
        itemsCountValueLong,
      ];
      // items count: default value
      static const String defaultItemsCountValue = itemsCountValueMedium;
    
      // timer value: available values
      static const String timerValueNoTimer = 'nolimit';
      static const String timerValueLow = 'low';
      static const String timerValueMedium = 'medium';
      static const String timerValueHigh = 'high';
      static const List<String> allowedTimerValues = [
        timerValueNoTimer,
        timerValueLow,
        timerValueMedium,
        timerValueHigh,
      ];
      // timer value: default value
      static const String defaultTimerValue = timerValueMedium;
    
      // available values from parameter code
      static List<String> getAvailableValues(String parameterCode) {
        switch (parameterCode) {
          case parameterCodeItemsCount:
            return DefaultGameSettings.allowedItemsCountValues;
          case parameterCodeTimerValue:
            return DefaultGameSettings.allowedTimerValues;
        }
    
        printlog('Did not find any available value for game parameter "$parameterCode".');
        return [];
      }
    
      static int getItemsCountValueFromCode(String itemsCountParameterValue) {
        const Map<String, int> values = {
          DefaultGameSettings.itemsCountValueNoLimit: 0,
          DefaultGameSettings.itemsCountValueShort: 5,
          DefaultGameSettings.itemsCountValueMedium: 10,
          DefaultGameSettings.itemsCountValueLong: 20,
        };
        return values[itemsCountParameterValue] ??
            getItemsCountValueFromCode(DefaultGameSettings.defaultItemsCountValue);
      }
    
      static int getTimerValueFromCode(String timerValueParameterValue) {
        const Map<String, int> values = {
          timerValueNoTimer: 0,
          timerValueLow: 5,
          timerValueMedium: 30,
          timerValueHigh: 90,
        };