Beispiel #1
0
 public GameTask(IGame game, IUiRepository repository, ISettings settings)
 {
     Game       = game;
     Repository = repository;
     Settings   = settings;
     Logger     = Game.CreateLogger(GetType());
 }
Beispiel #2
0
 public AllianceBattleSettingsViewModel(IGame game,
                                        IUiRepository repo,
                                        ITaskExecutioner executioner,
                                        ISettings settings) : base()
 {
     _settings = settings;
 }
 public TimelineBattleSettingsViewModel(
     IGame game,
     IUiRepository repo,
     ITaskExecutioner taskExecutioner,
     ISettings settings) : base()
 {
     _settings = settings;
 }
 public DimensionMissionSettingsViewModel(
     IGame game,
     IUiRepository repo,
     ITaskExecutioner taskExecutioner,
     ISettings settings) : base()
 {
     Settings = settings.DimensionMission;
 }
Beispiel #5
0
 public LegendaryBattleSettingsViewModel(
     IGame game,
     IUiRepository repo,
     ITaskExecutioner taskExecutioner,
     ISettings settings) : base()
 {
     Settings = settings.LegendaryBattle;
 }
Beispiel #6
0
        public DailyTrivia(IGame game, IUiRepository repository, ISettings settings) : base(game, repository, settings)
        {
            var resourceName = GetType().Namespace + ".DailyTriviaAnswers.json";

            using var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream(resourceName);
            using var reader = new StreamReader(stream ?? throw new InvalidOperationException());
            var json = reader.ReadToEnd();

            _questionsAndAnswers = JsonConvert.DeserializeObject <List <QuestionAnswerPair> >(json);
        }
Beispiel #7
0
 public GameImpl(IEmulatorWindow window, IVideoProvider videoProvider, IUiRepository repository,
                 ILoggerFactory loggerFactory, ITextRecognition recognition, ISettings settings)
 {
     _window        = window;
     _videoProvider = videoProvider;
     _repository    = repository;
     _loggerFactory = loggerFactory;
     _recognition   = recognition;
     _settings      = settings;
     _logger        = _loggerFactory.CreateLogger(GetType());
 }
 public RoutineViewModel(Type taskType, IGame game, IUiRepository repo,
                         ITaskExecutioner taskExecutioner, ISettings settings, ITaskQueue queue)
 {
     TaskType                = taskType;
     _game                   = game;
     _repo                   = repo;
     _taskExecutioner        = taskExecutioner;
     _settings               = settings;
     _queue                  = queue;
     _queue.PropertyChanged += QueueOnPropertyChanged;
 }
Beispiel #9
0
        public AutoFight(IGame game, IUiRepository repository, ISettings settings, int maxWaitTime, params Func <bool>[] conditions) : base(game, repository, settings)
        {
            _conditions = conditions.ToList();
            _conditions.Add(() => game.IsVisible(UIds.GENERIC_MISSION_MISSION_SUCCESS));

            // TODO: these conditions should be moved to specific missions.
            _conditions.Add(() => game.IsVisible("BATTLE_END_BATTLE_NOTICE")); // Generic end message? Used in world event... Anywhere else?? TODO: if not move to another json...
            _conditions.Add(() => game.IsVisible("WORLD_BOSS_MISSION_SUCCESS"));
            _conditions.Add(() => game.IsVisible("ALLIANCE_BATTLE_CLEAR_MESSAGE"));
            _conditions.Add(() => game.IsVisible("ALLIANCE_BATTLE_ENDED_MESSAGE"));
            _conditions.Add(() => game.IsVisible("DANGER_ROOM_HIGHEST_EXCLUSIV_SKILL_COUNT"));
            _maxWaitTime = maxWaitTime;
        }
Beispiel #10
0
 public DebugViewModel(IGame game,
                       IUiRepository repo,
                       ISettings settings,
                       IVideoCapture capture)
 {
     Run            = new DelegateCommand(RunCommand);
     Drag           = new DelegateCommand(ExecuteDrag);
     StartRecording = new DelegateCommand(ExecuteStartRecording);
     EndRecording   = new DelegateCommand(ExecuteEndRecording);
     _repo          = repo;
     _game          = game;
     _settings      = settings;
     _capture       = capture;
 }
 public RepositoryBrowserViewModel(
     IUiRepository repository,
     IEmulatorOverlay overlay,
     IAreaPicker picker,
     IEmulatorWindow window,
     IGame game)
 {
     _repository           = repository;
     _overlay              = overlay;
     _areaPicker           = picker;
     SubRepositories       = new ObservableCollection <string>(_repository.SubRepositories.Select(x => x.Name));
     SelectedSubRepository = SubRepositories.First();
     _window    = window;
     _game      = game;
     SaveRepo   = new DelegateCommand(Save);
     ReloadRepo = new DelegateCommand(Reload);
     AddNew     = new DelegateCommand(Add);
 }
 public DispatchMission(IGame game, IUiRepository repository, ISettings settings) : base(game, repository, settings)
 {
 }
        public TasksViewModel(ITaskQueue queue, IGame game, IUiRepository repo, ITaskExecutioner executioner, ISettings settings)
        {
            _queue                  = queue;
            _game                   = game;
            _repo                   = repo;
            _executioner            = executioner;
            _settings               = settings;
            AddAllToQueue           = new DelegateCommand(AddAll, CanExecuteRunRoutine);
            CancelCommand           = new DelegateCommand(CancelAll, CanExecuteCancel);
            Add                     = new DelegateCommand <Type>(AddToRoutine, CanAddToRoutine);
            Remove                  = new DelegateCommand <RoutineViewModel>(RemoveFromRoutine, CanRemoveFromRoutine);
            _queue.PropertyChanged += (_, _) => OnQueueChanged();
            OnQueueChanged();

            var types = new List <Type>();

            var entryAssembly        = Assembly.GetEntryAssembly();
            var referencedAssemblies = entryAssembly?.GetReferencedAssemblies();

            if (referencedAssemblies == null)
            {
                throw new Exception();
            }

            foreach (var referencedAssembly in referencedAssemblies)
            {
                var assembly = Assembly.Load(referencedAssembly);
                types.AddRange(assembly.GetTypes()
                               .Where(x => x.IsAssignableTo(typeof(IGameTask)) &&
                                      !x.IsAbstract &&
                                      x.IsPublic));
            }

            foreach (var type in types)
            {
                Tasks.Add(type);
            }

            if (settings.RoutineItems != null)
            {
                foreach (var routineViewModel in settings.RoutineItems.Where(x => types.Any(t => t.Name == x))
                         .Select((x, idx) =>
                {
                    var vm = new RoutineViewModel(types.FirstOrDefault(t => t.Name == x), game, repo, executioner,
                                                  settings, queue);
                    var state = settings.RoutineItemsState?.ElementAtOrDefault(idx);
                    bool.TryParse(state, out var isChecked);
                    vm.IsChecked = isChecked;
                    return(vm);
                }))
                {
                    routineViewModel.PropertyChanged += RoutineViewModelOnPropertyChanged;
                    RoutineItems.Add(routineViewModel);
                }
            }

            RoutineItems.CollectionChanged += RoutineItems_CollectionChanged;

            if (!RoutineItems.Any())
            {
                foreach (var routineViewModel in types.Where(x => x != typeof(AutoFight))
                         .Select(t => new RoutineViewModel(t, game, repo, executioner, settings, queue)))
                {
                    routineViewModel.PropertyChanged += RoutineViewModelOnPropertyChanged;
                    RoutineItems.Add(routineViewModel);
                }
            }

            AddAllToQueue.RaiseCanExecuteChanged();
        }
Beispiel #14
0
 public RestartGame(IGame game, IUiRepository repository, ISettings settings) : base(game, repository, settings)
 {
 }
 protected GenericEpicQuest(IGame game, IUiRepository repository, ISettings settings) : base(game, repository, settings)
 {
 }
Beispiel #16
0
 public UpgradeCustomGear(IGame game, IUiRepository repository, ISettings settings) : base(game, repository, settings)
 {
 }
Beispiel #17
0
 public CombineUru(IGame game, IUiRepository repository, ISettings settings) : base(game, repository, settings)
 {
 }
Beispiel #18
0
 public TheFault(IGame game, IUiRepository repository, ISettings settings) : base(game, repository, settings)
 {
 }
Beispiel #19
0
 public DangerRoom(IGame game, IUiRepository repository, ISettings settings) : base(game, repository, settings)
 {
 }
 public CoopMissionSettingsViewModel(IGame game, IUiRepository repo, ITaskExecutioner taskExecutioner, ISettings settings)
     : base()
 {
 }
Beispiel #21
0
 public WorldBoss(IGame game, IUiRepository repository, ISettings settings) : base(game, repository, settings)
 {
 }
Beispiel #22
0
 public WorldBossSettingsViewModel(IGame game, IUiRepository repo, ITaskExecutioner taskExecutioner, ISettings settings) : base()
 {
 }
 public DangerRoomSettingsViewModel(IGame game, IUiRepository repo, ITaskExecutioner taskExecutioner, ISettings settings)
     : base()
 {
 }
Beispiel #24
0
 public EnhanceIso8(IGame game, IUiRepository repository, ISettings settings) : base(game, repository, settings)
 {
 }
 public VeiledSecret(IGame game, IUiRepository repository, ISettings settings) : base(game, repository, settings)
 {
 }
Beispiel #26
0
 public StupidXMen(IGame game, IUiRepository repository, ISettings settings) : base(game, repository, settings)
 {
 }
 public UpgradeCards(IGame game, IUiRepository repository, ISettings settings) : base(game, repository, settings)
 {
 }
Beispiel #28
0
 public MutualEnemy(IGame game, IUiRepository repository, ISettings settings) : base(game, repository, settings)
 {
 }
Beispiel #29
0
 public TwistedWorld(IGame game, IUiRepository repository, ISettings settings) : base(game, repository, settings)
 {
 }
 public AllianceBattle(IGame game, IUiRepository repository, ISettings settings) : base(game, repository, settings)
 {
     ShouldRunExtremeMode = settings.AllianceBattle.RunExtremeMode;
     ShouldRunNormalMode  = settings.AllianceBattle.RunNormalMode;
 }