public void ShouldBuildIndexViewWithCustomersOrderByName() { ICustomerAdapter adapter = Substitute.For <ICustomerAdapter>(); CustomerData[] customers = new CustomerData[] { new CustomerData() { Name = "Gary" }, new CustomerData() { Name = "Louis" }, new CustomerData() { Name = "Bob" } }; adapter.GetCustomers().Returns(customers); using (ClassicController controller = new ClassicController(adapter)) { ActionResult result = controller.Index(); adapter.Received().GetCustomers(); CustomerData[] model = ActionResultHelper.AssertViewWithModel <CustomerData[]>(result, controller.Views.Index); string[] names = model.Select(customer => customer.Name).ToArray(); string[] expected = new string[] { "Bob", "Gary", "Louis" }; CollectionAssert.AreEqual(expected, names, "The customers were not ordered by name."); } }
private ClassicController ChangeCcBoolean(string property) { ClassicController cc = (ClassicController)Device.State; switch (property) { case INPUT_NAMES.CLASSIC_CONTROLLER.A: cc.A = !cc.A; break; case INPUT_NAMES.CLASSIC_CONTROLLER.B: cc.B = !cc.B; break; case INPUT_NAMES.CLASSIC_CONTROLLER.X: cc.X = !cc.X; break; case INPUT_NAMES.CLASSIC_CONTROLLER.Y: cc.Y = !cc.Y; break; case INPUT_NAMES.CLASSIC_CONTROLLER.ZL: cc.ZL = !cc.ZL; break; case INPUT_NAMES.CLASSIC_CONTROLLER.ZR: cc.ZR = !cc.ZR; break; case INPUT_NAMES.CLASSIC_CONTROLLER.UP: cc.Up = !cc.Up; break; case INPUT_NAMES.CLASSIC_CONTROLLER.DOWN: cc.Down = !cc.Down; break; case INPUT_NAMES.CLASSIC_CONTROLLER.LEFT: cc.Left = !cc.Left; break; case INPUT_NAMES.CLASSIC_CONTROLLER.RIGHT: cc.Right = !cc.Right; break; case INPUT_NAMES.CLASSIC_CONTROLLER.START: cc.Start = !cc.Start; break; case INPUT_NAMES.CLASSIC_CONTROLLER.SELECT: cc.Minus = !cc.Minus; break; case INPUT_NAMES.CLASSIC_CONTROLLER.HOME: cc.Home = !cc.Home; break; } return(cc); }
void Awake() { classicController = GetComponent <ClassicController>(); gunStartPos = GunCamera.transform.localPosition; viewStartPos = View.transform.localPosition; }
/// <summary> /// Default constructor setting all calibrations to their defaults. /// </summary> public CalibrationStorage() { ProCalibration = Calibrations.Defaults.ProControllerDefault; WiimoteCalibration = Calibrations.Defaults.WiimoteDefault; NunchukCalibration = Calibrations.Defaults.NunchukDefault; ClassicCalibration = Calibrations.Defaults.ClassicControllerDefault; ClassicProCalibration = Calibrations.Defaults.ClassicControllerProDefault; }
void Awake() { capsule = GetComponent <CapsuleCollider>(); p_Controller = GetComponent <ClassicController>(); m_MouseLook.Init(transform, m_PlayerView); DontDestroyOnLoad(gameObject); }
public void ConfigureClassicController(ClassicController cState) { cState.LJoy.rawX = (short)cState.LJoy.centerX; cState.LJoy.rawY = (short)cState.LJoy.centerY; cState.RJoy.rawX = (short)cState.RJoy.centerX; cState.RJoy.rawY = (short)cState.RJoy.centerY; State = cState; }
public void ShouldBuildCreateViewWithNoModel() { ICustomerAdapter adapter = Substitute.For <ICustomerAdapter>(); using (ClassicController controller = new ClassicController(adapter)) { ActionResult result = controller.Create(); ActionResultHelper.AssertView(result, controller.Views.Create); } }
public void ShouldCreateCustomerAndReturnToIndex() { ICustomerAdapter adapter = Substitute.For <ICustomerAdapter>(); using (ClassicController controller = new ClassicController(adapter)) { CustomerData data = new CustomerData(); ActionResult result = controller.Create(data); adapter.Received().AddCustomer(data); ActionResultHelper.AssertRedirected(result, controller.Name, controller.ActionNames.Index); } }
public void ShouldRedisplayViewWhenEditValidationFails() { ICustomerAdapter adapter = Substitute.For <ICustomerAdapter>(); using (ClassicController controller = new ClassicController(adapter)) { controller.ModelState.AddModelError("txtName", "You must provide a name for the customer."); CustomerData data = new CustomerData(); ActionResult result = controller.Edit(data); CustomerData model = ActionResultHelper.AssertViewWithModel <CustomerData>(result, controller.Views.Edit); Assert.AreSame(data, model, "The model was not passed to the view."); } }
public void ShouldRedisplayViewIfCreateValidationFails() { ICustomerAdapter adapter = Substitute.For <ICustomerAdapter>(); using (ClassicController controller = new ClassicController(adapter)) { controller.ModelState.AddModelError("txtName", "You must provide a customer name."); CustomerData data = new CustomerData(); ActionResult result = controller.Create(data); CustomerData model = ActionResultHelper.AssertViewWithModel <CustomerData>(result, controller.Views.Create); Assert.AreSame(data, model, "The customer data was not set as the model."); } }
/// <summary> /// Default constructor setting all calibrations to their defaults. /// </summary> public CalibrationStorage() { ProCalibration = Calibrations.Defaults.ProControllerDefault; WiimoteCalibration = Calibrations.Defaults.WiimoteDefault; NunchukCalibration = Calibrations.Defaults.NunchukDefault; ClassicCalibration = Calibrations.Defaults.ClassicControllerDefault; ClassicProCalibration = Calibrations.Defaults.ClassicControllerProDefault; GuitarCalibration = Calibrations.Defaults.GuitarDefault; GameCubeAdapterCalibration = new GameCubeAdapter(true) { port1 = Calibrations.Defaults.GameCubeControllerDefault, port2 = Calibrations.Defaults.GameCubeControllerDefault, port3 = Calibrations.Defaults.GameCubeControllerDefault, port4 = Calibrations.Defaults.GameCubeControllerDefault, }; }
public void ShouldDeleteCustomerAndRedirectToIndex() { ICustomerAdapter adapter = Substitute.For <ICustomerAdapter>(); using (ClassicController controller = new ClassicController(adapter)) { CustomerData data = new CustomerData() { CustomerId = Guid.NewGuid().ToString("N") }; ActionResult result = controller.Delete(data); adapter.Received().RemoveCustomer(data.CustomerId); ActionResultHelper.AssertRedirected(result, controller.Name, controller.ActionNames.Index); } }
/// <summary> /// Sets calibrations based on a preset. /// </summary> /// <param name="preset"></param> public void SetCalibrations(Calibrations.CalibrationPreset preset) { switch (preset) { case Calibrations.CalibrationPreset.Default: ProCalibration = Calibrations.Defaults.ProControllerDefault; WiimoteCalibration = Calibrations.Defaults.WiimoteDefault; NunchukCalibration = Calibrations.Defaults.NunchukDefault; ClassicCalibration = Calibrations.Defaults.ClassicControllerDefault; ClassicProCalibration = Calibrations.Defaults.ClassicControllerProDefault; break; case Calibrations.CalibrationPreset.Modest: ProCalibration = Calibrations.Moderate.ProControllerModest; WiimoteCalibration = Calibrations.Moderate.WiimoteModest; NunchukCalibration = Calibrations.Moderate.NunchukModest; ClassicCalibration = Calibrations.Moderate.ClassicControllerModest; ClassicProCalibration = Calibrations.Moderate.ClassicControllerProModest; break; case Calibrations.CalibrationPreset.Extra: ProCalibration = Calibrations.Extras.ProControllerExtra; WiimoteCalibration = Calibrations.Extras.WiimoteExtra; NunchukCalibration = Calibrations.Extras.NunchukExtra; ClassicCalibration = Calibrations.Extras.ClassicControllerExtra; ClassicProCalibration = Calibrations.Extras.ClassicControllerProExtra; break; case Calibrations.CalibrationPreset.Minimum: ProCalibration = Calibrations.Minimum.ProControllerMinimal; WiimoteCalibration = Calibrations.Minimum.WiimoteMinimal; NunchukCalibration = Calibrations.Minimum.NunchukMinimal; ClassicCalibration = Calibrations.Minimum.ClassicControllerMinimal; ClassicProCalibration = Calibrations.Minimum.ClassicControllerProMinimal; break; case Calibrations.CalibrationPreset.None: ProCalibration = Calibrations.None.ProControllerRaw; WiimoteCalibration = Calibrations.None.WiimoteRaw; NunchukCalibration = Calibrations.None.NunchukRaw; ClassicCalibration = Calibrations.None.ClassicControllerRaw; ClassicProCalibration = Calibrations.None.ClassicControllerProRaw; break; } }
public void ShouldRetrieveCustomerForDelete() { ICustomerAdapter adapter = Substitute.For <ICustomerAdapter>(); CustomerData data = new CustomerData(); adapter.GetCustomer(Arg.Any <string>()).Returns(data); using (ClassicController controller = new ClassicController(adapter)) { string customerId = Guid.NewGuid().ToString("N"); ActionResult result = controller.Delete(customerId); CustomerData model = ActionResultHelper.AssertViewWithModel <CustomerData>(result, controller.Views.Delete); adapter.Received().GetCustomer(customerId); Assert.AreSame(data, model, "The customer data was not passed to the view."); } }
private ClassicController ChangeCcAnalog(string property, float value) { ClassicController cc = (ClassicController)Device.State; switch (property) { case INPUT_NAMES.CLASSIC_CONTROLLER.LX: cc.LJoy.X = value; cc.LJoy.rawX = CalculateRaw(cc.LJoy.minX, cc.LJoy.maxX, value); break; case INPUT_NAMES.CLASSIC_CONTROLLER.LY: cc.LJoy.Y = value; cc.LJoy.rawY = CalculateRaw(cc.LJoy.minY, cc.LJoy.maxY, value); break; case INPUT_NAMES.CLASSIC_CONTROLLER.RX: cc.RJoy.X = value; cc.RJoy.rawX = CalculateRaw(cc.RJoy.minX, cc.RJoy.maxX, value); break; case INPUT_NAMES.CLASSIC_CONTROLLER.RY: cc.RJoy.Y = value; cc.RJoy.rawY = CalculateRaw(cc.RJoy.minY, cc.RJoy.maxY, value); break; case INPUT_NAMES.CLASSIC_CONTROLLER.LT: cc.L.value = value; cc.L.rawValue = (short)((cc.L.max - cc.L.min) * value); break; case INPUT_NAMES.CLASSIC_CONTROLLER.RT: cc.R.value = value; cc.R.rawValue = (short)((cc.R.max - cc.R.min) * value); break; } return(cc); }
public void ChangeExtension(ControllerType type) { if (DeviceType == type) { return; } switch (type) { case ControllerType.Wiimote: if (State is IWiimoteExtension) { ConfigureWiimote(((IWiimoteExtension)State).wiimote); } else { ConfigureWiimote(new Wiimote()); } break; case ControllerType.Nunchuk: case ControllerType.NunchukB: var nState = new Nunchuk(); nState.SetCalibration(Calibrations.CalibrationPreset.Default); ConfigureNunchuk(nState); ConfigureWiimote(nState.wiimote); break; case ControllerType.ClassicController: var cState = new ClassicController(); cState.SetCalibration(Calibrations.CalibrationPreset.Default); ConfigureClassicController(cState); ConfigureWiimote(cState.wiimote); break; case ControllerType.ClassicControllerPro: var ccpState = new ClassicControllerPro(); ccpState.SetCalibration(Calibrations.CalibrationPreset.Default); ConfigureClassicControllerPro(ccpState); ConfigureWiimote(ccpState.wiimote); break; case ControllerType.Guitar: var guitar = new Guitar(); guitar.SetCalibration(Calibrations.CalibrationPreset.Default); ConfigureGuitar(guitar); ConfigureWiimote(guitar.wiimote); break; case ControllerType.TaikoDrum: var takio = new TaikoDrum(); takio.SetCalibration(Calibrations.CalibrationPreset.Default); // for wiimote ConfigureWiimote(takio.wiimote); break; default: // Invalid return; } DeviceType = type; _nextQueue.Enqueue(InputReport.Status); }
/// <summary> /// Sets calibrations based on a preset. /// </summary> /// <param name="preset"></param> public void SetCalibrations(Calibrations.CalibrationPreset preset) { switch (preset) { case Calibrations.CalibrationPreset.Default: ProCalibration = Calibrations.Defaults.ProControllerDefault; WiimoteCalibration = Calibrations.Defaults.WiimoteDefault; NunchukCalibration = Calibrations.Defaults.NunchukDefault; ClassicCalibration = Calibrations.Defaults.ClassicControllerDefault; ClassicProCalibration = Calibrations.Defaults.ClassicControllerProDefault; GuitarCalibration = Calibrations.Defaults.GuitarDefault; GameCubeAdapterCalibration = new GameCubeAdapter(true) { port1 = Calibrations.Defaults.GameCubeControllerDefault, port2 = Calibrations.Defaults.GameCubeControllerDefault, port3 = Calibrations.Defaults.GameCubeControllerDefault, port4 = Calibrations.Defaults.GameCubeControllerDefault, }; break; case Calibrations.CalibrationPreset.Modest: ProCalibration = Calibrations.Moderate.ProControllerModest; WiimoteCalibration = Calibrations.Moderate.WiimoteModest; NunchukCalibration = Calibrations.Moderate.NunchukModest; ClassicCalibration = Calibrations.Moderate.ClassicControllerModest; ClassicProCalibration = Calibrations.Moderate.ClassicControllerProModest; GuitarCalibration = Calibrations.Moderate.GuitarModest; GameCubeAdapterCalibration = new GameCubeAdapter(true) { port1 = Calibrations.Moderate.GameCubeControllerModest, port2 = Calibrations.Moderate.GameCubeControllerModest, port3 = Calibrations.Moderate.GameCubeControllerModest, port4 = Calibrations.Moderate.GameCubeControllerModest, }; break; case Calibrations.CalibrationPreset.Extra: ProCalibration = Calibrations.Extras.ProControllerExtra; WiimoteCalibration = Calibrations.Extras.WiimoteExtra; NunchukCalibration = Calibrations.Extras.NunchukExtra; ClassicCalibration = Calibrations.Extras.ClassicControllerExtra; ClassicProCalibration = Calibrations.Extras.ClassicControllerProExtra; GuitarCalibration = Calibrations.Extras.GuitarExtra; GameCubeAdapterCalibration = new GameCubeAdapter(true) { port1 = Calibrations.Extras.GameCubeControllerExtra, port2 = Calibrations.Extras.GameCubeControllerExtra, port3 = Calibrations.Extras.GameCubeControllerExtra, port4 = Calibrations.Extras.GameCubeControllerExtra, }; break; case Calibrations.CalibrationPreset.Minimum: ProCalibration = Calibrations.Minimum.ProControllerMinimal; WiimoteCalibration = Calibrations.Minimum.WiimoteMinimal; NunchukCalibration = Calibrations.Minimum.NunchukMinimal; ClassicCalibration = Calibrations.Minimum.ClassicControllerMinimal; ClassicProCalibration = Calibrations.Minimum.ClassicControllerProMinimal; GuitarCalibration = Calibrations.Minimum.GuitarMinimal; GameCubeAdapterCalibration = new GameCubeAdapter(true) { port1 = Calibrations.Minimum.GameCubeControllerMinimal, port2 = Calibrations.Minimum.GameCubeControllerMinimal, port3 = Calibrations.Minimum.GameCubeControllerMinimal, port4 = Calibrations.Minimum.GameCubeControllerMinimal, }; break; case Calibrations.CalibrationPreset.None: ProCalibration = Calibrations.None.ProControllerRaw; WiimoteCalibration = Calibrations.None.WiimoteRaw; NunchukCalibration = Calibrations.None.NunchukRaw; ClassicCalibration = Calibrations.None.ClassicControllerRaw; ClassicProCalibration = Calibrations.None.ClassicControllerProRaw; GuitarCalibration = Calibrations.None.GuitarRaw; GameCubeAdapterCalibration = new GameCubeAdapter(true) { port1 = Calibrations.None.GameCubeControllerRaw, port2 = Calibrations.None.GameCubeControllerRaw, port3 = Calibrations.None.GameCubeControllerRaw, port4 = Calibrations.None.GameCubeControllerRaw, }; break; } }
void device_StateChange(object sender, NintrollerStateEventArgs e) { // Makes the timer wait if (updateTimer != null) { updateTimer.Change(1000, UPDATE_SPEED); } if (holder == null) { return; } // float intensity = 0; // if (holder.Values.TryGetValue(Inputs.Flags.RUMBLE, out intensity)) // { // rumbleAmount = (int)intensity; RumbleStep(); // } holder.ClearAllValues(); switch (e.controllerType) { // TODO: Motion Plus Reading (not for 1st release) // TODO: Balance Board Reading (not for 1st release) // TODO: Musical Extension readings (not for 1st release) case ControllerType.ProController: #region Pro Controller ProController pro = (ProController)e.state; holder.SetValue(Inputs.ProController.A, pro.A); holder.SetValue(Inputs.ProController.B, pro.B); holder.SetValue(Inputs.ProController.X, pro.X); holder.SetValue(Inputs.ProController.Y, pro.Y); holder.SetValue(Inputs.ProController.UP, pro.Up); holder.SetValue(Inputs.ProController.DOWN, pro.Down); holder.SetValue(Inputs.ProController.LEFT, pro.Left); holder.SetValue(Inputs.ProController.RIGHT, pro.Right); holder.SetValue(Inputs.ProController.L, pro.L); holder.SetValue(Inputs.ProController.R, pro.R); holder.SetValue(Inputs.ProController.ZL, pro.ZL); holder.SetValue(Inputs.ProController.ZR, pro.ZR); holder.SetValue(Inputs.ProController.START, pro.Plus); holder.SetValue(Inputs.ProController.SELECT, pro.Minus); holder.SetValue(Inputs.ProController.HOME, pro.Home); holder.SetValue(Inputs.ProController.LS, pro.LStick); holder.SetValue(Inputs.ProController.RS, pro.RStick); holder.SetValue(Inputs.ProController.LRIGHT, pro.LJoy.X > 0 ? pro.LJoy.X : 0f); holder.SetValue(Inputs.ProController.LLEFT, pro.LJoy.X < 0 ? pro.LJoy.X * -1 : 0f); holder.SetValue(Inputs.ProController.LUP, pro.LJoy.Y > 0 ? pro.LJoy.Y : 0f); holder.SetValue(Inputs.ProController.LDOWN, pro.LJoy.Y < 0 ? pro.LJoy.Y * -1 : 0f); holder.SetValue(Inputs.ProController.RRIGHT, pro.RJoy.X > 0 ? pro.RJoy.X : 0f); holder.SetValue(Inputs.ProController.RLEFT, pro.RJoy.X < 0 ? pro.RJoy.X * -1 : 0f); holder.SetValue(Inputs.ProController.RUP, pro.RJoy.Y > 0 ? pro.RJoy.Y : 0f); holder.SetValue(Inputs.ProController.RDOWN, pro.RJoy.Y < 0 ? pro.RJoy.Y * -1 : 0f); #endregion break; case ControllerType.Wiimote: Wiimote wm = (Wiimote)e.state; SetWiimoteInputs(wm); break; case ControllerType.Nunchuk: case ControllerType.NunchukB: #region Nunchuk Nunchuk nun = (Nunchuk)e.state; SetWiimoteInputs(nun.wiimote); holder.SetValue(Inputs.Nunchuk.C, nun.C); holder.SetValue(Inputs.Nunchuk.Z, nun.Z); holder.SetValue(Inputs.Nunchuk.RIGHT, nun.joystick.X > 0 ? nun.joystick.X : 0f); holder.SetValue(Inputs.Nunchuk.LEFT, nun.joystick.X < 0 ? nun.joystick.X * -1 : 0f); holder.SetValue(Inputs.Nunchuk.UP, nun.joystick.Y > 0 ? nun.joystick.Y : 0f); holder.SetValue(Inputs.Nunchuk.DOWN, nun.joystick.Y < 0 ? nun.joystick.Y * -1 : 0f); //TODO: Nunchuk Accelerometer (not for 1st release) holder.SetValue(Inputs.Nunchuk.TILT_RIGHT, nun.accelerometer.X > 0 ? nun.accelerometer.X : 0f); holder.SetValue(Inputs.Nunchuk.TILT_LEFT, nun.accelerometer.X < 0 ? nun.accelerometer.X * -1 : 0f); holder.SetValue(Inputs.Nunchuk.TILT_UP, nun.accelerometer.Y > 0 ? nun.accelerometer.Y : 0f); holder.SetValue(Inputs.Nunchuk.TILT_DOWN, nun.accelerometer.Y < 0 ? nun.accelerometer.Y * -1 : 0f); holder.SetValue(Inputs.Nunchuk.ACC_SHAKE_X, nun.accelerometer.X > 1.15f); holder.SetValue(Inputs.Nunchuk.ACC_SHAKE_Y, nun.accelerometer.Y > 1.15f); holder.SetValue(Inputs.Nunchuk.ACC_SHAKE_Z, nun.accelerometer.Z > 1.15f); #endregion break; case ControllerType.ClassicController: #region Classic Controller ClassicController cc = (ClassicController)e.state; SetWiimoteInputs(cc.wiimote); holder.SetValue(Inputs.ClassicController.A, cc.A); holder.SetValue(Inputs.ClassicController.B, cc.B); holder.SetValue(Inputs.ClassicController.X, cc.X); holder.SetValue(Inputs.ClassicController.Y, cc.Y); holder.SetValue(Inputs.ClassicController.UP, cc.Up); holder.SetValue(Inputs.ClassicController.DOWN, cc.Down); holder.SetValue(Inputs.ClassicController.LEFT, cc.Left); holder.SetValue(Inputs.ClassicController.RIGHT, cc.Right); holder.SetValue(Inputs.ClassicController.L, cc.L.value > 0); holder.SetValue(Inputs.ClassicController.R, cc.R.value > 0); holder.SetValue(Inputs.ClassicController.ZL, cc.ZL); holder.SetValue(Inputs.ClassicController.ZR, cc.ZR); holder.SetValue(Inputs.ClassicController.START, cc.Start); holder.SetValue(Inputs.ClassicController.SELECT, cc.Select); holder.SetValue(Inputs.ClassicController.HOME, cc.Home); holder.SetValue(Inputs.ClassicController.LFULL, cc.LFull); holder.SetValue(Inputs.ClassicController.RFULL, cc.RFull); holder.SetValue(Inputs.ClassicController.LT, cc.L.value > 0.1f ? cc.L.value : 0f); holder.SetValue(Inputs.ClassicController.RT, cc.R.value > 0.1f ? cc.R.value : 0f); holder.SetValue(Inputs.ClassicController.LRIGHT, cc.LJoy.X > 0 ? cc.LJoy.X : 0f); holder.SetValue(Inputs.ClassicController.LLEFT, cc.LJoy.X < 0 ? cc.LJoy.X * -1 : 0f); holder.SetValue(Inputs.ClassicController.LUP, cc.LJoy.Y > 0 ? cc.LJoy.Y : 0f); holder.SetValue(Inputs.ClassicController.LDOWN, cc.LJoy.Y < 0 ? cc.LJoy.Y * -1 : 0f); holder.SetValue(Inputs.ClassicController.RRIGHT, cc.RJoy.X > 0 ? cc.RJoy.X : 0f); holder.SetValue(Inputs.ClassicController.RLEFT, cc.RJoy.X < 0 ? cc.RJoy.X * -1 : 0f); holder.SetValue(Inputs.ClassicController.RUP, cc.RJoy.Y > 0 ? cc.RJoy.Y : 0f); holder.SetValue(Inputs.ClassicController.RDOWN, cc.RJoy.Y < 0 ? cc.RJoy.Y * -1 : 0f); #endregion break; case ControllerType.ClassicControllerPro: #region Classic Controller Pro ClassicControllerPro ccp = (ClassicControllerPro)e.state; SetWiimoteInputs(ccp.wiimote); holder.SetValue(Inputs.ClassicControllerPro.A, ccp.A); holder.SetValue(Inputs.ClassicControllerPro.B, ccp.B); holder.SetValue(Inputs.ClassicControllerPro.X, ccp.X); holder.SetValue(Inputs.ClassicControllerPro.Y, ccp.Y); holder.SetValue(Inputs.ClassicControllerPro.UP, ccp.Up); holder.SetValue(Inputs.ClassicControllerPro.DOWN, ccp.Down); holder.SetValue(Inputs.ClassicControllerPro.LEFT, ccp.Left); holder.SetValue(Inputs.ClassicControllerPro.RIGHT, ccp.Right); holder.SetValue(Inputs.ClassicControllerPro.L, ccp.L); holder.SetValue(Inputs.ClassicControllerPro.R, ccp.R); holder.SetValue(Inputs.ClassicControllerPro.ZL, ccp.ZL); holder.SetValue(Inputs.ClassicControllerPro.ZR, ccp.ZR); holder.SetValue(Inputs.ClassicControllerPro.START, ccp.Start); holder.SetValue(Inputs.ClassicControllerPro.SELECT, ccp.Select); holder.SetValue(Inputs.ClassicControllerPro.HOME, ccp.Home); holder.SetValue(Inputs.ClassicControllerPro.LRIGHT, ccp.LJoy.X > 0 ? ccp.LJoy.X : 0f); holder.SetValue(Inputs.ClassicControllerPro.LLEFT, ccp.LJoy.X < 0 ? ccp.LJoy.X * -1 : 0f); holder.SetValue(Inputs.ClassicControllerPro.LUP, ccp.LJoy.Y > 0 ? ccp.LJoy.Y : 0f); holder.SetValue(Inputs.ClassicControllerPro.LDOWN, ccp.LJoy.Y < 0 ? ccp.LJoy.Y * -1 : 0f); holder.SetValue(Inputs.ClassicControllerPro.RRIGHT, ccp.RJoy.X > 0 ? ccp.RJoy.X : 0f); holder.SetValue(Inputs.ClassicControllerPro.RLEFT, ccp.RJoy.X < 0 ? ccp.RJoy.X * -1 : 0f); holder.SetValue(Inputs.ClassicControllerPro.RUP, ccp.RJoy.Y > 0 ? ccp.RJoy.Y : 0f); holder.SetValue(Inputs.ClassicControllerPro.RDOWN, ccp.RJoy.Y < 0 ? ccp.RJoy.Y * -1 : 0f); #endregion break; } holder.Update(); // Resumes the timer in case this method is not called withing 100ms if (updateTimer != null) { updateTimer.Change(100, UPDATE_SPEED); } }