import 'package:flutter_custom_toolbox/flutter_toolbox.dart'; class DefaultGameSettings { // available game parameters codes static const String parameterCodeLevel = 'level'; static const String parameterCodeSize = 'size'; static const List<String> availableParameters = [ parameterCodeLevel, parameterCodeSize, ]; // level: available values static const String levelValueEasy = 'easy'; static const String levelValueMedium = 'medium'; static const String levelValueHard = 'hard'; static const String levelValueNightmare = 'nightmare'; static const List<String> allowedLevelValues = [ levelValueEasy, levelValueMedium, levelValueHard, levelValueNightmare, ]; // level: default value static const String defaultLevelValue = levelValueMedium; // size: available values static const String sizeValueSmall = '10x10'; static const String sizeValueMedium = '15x15'; static const String sizeValueLarge = '20x20'; static const String sizeValueExtraLarge = '30x30'; static const List<String> allowedSizeValues = [ sizeValueSmall, sizeValueMedium, sizeValueLarge, sizeValueExtraLarge, ]; // size: default value static const String defaultSizeValue = sizeValueMedium; // available values from parameter code static List<String> getAvailableValues(String parameterCode) { switch (parameterCode) { case parameterCodeLevel: return DefaultGameSettings.allowedLevelValues; case parameterCodeSize: return DefaultGameSettings.allowedSizeValues; } printlog('Did not find any available value for game parameter "$parameterCode".'); return []; } }