Select Git revision
activity.dart
activity.dart 4.33 KiB
import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
import 'package:momomotus/config/default_activity_settings.dart';
import 'package:momomotus/data/fetch_data_helper.dart';
import 'package:momomotus/models/settings/settings_activity.dart';
import 'package:momomotus/models/settings/settings_global.dart';
class Activity {
Activity({
// Settings
required this.activitySettings,
required this.globalSettings,
// State
this.isRunning = false,
this.isStarted = false,
this.animationInProgress = false,
// Base data
required this.word,
required this.dictionary,
// Game data
this.currentGuess = '',
this.foundLetters = '',
required this.guesses,
this.foundWord = false,
});
// Settings
final ActivitySettings activitySettings;
final GlobalSettings globalSettings;
// State
bool isRunning;
bool isStarted;
bool animationInProgress;
// Base data
final String word;
final List<String> dictionary;
// Game data
String currentGuess;
String foundLetters;
List<String> guesses;
bool foundWord;
factory Activity.createEmpty() {
return Activity(
// Settings
activitySettings: ActivitySettings.createDefault(),
globalSettings: GlobalSettings.createDefault(),
// Base data
word: '',
dictionary: [],
// Game data
guesses: [],
);
}
factory Activity.createNew({
ActivitySettings? activitySettings,
GlobalSettings? globalSettings,
}) {
final ActivitySettings newActivitySettings =
activitySettings ?? ActivitySettings.createDefault();
final GlobalSettings newGlobalSettings = globalSettings ?? GlobalSettings.createDefault();
final String pickedWord = FetchDataHelper().getRandomWord(