From a3ca7bec86eaac687e70c3d4a67041abc8678d18 Mon Sep 17 00:00:00 2001 From: JailDoctor Date: Fri, 10 Feb 2023 19:06:26 +0100 Subject: [PATCH] - Ara es pot usar el gamepad per a tot --- data/game.lua | 38 ++++++++++++++++++++++++++++++++------ data/intro.lua | 4 ++-- data/main.lua | 5 ++++- data/scenes.lua | 2 +- 4 files changed, 39 insertions(+), 10 deletions(-) diff --git a/data/game.lua b/data/game.lua index 16defe9..b78f443 100644 --- a/data/game.lua +++ b/data/game.lua @@ -311,7 +311,7 @@ function update_game() --elseif btnp(KEY_ESCAPE) then -- pause() --end - if btnp(KEY_ESCAPE) then + if btnp(KEY_ESCAPE) or padp(btnPause) then pause() end if abad.objects.gps~=nil then @@ -326,6 +326,17 @@ function update_game() elseif btnp(KEY_5) then current_camera=5 end + if padp(btnCycle1) then + current_camera=current_camera+1 + if current_camera==6 then current_camera=1 end + if current_camera==1 and (abad.objects.gorro or abad.objects.clau_premiere) then current_camera=2 end + if current_camera==2 and (abad.objects.peu or abad.objects.clau_elalien) then current_camera=3 end + elseif padp(btnCycle2) then + current_camera=current_camera-1 + if current_camera==0 then current_camera=5 end + if current_camera==2 and (abad.objects.peu or abad.objects.clau_elalien) then current_camera=1 end + if current_camera==1 and (abad.objects.gorro or abad.objects.clau_premiere) then current_camera=5 end + end end end end @@ -395,7 +406,7 @@ function update_menu() else playmus(audio_main_song) end - elseif btnp(KEY_ESCAPE) then + elseif btnp(KEY_ESCAPE) or padp(btnPause) then quit() end elseif menu_state==1 then @@ -528,6 +539,7 @@ function pause() sspr(0,0,128,96,0,0) setdest(0) setsource(tiles) + pausa_option=1 pause_old_update=game_update game_update=update_pause end @@ -536,16 +548,30 @@ function update_pause() rectfill(16,16,112,80,16) rect(16,16,112,80,15) prnt("PAUSA",54,30,15) - prnt("ESC torna al joc",30,50,14) - prnt("SPACE eixir",30,60,14) + if pausa_option==1 then + rect(28,48,100,56,13) + else + rect(28,58,100,66,13) + end + prnt("CONTINUAR",30,50,14) + prnt("EIXIR",30,60,14) if btnp(KEY_ESCAPE) then setsource(back) sspr(0,0,128,96,0,0) setsource(tiles) game_update = pause_old_update + elseif btnp(keyDown) or btnp(keyUp) or padp(btnDown) or padp(btnUp) then + if pausa_option==1 then pausa_option=2 else pausa_option=1 end elseif btnp(keyShoot) or padp(btnShoot) then - game_exit() - game_init(true) + if pausa_option==1 then + setsource(back) + sspr(0,0,128,96,0,0) + setsource(tiles) + game_update = pause_old_update + else + game_exit() + game_init(true) + end end end diff --git a/data/intro.lua b/data/intro.lua index ca6cf4b..c65535c 100644 --- a/data/intro.lua +++ b/data/intro.lua @@ -19,7 +19,7 @@ function intro_intro() --text("JAILGAMES",40,30,15) text("presenta",48,50,14) intro_wait=intro_wait-1 - if intro_wait==0 or btnp(KEY_ESCAPE) or btnp(keyShoot) or padp(btnShoot) then + if intro_wait==0 or btnp(KEY_ESCAPE) or btnp(keyShoot) or padp(btnShoot) or padp(btnPause) then intro_wait=1 game_update = intro_update fade.fadeoutin() @@ -30,7 +30,7 @@ function intro_intro() end function intro_update() - if btnp(KEY_ESCAPE) then + if btnp(KEY_ESCAPE) or padp(btnPause) then game_init(true) fade.fadeoutin() elseif btnp(KEY_SPACE) then diff --git a/data/main.lua b/data/main.lua index 8ffbdfa..bf6d960 100644 --- a/data/main.lua +++ b/data/main.lua @@ -36,8 +36,11 @@ function _init() btnDown = tonumber(getconf("btndown")) or BTN_DOWN btnLeft = tonumber(getconf("btnleft")) or BTN_LEFT btnRight = tonumber(getconf("btnright")) or BTN_RIGHT - btnJump = tonumber(getconf("btnjump")) or BTN_UP + btnJump = tonumber(getconf("btnjump")) or BTN_B btnShoot = tonumber(getconf("btnshoot")) or BTN_A + btnCycle1 = tonumber(getconf("btnCycle1")) or BTN_RIGHTSHOULDER + btnCycle2 = tonumber(getconf("btnCycle2")) or BTN_LEFTSHOULDER + btnPause = tonumber(getconf("btnPause")) or BTN_START --game_init() intro_init() diff --git a/data/scenes.lua b/data/scenes.lua index c7b25c4..27515b7 100644 --- a/data/scenes.lua +++ b/data/scenes.lua @@ -272,7 +272,7 @@ function update_scene() end end - if btnp(KEY_ESCAPE) and (scenes.current_scene~=scenes.final) then + if (btnp(KEY_ESCAPE) or padp(btnPause)) and (scenes.current_scene~=scenes.final) then if scenes.current_scene[scenes.dnum].die then game_init(true) else