X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Ftools.c;h=84afef183185e8b37eed8454fb71879f9b059cbd;hp=f907d5dd2bf39816a2bc8ef2a8bbb78eef83147f;hb=b62e4322b0b7d01aac9340adaddba753e04c9c51;hpb=e913fbf7e7caa3234df0de282363ee4d6bb727e1 diff --git a/src/tools.c b/src/tools.c index f907d5dd..84afef18 100644 --- a/src/tools.c +++ b/src/tools.c @@ -3939,6 +3939,34 @@ static int RequestHandleEvents(unsigned int req_state) ClearPlayerAction(); break; +#if defined(TARGET_SDL2) + case SDL_CONTROLLERBUTTONDOWN: + switch (event.cbutton.button) + { + case SDL_CONTROLLER_BUTTON_A: + case SDL_CONTROLLER_BUTTON_X: + case SDL_CONTROLLER_BUTTON_LEFTSHOULDER: + result = 1; + break; + + case SDL_CONTROLLER_BUTTON_B: + case SDL_CONTROLLER_BUTTON_Y: + case SDL_CONTROLLER_BUTTON_RIGHTSHOULDER: + case SDL_CONTROLLER_BUTTON_BACK: + result = 0; + break; + } + + if (req_state & REQ_PLAYER) + result = 0; + + break; + + case SDL_CONTROLLERBUTTONUP: + ClearPlayerAction(); + break; +#endif + default: HandleOtherEvents(&event); break;