DS4Controller.cs 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. using System;
  2. using Core;
  3. namespace FBInput.Controller
  4. {
  5. public class DS4Controller : IController
  6. {
  7. public void Update()
  8. {
  9. bool button = this._player.GetButton("DpadLeft");
  10. bool button2 = this._player.GetButton("DpadRight");
  11. bool button3 = this._player.GetButton("DpadUp");
  12. bool button4 = this._player.GetButton("DpadDown");
  13. bool button5 = this._player.GetButton("LSLeft");
  14. bool button6 = this._player.GetButton("LSRight");
  15. bool button7 = this._player.GetButton("LSUp");
  16. bool button8 = this._player.GetButton("LSDown");
  17. bool button9 = this._player.GetButton("Cross");
  18. bool button10 = this._player.GetButton("Circle");
  19. bool button11 = this._player.GetButton("Triangle");
  20. bool button12 = this._player.GetButton("Square");
  21. bool button13 = this._player.GetButton("R1");
  22. bool button14 = this._player.GetButton("L1");
  23. bool button15 = this._player.GetButton("L2");
  24. bool button16 = this._player.GetButton("R2");
  25. bool button17 = this._player.GetButton("L3");
  26. bool button18 = this._player.GetButton("R3");
  27. bool button19 = this._player.GetButton("Options");
  28. DS4Controller.Down.Update(button4);
  29. DS4Controller.Up.Update(button3);
  30. DS4Controller.Left.Update(button);
  31. DS4Controller.Right.Update(button2);
  32. DS4Controller.Cross.Update(button9);
  33. DS4Controller.Circle.Update(button10);
  34. DS4Controller.Triangle.Update(button11);
  35. DS4Controller.Square.Update(button12);
  36. DS4Controller.R1.Update(button13);
  37. DS4Controller.R2.Update(button16);
  38. DS4Controller.R3.Update(button18);
  39. DS4Controller.L1.Update(button14);
  40. DS4Controller.L2.Update(button15);
  41. DS4Controller.L3.Update(button17);
  42. DS4Controller.Options.Update(button19);
  43. DS4Controller.LSDown.Update(button8);
  44. DS4Controller.LSUp.Update(button7);
  45. DS4Controller.LSLeft.Update(button5);
  46. DS4Controller.LSRight.Update(button6);
  47. bool isPressed = DS4Controller.Down.Pressed || DS4Controller.Up.Pressed || DS4Controller.Left.Pressed || DS4Controller.Right.Pressed || DS4Controller.Cross.Pressed || DS4Controller.Circle.Pressed || DS4Controller.Triangle.Pressed || DS4Controller.Square.Pressed || DS4Controller.R1.Pressed || DS4Controller.R2.Pressed || DS4Controller.R3.Pressed || DS4Controller.L1.Pressed || DS4Controller.L2.Pressed || DS4Controller.L3.Pressed || DS4Controller.LSDown.Pressed || DS4Controller.LSUp.Pressed || DS4Controller.LSLeft.Pressed || DS4Controller.LSRight.Pressed;
  48. DS4Controller.AnyKey.Update(isPressed);
  49. DS4Controller.LS.Update(this._player.GetJoystick("LS"), this._player.GetJoystickRaw("LS"));
  50. DS4Controller.RS.Update(this._player.GetJoystick("RS"), this._player.GetJoystickRaw("RS"));
  51. }
  52. private readonly IInputPlayer _player = new PS4InputPlayer();
  53. public static readonly InputButtonProcessor AnyKey = new InputButtonProcessor();
  54. public static readonly InputButtonProcessor Down = new InputButtonProcessor();
  55. public static readonly InputButtonProcessor Up = new InputButtonProcessor();
  56. public static readonly InputButtonProcessor Left = new InputButtonProcessor();
  57. public static readonly InputButtonProcessor Right = new InputButtonProcessor();
  58. public static readonly InputButtonProcessor Cross = new InputButtonProcessor();
  59. public static readonly InputButtonProcessor Circle = new InputButtonProcessor();
  60. public static readonly InputButtonProcessor Triangle = new InputButtonProcessor();
  61. public static readonly InputButtonProcessor Square = new InputButtonProcessor();
  62. public static readonly InputButtonProcessor R1 = new InputButtonProcessor();
  63. public static readonly InputButtonProcessor R2 = new InputButtonProcessor();
  64. public static readonly InputButtonProcessor R3 = new InputButtonProcessor();
  65. public static readonly InputButtonProcessor L1 = new InputButtonProcessor();
  66. public static readonly InputButtonProcessor L2 = new InputButtonProcessor();
  67. public static readonly InputButtonProcessor L3 = new InputButtonProcessor();
  68. public static readonly InputButtonProcessor Options = new InputButtonProcessor();
  69. public static readonly InputButtonProcessor LSDown = new InputButtonProcessor();
  70. public static readonly InputButtonProcessor LSUp = new InputButtonProcessor();
  71. public static readonly InputButtonProcessor LSLeft = new InputButtonProcessor();
  72. public static readonly InputButtonProcessor LSRight = new InputButtonProcessor();
  73. public static readonly InputJoystickProcessor LS = new InputJoystickProcessor();
  74. public static readonly InputJoystickProcessor RS = new InputJoystickProcessor();
  75. }
  76. }