Contains all the other managers and non-loop related components
상속: IDisposable
예제 #1
1
        public Dota2ViewModel(MainManager main, IProfileEditorVmFactory pFactory, Dota2Model model)
            : base(main, model, pFactory)
        {
            DisplayName = "Dota 2";

            FindGameDir();
            PlaceConfigFile();
        }
예제 #2
0
        public OverwatchViewModel(MainManager main, IProfileEditorVmFactory pFactory, OverwatchModel model)
            : base(main, model, pFactory)
        {
            DisplayName = "Overwatch";

            FindOverwatch();
        }
        public EurotruckSimulator2ViewModel(MainManager main, IProfileEditorVmFactory pFactory,
            EurotruckSimulator2Model model) : base(main, model, pFactory)
        {
            DisplayName = "ETS 2";

            FindGameDir();
        }
예제 #4
0
        public RocketLeagueModel(MainManager mainManager)
            : base(mainManager, SettingsProvider.Load<RocketLeagueSettings>(), new RocketLeagueDataModel())
        {
            Name = "RocketLeague";
            ProcessName = "RocketLeague";
            Scale = 4;
            Enabled = Settings.Enabled;
            Initialized = false;

            // Generate a new offset when the game is updated
            //var offset = new GamePointersCollection
            //{
            //    Game = "RocketLeague",
            //    GameVersion = "1.24",
            //    GameAddresses = new List<GamePointer>
            //    {
            //        new GamePointer
            //        {
            //            Description = "Boost",
            //            BasePointer = new IntPtr(0x016BBFB4),
            //            Offsets = new[] { 0xc4, 0x210, 0x320, 0x734, 0x224}
            //        }
            //    }
            //};
            //var res = JsonConvert.SerializeObject(offset, Formatting.Indented);
        }
예제 #5
0
 public VolumeDisplayModel(MainManager mainManager)
     : base(mainManager, SettingsProvider.Load<VolumeDisplaySettings>())
 {
     Name = "VolumeDisplay";
     Settings = (VolumeDisplaySettings) base.Settings;
     VolumeDisplay = new VolumeBar(MainManager.DeviceManager, Settings);
 }
 public UnrealTournamentViewModel(MainManager main, IProfileEditorVmFactory pFactory, UnrealTournamentModel model)
     : base(main, model, pFactory)
 {
     DisplayName = "Unreal Tournament";
     MainManager.EffectManager.EffectModels.Add(GameModel);
     FindGame();
     InstallGif();
 }
예제 #7
0
        public VolumeDisplayViewModel(MainManager mainManager, VolumeDisplayModel model) : base(mainManager, model)
        {
            _model = model;
            DisplayName = "Volume Display";

            MainColor = new SolidColorBrush(model.Settings.MainColor);
            SecondaryColor = new SolidColorBrush(model.Settings.SecondaryColor);
        }
예제 #8
0
        public CounterStrikeViewModel(MainManager main, IProfileEditorVmFactory pFactory, CounterStrikeModel model)
            : base(main, model, pFactory)
        {
            DisplayName = "CS:GO";

            FindGameDir();
            PlaceConfigFile();
        }
예제 #9
0
        protected EffectModel(MainManager mainManager, EffectSettings settings, IDataModel dataModel)
        {
            MainManager = mainManager;
            Settings = settings;
            DataModel = dataModel;

            MainManager.EffectManager.EffectModels.Add(this);
        }
예제 #10
0
 public Dota2Model(MainManager mainManager)
     : base(mainManager, SettingsProvider.Load<Dota2Settings>(), new Dota2DataModel())
 {
     Name = "Dota2";
     ProcessName = "dota2";
     Enabled = Settings.Enabled;
     Initialized = false;
     Scale = 4;
 }
예제 #11
0
        protected EffectViewModel(MainManager mainManager, EffectModel effectModel)
        {
            MainManager = mainManager;
            EffectModel = effectModel;
            EffectSettings = effectModel.Settings;

            MainManager.OnEnabledChangedEvent += MainManagerOnOnEnabledChangedEvent;
            MainManager.EffectManager.OnEffectChangedEvent += EffectManagerOnOnEffectChangedEvent;
        }
예제 #12
0
 public CounterStrikeModel(MainManager mainManager)
     : base(mainManager, SettingsProvider.Load<CounterStrikeSettings>(), new CounterStrikeDataModel())
 {
     Name = "CounterStrike";
     ProcessName = "csgo";
     Scale = 4;
     Enabled = Settings.Enabled;
     Initialized = false;
 }
예제 #13
0
 public TheDivisionModel(MainManager mainManager)
     : base(mainManager, SettingsProvider.Load<TheDivisionSettings>(), new TheDivisionDataModel())
 {
     Name = "TheDivision";
     ProcessName = "TheDivision";
     Scale = 4;
     Enabled = Settings.Enabled;
     Initialized = false;
 }
예제 #14
0
 public EurotruckSimulator2Model(MainManager mainManager)
     : base(mainManager, SettingsProvider.Load<EurotruckSimulator2Settings>(), new EurotruckSimulator2DataModel()
     )
 {
     Name = "EurotruckSimulator2";
     ProcessName = "eurotrucks2";
     Scale = 4;
     Enabled = Settings.Enabled;
     Initialized = false;
 }
예제 #15
0
        public OverwatchModel(MainManager mainManager)
            : base(mainManager, SettingsProvider.Load<OverwatchSettings>(), new OverwatchDataModel())
        {
            Name = "Overwatch";
            ProcessName = "Overwatch";
            Scale = 4;
            Enabled = Settings.Enabled;
            Initialized = false;

            LoadOverwatchCharacters();
        }
예제 #16
0
        protected GameViewModel(MainManager mainManager, GameModel gameModel, IProfileEditorVmFactory pFactory)
        {
            MainManager = mainManager;
            GameModel = gameModel;
            PFactory = pFactory;
            GameSettings = gameModel.Settings;

            ProfileEditor = PFactory.CreateProfileEditorVm(mainManager, gameModel, GameSettings.LastProfile);
            GameModel.Profile = ProfileEditor.SelectedProfile;
            ProfileEditor.PropertyChanged += ProfileUpdater;
        }
예제 #17
0
        public Witcher3Model(MainManager mainManager)
            : base(mainManager, SettingsProvider.Load<Witcher3Settings>(), new Witcher3DataModel())
        {
            Name = "Witcher3";
            ProcessName = "witcher3";
            Scale = 4;
            Enabled = Settings.Enabled;
            Initialized = false;

            _updateSw = new Stopwatch();
            _configRegex = new Regex("\\[Artemis\\](.+?)\\[", RegexOptions.Singleline);
        }
예제 #18
0
        public UnrealTournamentModel(MainManager mainManager)
            : base(mainManager, SettingsProvider.Load<UnrealTournamentSettings>(), new UnrealTournamentDataModel())
        {
            Name = "UnrealTournament";
            ProcessName = "UE4-Win64-Shipping";
            Scale = 4;
            Enabled = Settings.Enabled;
            Initialized = false;

            _killTimer = new Timer(3500);
            _killTimer.Elapsed += KillTimerOnElapsed;
        }
예제 #19
0
 public WindowsProfileViewModel(MainManager main, IProfileEditorVmFactory pFactory,
     ProfilePreviewModel profilePreviewModel, WindowsProfileModel model) : base(main, model)
 {
     DisplayName = "Windows Profile";
     PFactory = pFactory;
     ProfilePreviewModel = profilePreviewModel;
     EffectSettings = ((WindowsProfileModel) EffectModel).Settings;
     ProfileEditor = PFactory.CreateProfileEditorVm(main, (WindowsProfileModel) EffectModel,
         ((WindowsProfileSettings) EffectSettings).LastProfile);
     ProfilePreviewModel.Profile = ProfileEditor.SelectedProfile;
     ProfileEditor.PropertyChanged += ProfileUpdater;
     MainManager.EffectManager.EffectModels.Add(EffectModel);
 }
예제 #20
0
        public FlyoutSettingsViewModel(MainManager mainManager, ILogger logger, DebugViewModel debugViewModel)
        {
            _logger = logger;
            _debugViewModel = debugViewModel;

            MainManager = mainManager;
            Header = "Settings";
            Position = Position.Right;
            GeneralSettings = SettingsProvider.Load<GeneralSettings>();

            LogLevels = new BindableCollection<string>();
            LogLevels.AddRange(LogLevel.AllLoggingLevels.Select(l => l.Name));

            PropertyChanged += KeyboardUpdater;
            mainManager.OnEnabledChangedEvent += MainManagerOnOnEnabledChangedEvent;
            mainManager.EffectManager.OnEffectChangedEvent += EffectManagerOnOnEffectChangedEvent;
        }
예제 #21
0
        public SystemTrayViewModel(IWindowManager windowManager, MetroDialogService dialogService,
            ShellViewModel shellViewModel, MainManager mainManager)
        {
            _windowManager = windowManager;
            _shellViewModel = shellViewModel;

            DialogService = dialogService;
            MainManager = mainManager;

            MainManager.EnableProgram();
            MainManager.OnEnabledChangedEvent += MainManagerOnOnEnabledChangedEvent;

            var generalSettings = SettingsProvider.Load<GeneralSettings>();
            Enabled = !generalSettings.Suspended;
            if (generalSettings.ShowOnStartup)
                ShowWindow();
        }
예제 #22
0
        public WoWModel(MainManager mainManager)
            : base(mainManager, SettingsProvider.Load<WoWSettings>(), new WoWDataModel())
        {
            Name = "WoW";
            ProcessName = "Wow-64";
            Scale = 4;

            // Currently WoW is locked behind a hidden trigger (obviously not that hidden if you're reading this)
            // It is using memory reading and lets first try to contact Blizzard
            var settings = SettingsProvider.Load<GeneralSettings>();
            Enabled = settings.GamestatePort == 62575 && Settings.Enabled;

            Initialized = false;

             _pointer = SettingsProvider.Load<OffsetSettings>().WorldOfWarcraft;
            //_pointer = new GamePointersCollection
            //{
            //    Game = "WorldOfWarcraft",
            //    GameVersion = "7.0.3.22810",
            //    GameAddresses = new List<GamePointer>
            //    {
            //        new GamePointer
            //        {
            //            Description = "ObjectManager",
            //            BasePointer = new IntPtr(0x1578070)
            //        },
            //        new GamePointer
            //        {
            //            Description = "LocalPlayer",
            //            BasePointer = new IntPtr(0x169DF10)
            //        },
            //        new GamePointer
            //        {
            //            Description = "NameCache",
            //            BasePointer = new IntPtr(0x151DCE8)
            //        },
            //        new GamePointer
            //        {
            //            Description = "TargetGuid",
            //            BasePointer = new IntPtr(0x179C940)
            //        }
            //    }
            //};
            //var res = JsonConvert.SerializeObject(_pointer, Formatting.Indented);
        }
예제 #23
0
        public ProfileEditorViewModel(MainManager mainManager, EffectModel gameModel, ProfileViewModel profileViewModel,
            MetroDialogService dialogService, string lastProfile, ILayerEditorVmFactory layerEditorVmFactory)
        {
            _mainManager = mainManager;
            _gameModel = gameModel;
            _layerEditorVmFactory = layerEditorVmFactory;

            Profiles = new BindableCollection<ProfileModel>();
            Layers = new BindableCollection<LayerModel>();
            ProfileViewModel = profileViewModel;
            DialogService = dialogService;
            LastProfile = lastProfile;

            PropertyChanged += EditorStateHandler;
            ProfileViewModel.PropertyChanged += LayerSelectedHandler;
            mainManager.DeviceManager.OnKeyboardChangedEvent += DeviceManagerOnOnKeyboardChangedEvent;

            _saveTimer = new Timer(5000);
            _saveTimer.Elapsed += ProfileSaveHandler;

            LoadProfiles();
        }
예제 #24
0
 public BubblesModel(MainManager mainManager) : base(mainManager, SettingsProvider.Load<BubblesSettings>(), null)
 {
     Name = "Bubbles";
     Initialized = false;
     Settings = (BubblesSettings) base.Settings;
 }
예제 #25
0
 protected GameModel(MainManager mainManager, GameSettings settings, IDataModel dataModel): base(mainManager, settings, dataModel)
 {
     // Override settings to the GameSettings type
     Settings = settings;
 }
예제 #26
0
 public BubblesViewModel(MainManager main, BubblesModel model) : base(main, model)
 {
     _model = model;
     DisplayName = "Bubbles";
     BubbleColor = new SolidColorBrush(model.Settings.BubbleColor);
 }
예제 #27
0
 public Witcher3ViewModel(MainManager main, IProfileEditorVmFactory pFactory, Witcher3Model model)
     : base(main, model, pFactory)
 {
     DisplayName = "The Witcher 3";
 }
예제 #28
0
 public TheDivisionViewModel(MainManager main, IProfileEditorVmFactory pFactory, TheDivisionModel model)
     : base(main, model, pFactory)
 {
     DisplayName = "The Division";
 }
예제 #29
0
 public KeyPressType(MainManager mainManager)
 {
     _mainManager = mainManager;
     KeyboardHook.KeyDownCallback += KeyboardHookOnKeyDownCallback;
 }
예제 #30
0
 public WoWViewModel(MainManager main, IProfileEditorVmFactory pFactory, WoWModel model)
     : base(main, model, pFactory)
 {
     DisplayName = "WoW";
 }