Skip to content

Commit cb147f6

Browse files
committed
Full support for Wii U Pro controller, can use sticks to scroll
1 parent d2a3fe0 commit cb147f6

File tree

2 files changed

+20
-4
lines changed

2 files changed

+20
-4
lines changed

src/gui/DWPadController.h

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -122,29 +122,37 @@ class DWPadController : public GuiController
122122
data.buttons_r = remapWiiMoteButtons(kpadData.btns_r);
123123
data.buttons_h = remapWiiMoteButtons(kpadData.btns_h);
124124
data.buttons_d = remapWiiMoteButtons(kpadData.btns_d);
125+
126+
data.lstick.x = kpadData.nunchuck.stick_x;
127+
data.lstick.y = kpadData.nunchuck.stick_y;
125128
}
126129
else
127130
{
128-
if(kpadData.btns_h & WPAD_BUTTON_LEFT)
131+
if(kpadData.classic.btns_h & WPAD_CLASSIC_BUTTON_LEFT)
129132
{
130133
if(data.x > -(width / 2)) data.x -= 10;
131134
}
132-
if(kpadData.btns_h & WPAD_BUTTON_RIGHT)
135+
if(kpadData.classic.btns_h & WPAD_CLASSIC_BUTTON_RIGHT)
133136
{
134137
if(data.x < (width / 2)) data.x += 10;
135138
}
136-
if(kpadData.btns_h & WPAD_BUTTON_UP)
139+
if(kpadData.classic.btns_h & WPAD_CLASSIC_BUTTON_UP)
137140
{
138141
if(data.y < (height / 2)) data.y += 10;
139142
}
140-
if(kpadData.btns_h & WPAD_BUTTON_DOWN)
143+
if(kpadData.classic.btns_h & WPAD_CLASSIC_BUTTON_DOWN)
141144
{
142145
if(data.y > -(height / 2)) data.y -= 10;
143146
}
144147

145148
data.buttons_r = remapClassicButtons(kpadData.classic.btns_r);
146149
data.buttons_h = remapClassicButtons(kpadData.classic.btns_h);
147150
data.buttons_d = remapClassicButtons(kpadData.classic.btns_d);
151+
152+
data.lstick.x = kpadData.classic.lstick_x;
153+
data.lstick.y = kpadData.classic.lstick_y;
154+
data.rstick.x = kpadData.classic.rstick_x;
155+
data.rstick.y = kpadData.classic.rstick_y;
148156
}
149157

150158
return true;

src/gui/WPadController.h

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -148,12 +148,20 @@ class WPadController : public GuiController
148148
data.buttons_r = remapWiiMoteButtons(kpadData.btns_r);
149149
data.buttons_h = remapWiiMoteButtons(kpadData.btns_h);
150150
data.buttons_d = remapWiiMoteButtons(kpadData.btns_d);
151+
152+
data.lstick.x = kpadData.nunchuck.stick_x;
153+
data.lstick.y = kpadData.nunchuck.stick_y;
151154
}
152155
else
153156
{
154157
data.buttons_r = remapClassicButtons(kpadData.classic.btns_r);
155158
data.buttons_h = remapClassicButtons(kpadData.classic.btns_h);
156159
data.buttons_d = remapClassicButtons(kpadData.classic.btns_d);
160+
161+
data.lstick.x = kpadData.classic.lstick_x;
162+
data.lstick.y = kpadData.classic.lstick_y;
163+
data.rstick.x = kpadData.classic.rstick_x;
164+
data.rstick.y = kpadData.classic.rstick_y;
157165
}
158166

159167
data.validPointer = (kpadData.pos_valid == 1 || kpadData.pos_valid == 2) && (kpadData.pos_x >= -1.0f && kpadData.pos_x <= 1.0f) && (kpadData.pos_y >= -1.0f && kpadData.pos_y <= 1.0f);

0 commit comments

Comments
 (0)