fixed back button on android
This commit is contained in:
parent
4a02a07523
commit
3dbf040e19
|
@ -18,6 +18,7 @@ LOCAL_C_INCLUDES := \
|
|||
$(LOCAL_PATH)/$(THIRD_PARTY_PATH)/moonscript \
|
||||
$(LOCAL_PATH)/$(THIRD_PARTY_PATH)/wren-0.1.0\src\include \
|
||||
$(LOCAL_PATH)/$(THIRD_PARTY_PATH)/sdl-gpu/include \
|
||||
$(LOCAL_PATH)/$(THIRD_PARTY_PATH)/fennel \
|
||||
$(LOCAL_PATH)/../../../../include
|
||||
|
||||
# Add your application source files here...
|
||||
|
|
|
@ -40,6 +40,7 @@
|
|||
[SDL_SCANCODE_0] = tic_key_0,
|
||||
[SDL_SCANCODE_RETURN] = tic_key_return,
|
||||
[SDL_SCANCODE_ESCAPE] = tic_key_escape,
|
||||
[SDL_SCANCODE_AC_BACK] = tic_key_escape,
|
||||
[SDL_SCANCODE_BACKSPACE] = tic_key_backspace,
|
||||
[SDL_SCANCODE_TAB] = tic_key_tab,
|
||||
[SDL_SCANCODE_SPACE] = tic_key_space,
|
||||
|
|
|
@ -1334,7 +1334,6 @@ static void processShortcuts()
|
|||
if(keyWasPressedOnce(tic_key_escape))
|
||||
{
|
||||
impl.mode == TIC_MENU_MODE ? hideGameMenu() : showGameMenu();
|
||||
// impl.gamepad.backProcessed = true;
|
||||
}
|
||||
else if(keyWasPressedOnce(tic_key_f11)) goFullscreen();
|
||||
else if(keyWasPressedOnce(tic_key_return))
|
||||
|
|
39
src/system.c
39
src/system.c
|
@ -666,15 +666,7 @@ static void processJoysticks()
|
|||
if(back)
|
||||
{
|
||||
tic_mem* tic = platform.studio->tic;
|
||||
|
||||
for(s32 i = 0; i < TIC80_KEY_BUFFER; i++)
|
||||
{
|
||||
if(!tic->ram.input.keyboard.keys[i])
|
||||
{
|
||||
tic->ram.input.keyboard.keys[i] = tic_key_escape;
|
||||
break;
|
||||
}
|
||||
}
|
||||
tic->ram.input.keyboard.keys[0] = tic_key_escape;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -688,7 +680,19 @@ static void processJoysticks()
|
|||
|
||||
static void processGamepad()
|
||||
{
|
||||
#if !defined(__EMSCRIPTEN__) && !defined(__MACOSX__)
|
||||
processJoysticks();
|
||||
|
||||
{
|
||||
platform.studio->tic->ram.input.gamepads.data = 0;
|
||||
|
||||
platform.studio->tic->ram.input.gamepads.data |= platform.gamepad.touch.data;
|
||||
platform.studio->tic->ram.input.gamepads.data |= platform.gamepad.joystick.data;
|
||||
}
|
||||
}
|
||||
|
||||
static void processTouchInput()
|
||||
{
|
||||
#if !defined(__EMSCRIPTEN__) && !defined(__MACOSX__)
|
||||
{
|
||||
s32 devices = SDL_GetNumTouchDevices();
|
||||
for (s32 i = 0; i < devices; i++)
|
||||
|
@ -703,19 +707,12 @@ static void processGamepad()
|
|||
? processTouchGamepad()
|
||||
: processTouchKeyboard();
|
||||
#endif
|
||||
processJoysticks();
|
||||
|
||||
{
|
||||
platform.studio->tic->ram.input.gamepads.data = 0;
|
||||
|
||||
platform.studio->tic->ram.input.gamepads.data |= platform.gamepad.touch.data;
|
||||
platform.studio->tic->ram.input.gamepads.data |= platform.gamepad.joystick.data;
|
||||
}
|
||||
}
|
||||
|
||||
static void pollEvent()
|
||||
{
|
||||
tic80_input* input = &platform.studio->tic->ram.input;
|
||||
tic_mem* tic = platform.studio->tic;
|
||||
tic80_input* input = &tic->ram.input;
|
||||
|
||||
{
|
||||
input->mouse.btns = 0;
|
||||
|
@ -783,6 +780,7 @@ static void pollEvent()
|
|||
|
||||
processMouse();
|
||||
processKeyboard();
|
||||
processTouchInput();
|
||||
processGamepad();
|
||||
}
|
||||
|
||||
|
@ -1361,6 +1359,9 @@ static void emsGpuTick()
|
|||
|
||||
static s32 start(s32 argc, char **argv, const char* folder)
|
||||
{
|
||||
SDL_SetHint(SDL_HINT_WINRT_HANDLE_BACK_BUTTON, "1");
|
||||
SDL_SetHint(SDL_HINT_ACCELEROMETER_AS_JOYSTICK, "0");
|
||||
|
||||
SDL_Init(SDL_INIT_VIDEO | SDL_INIT_AUDIO | SDL_INIT_JOYSTICK);
|
||||
|
||||
initSound();
|
||||
|
|
Loading…
Reference in New Issue