MCPcopy Create free account
hub / github.com/dborth/vbagx / TwistedInput

Function TwistedInput

source/gameinput.cpp:912–957  ·  view source on GitHub ↗

WarioWare Twisted

Source from the content-addressed store, hash-verified

910
911// WarioWare Twisted
912u32 TwistedInput(unsigned short pad) {
913 u32 J = StandardMovement(pad) | DecodeGamecube(pad);
914#ifdef HW_RVL
915 WPADData * wp = WPAD_Data(pad);
916
917 if (wp->exp.type == WPAD_EXP_NUNCHUK) {
918 TiltSideways = false;
919 J |= StandardDPad(pad);
920 // Pause
921 if (wp->btns_h & WPAD_BUTTON_PLUS)
922 J |= VBA_BUTTON_START;
923 // Select and L do nothing!
924 if (wp->btns_h & WPAD_BUTTON_MINUS)
925 J |= VBA_BUTTON_SELECT;
926 if (wp->btns_h & WPAD_BUTTON_1)
927 J |= VBA_BUTTON_L | VBA_SPEED;
928 if (wp->btns_h & WPAD_BUTTON_2)
929 J |= VBA_BUTTON_L | VBA_SPEED;
930
931 // A Button
932 if (wp->btns_h & WPAD_BUTTON_A)
933 J |= VBA_BUTTON_A;
934 // B Button
935 if (wp->btns_h & WPAD_BUTTON_B)
936 J |= VBA_BUTTON_B;
937 // Grab an icon and prevent menu from spinning
938 if (wp->btns_h & WPAD_NUNCHUK_BUTTON_Z)
939 J |= VBA_BUTTON_R;
940 // Calibrate
941 if (wp->btns_h & WPAD_NUNCHUK_BUTTON_C) {
942 CalibrateWario = true;
943 } else CalibrateWario = false;
944 } else if (wp->exp.type == WPAD_EXP_CLASSIC) {
945 TiltSideways = false;
946 J |= StandardDPad(pad) | StandardClassic(pad);
947
948 } else {
949 TiltSideways = true;
950 J |= StandardSideways(pad);
951 if (wp->btns_h & WPAD_BUTTON_B) {
952 CalibrateWario = true;
953 } else CalibrateWario = false;
954 }
955#endif
956 return J;
957}
958
959u32 KirbyTntInput(unsigned short pad) {
960 u32 J = StandardMovement(pad) | DecodeGamecube(pad);

Callers 1

DecodeJoyFunction · 0.85

Calls 5

StandardMovementFunction · 0.85
DecodeGamecubeFunction · 0.85
StandardDPadFunction · 0.85
StandardClassicFunction · 0.85
StandardSidewaysFunction · 0.85

Tested by

no test coverage detected