📄 games_main.c
字号:
PMPT_LIST_GAME_AUDIO,
TITLE_SECOND_MENU,
MA_NUMBER|MA_BACK_EX_SEL,
0,
(void *)games_audio_menu,
(sizeof(games_audio_menu) /
sizeof(MENU_ITEM_STRUCTURE_NAME_T))
};
MENU_ITEM_STRUCTURE_NAME_T const games_main_menu[] =
{
#ifdef GAMES_CARGADOR
{ PMPT_LIST_CARGADOR,ICON_MENUITEM_CARGADOR, OP_TRUE, OP_NULL, &games_cargador_menu_tier , OP_NULL},
#endif
#ifdef GAMES_FALLBALL
{ PMPT_LIST_GOPHERS, ICON_MENUITEM_LIGHTUP, OP_TRUE, OP_NULL, &games_fallball_menu_tier, OP_NULL},
#endif
#ifdef GAMES_GOPHER
{ PMPT_LIST_STARWAR, ICON_MENUITEM_MOUSE , OP_TRUE, OP_NULL, &games_gopher_menu_tier, OP_NULL},
#endif
#ifdef GAMES_HUARONG
{ PMPT_LIST_HUARONG, ICON_MENUITEM_HUARONGDAO, OP_TRUE, OP_NULL, &games_huarong_menu_tier, OP_NULL},
#endif
#ifdef GAMES_LIGHTUP
{ PMPT_LIST_LIGHTUP, ICON_MENUITEM_FIVE_BALL, OP_TRUE, OP_NULL, &games_lightup_menu_tier, OP_NULL},
#endif
#ifdef GAMES_STARWAR
{ PMPT_LIST_STARWAR, NULL_ICON, OP_TRUE, OP_NULL, &games_starwar_menu_tier, OP_NULL},
#endif
#ifdef GAMES_TETRIS
{ PMPT_LIST_TETRIS, NULL_ICON, OP_TRUE, OP_NULL, &games_tetris_menu_tier, OP_NULL},
#endif
#ifdef GAMES_FRUIT
{ PMPT_LIST_FRUIT, ICON_MENUITEM_FRUIT, OP_TRUE, OP_NULL, &games_fruit_menu_tier, OP_NULL},
#endif
{ PMPT_LIST_GAME_AUDIO, ICON_MENUITEM_RING, OP_TRUE, OP_NULL, &games_audio_menu_tier, OP_NULL},
};
MENU_TIER_STRUCTURE_NAME_T games_main_menu_tier =
{
PMPT_TITLE_GAMES,
TITLE_MAIN_SUBMENU,
MENU_ATTR,
0,
(void *)games_main_menu,
(sizeof(games_main_menu) /
sizeof(MENU_ITEM_STRUCTURE_NAME_T))
};
/*==================================================================================================
LOCAL MACROS
==================================================================================================*/
/*
* description of this macro, if needed. - Remember self documenting code
*/
/*==================================================================================================
LOCAL VARIABLES
==================================================================================================*/
/*==================================================================================================
GLOBAL VARIABLES
==================================================================================================*/
APP_GAMES_STRUCTURE_NAME_T gamesApp_data;
/*==================================================================================================
LOCAL FUNCTIONS
==================================================================================================*/
/*==================================================================================================
FUNCTION: Games_App_Menu_Enter
DESCRIPTION:
ARGUMENTS PASSED:
RETURN VALUE:
IMPORTANT NOTES:
==================================================================================================*/
static void Games_App_Menu_Enter(void)
{
MENU_Display_Items( gamesApp_data.menu,
gamesApp_data.menu->menu_entry_siz,
&gamesApp_data.menu_para );
}
/*==================================================================================================
FUNCTION: Games_App_Menu_Handler
DESCRIPTION:
ARGUMENTS PASSED:
RETURN VALUE:
IMPORTANT NOTES:
==================================================================================================*/
static void Games_App_Menu_Handler
(
OPUS_EVENT_ENUM_TYPE event,
void *pMess,
OP_BOOLEAN *handle
)
{
MENU_default_handler ( event, pMess, handle,
APP_GAMES,
&gamesApp_data.menu,
&gamesApp_data.menu_para,
&gamesApp_data.menuControl );
}
/*==================================================================================================
FUNCTION: CargadorProcess
DESCRIPTION:
ARGUMENTS PASSED:
RETURN VALUE:
IMPORTANT NOTES:
==================================================================================================*/
#ifdef GAMES_CARGADOR
static void CargadorProcess
(
OP_UINT32 select_item
)
{
switch(select_item)
{
case 0:
App_change_state( &gamesApp_data.app,
(APP_SUBSTATE_STRUCTURE_NAME_T *)&games_substate,
(OP_UINT8) APP_GAMES_CARGADOR_SELECT);
break;
case 1:
App_change_state( &gamesApp_data.app,
(APP_SUBSTATE_STRUCTURE_NAME_T *)&games_substate,
(OP_UINT8) APP_GAMES_CARGADOR_RESUME);
break;
case 2:
gamesApp_data.game_id=APP_GAMES_CARGADOR;
App_change_state( &gamesApp_data.app,
(APP_SUBSTATE_STRUCTURE_NAME_T *)&games_substate,
(OP_UINT8) APP_GAMES_HELP);
break;
default:
break;
}
}
#endif
/*==================================================================================================
FUNCTION: FallballProcess
DESCRIPTION:
ARGUMENTS PASSED:
RETURN VALUE:
IMPORTANT NOTES:
==================================================================================================*/
#ifdef GAMES_FALLBALL
static void FallballProcess
(
OP_UINT32 select_item
)
{
switch(select_item)
{
case 0:
App_change_state( &gamesApp_data.app,
(APP_SUBSTATE_STRUCTURE_NAME_T *)&games_substate,
(OP_UINT8) APP_GAMES_FALLBALL_ENTER);
break;
case 1:
gamesApp_data.game_id=APP_GAMES_FALLBALL;
App_change_state( &gamesApp_data.app,
(APP_SUBSTATE_STRUCTURE_NAME_T *)&games_substate,
(OP_UINT8) APP_GAMES_HELP);
break;
case 2:
gamesApp_data.game_id=APP_GAMES_FALLBALL;
App_change_state( &gamesApp_data.app,
(APP_SUBSTATE_STRUCTURE_NAME_T *)&games_substate,
(OP_UINT8) APP_GAMES_HIGHSCORE);
break;
default:
break;
}
}
#endif
/*==================================================================================================
FUNCTION: GopherProcess
DESCRIPTION:
ARGUMENTS PASSED:
RETURN VALUE:
IMPORTANT NOTES:
==================================================================================================*/
#ifdef GAMES_GOPHER
static void GopherProcess
(
OP_UINT32 select_item
)
{
switch(select_item)
{
case 0:
App_change_state( &gamesApp_data.app,
(APP_SUBSTATE_STRUCTURE_NAME_T *)&games_substate,
(OP_UINT8) APP_GAMES_GOPHER_ENTER);
break;
case 1:
gamesApp_data.game_id=APP_GAMES_GOPHER;
App_change_state( &gamesApp_data.app,
(APP_SUBSTATE_STRUCTURE_NAME_T *)&games_substate,
(OP_UINT8) APP_GAMES_HELP);
break;
case 2:
gamesApp_data.game_id=APP_GAMES_GOPHER;
App_change_state( &gamesApp_data.app,
(APP_SUBSTATE_STRUCTURE_NAME_T *)&games_substate,
(OP_UINT8) APP_GAMES_HIGHSCORE);
break;
default:
break;
}
}
#endif
/*==================================================================================================
FUNCTION: HuarongProcess
DESCRIPTION:
ARGUMENTS PASSED:
RETURN VALUE:
IMPORTANT NOTES:
==================================================================================================*/
#ifdef GAMES_HUARONG
static void HuarongProcess
(
OP_UINT32 select_item
)
{
switch (select_item)
{
case 0:
case 1:
case 2:
case 3:
gamesApp_data.select_item=select_item;
App_change_state( &gamesApp_data.app,
(APP_SUBSTATE_STRUCTURE_NAME_T *)&games_substate,
(OP_UINT8) APP_GAMES_HUARONG_ENTER);
break;
case 4:
gamesApp_data.game_id=APP_GAMES_HUARONG;
App_change_state( &gamesApp_data.app,
(APP_SUBSTATE_STRUCTURE_NAME_T *)&games_substate,
(OP_UINT8) APP_GAMES_HELP);
break;
/* case 5:
gamesApp_data.game_id=APP_GAMES_HUARONG;
App_change_state( &gamesApp_data.app,
(APP_SUBSTATE_STRUCTURE_NAME_T *)&games_substate,
(OP_UINT8) APP_GAMES_HIGHSCORE);
break; */
default:
break;
}
}
/*==================================================================================================
FUNCTION: HuarongHighscoreProcess
DESCRIPTION:
ARGUMENTS PASSED:
RETURN VALUE:
IMPORTANT NOTES:
==================================================================================================*/
static void HuarongHighscoreProcess
(
OP_UINT32 select_item
)
{
switch (select_item)
{
case 0:
gamesApp_data.game_id=APP_GAMES_HUARONG_MAP1;
break;
case 1:
gamesApp_data.game_id=APP_GAMES_HUARONG_MAP2;
break;
case 2:
gamesApp_data.game_id=APP_GAMES_HUARONG_MAP3;
break;
case 3:
gamesApp_data.game_id=APP_GAMES_HUARONG_MAP4;
break;
default:
break;
}
App_change_state( &gamesApp_data.app,
(APP_SUBSTATE_STRUCTURE_NAME_T *)&games_substate,
(OP_UINT8) APP_GAMES_HIGHSCORE);
}
#endif
/*==================================================================================================
FUNCTION: LightupProcess
DESCRIPTION:
ARGUMENTS PASSED:
RETURN VALUE:
IMPORTANT NOTES:
==================================================================================================*/
#ifdef GAMES_LIGHTUP
static void LightupProcess
(
OP_UINT32 select_item
)
{
switch (select_item)
{
case 0:
case 1:
case 2:
case 3:
gamesApp_data.select_item=select_item;
App_change_state( &gamesApp_data.app,
(APP_SUBSTATE_STRUCTURE_NAME_T *)&games_substate,
(OP_UINT8) APP_GAMES_LIGHTUP_ENTER);
break;
case 4:
gamesApp_data.game_id=APP_GAMES_LIGHTUP;
App_change_state( &gamesApp_data.app,
(APP_SUBSTATE_STRUCTURE_NAME_T *)&games_substate,
(OP_UINT8) APP_GAMES_HELP);
break;
default:
break;
}
}
/*==================================================================================================
FUNCTION: LightupHighscoreProcess
DESCRIPTION:
ARGUMENTS PASSED:
RETURN VALUE:
IMPORTANT NOTES:
==================================================================================================*/
static void LightupHighscoreProcess
(
OP_UINT32 select_item
)
{
switch (select_item)
{
case 0:
gamesApp_data.game_id=APP_GAMES_LIGHTUP_3;
break;
case 1:
gamesApp_data.game_id=APP_GAMES_LIGHTUP_4;
break;
case 2:
gamesApp_data.game_id=APP_GAMES_LIGHTUP_5;
break;
default:
break;
}
App_change_state( &gamesApp_data.app,
(APP_SUBSTATE_STRUCTURE_NAME_T *)&games_substate,
(OP_UINT8) APP_GAMES_HIGHSCORE);
}
#endif
/*==================================================================================================
FUNCTION: StarwarProcess
DESCRIPTION:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -