Example #1
0
        public Gta5EyeTracking()
        {
            Debug.Log("Begin Initialize");

            //Disposing
            _shutDownRequestedEvent = new ManualResetEvent(false);

            //Settings
            _settingsStorage = new SettingsStorage();
            _settings        = _settingsStorage.LoadSettings();

            //Statistics
            var version       = Assembly.GetExecutingAssembly().GetName().Version;
            var versionString = version.Major + "." + version.Minor + "." + version.Build;

            _googleAnalyticsApi = new GoogleAnalyticsApi("UA-68420530-1", _settings.UserGuid, "GTA V Eye Tracking Mod", "gta5eyetracking", versionString);

            //Gaze
            _tobiiTracker = new EyeTrackingHost();

            //Menu
            _menuPool     = new MenuPool();
            _settingsMenu = new SettingsMenu(_menuPool, _settings);

            _introScreen = new IntroScreen(_menuPool, _settings);

            //Debug
            _debugGazeVisualization = new DefaultCrosshair(Color.FromArgb(220, 255, 0, 0), Color.FromArgb(220, 0, 255, 255));
            _debugOutput            = new DebugOutput();

            //Hids
            _mouseEmulation      = new MouseEmulation();
            _controllerEmulation = new ControllerEmulation();

            //Features
            _gameState       = new GameState(_controllerEmulation, _menuPool);
            _animationHelper = new AnimationHelper();
            _aiming          = new Aiming(_settings, _animationHelper, _gameState);
            _extendedView    = new ExtendedView(_settings, _gameState, _aiming, _debugOutput);
            _radialMenu      = new RadialMenu(_controllerEmulation);

            //Window
            _foregroundWindowWatcher = new ForegroundWindowWatcher();
            _foregroundWindowWatcher.ForegroundWindowChanged += ForegroundWindowWatcherOnForegroundWindowChanged;
            _isWindowForeground = _foregroundWindowWatcher.IsWindowForeground();

            //General
            _gazeProjector     = new GazeProjector(_settings);
            _controlsProcessor = new ControlsProcessor(_settings, _controllerEmulation, _aiming, _extendedView, _radialMenu, _settingsMenu, _gameState, _debugOutput);

            KeyDown += OnKeyDown;
            Tick    += OnTick;
            Aborted += OnAborted;
            AppDomain.CurrentDomain.ProcessExit  += AppDomainOnProcessExit;
            AppDomain.CurrentDomain.DomainUnload += AppDomainOnProcessExit;
            Debug.Log("End Initialize");
        }
Example #2
0
        public Aiming(Settings settings, AnimationHelper animationHelper, GameState gameState)
        {
            _settings        = settings;
            _animationHelper = animationHelper;
            _gameState       = gameState;

            _shootStopWatch = new Stopwatch();
            _shootStopWatch.Restart();

            _homingMissilesHelper = new HomingMissilesHelper();
            _missileLockCrosshair = new MissileLockCrosshair();
            _dotCrosshair         = new DefaultCrosshair();
        }