- Visual C++源码
- Visual Basic源码
- C++ Builder源码
- Java源码
- Delphi源码
- C/C++源码
- PHP源码
- Perl源码
- Python源码
- Asm源码
- Pascal源码
- Borland C++源码
- Others源码
- SQL源码
- VBScript源码
- JavaScript源码
- ASP/ASPX源码
- C#源码
- Flash/ActionScript源码
- matlab源码
- PowerBuilder源码
- LabView源码
- Flex源码
- MathCAD源码
- VBA源码
- IDL源码
- Lisp/Scheme源码
- VHDL源码
- Objective-C源码
- Fortran源码
- tcl/tk源码
- QT源码
UiGame.c
资源名称:SDK_M5661.rar [点击查看]
上传用户:hjhsjcl
上传日期:2020-09-25
资源大小:11378k
文件大小:23k
源码类别:
压缩解压
开发平台:
C++ Builder
- //===========================================================
- // Project Name(项目名称): Ali 5661
- // File Name(模块名称): uiGame.c
- // Built Date(创建日期):2006-03-20
- // Abstract(模块描述): 用户函数模块
- // Revision History(版本信息):
- // Rev Date Author Comment(修改说明)
- // 1.0 2006-04-03 Wind created
- //============================================================
- #define LCD_MAX_LENGTH 128
- #define LCD_MAX_HEIGHT 128
- #define PI 3.14159
- enum
- {
- SELECT_GAME_MENU=0,
- GAME_RUSSIAN,
- GAME_SNAKE,
- GAME_BOX,
- GAME_TANK,
- GAME_GOBANG,
- GAME_MAX
- };
- enum
- {
- MENU_GAME_RUSSIAN,
- MENU_GAME_SNAKE,
- MENU_GAME_BOX,
- MENU_GAME_TANK,
- MENU_GAME_GOBANG,
- MENU_GAME_MAX
- };
- enum
- {
- SELECT_GAME_OPTION_MENU=0,
- GAME_OPTION_START,
- GAME_OPTION_INTRODUCE,
- GAME_OPTION_SETUP,
- GAME_OPTION_HISTORY,
- GAME_OPTION_MAX
- };
- //extern API BYTE StrAsscii2Unicode(PBYTE pbHByte,PBYTE pbLByte);
- //extern void CSTN_SetWindow(unsigned char x0,unsigned char y0,unsigned char length,unsigned char hight) large;
- //code unsigned char mask[8]={0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01};
- XBYTE GameLevel_Russian=0;
- XBYTE GameLevel_Snake=0;
- XBYTE GameLevel_Box=0;
- //-----------jason_tang 061201----------
- XBYTE Gamelevel_Tank=0;
- XBYTE GameFlag; //=0,停止运行;=1,运行中;=2,试图退出;=3,游戏结束;
- XWORD GameRussianScore;
- XBYTE GameRussianHistoryLevel;
- XBYTE GameSnakeHistoryLevel;
- XBYTE GameBoxHistoryLevel;
- XBYTE GameTankHistoryLevel;
- XBYTE gc_GameName=0;
- XBYTE gxb_GameOption=0;
- XBYTE NowGameSelectMenu=0;
- XBYTE NowGameOptionSelectMenu=0;
- XBYTE gxbGameIntroducePage=1;
- #define RUSSIAN_INTRODUCE_TOTALEN_PAGE 4
- #define RUSSIAN_INTRODUCE_TOTALCN_PAGE 4
- #define RUSSIAN_INTRODUCE_TOTALTW_PAGE 4
- #define SNAKE_INTRODUCE_TOTALEN_PAGE 4
- #define SNAKE_INTRODUCE_TOTALCN_PAGE 3
- #define SNAKE_INTRODUCE_TOTALTW_PAGE 3
- #define BOXMAN_INTRODUCE_TOTALEN_PAGE 4
- #define BOXMAN_INTRODUCE_TOTALCN_PAGE 2
- #define BOXMAN_INTRODUCE_TOTALTW_PAGE 2
- #define TANK_INTRODUCE_TOTALEN_PAGE 4
- #define TANK_INTRODUCE_TOTALCN_PAGE 2
- #define TANK_INTRODUCE_TOTALTW_PAGE 2
- #define GOB_INTRODUCE_TOTALEN_PAGE 4
- #define GOB_INTRODUCE_TOTALCN_PAGE 2
- #define GOB_INTRODUCE_TOTALTW_PAGE 2
- CWORD cbRussianIntroStr[]=
- {
- SYS_STR_ITEM_GAME_INTRODUCE_R01,
- SYS_STR_ITEM_GAME_INTRODUCE_R02,
- SYS_STR_ITEM_GAME_INTRODUCE_R03,
- SYS_STR_ITEM_GAME_INTRODUCE_R04,
- SYS_STR_ITEM_GAME_INTRODUCE_R05,
- SYS_STR_ITEM_GAME_INTRODUCE_R06,
- SYS_STR_ITEM_GAME_INTRODUCE_R07,
- SYS_STR_ITEM_GAME_INTRODUCE_R08,
- SYS_STR_ITEM_GAME_INTRODUCE_R09,
- SYS_STR_ITEM_GAME_INTRODUCE_R10,
- SYS_STR_ITEM_GAME_INTRODUCE_R11,
- SYS_STR_ITEM_GAME_INTRODUCE_R12,
- SYS_STR_ITEM_GAME_INTRODUCE_R13,
- SYS_STR_ITEM_GAME_INTRODUCE_R14,
- SYS_STR_ITEM_GAME_INTRODUCE_R15,
- SYS_STR_ITEM_GAME_INTRODUCE_R16,
- SYS_STR_ITEM_GAME_INTRODUCE_R17,
- SYS_STR_ITEM_GAME_INTRODUCE_R18,
- SYS_STR_ITEM_GAME_INTRODUCE_R19,
- SYS_STR_ITEM_GAME_INTRODUCE_R20,
- SYS_STR_ITEM_GAME_INTRODUCE_R21,
- SYS_STR_ITEM_GAME_INTRODUCE_R22,
- SYS_STR_ITEM_GAME_INTRODUCE_R23,
- SYS_STR_ITEM_GAME_INTRODUCE_R24,
- };
- CWORD cwSnakeIntroStr[]=
- {
- SYS_STR_ITEM_GAME_INTRODUCE_S01,
- SYS_STR_ITEM_GAME_INTRODUCE_S02,
- SYS_STR_ITEM_GAME_INTRODUCE_S03,
- SYS_STR_ITEM_GAME_INTRODUCE_S04,
- SYS_STR_ITEM_GAME_INTRODUCE_S05,
- SYS_STR_ITEM_GAME_INTRODUCE_S06,
- SYS_STR_ITEM_GAME_INTRODUCE_S07,
- SYS_STR_ITEM_GAME_INTRODUCE_S08,
- SYS_STR_ITEM_GAME_INTRODUCE_S09,
- SYS_STR_ITEM_GAME_INTRODUCE_S10,
- SYS_STR_ITEM_GAME_INTRODUCE_S11,
- SYS_STR_ITEM_GAME_INTRODUCE_S12,
- SYS_STR_ITEM_GAME_INTRODUCE_S13,
- SYS_STR_ITEM_GAME_INTRODUCE_S14,
- SYS_STR_ITEM_GAME_INTRODUCE_S15,
- SYS_STR_ITEM_GAME_INTRODUCE_S16,
- SYS_STR_ITEM_GAME_INTRODUCE_S17,
- SYS_STR_ITEM_GAME_INTRODUCE_S18,
- SYS_STR_ITEM_GAME_INTRODUCE_S19,
- SYS_STR_ITEM_GAME_INTRODUCE_S20,
- SYS_STR_ITEM_GAME_INTRODUCE_S21,
- SYS_STR_ITEM_GAME_INTRODUCE_S22,
- SYS_STR_ITEM_GAME_INTRODUCE_S23,
- SYS_STR_ITEM_GAME_INTRODUCE_S24,
- SYS_STR_ITEM_GAME_INTRODUCE_S25,
- SYS_STR_ITEM_GAME_INTRODUCE_S26,
- SYS_STR_ITEM_GAME_INTRODUCE_S27,
- };
- CWORD cwBoxManIntroStr[]=
- {
- SYS_STR_ITEM_GAME_INTRODUCE_B01,
- SYS_STR_ITEM_GAME_INTRODUCE_B02,
- SYS_STR_ITEM_GAME_INTRODUCE_B03,
- SYS_STR_ITEM_GAME_INTRODUCE_B04,
- SYS_STR_ITEM_GAME_INTRODUCE_B05,
- SYS_STR_ITEM_GAME_INTRODUCE_B06,
- SYS_STR_ITEM_GAME_INTRODUCE_B07,
- SYS_STR_ITEM_GAME_INTRODUCE_B08,
- SYS_STR_ITEM_GAME_INTRODUCE_B09,
- SYS_STR_ITEM_GAME_INTRODUCE_B10,
- SYS_STR_ITEM_GAME_INTRODUCE_B11,
- SYS_STR_ITEM_GAME_INTRODUCE_B12,
- SYS_STR_ITEM_GAME_INTRODUCE_B13,
- SYS_STR_ITEM_GAME_INTRODUCE_B14,
- SYS_STR_ITEM_GAME_INTRODUCE_B15,
- SYS_STR_ITEM_GAME_INTRODUCE_B16,
- SYS_STR_ITEM_GAME_INTRODUCE_B17,
- SYS_STR_ITEM_GAME_INTRODUCE_B18,
- SYS_STR_ITEM_GAME_INTRODUCE_B19,
- SYS_STR_ITEM_GAME_INTRODUCE_B20,
- SYS_STR_ITEM_GAME_INTRODUCE_B21,
- SYS_STR_ITEM_GAME_INTRODUCE_B22,
- };
- CWORD cwTankIntroStr[]=
- {
- SYS_STR_ITEM_GAME_INTRODUCE_T01,
- SYS_STR_ITEM_GAME_INTRODUCE_T02,
- SYS_STR_ITEM_GAME_INTRODUCE_T03,
- SYS_STR_ITEM_GAME_INTRODUCE_T04,
- SYS_STR_ITEM_GAME_INTRODUCE_T05,
- SYS_STR_ITEM_GAME_INTRODUCE_T06,
- SYS_STR_ITEM_GAME_INTRODUCE_T07,
- SYS_STR_ITEM_GAME_INTRODUCE_T08,
- SYS_STR_ITEM_GAME_INTRODUCE_T09,
- SYS_STR_ITEM_GAME_INTRODUCE_T10,
- SYS_STR_ITEM_GAME_INTRODUCE_T11,
- SYS_STR_ITEM_GAME_INTRODUCE_T12,
- SYS_STR_ITEM_GAME_INTRODUCE_T13,
- SYS_STR_ITEM_GAME_INTRODUCE_T14,
- SYS_STR_ITEM_GAME_INTRODUCE_T15,
- SYS_STR_ITEM_GAME_INTRODUCE_T16,
- SYS_STR_ITEM_GAME_INTRODUCE_T17,
- SYS_STR_ITEM_GAME_INTRODUCE_T18,
- SYS_STR_ITEM_GAME_INTRODUCE_T19,
- SYS_STR_ITEM_GAME_INTRODUCE_T20,
- SYS_STR_ITEM_GAME_INTRODUCE_T21,
- SYS_STR_ITEM_GAME_INTRODUCE_T22,
- };
- CWORD cwGoBIntroStr[]=
- {
- SYS_STR_ITEM_GAME_INTRODUCE_G01,
- SYS_STR_ITEM_GAME_INTRODUCE_G02,
- SYS_STR_ITEM_GAME_INTRODUCE_G03,
- SYS_STR_ITEM_GAME_INTRODUCE_G04,
- SYS_STR_ITEM_GAME_INTRODUCE_G05,
- SYS_STR_ITEM_GAME_INTRODUCE_G06,
- SYS_STR_ITEM_GAME_INTRODUCE_G07,
- SYS_STR_ITEM_GAME_INTRODUCE_G08,
- SYS_STR_ITEM_GAME_INTRODUCE_G09,
- SYS_STR_ITEM_GAME_INTRODUCE_G10,
- SYS_STR_ITEM_GAME_INTRODUCE_G11,
- SYS_STR_ITEM_GAME_INTRODUCE_G12,
- SYS_STR_ITEM_GAME_INTRODUCE_G13,
- SYS_STR_ITEM_GAME_INTRODUCE_G14,
- SYS_STR_ITEM_GAME_INTRODUCE_G15,
- SYS_STR_ITEM_GAME_INTRODUCE_G16,
- SYS_STR_ITEM_GAME_INTRODUCE_G17,
- SYS_STR_ITEM_GAME_INTRODUCE_G18,
- SYS_STR_ITEM_GAME_INTRODUCE_G19,
- SYS_STR_ITEM_GAME_INTRODUCE_G20,
- SYS_STR_ITEM_GAME_INTRODUCE_G21,
- SYS_STR_ITEM_GAME_INTRODUCE_G22,
- SYS_STR_ITEM_GAME_INTRODUCE_G23,
- SYS_STR_ITEM_GAME_INTRODUCE_G24,
- SYS_STR_ITEM_GAME_INTRODUCE_G25,
- SYS_STR_ITEM_GAME_INTRODUCE_G26,
- };
- void GameShowNumber(WORD bNumber,BYTE bColStart,BYTE bRowStart) large
- {
- if(bNumber<=9)
- {
- OledShowIconNew(2,IM_TIME_NUMBER_0+ bNumber*(IM_TIME_NUMBER_1-IM_TIME_NUMBER_0),bColStart,bRowStart); //TONY061229
- OledShowIconNew(2,IM_TIME_NUMBER_0,bColStart-8,bRowStart);
- }
- else if((bNumber>9)&&(bNumber<=99))
- {
- OledShowIconNew(2,IM_TIME_NUMBER_0+( bNumber%10)*23,bColStart,bRowStart);
- OledShowIconNew(2,IM_TIME_NUMBER_0+( bNumber/10)*23,bColStart-8,bRowStart);
- }
- else if((bNumber>99)&&(bNumber<=999))
- {
- OledShowIconNew(2,IM_TIME_NUMBER_0+( bNumber%10)*23,bColStart,bRowStart);
- OledShowIconNew(2,IM_TIME_NUMBER_0+(( bNumber%100)/10)*23,bColStart-8,bRowStart);
- OledShowIconNew(2,IM_TIME_NUMBER_0+( bNumber/100)*23,bColStart-16,bRowStart);
- }
- else if((bNumber>999)&&(bNumber<=9999))
- {
- OledShowIconNew(2,IM_TIME_NUMBER_0+( bNumber%10)*23,bColStart,bRowStart);
- OledShowIconNew(2,IM_TIME_NUMBER_0+( ( bNumber%100)/10)*23,bColStart-8,bRowStart);
- OledShowIconNew(2,IM_TIME_NUMBER_0+( ( bNumber%1000)/100)*23,bColStart-16,bRowStart);
- OledShowIconNew(2,IM_TIME_NUMBER_0+( bNumber/1000)*23,bColStart-24,bRowStart);
- }
- else if((bNumber>9999)&&(bNumber<=99999))
- {
- OledShowIconNew(2,IM_TIME_NUMBER_0+( bNumber%10)*23,bColStart,bRowStart);
- OledShowIconNew(2,IM_TIME_NUMBER_0+( ( bNumber%100)/10)*23,bColStart-8,bRowStart);
- OledShowIconNew(2,IM_TIME_NUMBER_0+( ( bNumber%1000)/100)*23,bColStart-16,bRowStart);
- OledShowIconNew(2,IM_TIME_NUMBER_0+( ( bNumber%10000)/1000)*23,bColStart-24,bRowStart);
- OledShowIconNew(2,IM_TIME_NUMBER_0+( bNumber/10000)*23,bColStart-32,bRowStart);
- }
- }
- #define OledShowIcon_new OledShowIcon
- void Exe_Select_Game_Option(BYTE Key_Value) large;
- void ShowGameMenuSelect(unsigned char cNowGameSelectMenu) large
- {
- switch(cNowGameSelectMenu)
- {
- case MENU_GAME_RUSSIAN:
- OledShowIconNew(6,IM_GAME_BUTTON_01_SELECT,2,SYS_STRING_ROW-1);
- break;
- case MENU_GAME_SNAKE:
- OledShowIconNew(6,IM_GAME_BUTTON_01_SELECT,2,SYS_STRING_ROW+SYS_STRING_ROW_OFF-1);
- break;
- case MENU_GAME_BOX:
- OledShowIconNew(6,IM_GAME_BUTTON_01_SELECT,2,SYS_STRING_ROW+SYS_STRING_ROW_OFF*2-1);
- break;
- case MENU_GAME_TANK:
- OledShowIconNew(6,IM_GAME_BUTTON_01_SELECT,2,SYS_STRING_ROW+SYS_STRING_ROW_OFF*3-1);
- break;
- case MENU_GAME_GOBANG:
- OledShowIconNew(6,IM_GAME_BUTTON_01_SELECT,2,SYS_STRING_ROW+SYS_STRING_ROW_OFF*4-1);
- break;
- default:
- break;
- }
- StrShowSysString(SYS_STR_ITEM_GAME_STR_TANK,SYS_STRING_COL,SYS_STRING_ROW+SYS_STRING_ROW_OFF*3);
- StrShowSysString(SYS_STR_ITEM_GAME_STR_GOBANG,SYS_STRING_COL,SYS_STRING_ROW+SYS_STRING_ROW_OFF*4);
- StrShowSysString(SYS_STR_ITEM_GAME_STR_RUSSIAN,SYS_STRING_COL,SYS_STRING_ROW);
- StrShowSysString(SYS_STR_ITEM_GAME_STR_SNAKE,SYS_STRING_COL,SYS_STRING_ROW+SYS_STRING_ROW_OFF);
- StrShowSysString(SYS_STR_ITEM_GAME_STR_BOX,SYS_STRING_COL,SYS_STRING_ROW+SYS_STRING_ROW_OFF*2);
- }
- void ShowGameMenuUnSelect(unsigned char cNowGameSelectMenu) large
- {
- switch(cNowGameSelectMenu)
- {
- case MENU_GAME_RUSSIAN:
- OledShowIconNew(6,IM_GAME_BUTTON_01_UNSELECT,0,SYS_STRING_ROW-1);
- // StrShowSysString(SYS_STR_ITEM_GAME_STR_RUSSIAN,SYS_STRING_COL,SYS_STRING_ROW);
- break;
- case MENU_GAME_SNAKE:
- OledShowIconNew(6,IM_GAME_BUTTON_01_UNSELECT,0,SYS_STRING_ROW+SYS_STRING_ROW_OFF-1);
- // StrShowSysString(SYS_STR_ITEM_GAME_STR_SNAKE,SYS_STRING_COL,SYS_STRING_ROW+SYS_STRING_ROW_OFF);
- break;
- case MENU_GAME_BOX:
- OledShowIconNew(6,IM_GAME_BUTTON_01_UNSELECT,0,SYS_STRING_ROW+SYS_STRING_ROW_OFF*2-1);
- // StrShowSysString(SYS_STR_ITEM_GAME_STR_BOX,SYS_STRING_COL,SYS_STRING_ROW+SYS_STRING_ROW_OFF*2);
- break;
- case MENU_GAME_TANK:
- OledShowIconNew(6,IM_GAME_BUTTON_01_UNSELECT,0,SYS_STRING_ROW+SYS_STRING_ROW_OFF*3-1);
- // OledShowIconNew(6,SYS_STR_ITEM_GAME_STR_TANK,SYS_STRING_COL,SYS_STRING_ROW+SYS_STRING_ROW_OFF*3);
- break;
- case MENU_GAME_GOBANG:
- OledShowIconNew(6,IM_GAME_BUTTON_01_UNSELECT,0,SYS_STRING_ROW+SYS_STRING_ROW_OFF*4-1);
- // OledShowIconNew(6,SYS_STR_ITEM_GAME_STR_GOBANG,SYS_STRING_COL,SYS_STRING_ROW+SYS_STRING_ROW_OFF*4);
- break;
- default:
- break;
- }
- }
- void InitGameMode()
- {
- NandPrivateEn();
- FsRead(SAVE_SETTING_NAND_ADD,1,FS_DATA_0_0);
- GameRussianHistoryLevel=gxbFsData[SRAM_GAME_LEVEL_RUSSIAN];
- GameSnakeHistoryLevel=gxbFsData[SRAM_GAME_LEVEL_SNAKE];
- GameBoxHistoryLevel=gxbFsData[SRAM_GAME_LEVEL_BOXMAN];
- GameTankHistoryLevel=gxbFsData[SRAM_GAME_LEVEL_TANK];
- // WriteSettingData(FS_DATA_0_0);
- NandPrivateDis();
- NandFinishJob();
- OledShowIconNew(6,IM_GAME_ABOUT_BG_01,0,0);
- /*显示总画面*/
- //ShowGameMenu();
- /*显示选中画面*/
- NowGameSelectMenu=NowGameSelectMenu%MENU_GAME_MAX;
- ShowGameMenuSelect(NowGameSelectMenu);
- gc_GameName=0;/*进入SELECT_GAME_MENU选项*/
- GameFlag=0;
- }
- void ShowGameOptionMenu() large
- {
- NowGameOptionSelectMenu=NowGameOptionSelectMenu%GAME_OPTION_MAX;
- if(gc_GameName != GAME_GOBANG )
- {
- OledShowIconNew(6,IM_GAME_BUTTON_01_SELECT, 4,SYS_STRING_ROW+NowGameOptionSelectMenu*SYS_STRING_ROW_OFF-1);
- StrShowSysString(SYS_STR_ITEM_GAME_STR_START,SYS_STRING_COL,SYS_STRING_ROW);
- StrShowSysString(SYS_STR_ITEM_GAME_STR_INTRO,SYS_STRING_COL,SYS_STRING_ROW+SYS_STRING_ROW_OFF*1);
- StrShowSysString(SYS_STR_ITEM_GAME_STR_SETUP,SYS_STRING_COL,SYS_STRING_ROW+SYS_STRING_ROW_OFF*2);
- StrShowSysString(SYS_STR_ITEM_GAME_STR_HISTORY,SYS_STRING_COL,SYS_STRING_ROW+SYS_STRING_ROW_OFF*3);
- }
- else
- {
- StrShowSysString(SYS_STR_ITEM_GAME_STR_START,SYS_STRING_COL,SYS_STRING_ROW);
- StrShowSysString(SYS_STR_ITEM_GAME_STR_INTRO,SYS_STRING_COL,SYS_STRING_ROW+SYS_STRING_ROW_OFF*1);
- }
- }
- void ShowGameOptionSelect(unsigned char cNowGameOptionSelectMenu) large
- {
- cNowGameOptionSelectMenu++;
- switch(cNowGameOptionSelectMenu)
- {
- case GAME_OPTION_START:
- OledShowIconNew(6,IM_GAME_BUTTON_01_SELECT, 2,SYS_STRING_ROW-1);
- StrShowSysString(SYS_STR_ITEM_GAME_STR_START,SYS_STRING_COL,SYS_STRING_ROW);
- break;
- case GAME_OPTION_INTRODUCE:
- OledShowIconNew(6,IM_GAME_BUTTON_01_SELECT, 2,SYS_STRING_ROW+SYS_STRING_ROW_OFF-1);
- StrShowSysString(SYS_STR_ITEM_GAME_STR_INTRO,SYS_STRING_COL,SYS_STRING_ROW+SYS_STRING_ROW_OFF);
- break;
- case GAME_OPTION_SETUP:
- OledShowIconNew(6,IM_GAME_BUTTON_01_SELECT, 2,SYS_STRING_ROW+SYS_STRING_ROW_OFF*2-1);
- StrShowSysString(SYS_STR_ITEM_GAME_STR_SETUP,SYS_STRING_COL,SYS_STRING_ROW+SYS_STRING_ROW_OFF*2);
- break;
- case GAME_OPTION_HISTORY:
- OledShowIconNew(6,IM_GAME_BUTTON_01_SELECT, 2,SYS_STRING_ROW+SYS_STRING_ROW_OFF*3-1);
- StrShowSysString(SYS_STR_ITEM_GAME_STR_HISTORY,SYS_STRING_COL,SYS_STRING_ROW+SYS_STRING_ROW_OFF*3);
- break;
- default:
- break;
- }
- }
- void ShowGameOptionUnSelect(unsigned char cNowGameOptionSelectMenu) large
- {
- cNowGameOptionSelectMenu++;
- switch(cNowGameOptionSelectMenu)
- {
- case GAME_OPTION_START:
- OledShowIconNew(6,IM_GAME_BUTTON_01_UNSELECT,0,SYS_STRING_ROW-1);
- StrShowSysString(SYS_STR_ITEM_GAME_STR_START,SYS_STRING_COL,SYS_STRING_ROW);
- break;
- case GAME_OPTION_INTRODUCE:
- OledShowIconNew(6,IM_GAME_BUTTON_01_UNSELECT,0,SYS_STRING_ROW+SYS_STRING_ROW_OFF-1);
- StrShowSysString(SYS_STR_ITEM_GAME_STR_INTRO,SYS_STRING_COL,SYS_STRING_ROW+SYS_STRING_ROW_OFF);
- break;
- case GAME_OPTION_SETUP:
- OledShowIconNew(6,IM_GAME_BUTTON_01_UNSELECT,0,SYS_STRING_ROW+SYS_STRING_ROW_OFF*2-1);
- StrShowSysString(SYS_STR_ITEM_GAME_STR_SETUP,SYS_STRING_COL,SYS_STRING_ROW+SYS_STRING_ROW_OFF*2);
- break;
- case GAME_OPTION_HISTORY:
- OledShowIconNew(6,IM_GAME_BUTTON_01_UNSELECT,0,SYS_STRING_ROW+SYS_STRING_ROW_OFF*3-1);
- StrShowSysString(SYS_STR_ITEM_GAME_STR_HISTORY,SYS_STRING_COL,SYS_STRING_ROW+SYS_STRING_ROW_OFF*3);
- break;
- default:
- break;
- }
- }
- void InitGameOptionMode()
- {
- OledShowIconNew(6,IM_GAME_ABOUT_BG_01,0,0);
- /*显示总画面*/
- ShowGameOptionMenu();
- /*显示选中画面*/
- if(gc_GameName != GAME_GOBANG )
- {
- NowGameOptionSelectMenu=NowGameOptionSelectMenu%GAME_OPTION_MAX;
- }
- else
- {
- NowGameOptionSelectMenu=0;
- }
- ShowGameOptionSelect(NowGameOptionSelectMenu);
- gxb_GameOption=0;/*进入SELECT_GAME_Option选项*/
- }
- void IntroduceGameRussian() large
- {
- XBYTE bI;
- gxbGameIntroducePage=1;
- for(bI=0;bI<7;bI++)
- StrShowSysString(cbRussianIntroStr[bI],SYS_OPOION_COL,bI*16+SYS_OPOION_ROW);
- }
- void IntroduceGameSnake()
- {
- XBYTE bI;
- gxbGameIntroducePage=1;
- for(bI=0;bI<7;bI++)
- StrShowSysString(cwSnakeIntroStr[bI],SYS_OPOION_COL,bI*16+SYS_OPOION_ROW);
- }
- void IntroduceGameBox()
- {
- XBYTE bI;
- gxbGameIntroducePage=1;
- for(bI=0;bI<7;bI++)
- StrShowSysString(cwBoxManIntroStr[bI],SYS_OPOION_COL,bI*16+SYS_OPOION_ROW);
- }
- void IntroduceGameTank()
- {
- XBYTE bI;
- gxbGameIntroducePage=1;
- for(bI=0;bI<7;bI++)
- StrShowSysString(cwTankIntroStr[bI],SYS_OPOION_COL,bI*16+SYS_OPOION_ROW);
- }
- void IntroduceGameGoB()
- {
- XBYTE bI;
- gxbGameIntroducePage=1;
- for(bI=0;bI<7;bI++)
- StrShowSysString(cwGoBIntroStr[bI],SYS_OPOION_COL,bI*16+SYS_OPOION_ROW);
- }
- void SetupGameRussian()
- {
- }
- void SetupGameSnake()
- {
- }
- void SetupGameBox()
- {
- }
- void HistoryRussian()
- {
- // BYTE bI,bN;
- StrShowSysString(SYS_STR_GAME_HIGHEST_SCORE,LCD_AUTO_CENTER_COL,50);
- // for(bI=0;bI<5;bI++)
- // {
- // if(bI)
- // bN=(GameRussianHistoryLevel/(10*bI))%10;
- // else
- // bN=GameRussianHistoryLevel%10;
- GameShowNumber(GameRussianHistoryLevel,76,100);
- // }
- }
- void HistorySnake()
- {
- // BYTE bI,bN;
- StrShowSysString(SYS_STR_GAME_HIGHEST_SCORE,LCD_AUTO_CENTER_COL,50);
- // for(bI=0;bI<5;bI++)
- // {
- // if(bI)
- // bN=(GameSnakeHistoryLevel/(10*bI))%10;
- // else
- // bN=GameSnakeHistoryLevel%10;
- GameShowNumber(GameSnakeHistoryLevel,76,100);
- // }
- }
- void HistoryBox()
- {
- // BYTE bI,bN;
- StrShowSysString(SYS_STR_GAME_HIGHEST_SCORE,LCD_AUTO_CENTER_COL,50);
- // for(bI=0;bI<5;bI++)
- // {
- // if(bI)
- // bN=(GameBoxHistoryLevel/(10*bI))%10;
- // else
- // bN=GameBoxHistoryLevel%10;
- GameShowNumber(GameBoxHistoryLevel,76,80);
- // }
- }
- void HistoryTank()
- {
- // BYTE bI,bN;
- StrShowSysString(SYS_STR_GAME_HIGHEST_SCORE,LCD_AUTO_CENTER_COL,50);
- // for(bI=0;bI<5;bI++)
- // {
- // if(bI)
- // bN=(GameTankHistoryLevel/(10*bI))%10;
- // else
- // bN=GameTankHistoryLevel%10;
- GameShowNumber(GameTankHistoryLevel,76,80);
- // }
- }
- void HistoryGoB()
- {
- return;
- }
- #include "Game_Russian.C"
- #include "Game_Snake.C"
- #include "Game_Box.C"
- #include "Game_Tank.C"
- #include "Game_Gobang.C"
- //#include "Game_Bubble.C"
- void InitThisGame()
- {
- switch(gc_GameName)
- {
- case GAME_RUSSIAN:
- InitGameRussian();
- break;
- case GAME_SNAKE:
- InitGameSnake();
- break;
- case GAME_BOX:
- InitGameBox();
- break;
- case GAME_TANK:
- InitGameTank();
- break;
- case GAME_GOBANG:
- InitGameGobang();
- default:
- break;
- }
- }
- void IntroduceThisGame()
- {
- OledShowIconNew(6,IM_GAME_ABOUT_BG_01,0,0);
- gxbGameIntroducePage=1;
- switch(gc_GameName)
- {
- case GAME_RUSSIAN:
- IntroduceGameRussian();
- break;
- case GAME_SNAKE:
- IntroduceGameSnake();
- break;
- case GAME_BOX:
- IntroduceGameBox();
- break;
- case GAME_TANK:
- IntroduceGameTank();
- break;
- case GAME_GOBANG:
- IntroduceGameGoB();
- break;
- default:
- break;
- }
- }
- void SetupThisGame()
- {
- // BYTE bN;
- OledShowIconNew(6,IM_GAME_ABOUT_BG_01,0,0);
- //StrShowString("Game Level",24,32,10);
- StrShowSysString(SYS_STR_GAME_LEVEL,LCD_AUTO_CENTER_COL,48);
- switch(gc_GameName)
- {
- case GAME_RUSSIAN:
- GameLevel_Russian=GameLevel_Russian;
- GameShowNumber(GameLevel_Russian,GAME_LV_COL,GAME_LV_ROW);
- break;
- case GAME_SNAKE:
- GameLevel_Snake=GameLevel_Snake;
- GameShowNumber(GameLevel_Snake,GAME_LV_COL,GAME_LV_ROW);
- break;
- case GAME_BOX:
- // GameLevel_Box=GameLevel_Box%50;
- GameShowNumber(GameLevel_Box,GAME_LV_COL,GAME_LV_ROW);
- break;
- case GAME_TANK:
- Gamelevel_Tank=Gamelevel_Tank;
- GameShowNumber(Gamelevel_Tank,GAME_LV_COL,GAME_LV_ROW);
- break;
- case GAME_GOBANG:
- break;
- default:
- break;
- }
- }
- void HistoryThisGame()
- {
- OledShowIconNew(6,IM_GAME_ABOUT_BG_01,0,0);
- switch(gc_GameName)
- {
- case GAME_RUSSIAN:
- HistoryRussian();
- break;
- case GAME_SNAKE:
- HistorySnake();
- break;
- case GAME_BOX:
- HistoryBox();
- break;
- case GAME_TANK:
- HistoryTank();
- break;
- case GAME_GOBANG:
- HistoryGoB();
- break;
- default:
- break;
- }
- }
- void Exe_Select_Game_Menu(BYTE Key_Value) large
- {
- switch(Key_Value)
- {
- #if 0
- case LONG_KEY_MODE_EVENT:
- gc_MainBlock_States=MAIN_FUNCTION_MAINMENU;
- InitMainFunction();
- break;
- #endif
- case KEY_UP_BREAK:
- gc_GameName=NowGameSelectMenu+1;
- gxb_GameOption=0;
- InitGameOptionMode();
- break;
- case KEY_LEFT_BREAK:
- //case KEY_VOL_UP_BREAK:
- case KEY_LEFT_LONG:
- //case KEY_VOL_UP_LONG:
- /*清除上一次选中画面*/
- ShowGameMenuUnSelect(NowGameSelectMenu);
- if(NowGameSelectMenu)
- {
- NowGameSelectMenu--;
- }
- else
- {
- NowGameSelectMenu=MENU_GAME_MAX-1;
- }
- /*显示选中画面*/
- ShowGameMenuSelect(NowGameSelectMenu);
- break;
- case KEY_RIGHT_BREAK:
- //case KEY_VOL_DOWN_BREAK:
- case KEY_RIGHT_LONG:
- //case KEY_VOL_DOWN_LONG:
- /*清除上一次选中画面*/
- ShowGameMenuUnSelect(NowGameSelectMenu);
- if(NowGameSelectMenu<MENU_GAME_MAX-1)
- {
- NowGameSelectMenu++;
- }
- else
- {
- NowGameSelectMenu=0;
- }
- /*显示选中画面*/
- ShowGameMenuSelect(NowGameSelectMenu);
- break;
- case KEY_FUNC_BREAK: //tne 2007/01/13 #1
- gxbSettingBuffer[SETTING_CURRENT_MODE]=SAVE_AND_PLAY; //vicky060302#1
- gxbSettingBuffer[SETTING_NEXT_MODE]=SAVE_AND_SEL_MODE;
- gxbSettingBuffer[SETTING_DISPLAY_SWAPING]=TRUE;
- gxbLastErrCode=ERR_NO_ERROR;
- SaveSetting();
- break;
- default:
- break;
- }
- }
- void Exe_Select_Game_Option(BYTE Key_Value) large
- {
- switch(Key_Value)
- {
- // case KEY_MODE_BREAK:
- case KEY_FUNC_BREAK:
- InitGameMode();
- break;
- case KEY_UP_BREAK:
- gxb_GameOption=NowGameOptionSelectMenu+1;
- if(gxb_GameOption==GAME_OPTION_START)
- {//开始游戏
- InitThisGame();
- }
- else if(gxb_GameOption==GAME_OPTION_INTRODUCE)
- {//介绍游戏
- IntroduceThisGame();
- }
- else if(gxb_GameOption==GAME_OPTION_SETUP)
- {//设置游戏
- SetupThisGame();
- }
- else
- {//历史记录
- HistoryThisGame();
- }
- break;
- case KEY_LEFT_BREAK:
- //case KEY_VOL_UP_BREAK: //test now, please check it...
- case KEY_LEFT_LONG:
- //case KEY_VOL_UP_LONG:
- /*清除上一次选中画面*/
- if(gc_GameName != GAME_GOBANG )
- {
- ShowGameOptionUnSelect(NowGameOptionSelectMenu);
- if(NowGameOptionSelectMenu)
- {
- NowGameOptionSelectMenu--;
- }
- else
- {
- NowGameOptionSelectMenu=3;
- }
- }
- else
- {
- ShowGameOptionUnSelect(NowGameOptionSelectMenu);
- if(NowGameOptionSelectMenu)
- {
- NowGameOptionSelectMenu--;
- }
- else
- {
- NowGameOptionSelectMenu=1;
- }
- }
- /*显示选中画面*/
- ShowGameOptionSelect(NowGameOptionSelectMenu);
- break;
- case KEY_RIGHT_BREAK:
- case KEY_VOL_DOWN_BREAK:
- case KEY_RIGHT_LONG:
- case KEY_VOL_DOWN_LONG:
- if(gc_GameName != GAME_GOBANG )
- {
- /*清除上一次选中画面*/
- ShowGameOptionUnSelect(NowGameOptionSelectMenu);
- if(NowGameOptionSelectMenu<3)
- {
- NowGameOptionSelectMenu++;
- }
- else
- {
- NowGameOptionSelectMenu=0;
- }
- /*显示选中画面*/
- ShowGameOptionSelect(NowGameOptionSelectMenu);
- }
- else
- {
- ShowGameOptionUnSelect(NowGameOptionSelectMenu);
- if(NowGameOptionSelectMenu<1)
- {
- NowGameOptionSelectMenu++;
- }
- else
- {
- NowGameOptionSelectMenu=0;
- }
- /*显示选中画面*/
- ShowGameOptionSelect(NowGameOptionSelectMenu);
- }
- break;
- default:
- break;
- }
- }
- void Game_KeyDown(BYTE Key_Value) large
- {
- if(Key_Value)
- {
- switch(gc_GameName)
- {
- case SELECT_GAME_MENU:
- Exe_Select_Game_Menu(Key_Value);
- break;
- case GAME_RUSSIAN:
- Exe_Game_Russian(Key_Value);
- break;
- case GAME_SNAKE:
- Exe_Game_Snake(Key_Value);
- break;
- case GAME_BOX:
- Exe_Game_Box(Key_Value);
- break;
- case GAME_TANK:
- Exe_Game_Tank(Key_Value);
- break;
- case GAME_GOBANG:
- Exe_Game_Gobang(Key_Value);
- break;
- default:
- break;
- }
- }
- }
- void Game_TimerOut()
- {
- switch(gc_GameName)
- {
- case GAME_RUSSIAN:
- Exe_Russian_TimerOut();
- break;
- case GAME_SNAKE:
- Exe_Snake_TimerOut();
- break;
- case GAME_TANK:
- Exe_Tank_TimerOut();
- break;
- case GAME_GOBANG:
- Exe_Gobang_Timerout();
- default:
- break;
- }
- }