Exemplo n.º 1
0
        /// <summary>
        /// Initializes GUI components, connections to the Heads Up Display, the video analysis,
        /// the game client, and the hardware components throught Unity.
        /// Connects
        /// </summary>
        public ClientUi()
        {
            InitializeComponent();
            _allPlayers = new List<IPlayer>();
            _analyzer = new BlobDetectionAnalysis(45, 45, 800, 800, 15, .3f, 0.5f);
            _dispMan = new DisplayManager { DisplayTimer = true, DisplaySignalStrength = true };
            _client = new GameClient();
            _player = _client.GetPlayer();
            _guid = _client.GetGuid();
            _client.PlayerEventHandler += PlayerUpdateHandler;
            _client.AllPlayersEventHandler += AllPlayersUpdateHandler;
             var config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
            UnityConfigurationSection section = (UnityConfigurationSection)config.GetSection("unity");
            _container = new UnityContainer();
            section.Configure(_container, "container");

            _gamePlay = new GamePlay(_player);
            _gameEngine = new GameEngine(_container.Resolve<IWirelessStrengthMonitor>(), _container.Resolve<IGps>(), _player, _container.Resolve<IVideoInput>());

            _signal = _container.Resolve<IWirelessStrengthMonitor>();

            _running = true;

            /* // Threads for timer and positioning updating
            _timeThread = new Thread(TimeUpdateLoop) {IsBackground = true};
            _timeThread.Start();
            _positionThread = new Thread(PositionUpdateLoop);
            _positionThread.Start();
            */

            _gameTime = new TimeSpan(0,5,0);

            _timer = new Timer(1000);
            _timer.Elapsed += gameTimeSim;
        }
Exemplo n.º 2
0
 /// <summary>
 /// 
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="signal"></param>
 private void WifiUpdateHandler(object sender, IWirelessStrengthMonitor signal)
 {
     if (InvokeRequired)
     {
         BeginInvoke(new ThreadStart(() => WifiUpdateHandler(sender, signal)));
         return;
     }
     _signal = signal;
 }