public void UpdateVisual(INintrollerState state) { if (state is ProController) { var pro = (ProController)state; _lastState = pro; Display(aBtn, pro.A); Display(bBtn, pro.B); Display(xBtn, pro.X); Display(yBtn, pro.Y); Display(lBtn, pro.L); Display(rBtn, pro.R); Display(zlBtn, pro.ZL); Display(zrBtn, pro.ZR); Display(dpadUp, pro.Up); Display(dpadDown, pro.Down); Display(dpadLeft, pro.Left); Display(dpadRight, pro.Right); Display(dpadCenter, (pro.Up || pro.Down || pro.Left || pro.Right)); Display(homeBtn, pro.Home); Display(plusBtn, pro.Plus); Display(minusBtn, pro.Minus); Display(leftStickBtn, pro.LStick); Display(rightStickBtn, pro.RStick); leftStick.Margin = new Thickness(196 + 50 * pro.LJoy.X, 232 - 50 * pro.LJoy.Y, 0, 0); leftStickBtn.Margin = new Thickness(196 + 50 * pro.LJoy.X, 230 - 50 * pro.LJoy.Y, 0, 0); rightStick.Margin = new Thickness(980 + 50 * pro.RJoy.X, 232 - 50 * pro.RJoy.Y, 0, 0); rightStickBtn.Margin = new Thickness(980 + 50 * pro.RJoy.X, 230 - 50 * pro.RJoy.Y, 0, 0); if (_openJoyWindow != null) { _openJoyWindow.Update(_rightJoyOpen ? pro.RJoy : pro.LJoy); } } }
public void UpdateVisual(INintrollerState state) { if (state is ProController) { var pro = (ProController)state; _lastState = pro; aBtn.Opacity = pro.A ? 1 : 0; bBtn.Opacity = pro.B ? 1 : 0; xBtn.Opacity = pro.X ? 1 : 0; yBtn.Opacity = pro.Y ? 1 : 0; lBtn.Opacity = pro.L ? 1 : 0; rBtn.Opacity = pro.R ? 1 : 0; zlBtn.Opacity = pro.ZL ? 1 : 0; zrBtn.Opacity = pro.ZR ? 1 : 0; dpadUp.Opacity = pro.Up ? 1 : 0; dpadDown.Opacity = pro.Down ? 1 : 0; dpadLeft.Opacity = pro.Left ? 1 : 0; dpadRight.Opacity = pro.Right ? 1 : 0; dpadCenter.Opacity = (pro.Up || pro.Down || pro.Left || pro.Right) ? 1 : 0; homeBtn.Opacity = pro.Home ? 1 : 0; plusBtn.Opacity = pro.Plus ? 1 : 0; minusBtn.Opacity = pro.Minus ? 1 : 0; leftStickBtn.Opacity = pro.LStick ? 1 : 0; rightStickBtn.Opacity = pro.RStick ? 1 : 0; leftStick.Margin = new Thickness(196 + 50 * pro.LJoy.X, 232 - 50 * pro.LJoy.Y, 0, 0); leftStickBtn.Margin = new Thickness(196 + 50 * pro.LJoy.X, 230 - 50 * pro.LJoy.Y, 0, 0); rightStick.Margin = new Thickness(980 + 50 * pro.RJoy.X, 232 - 50 * pro.RJoy.Y, 0, 0); rightStickBtn.Margin = new Thickness(980 + 50 * pro.RJoy.X, 230 - 50 * pro.RJoy.Y, 0, 0); if (_openJoyWindow != null) { _openJoyWindow.Update(_rightJoyOpen ? pro.RJoy : pro.LJoy); } } }
public void UpdateVisual(JoystickUpdate[] updates) { foreach (var update in updates) { switch (update.Offset) { case JoystickOffset.Buttons0: bBtn.Opacity = update.Value > 0 ? 1 : 0; break; case JoystickOffset.Buttons1: aBtn.Opacity = update.Value > 0 ? 1 : 0; break; case JoystickOffset.Buttons2: yBtn.Opacity = update.Value > 0 ? 1 : 0; break; case JoystickOffset.Buttons3: xBtn.Opacity = update.Value > 0 ? 1 : 0; break; case JoystickOffset.Buttons4: lBtn.Opacity = update.Value > 0 ? 1 : 0; break; case JoystickOffset.Buttons5: rBtn.Opacity = update.Value > 0 ? 1 : 0; break; case JoystickOffset.Buttons6: zlBtn.Opacity = update.Value > 0 ? 1 : 0; break; case JoystickOffset.Buttons7: zrBtn.Opacity = update.Value > 0 ? 1 : 0; break; case JoystickOffset.Buttons8: minusBtn.Opacity = update.Value > 0 ? 1 : 0; break; case JoystickOffset.Buttons9: plusBtn.Opacity = update.Value > 0 ? 1 : 0; break; case JoystickOffset.Buttons10: leftStickButton.Opacity = update.Value > 0 ? 1 : 0; break; case JoystickOffset.Buttons11: rightStickButton.Opacity = update.Value > 0 ? 1 : 0; break; case JoystickOffset.Buttons12: homeBtn.Opacity = update.Value > 0 ? 1 : 0; break; case JoystickOffset.Buttons13: shareBtn.Opacity = update.Value > 0 ? 1 : 0; break; case JoystickOffset.PointOfViewControllers0: leftBtn.Opacity = 0; rightBtn.Opacity = 0; upBtn.Opacity = 0; downBtn.Opacity = 0; center.Opacity = 0; if (update.Value == -1) { break; } else if (update.Value == 0) { upBtn.Opacity = 1; center.Opacity = 1; } else if (update.Value > 0 && update.Value < 9000) { upBtn.Opacity = 1; rightBtn.Opacity = 1; center.Opacity = 1; } else if (update.Value == 9000) { rightBtn.Opacity = 1; center.Opacity = 1; } else if (update.Value > 9000 && update.Value < 18000) { rightBtn.Opacity = 1; downBtn.Opacity = 1; center.Opacity = 1; } else if (update.Value == 18000) { downBtn.Opacity = 1; center.Opacity = 1; } else if (update.Value > 18000 && update.Value < 27000) { downBtn.Opacity = 1; leftBtn.Opacity = 1; center.Opacity = 1; } else if (update.Value == 27000) { leftBtn.Opacity = 1; center.Opacity = 1; } else if (update.Value > 27000) { leftBtn.Opacity = 1; upBtn.Opacity = 1; center.Opacity = 1; } break; case JoystickOffset.X: _calLeftJoystick.rawX = update.Value; break; case JoystickOffset.Y: _calLeftJoystick.rawY = 65535 - update.Value; break; case JoystickOffset.RotationX: _calRightJoystick.rawX = update.Value; break; case JoystickOffset.RotationY: _calRightJoystick.rawY = 65535 - update.Value; break; } } var joyL = JoyControl.ConvertToNintyJoy(leftXCalibration, leftYCalibration); var joyR = JoyControl.ConvertToNintyJoy(rightXCalibration, rightYCalibration); joyL.rawX = _calLeftJoystick.rawX; joyL.rawY = _calLeftJoystick.rawY; joyR.rawX = _calRightJoystick.rawX; joyR.rawY = _calRightJoystick.rawY; joyL.Normalize(); joyR.Normalize(); leftStick.Margin = new Thickness(146 + 30 * joyL.X, 291 - 30 * joyL.Y, 0, 0); rightStick.Margin = new Thickness(507 + 30 * joyR.X, 412 - 30 * joyR.Y, 0, 0); leftStickButton.Margin = leftStick.Margin; rightStickButton.Margin = rightStick.Margin; if (_openJoyWindow != null) { _openJoyWindow.Update(_leftCalibration ? _calLeftJoystick : _calRightJoystick); } }
public void UpdateVisual(INintrollerState state) { if (state is GameCubeAdapter gcn) { _lastState = gcn; GameCubeController activePort; bool connecited = GetActivePort(out activePort); A.Opacity = activePort.A ? 1 : 0; B.Opacity = activePort.B ? 1 : 0; X.Opacity = activePort.X ? 1 : 0; Y.Opacity = activePort.Y ? 1 : 0; Z.Opacity = activePort.Z ? 1 : 0; START.Opacity = activePort.Start ? 1 : 0; dpadUp.Opacity = activePort.Up ? 1 : 0; dpadDown.Opacity = activePort.Down ? 1 : 0; dpadLeft.Opacity = activePort.Left ? 1 : 0; dpadRight.Opacity = activePort.Right ? 1 : 0; L.Opacity = activePort.L.value > 0 ? 1 : 0; R.Opacity = activePort.R.value > 0 ? 1 : 0; var lOpacityMask = L.OpacityMask as LinearGradientBrush; if (lOpacityMask != null && lOpacityMask.GradientStops.Count == 2) { double offset = 1 - System.Math.Min(1, activePort.L.value); lOpacityMask.GradientStops[0].Offset = offset; lOpacityMask.GradientStops[1].Offset = offset; } var rOpacityMask = R.OpacityMask as LinearGradientBrush; if (rOpacityMask != null && rOpacityMask.GradientStops.Count == 2) { double offset = 1 - System.Math.Min(1, activePort.R.value); rOpacityMask.GradientStops[0].Offset = offset; rOpacityMask.GradientStops[1].Offset = offset; } joystick.Margin = new Thickness(190 + 100 * activePort.joystick.X, 272 - 100 * activePort.joystick.Y, 0, 0); cStick.Margin = new Thickness(887 + 100 * activePort.cStick.X, 618 - 100 * activePort.cStick.Y, 0, 0); connectionStatus.Content = connecited ? _connectedStatus : _disconnectedStatus; if (_openJoyWindow != null) { if (_calibrationTarget == "joy") { _openJoyWindow.Update(activePort.joystick); } else if (_calibrationTarget == "cStk") { _openJoyWindow.Update(activePort.cStick); } } else if (_openTrigWindow != null) { if (_calibrationTarget == "L") { _openTrigWindow.Update(activePort.L); } else if (_calibrationTarget == "R") { _openTrigWindow.Update(activePort.R); } } } }
public void UpdateVisual(INintrollerState state) { _lastState = state; if (state is Wiimote) { if (viewNunchuk.Visibility == Visibility.Visible) { viewNunchuk.Visibility = Visibility.Collapsed; } if (viewClassicController.Visibility == Visibility.Visible) { viewClassicController.Visibility = Visibility.Collapsed; } if (viewClassicControllerPro.Visibility == Visibility.Visible) { viewClassicControllerPro.Visibility = Visibility.Collapsed; } UpdateWiimoteVisual((Wiimote)state); } else if (state is Nunchuk) { if (viewNunchuk.Visibility != Visibility.Visible) { viewNunchuk.Visibility = Visibility.Visible; } if (viewClassicController.Visibility == Visibility.Visible) { viewClassicController.Visibility = Visibility.Collapsed; } if (viewClassicControllerPro.Visibility == Visibility.Visible) { viewClassicControllerPro.Visibility = Visibility.Collapsed; } var nun = (Nunchuk)state; UpdateWiimoteVisual(nun.wiimote); nBtnC.Opacity = nun.C ? 1 : 0; nBtnZ.Opacity = nun.Z ? 1 : 0; nJoy.Margin = new Thickness(70 + 30 * nun.joystick.X, 360 - 30 * nun.joystick.Y, 0, 0); if (_openJoyWindow != null && _calibrationTarget == App.CAL_NUN_JOYSTICK) { _openJoyWindow.Update(nun.joystick); } } else if (state is ClassicController) { if (viewNunchuk.Visibility == Visibility.Visible) { viewNunchuk.Visibility = Visibility.Collapsed; } if (viewClassicController.Visibility != Visibility.Visible) { viewClassicController.Visibility = Visibility.Visible; } if (viewClassicControllerPro.Visibility == Visibility.Visible) { viewClassicControllerPro.Visibility = Visibility.Collapsed; } var cc = (ClassicController)state; UpdateWiimoteVisual(cc.wiimote); ccBtnA.Opacity = cc.A ? 1 : 0; ccBtnB.Opacity = cc.B ? 1 : 0; ccBtnX.Opacity = cc.X ? 1 : 0; ccBtnY.Opacity = cc.Y ? 1 : 0; ccBtnUp.Opacity = cc.Up ? 1 : 0; ccBtnDown.Opacity = cc.Down ? 1 : 0; ccBtnRight.Opacity = cc.Right ? 1 : 0; ccBtnLeft.Opacity = cc.Left ? 1 : 0; ccPadCenter.Opacity = cc.Up || cc.Down || cc.Left || cc.Right ? 1 : 0; ccBtnHome.Opacity = cc.Home ? 1 : 0; ccBtnSelect.Opacity = cc.Select ? 1 : 0; ccBtnStart.Opacity = cc.Start ? 1 : 0; ccBtnZL.Opacity = cc.ZL ? 1 : 0; ccBtnZR.Opacity = cc.ZR ? 1 : 0; ccL.Opacity = cc.L.value > 0 ? 1 : 0; ccR.Opacity = cc.R.value > 0 ? 1 : 0; ccLeftStick.Margin = new Thickness(208 + 30 * cc.LJoy.X, 210 - 30 * cc.LJoy.Y, 0, 0); ccRightStick.Margin = new Thickness(364 + 30 * cc.RJoy.X, 210 - 30 * cc.RJoy.Y, 0, 0); if (_openJoyWindow != null && _calibrationTarget.StartsWith("cc")) { if (_calibrationTarget == App.CAL_CC_LJOYSTICK) { _openJoyWindow.Update(cc.LJoy); } else if (_calibrationTarget == App.CAL_CC_RJOYSTICK) { _openJoyWindow.Update(cc.RJoy); } } else if (_openTrigWindow != null && _calibrationTarget.StartsWith("cc")) { if (_calibrationTarget == "ccLT") { _openTrigWindow.Update(cc.L); } else if (_calibrationTarget == "ccRT") { _openTrigWindow.Update(cc.R); } } } else if (state is ClassicControllerPro) { if (viewNunchuk.Visibility == Visibility.Visible) { viewNunchuk.Visibility = Visibility.Collapsed; } if (viewClassicController.Visibility == Visibility.Visible) { viewClassicController.Visibility = Visibility.Collapsed; } if (viewClassicControllerPro.Visibility != Visibility.Visible) { viewClassicControllerPro.Visibility = Visibility.Visible; } var ccp = (ClassicControllerPro)state; UpdateWiimoteVisual(ccp.wiimote); ccpBtnA.Opacity = ccp.A ? 1 : 0; ccpBtnB.Opacity = ccp.B ? 1 : 0; ccpBtnX.Opacity = ccp.X ? 1 : 0; ccpBtnY.Opacity = ccp.Y ? 1 : 0; ccpBtnUp.Opacity = ccp.Up ? 1 : 0; ccpBtnDown.Opacity = ccp.Down ? 1 : 0; ccpBtnRight.Opacity = ccp.Right ? 1 : 0; ccpBtnLeft.Opacity = ccp.Left ? 1 : 0; ccpPadCenter.Opacity = ccp.Up || ccp.Down || ccp.Left || ccp.Right ? 1 : 0; ccpBtnHome.Opacity = ccp.Home ? 1 : 0; ccpBtnSelect.Opacity = ccp.Select ? 1 : 0; ccpBtnStart.Opacity = ccp.Start ? 1 : 0; ccpBtnZL.Opacity = ccp.ZL ? 1 : 0; ccpBtnZR.Opacity = ccp.ZR ? 1 : 0; ccpBtnL.Opacity = ccp.L ? 1 : 0; ccpBtnR.Opacity = ccp.R ? 1 : 0; ccpLeftStick.Margin = new Thickness(255 + 30 * ccp.LJoy.X, 279 - 30 * ccp.LJoy.Y, 0, 0); ccpRightStick.Margin = new Thickness(485 + 30 * ccp.RJoy.X, 279 - 30 * ccp.RJoy.Y, 0, 0); if (_openJoyWindow != null && _calibrationTarget.StartsWith("ccp")) { if (_calibrationTarget == App.CAL_CCP_LJOYSTICK) { _openJoyWindow.Update(ccp.LJoy); } else if (_calibrationTarget == App.CAL_CCP_RJOYSTICK) { _openJoyWindow.Update(ccp.RJoy); } } } }
public void UpdateVisual(INintrollerState state) { _lastState = state; if (state is Wiimote) { if (viewNunchuk.Visibility == Visibility.Visible) { viewNunchuk.Visibility = Visibility.Collapsed; } if (viewClassicController.Visibility == Visibility.Visible) { viewClassicController.Visibility = Visibility.Collapsed; } if (viewClassicControllerPro.Visibility == Visibility.Visible) { viewClassicControllerPro.Visibility = Visibility.Collapsed; } if (viewGuitar.Visibility == Visibility.Visible) { viewGuitar.Visibility = Visibility.Collapsed; } if (viewTaikoDrum.Visibility == Visibility.Visible) { viewTaikoDrum.Visibility = Visibility.Collapsed; } UpdateWiimoteVisual((Wiimote)state); } else if (state is Nunchuk) { if (viewNunchuk.Visibility != Visibility.Visible) { viewNunchuk.Visibility = Visibility.Visible; } if (viewClassicController.Visibility == Visibility.Visible) { viewClassicController.Visibility = Visibility.Collapsed; } if (viewClassicControllerPro.Visibility == Visibility.Visible) { viewClassicControllerPro.Visibility = Visibility.Collapsed; } if (viewGuitar.Visibility == Visibility.Visible) { viewGuitar.Visibility = Visibility.Collapsed; } if (viewTaikoDrum.Visibility == Visibility.Visible) { viewTaikoDrum.Visibility = Visibility.Collapsed; } var nun = (Nunchuk)state; UpdateWiimoteVisual(nun.wiimote); nBtnC.Opacity = nun.C ? 1 : 0; nBtnZ.Opacity = nun.Z ? 1 : 0; nJoy.Margin = new Thickness(70 + 30 * nun.joystick.X, 360 - 30 * nun.joystick.Y, 0, 0); if (_openJoyWindow != null && _calibrationTarget == App.CAL_NUN_JOYSTICK) { _openJoyWindow.Update(nun.joystick); } } else if (state is ClassicController) { if (viewNunchuk.Visibility == Visibility.Visible) { viewNunchuk.Visibility = Visibility.Collapsed; } if (viewClassicController.Visibility != Visibility.Visible) { viewClassicController.Visibility = Visibility.Visible; } if (viewClassicControllerPro.Visibility == Visibility.Visible) { viewClassicControllerPro.Visibility = Visibility.Collapsed; } if (viewGuitar.Visibility == Visibility.Visible) { viewGuitar.Visibility = Visibility.Collapsed; } if (viewTaikoDrum.Visibility == Visibility.Visible) { viewTaikoDrum.Visibility = Visibility.Collapsed; } var cc = (ClassicController)state; UpdateWiimoteVisual(cc.wiimote); ccBtnA.Opacity = cc.A ? 1 : 0; ccBtnB.Opacity = cc.B ? 1 : 0; ccBtnX.Opacity = cc.X ? 1 : 0; ccBtnY.Opacity = cc.Y ? 1 : 0; ccBtnUp.Opacity = cc.Up ? 1 : 0; ccBtnDown.Opacity = cc.Down ? 1 : 0; ccBtnRight.Opacity = cc.Right ? 1 : 0; ccBtnLeft.Opacity = cc.Left ? 1 : 0; ccPadCenter.Opacity = cc.Up || cc.Down || cc.Left || cc.Right ? 1 : 0; ccBtnHome.Opacity = cc.Home ? 1 : 0; ccBtnSelect.Opacity = cc.Select ? 1 : 0; ccBtnStart.Opacity = cc.Start ? 1 : 0; ccBtnZL.Opacity = cc.ZL ? 1 : 0; ccBtnZR.Opacity = cc.ZR ? 1 : 0; ccL.Opacity = cc.L.value > 0 ? 1 : 0; ccR.Opacity = cc.R.value > 0 ? 1 : 0; ccLeftStick.Margin = new Thickness(208 + 30 * cc.LJoy.X, 210 - 30 * cc.LJoy.Y, 0, 0); ccRightStick.Margin = new Thickness(364 + 30 * cc.RJoy.X, 210 - 30 * cc.RJoy.Y, 0, 0); if (_openJoyWindow != null && _calibrationTarget.StartsWith("cc")) { if (_calibrationTarget == App.CAL_CC_LJOYSTICK) { _openJoyWindow.Update(cc.LJoy); } else if (_calibrationTarget == App.CAL_CC_RJOYSTICK) { _openJoyWindow.Update(cc.RJoy); } } else if (_openTrigWindow != null && _calibrationTarget.StartsWith("cc")) { if (_calibrationTarget == "ccLT") { _openTrigWindow.Update(cc.L); } else if (_calibrationTarget == "ccRT") { _openTrigWindow.Update(cc.R); } } } else if (state is ClassicControllerPro) { if (viewNunchuk.Visibility == Visibility.Visible) { viewNunchuk.Visibility = Visibility.Collapsed; } if (viewClassicController.Visibility == Visibility.Visible) { viewClassicController.Visibility = Visibility.Collapsed; } if (viewClassicControllerPro.Visibility != Visibility.Visible) { viewClassicControllerPro.Visibility = Visibility.Visible; } if (viewGuitar.Visibility == Visibility.Visible) { viewGuitar.Visibility = Visibility.Collapsed; } if (viewTaikoDrum.Visibility == Visibility.Visible) { viewTaikoDrum.Visibility = Visibility.Collapsed; } var ccp = (ClassicControllerPro)state; UpdateWiimoteVisual(ccp.wiimote); ccpBtnA.Opacity = ccp.A ? 1 : 0; ccpBtnB.Opacity = ccp.B ? 1 : 0; ccpBtnX.Opacity = ccp.X ? 1 : 0; ccpBtnY.Opacity = ccp.Y ? 1 : 0; ccpBtnUp.Opacity = ccp.Up ? 1 : 0; ccpBtnDown.Opacity = ccp.Down ? 1 : 0; ccpBtnRight.Opacity = ccp.Right ? 1 : 0; ccpBtnLeft.Opacity = ccp.Left ? 1 : 0; ccpPadCenter.Opacity = ccp.Up || ccp.Down || ccp.Left || ccp.Right ? 1 : 0; ccpBtnHome.Opacity = ccp.Home ? 1 : 0; ccpBtnSelect.Opacity = ccp.Select ? 1 : 0; ccpBtnStart.Opacity = ccp.Start ? 1 : 0; ccpBtnZL.Opacity = ccp.ZL ? 1 : 0; ccpBtnZR.Opacity = ccp.ZR ? 1 : 0; ccpBtnL.Opacity = ccp.L ? 1 : 0; ccpBtnR.Opacity = ccp.R ? 1 : 0; ccpLeftStick.Margin = new Thickness(255 + 30 * ccp.LJoy.X, 279 - 30 * ccp.LJoy.Y, 0, 0); ccpRightStick.Margin = new Thickness(485 + 30 * ccp.RJoy.X, 279 - 30 * ccp.RJoy.Y, 0, 0); if (_openJoyWindow != null && _calibrationTarget.StartsWith("ccp")) { if (_calibrationTarget == App.CAL_CCP_LJOYSTICK) { _openJoyWindow.Update(ccp.LJoy); } else if (_calibrationTarget == App.CAL_CCP_RJOYSTICK) { _openJoyWindow.Update(ccp.RJoy); } } } else if (state is Guitar) { if (viewNunchuk.Visibility == Visibility.Visible) { viewNunchuk.Visibility = Visibility.Collapsed; } if (viewClassicController.Visibility == Visibility.Visible) { viewClassicController.Visibility = Visibility.Collapsed; } if (viewClassicControllerPro.Visibility == Visibility.Visible) { viewClassicControllerPro.Visibility = Visibility.Collapsed; } if (viewGuitar.Visibility != Visibility.Visible) { viewGuitar.Visibility = Visibility.Visible; } if (viewTaikoDrum.Visibility == Visibility.Visible) { viewTaikoDrum.Visibility = Visibility.Collapsed; } var gut = (Guitar)state; UpdateWiimoteVisual(gut.wiimote); gBtnGreen.Opacity = gut.Green ? 1 : 0; gBtnRed.Opacity = gut.Red ? 1 : 0; gBtnYellow.Opacity = gut.Yellow ? 1 : 0; gBtnBlue.Opacity = gut.Blue ? 1 : 0; gBtnOrange.Opacity = gut.Orange ? 1 : 0; gBtnStrumUp.Opacity = gut.StrumUp ? 1 : 0; gBtnStrumDown.Opacity = gut.StrumDown ? 1 : 0; gBtnPlus.Opacity = gut.Plus ? 1 : 0; gBtnMinus.Opacity = gut.Minus ? 1 : 0; gTouch1.Opacity = gut.T1 ? 1 : 0; gTouch2.Opacity = gut.T2 ? 1 : 0; gTouch3.Opacity = gut.T3 ? 1 : 0; gTouch4.Opacity = gut.T4 ? 1 : 0; gTouch5.Opacity = gut.T5 ? 1 : 0; gStick.Margin = new Thickness(1236 + 30 * gut.joystick.X, 283 - 30 * gut.joystick.Y, 0, 0); gStick.Margin = new Thickness(1236 + 30 * gut.joystick.X, 283 - 30 * gut.joystick.Y, 0, 0); gWhammy.Margin = new Thickness(345 + 60 * gut.whammyBar.value, 815 - 20 * gut.whammyBar.value, 0, 0); if (_openJoyWindow != null && _calibrationTarget == App.CAL_GUT_JOYSTICK) { _openJoyWindow.Update(gut.joystick); } else if (_openTrigWindow != null && _calibrationTarget == App.CAL_GUT_WHAMMY) { _openTrigWindow.Update(gut.whammyBar); } } else if (state is TaikoDrum) { if (viewNunchuk.Visibility == Visibility.Visible) { viewNunchuk.Visibility = Visibility.Collapsed; } if (viewClassicController.Visibility == Visibility.Visible) { viewClassicController.Visibility = Visibility.Collapsed; } if (viewClassicControllerPro.Visibility == Visibility.Visible) { viewClassicControllerPro.Visibility = Visibility.Collapsed; } if (viewGuitar.Visibility == Visibility.Visible) { viewGuitar.Visibility = Visibility.Collapsed; } if (viewTaikoDrum.Visibility != Visibility.Visible) { viewTaikoDrum.Visibility = Visibility.Visible; } var tak = (TaikoDrum)state; UpdateWiimoteVisual(tak.wiimote); takL.Fill = tak.centerLeft ? System.Windows.Media.Brushes.Red : System.Windows.Media.Brushes.White; takR.Fill = tak.centerRight ? System.Windows.Media.Brushes.Red : System.Windows.Media.Brushes.White; takRimL.Stroke = tak.rimLeft ? System.Windows.Media.Brushes.Blue : System.Windows.Media.Brushes.White; takRimR.Stroke = tak.rimRight ? System.Windows.Media.Brushes.Blue : System.Windows.Media.Brushes.White; } }