Skip to content
Snippets Groups Projects
Select Git revision
  • de5e41915a44ecd296cb0a63f6d01ad99e638cfa
  • master default protected
  • 32-improve-app-metadata
  • Release_0.9.2_45 protected
  • Release_0.9.1_44 protected
  • Release_0.9.0_43 protected
  • Release_0.8.2_42 protected
  • Release_0.8.1_41 protected
  • Release_0.8.0_40 protected
  • Release_0.7.0_39 protected
  • Release_0.6.0_38 protected
  • Release_0.5.0_37 protected
  • Release_0.4.2_36 protected
  • Release_0.4.1_35 protected
  • Release_0.4.0_34 protected
  • Release_0.3.1_33 protected
  • Release_0.3.0_32 protected
  • Release_0.2.1_31 protected
  • Release_0.2.0_30 protected
  • Release_0.1.2_29 protected
  • Release_0.1.1_28 protected
  • Release_0.1.0_27 protected
  • Release_0.0.26_26 protected
23 results

activity.dart

Blame
  • activity.dart 2.99 KiB
    import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
    
    import 'package:sortgame/config/application_config.dart';
    
    import 'package:sortgame/data/fetch_data_helper.dart';
    import 'package:sortgame/models/data/game_item.dart';
    
    class Activity {
      Activity({
        // Settings
        required this.activitySettings,
    
        // State
        this.isRunning = false,
        this.isStarted = false,
        this.isFinished = false,
        this.animationInProgress = false,
    
        // Base data
        required this.items,
    
        // Game data
        this.position = 1,
        this.score = 0,
      });
    
      // Settings
      final ActivitySettings activitySettings;
    
      // State
      bool isRunning;
      bool isStarted;
      bool isFinished;
      bool animationInProgress;
    
      // Base data
      final List<GameItem> items;
    
      // Game data
      int position;
      int score;
    
      factory Activity.createEmpty() {
        return Activity(
          // Settings
          activitySettings: ActivitySettings.createDefault(appConfig: ApplicationConfig.config),
          // Base data
          items: [],
        );
      }
    
      factory Activity.createNew({
        ActivitySettings? activitySettings,
      }) {
        final ActivitySettings newActivitySettings = activitySettings ??
            ActivitySettings.createDefault(appConfig: ApplicationConfig.config);
    
        final List<GameItem> items = FetchDataHelper().getItems(newActivitySettings);
    
        return Activity(
          // Settings
          activitySettings: newActivitySettings,
          // State
          isRunning: true,
          // Base data
          items: items,
        );
      }
    
      bool get canBeResumed => isStarted && !isFinished;