Skip to content

Commit bf964ff

Browse files
committed
games fix
1 parent d27a0b7 commit bf964ff

File tree

3 files changed

+70
-24
lines changed

3 files changed

+70
-24
lines changed

applications/services/desktop/scenes/desktop_scene_main.c

+41-1
Original file line numberDiff line numberDiff line change
@@ -172,14 +172,54 @@ bool desktop_scene_main_on_event(void* context, SceneManagerEvent event) {
172172
}
173173
break;
174174
}
175-
case DesktopMainEventOpenGameMenu: {
175+
case DesktopMainEventOpenSnake: {
176176
LoaderStatus status = loader_start(
177177
desktop->loader, "Applications", EXT_PATH("/apps/Games/GAME_Snake.fap"));
178178
if(status != LoaderStatusOk) {
179179
FURI_LOG_E(TAG, "loader_start failed: %d", status);
180180
}
181181
break;
182182
}
183+
case DesktopMainEventOpen2048: {
184+
LoaderStatus status = loader_start(
185+
desktop->loader, "Applications", EXT_PATH("/apps/Games/GAME_2048.fap"));
186+
if(status != LoaderStatusOk) {
187+
FURI_LOG_E(TAG, "loader_start failed: %d", status);
188+
}
189+
break;
190+
}
191+
case DesktopMainEventOpenZombiez: {
192+
LoaderStatus status = loader_start(
193+
desktop->loader, "Applications", EXT_PATH("/apps/Games/GAME_Zombiez.fap"));
194+
if(status != LoaderStatusOk) {
195+
FURI_LOG_E(TAG, "loader_start failed: %d", status);
196+
}
197+
break;
198+
}
199+
case DesktopMainEventOpenTetris: {
200+
LoaderStatus status = loader_start(
201+
desktop->loader, "Applications", EXT_PATH("/apps/Games/GAME_Tetris.fap"));
202+
if(status != LoaderStatusOk) {
203+
FURI_LOG_E(TAG, "loader_start failed: %d", status);
204+
}
205+
break;
206+
}
207+
case DesktopMainEventOpenDOOM: {
208+
LoaderStatus status = loader_start(
209+
desktop->loader, "Applications", EXT_PATH("/apps/Games/GAME_DOOM.fap"));
210+
if(status != LoaderStatusOk) {
211+
FURI_LOG_E(TAG, "loader_start failed: %d", status);
212+
}
213+
break;
214+
}
215+
case DesktopMainEventOpenDice: {
216+
LoaderStatus status = loader_start(
217+
desktop->loader, "Applications", EXT_PATH("/apps/Games/GAME_Dice.fap"));
218+
if(status != LoaderStatusOk) {
219+
FURI_LOG_E(TAG, "loader_start failed: %d", status);
220+
}
221+
break;
222+
}
183223
case DesktopLockedEventUpdate:
184224
desktop_view_locked_update(desktop->locked_view);
185225
consumed = true;

applications/services/desktop/views/desktop_events.h

+6-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,12 @@ typedef enum {
1212
DesktopMainEventOpenPassport,
1313
DesktopMainEventOpenPowerOff,
1414

15-
DesktopMainEventOpenGameMenu,
15+
DesktopMainEventOpenSnake,
16+
DesktopMainEventOpen2048,
17+
DesktopMainEventOpenZombiez,
18+
DesktopMainEventOpenTetris,
19+
DesktopMainEventOpenDOOM,
20+
DesktopMainEventOpenDice,
1621

1722
DesktopLockedEventUnlocked,
1823
DesktopLockedEventUpdate,

applications/services/desktop/views/desktop_view_main.c

+23-22
Original file line numberDiff line numberDiff line change
@@ -71,65 +71,66 @@ bool desktop_main_input_callback(InputEvent* event, void* context) {
7171
} else if(event->key == InputKeyLeft) {
7272
main_view->callback(DesktopMainEventOpenFavoritePrimary, main_view->context);
7373
} else if(event->key == InputKeyRight) {
74+
// Right key is handled by animation manager
75+
// GOES TO PASSPORT NO MATTER WHAT
76+
// THIS DOESNT WORK, PASSPORT WILL ONLY OPEN ON REGULAR RIGHT, NOTHING CAN GET ASSIGNED HERE
7477
main_view->callback(DesktopMainEventOpenPassport, main_view->context);
7578
}
7679
} else if(event->type == InputTypeLong) {
7780
if(event->key == InputKeyOk) {
7881
main_view->callback(DesktopAnimationEventNewIdleAnimation, main_view->context);
7982
} else if(event->key == InputKeyUp) {
80-
// main_view->callback(DesktopMainEventOpenFavoriteGame, main_view->context);
83+
main_view->callback(DesktopMainEventOpenDOOM, main_view->context); // OPENS DOOM
8184
} else if(event->key == InputKeyDown) {
82-
// main_view->callback(DesktopMainEventOpenGames, main_view->context);
83-
main_view->callback(DesktopMainEventOpenDebug, main_view->context);
85+
main_view->callback(DesktopMainEventOpenZombiez, main_view->context); // OPENS Zombiez
8486
} else if(event->key == InputKeyLeft) {
8587
main_view->callback(DesktopMainEventOpenFavoriteSecondary, main_view->context);
86-
} else if(event->key == InputKeyRight) {
87-
// THIS DOESNT WORK
8888
}
8989
}
9090
} else if(main_view->is_gamemode == true) {
9191
if(event->type == InputTypeShort) {
9292
if(event->key == InputKeyOk) {
93-
// main_view->callback(DesktopMainEventOpenGames, main_view->context);
94-
main_view->callback(DesktopMainEventOpenGameMenu, main_view->context); // OPENS SNAKE
93+
main_view->callback(DesktopMainEventOpenDice, main_view->context); // OPENS Dice
9594
} else if(event->key == InputKeyUp) {
96-
// main_view->callback(DesktopMainEventOpenFavoriteGame, main_view->context);
97-
main_view->callback(DesktopMainEventOpenGameMenu, main_view->context); // OPENS SNAKE
95+
main_view->callback(DesktopMainEventOpenSnake, main_view->context); // OPENS SNAKE
9896
} else if(event->key == InputKeyDown) {
9997
// PREFER TO OPEN GAMES MENU
100-
main_view->callback(DesktopMainEventOpenGameMenu, main_view->context); // OPENS SNAKE
98+
main_view->callback(DesktopMainEventOpen2048, main_view->context); // OPENS 2048
10199
} else if(event->key == InputKeyLeft) {
102100
main_view->callback(DesktopMainEventOpenClock, main_view->context);
103-
} else if(event->key == InputKeyRight) {
104-
// GOES TO PASSPORT NO MATTER WHAT
105101
}
106102
} else if(event->type == InputTypeLong) {
107103
if(event->key == InputKeyOk) {
108104
main_view->callback(DesktopAnimationEventNewIdleAnimation, main_view->context);
109105
} else if(event->key == InputKeyUp) {
110-
// main_view->callback(DesktopMainEventOpenFavoriteGame, main_view->context);
111-
main_view->callback(DesktopMainEventOpenGameMenu, main_view->context); // OPENS SNAKE
106+
main_view->callback(DesktopMainEventOpenDOOM, main_view->context); // OPENS DOOM
112107
} else if(event->key == InputKeyDown) {
113-
// main_view->callback(DesktopMainEventOpenGames, main_view->context);
114-
main_view->callback(DesktopMainEventOpenGameMenu, main_view->context); // OPENS SNAKE
108+
main_view->callback(DesktopMainEventOpenZombiez, main_view->context); // OPENS Zombiez
115109
} else if(event->key == InputKeyLeft) {
116-
main_view->callback(DesktopMainEventOpenClock, main_view->context);
117-
} else if(event->key == InputKeyRight) {
118-
// THIS DOESNT WORK, PASSPORT WILL ONLY OPEN ON REGULAR RIGHT, NOTHING CAN GET ASSIGNED HERE
110+
main_view->callback(DesktopMainEventOpenTetris, main_view->context); // OPENS TETRIS
119111
}
120112
}
121113
} else {
122114
if(event->type == InputTypeShort) {
123115
if(event->key == InputKeyOk) {
124-
main_view->callback(DesktopMainEventOpenGameMenu, main_view->context); // OPENS SNAKE
116+
main_view->callback(DesktopMainEventOpenDice, main_view->context); // OPENS Dice
125117
} else if(event->key == InputKeyUp) {
126118
main_view->callback(DesktopMainEventOpenLockMenu, main_view->context);
127119
} else if(event->key == InputKeyDown) {
128-
main_view->callback(DesktopMainEventOpenPassport, main_view->context);
120+
main_view->callback(DesktopMainEventOpen2048, main_view->context); // OPENS 2048
129121
} else if(event->key == InputKeyLeft) {
130122
main_view->callback(DesktopMainEventOpenPassport, main_view->context);
131123
}
132-
// Right key is handled by animation manager
124+
} else if(event->type == InputTypeLong) {
125+
if(event->key == InputKeyOk) {
126+
main_view->callback(DesktopAnimationEventNewIdleAnimation, main_view->context);
127+
} else if(event->key == InputKeyUp) {
128+
main_view->callback(DesktopMainEventOpenSnake, main_view->context); // OPENS SNAKE
129+
} else if(event->key == InputKeyDown) {
130+
main_view->callback(DesktopMainEventOpenTetris, main_view->context); // OPENS TETRIS
131+
} else if(event->key == InputKeyLeft) {
132+
main_view->callback(DesktopMainEventOpenClock, main_view->context);
133+
}
133134
}
134135
}
135136

0 commit comments

Comments
 (0)