summaryrefslogtreecommitdiff
path: root/apps/plugins/sokoban.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/plugins/sokoban.c')
-rw-r--r--apps/plugins/sokoban.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/apps/plugins/sokoban.c b/apps/plugins/sokoban.c
index 76eb6288cd..f085e1bff2 100644
--- a/apps/plugins/sokoban.c
+++ b/apps/plugins/sokoban.c
@@ -495,7 +495,8 @@
495#define SOKOBAN_RIGHT BUTTON_RIGHT 495#define SOKOBAN_RIGHT BUTTON_RIGHT
496#define SOKOBAN_UP BUTTON_UP 496#define SOKOBAN_UP BUTTON_UP
497#define SOKOBAN_DOWN BUTTON_DOWN 497#define SOKOBAN_DOWN BUTTON_DOWN
498#define SOKOBAN_MENU BUTTON_PLAY 498#define SOKOBAN_MENU_PRE BUTTON_PLAY
499#define SOKOBAN_MENU (BUTTON_PLAY | BUTTON_REL)
499#define SOKOBAN_UNDO BUTTON_REW 500#define SOKOBAN_UNDO BUTTON_REW
500#define SOKOBAN_REDO BUTTON_FFWD 501#define SOKOBAN_REDO BUTTON_FFWD
501#define SOKOBAN_LEVEL_DOWN (BUTTON_PLAY | BUTTON_DOWN) 502#define SOKOBAN_LEVEL_DOWN (BUTTON_PLAY | BUTTON_DOWN)
@@ -1690,7 +1691,7 @@ static bool sokoban_loop(void)
1690{ 1691{
1691 bool moved; 1692 bool moved;
1692 int i = 0, button = 0; 1693 int i = 0, button = 0;
1693#if defined(SOKOBAN_UNDO_PRE) 1694#if defined(SOKOBAN_UNDO_PRE) || defined(SOKOBAN_MENU_PRE)
1694 int lastbutton = 0; 1695 int lastbutton = 0;
1695#endif 1696#endif
1696 int w, h; 1697 int w, h;
@@ -1703,10 +1704,15 @@ static bool sokoban_loop(void)
1703 1704
1704 switch(button) 1705 switch(button)
1705 { 1706 {
1707 case SOKOBAN_MENU:
1708#ifdef SOKOBAN_MENU_PRE
1709 if (lastbutton != SOKOBAN_MENU_PRE)
1710 break;
1711 /* fallthrough */
1712#endif
1706#ifdef SOKOBAN_RC_MENU 1713#ifdef SOKOBAN_RC_MENU
1707 case SOKOBAN_RC_MENU: 1714 case SOKOBAN_RC_MENU:
1708#endif 1715#endif
1709 case SOKOBAN_MENU:
1710 switch (sokoban_menu()) { 1716 switch (sokoban_menu()) {
1711 case 5: /* Quit */ 1717 case 5: /* Quit */
1712 case 6: /* Save & quit */ 1718 case 6: /* Save & quit */
@@ -1794,7 +1800,7 @@ static bool sokoban_loop(void)
1794 return PLUGIN_USB_CONNECTED; 1800 return PLUGIN_USB_CONNECTED;
1795 break; 1801 break;
1796 } 1802 }
1797#if defined(SOKOBAN_UNDO_PRE) 1803#if defined(SOKOBAN_UNDO_PRE) || defined(SOKOBAN_MENU_PRE)
1798 lastbutton = button; 1804 lastbutton = button;
1799#endif 1805#endif
1800 1806