/// <summary> /// Update /// </summary> protected override void Update(GameTime gameTime) { // Update game engine base.Update(gameTime); var controller = XboxController.RetrieveController(0); controller.UpdateState(); if (controller.IsBackPressed || Keyboard.GetState().IsKeyDown(Keys.Escape)) { Exit(); } var elapsedGameTime = (float)gameTime.ElapsedGameTime.TotalSeconds; var input = new PlayerInput(); HandleInput(ref input, controller); game.Input(input); game.Update(elapsedGameTime); frame = game.getPosition(); CameraPos = new Vector3(frame.Position.X, -frame.Position.Y, CameraPos.Z); ViewMatrix = Matrix.CreateLookAt(CameraPos, new Vector3(CameraPos.X, CameraPos.Y, 0), Vector3.Up); Window.Title = "GTA2.NET - " + WindowTitle + Fps.ToString(CultureInfo.InvariantCulture) + " fps X: " + CameraPos.X.ToString() + "Y: " + CameraPos.Y.ToString() + "Z: " + CameraPos.Z; }
public Screen() { InitializeComponent(); bmp = new WriteableBitmap(BitmapWidth, BitmapHeight, 96, 96, PixelFormats.Gray8, null); var whitescreen = new byte[BitmapWidth * BitmapHeight]; for (int i = 0; i < whitescreen.Length; i++) { whitescreen[i] = 0xff; } bmp.WritePixels(new Int32Rect(0, 0, BitmapWidth, BitmapHeight), whitescreen, BitmapWidth, 0); Display.Source = bmp; RenderOptions.SetBitmapScalingMode(Display, BitmapScalingMode.NearestNeighbor); FPSDisplayEnable.Checked += (x, y) => FPS.Visibility = Visibility.Visible; FPSDisplayEnable.Unchecked += (x, y) => FPS.Visibility = Visibility.Collapsed; XboxController.UpdateFrequency = 5; XboxController.StartPolling(); var Controller1 = new XboxControllerWithInterruptHandler(XboxController.RetrieveController(0)); var Controller2 = new XboxControllerWithInterruptHandler(XboxController.RetrieveController(1)); var Controller3 = new XboxControllerWithInterruptHandler(XboxController.RetrieveController(2)); var Controller4 = new XboxControllerWithInterruptHandler(XboxController.RetrieveController(3)); Dictionary <Key, JoypadKey> mappedKeys = new() { { Key.X, JoypadKey.A }, { Key.LeftShift, JoypadKey.Select },
static Manager() { controller = new InputController("Teslagrad.tas"); xbox = XboxController.RetrieveController(0); XboxController.UpdateFrequency = 30; XboxController.StartPolling(); }
public XInputController(int deviceIndex) { _deviceIndex = deviceIndex; _controller = XboxController.RetrieveController(deviceIndex); _running = true; _monitorThread = new Thread(MonitorThread); _monitorThread.Start(); }
public Shield(ref Engine.PointF Position, int player) : base("Shield" + player, null, 50, 50) { this.Following = Position; this.player = player; this.Visible = false; Game.AddElement(this); this.ZOrder = 10; controller = XboxController.RetrieveController(player - 1); FramesOfShield = (int)(Game.FrameRate * ShieldDuration); }
private void SetupKeyHandlers() { //register for keyboard events KeyDown += MainWindow_KeyDown; //register for xbox controller events handHeldController = XboxController.RetrieveController(0); handHeldController.StateChanged += handHeldController_StateChanged; XboxController.StartPolling(); }
public MainWindow() { InitializeComponent(); DataContext = this; _selectedController = XboxController.RetrieveController(0); _selectedController.StateChanged += _selectedController_StateChanged; XboxController.StartPolling(); ArduinoTimer = new System.Timers.Timer(); ArduinoTimer.Interval = Config.DataSendDelay; ArduinoTimer.Elapsed += ArduinoTimer_Elapsed; ArduinoTimer.Start(); System.Timers.Timer DebugTimer = new System.Timers.Timer(); DebugTimer.Interval = 200; DebugTimer.Elapsed += DebugTimer_Elapsed; DebugTimer.Start(); SetupSweepers(); }
internal void InitializeController() { XboxController.StopPolling(); try { _controller = XboxController.RetrieveController(_currid); _controller.StateChanged += _selectedController_StateChanged; XboxController.StartPolling(); _message = "Connected to controller #" + _currid; } catch { AddRuntimeMessage(GH_RuntimeMessageLevel.Warning, "Cannot find controller with ID #" + _currid); _controller = null; _message = "Cannot find controller with ID #" + _currid; } }
public GamepadService(ISteeringConfig config, int controllerIndex, int updateFrequency) { if (updateFrequency <= 0) { throw new ArgumentException("Update frequency should be positive"); } _config = config; //divide by 128 to get -255 <=> 255 range on thumbstick _rangeConverter = new RangeConverter(128f, 255); _gamepadModel = new GamepadModel(); var controller = XboxController.RetrieveController(controllerIndex); controller.StateChanged += StateChanged; XboxController.UpdateFrequency = updateFrequency; _lowPassFilterTimer = new Timer(10); _lowPassFilterTimer.Elapsed += LowPassFilterTimerOnElapsed; }
public Player1() : base("Player1", null, 32, 32, "Player1", 100) { this.Gravity = false; this.Collision = CollisionTypes.Circular; this.CollisionRadius = 32; this.ScreenWrapping = true; this.ClearFrames(); this.AddFrame("Player1.png", 0); GoToFrame(0); gun = new Gun(this); shield = new Shield(ref this.Position, 1); controller = XboxController.RetrieveController(0); Position.X = -200; Velocity.X = 0; Velocity.Y = 0; }
public void ControllerScan() { while (_active) { // Check validity of connected controllers var deadControllers = new List <IController>(); foreach (var controller in Controllers) { if (controller.IsAlive()) { continue; } Log.WriteLine($"XInput device {controller.Name} was disconnected."); controller.Stop(); deadControllers.Add(controller); } // Remove disconnected devices if (deadControllers.Count > 0) { Controllers.RemoveAll(c => deadControllers.Contains(c)); } // Update controller list for (int i = 0; i < 4; i++) { var controller = XboxController.RetrieveController(i); if (!controller.IsConnected || Controllers.Any(device => device.UnderlyingController == controller)) { continue; } var xdevice = new XInputController(i); Log.WriteLine($"XInput device {xdevice.Name} was connected."); Controllers.Add(xdevice); } Thread.Sleep(2000); } }
public Gun(GameObject Player) : base("Gun" + (Player.Name == "Player1" ? 1 : 2), null, 32, 32) { angles = new List <float>(40); if (Player.Name == "Player1") { Following = (Player1)Player; controller = XboxController.RetrieveController(0); } else { Following2 = (Player2)Player; controller = XboxController.RetrieveController(1); } PlayerNumber = Player.Name == "Player1" ? 1 : 2; Game.AddElement(this); this.AddFrame(new Bitmap(32, 32), 0); }
public static void ScanDevices() { // Scan for devices lock (_allControllers) { if (Settings.Default.EnableDS4) { try { DS4Devices.findControllers(); var listDS4 = DS4Devices.getDS4Controllers(); foreach (var controller in listDS4) { if (_allControllers.Count(c => c.UnderlyingDevice == controller.HidDevice) == 0) { Logger.Write("Found new DS4 device: {0}", controller.MacAddress); _allControllers.Add(new DS4Input(controller.MacAddress)); ControllersUpdated?.Invoke(); } } } catch (ThreadAbortException ex) { } catch (Exception ex) { Logger.Write("DS4 driver error: ", ex); MessageBox.Show(string.Format(Resources.ErrorDriverDs4Disabled, ex.Message), Resources.ErrorDriverDisabledTitle, MessageBoxButton.OK, MessageBoxImage.Error); Settings.Default.EnableDS4 = false; Settings.Default.Save(); } } if (Settings.Default.EnableXbox) { // Scan for Xbox controllers try { for (int i = XboxController.FIRST_CONTROLLER_INDEX; i < XboxController.MAX_CONTROLLER_COUNT; i++) { XInputState stateController = new XInputState(); int result = XInput.XInputGetState(i, ref stateController); if (result == 0) // Controller found { var controller = XboxController.RetrieveController(i); if (_allControllers.Count(c => c.UnderlyingDevice == controller) == 0) { Logger.Write("Found new XInput device: {0}", i); _allControllers.Add(new XboxInput(i)); ControllersUpdated?.Invoke(); } } } } catch (ThreadAbortException ex) { } catch (Exception ex) { Logger.Write("XInput driver error: ", ex); MessageBox.Show(string.Format(Resources.ErrorDriverXboxDisabled, ex.Message), Resources.ErrorDriverDisabledTitle, MessageBoxButton.OK, MessageBoxImage.Error); Settings.Default.EnableXbox = false; Settings.Default.Save(); } } } }
public GamepadPoller(int controllerIndex, int updateFrequency) { _controller = XboxController.RetrieveController(controllerIndex); XboxController.UpdateFrequency = updateFrequency; StartPolling(); }
public XboxInput(int UserIndex) { _user = UserIndex; _controller = XboxController.RetrieveController(_user); }
private void SelectedControllerChanged(object sender, SelectionChangedEventArgs e) { _selectedController = XboxController.RetrieveController(((ComboBox)sender).SelectedIndex); OnPropertyChanged("SelectedController"); }
public XMap() { _displayService = new DisplayService(); _xboxController = XboxController.RetrieveController(0); _gameProcesses = ConfigurationManager.AppSettings["gameProcesses"].Split(';').ToList(); }