| 76 | } |
| 77 | |
| 78 | void Gopher::loop() { |
| 79 | Sleep(SLEEP_AMOUNT); |
| 80 | |
| 81 | _currentState = _controller->GetState(); |
| 82 | |
| 83 | handleDisableButton(); |
| 84 | if (_disabled) |
| 85 | { |
| 86 | return; |
| 87 | } |
| 88 | |
| 89 | //Vibration |
| 90 | handleVibrationButton(); |
| 91 | |
| 92 | handleMouseMovement(); |
| 93 | handleScrolling(); |
| 94 | |
| 95 | //Mouse functions |
| 96 | if (CONFIG_MOUSE_LEFT) |
| 97 | mapMouseClick(CONFIG_MOUSE_LEFT, MOUSEEVENTF_LEFTDOWN, MOUSEEVENTF_LEFTUP); |
| 98 | if (CONFIG_MOUSE_RIGHT) |
| 99 | mapMouseClick(CONFIG_MOUSE_RIGHT, MOUSEEVENTF_RIGHTDOWN, MOUSEEVENTF_RIGHTUP); |
| 100 | if (CONFIG_MOUSE_MIDDLE) |
| 101 | mapMouseClick(CONFIG_MOUSE_MIDDLE, MOUSEEVENTF_MIDDLEDOWN, MOUSEEVENTF_MIDDLEUP); |
| 102 | |
| 103 | //Hides the console |
| 104 | if (CONFIG_HIDE) |
| 105 | { |
| 106 | setXboxClickState(CONFIG_HIDE); |
| 107 | if (_xboxClickIsDown[CONFIG_HIDE]) |
| 108 | { |
| 109 | toggleWindowVisibility(); |
| 110 | } |
| 111 | } |
| 112 | |
| 113 | //Will change between the current speed values |
| 114 | setXboxClickState(CONFIG_SPEED_CHANGE); |
| 115 | if (_xboxClickIsDown[CONFIG_SPEED_CHANGE]) { |
| 116 | |
| 117 | if (speed == SPEED_LOW) |
| 118 | { |
| 119 | printf("Setting speed to MEDIUM...\n"); |
| 120 | speed = SPEED_MED; |
| 121 | pulseVibrate(450, 65000, 65000); |
| 122 | } |
| 123 | else if (speed == SPEED_MED) |
| 124 | { |
| 125 | printf("Setting speed to HIGH...\n"); |
| 126 | speed = SPEED_HIGH; |
| 127 | pulseVibrate(450, 65000, 65000); |
| 128 | } |
| 129 | else if (speed == SPEED_HIGH) |
| 130 | { |
| 131 | printf("Setting speed to LOW...\n"); |
| 132 | speed = SPEED_LOW; |
| 133 | pulseVibrate(450, 65000, 65000); |
| 134 | } |
| 135 | } |