activates or deactivates mouse and or controller
| 714 | |
| 715 | // activates or deactivates mouse and or controller |
| 716 | void lnxgameController::mask_controllers(bool joystick, bool mouse) { |
| 717 | int i, j; |
| 718 | |
| 719 | m_JoyActive = joystick; |
| 720 | m_MouseActive = mouse; |
| 721 | |
| 722 | if (!m_MouseActive) { |
| 723 | m_MseState.x = 0; |
| 724 | m_MseState.y = 0; |
| 725 | m_MseState.z = 0; |
| 726 | m_MseState.mx = 0; |
| 727 | m_MseState.my = 0; |
| 728 | m_MseState.btnmask = 0; |
| 729 | } |
| 730 | |
| 731 | if (!m_JoyActive) { |
| 732 | for (int ctl = 0; ctl < m_NumControls; ctl++) { |
| 733 | if (m_ControlList[ctl].id >= CTID_EXTCONTROL0) { |
| 734 | // handle buttons |
| 735 | int dev = m_ControlList[ctl].id; |
| 736 | m_ExtCtlStates[dev].x = (m_ControlList[ctl].normalizer[0]); |
| 737 | m_ExtCtlStates[dev].y = (m_ControlList[ctl].normalizer[1]); |
| 738 | m_ExtCtlStates[dev].z = (m_ControlList[ctl].normalizer[2]); |
| 739 | m_ExtCtlStates[dev].r = (m_ControlList[ctl].normalizer[3]); |
| 740 | m_ExtCtlStates[dev].u = (m_ControlList[ctl].normalizer[4]); |
| 741 | m_ExtCtlStates[dev].v = (m_ControlList[ctl].normalizer[5]); |
| 742 | for (j = 0; j < JOYPOV_NUM; j++) { |
| 743 | m_ExtCtlStates[dev].pov[j] = JOYPOV_CENTER; |
| 744 | m_ExtCtlStates[dev].last_pov[j] = JOYPOV_CENTER; |
| 745 | |
| 746 | for (i = 0; i < JOYPOV_DIR; i++) { |
| 747 | m_ExtCtlStates[dev].povstarts[j][i] = (float)0.0; |
| 748 | m_ExtCtlStates[dev].povtimes[j][i] = (float)0.0; |
| 749 | m_ExtCtlStates[dev].povpresses[j][i] = 0; |
| 750 | } |
| 751 | } |
| 752 | |
| 753 | m_ExtCtlStates[dev].buttons = 0; |
| 754 | for (i = 0; i < CT_MAX_BUTTONS; i++) { |
| 755 | m_ExtCtlStates[dev].btnpresses[i] = 0; |
| 756 | m_ExtCtlStates[dev].btntimes[i] = (float)0.0; |
| 757 | m_ExtCtlStates[dev].btnstarts[i] = (float)0.0; |
| 758 | } |
| 759 | } |
| 760 | } |
| 761 | } |
| 762 | } |
| 763 | |
| 764 | // --------------------------------------------------------------------------- |
| 765 | // controller functions |
no outgoing calls
no test coverage detected