- 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源码
Game_Russian.c
资源名称:SDK_M5661.rar [点击查看]
上传用户:hjhsjcl
上传日期:2020-09-25
资源大小:11378k
文件大小:17k
源码类别:
压缩解压
开发平台:
C++ Builder
- #define NUMBERBLOCKOFLINE 16
- #define NUMBERBLOCKOFROW 10
- #define GAME_LEV_NUMB_COL 96
- #define GAME_LEV_NUM_ROW 40
- #define GAME_SCO_NUM_COL 116
- #define GAME_SCO_NUM_ROW 110
- XBYTE SharpType,SharpStatus,New_SharpType,New_SharpStatus;
- XBYTE Russia_A,Russia_B;
- XBYTE MappingTable[NUMBERBLOCKOFLINE+2][NUMBERBLOCKOFROW+4];
- XBYTE gc_GameTimer;
- XBYTE gc_AttemptExit=0;
- XBYTE gc_GameIntrduceNowPage;
- XBYTE gc_GameIntrduceTotalPage;
- void InitGameRussian() large;
- /*=================================================
- Russian
- ==================================================*/
- code unsigned char GameSpeed[10]={30,27,24,21,18,15,12,9,6,3};
- code unsigned char CellBlockOn[]={0xff,0x81,0xbd,0xa5,0xa5,0xbd,0x81,0xff};
- code unsigned char CellBlockOff[]={0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00};
- code unsigned char RussiaM[7][4][4][4]={
- {
- {{0,1,1,0},{0,1,1,0},{0,0,0,0},{0,0,0,0}},
- {{0,1,1,0},{0,1,1,0},{0,0,0,0},{0,0,0,0}},
- {{0,1,1,0},{0,1,1,0},{0,0,0,0},{0,0,0,0}},
- {{0,1,1,0},{0,1,1,0},{0,0,0,0},{0,0,0,0}},
- },
- {
- {{0,0,0,0},{1,1,1,1},{0,0,0,0},{0,0,0,0}},
- {{0,0,1,0},{0,0,1,0},{0,0,1,0},{0,0,1,0}},
- {{0,0,0,0},{1,1,1,1},{0,0,0,0},{0,0,0,0}},
- {{0,0,1,0},{0,0,1,0},{0,0,1,0},{0,0,1,0}},
- },
- {
- {{0,1,0,0},{1,1,1,0},{0,0,0,0},{0,0,0,0}},
- {{0,1,0,0},{0,1,1,0},{0,1,0,0},{0,0,0,0}},
- {{0,0,0,0},{1,1,1,0},{0,1,0,0},{0,0,0,0}},
- {{0,1,0,0},{1,1,0,0},{0,1,0,0},{0,0,0,0}},
- },
- {
- {{1,0,0,0},{1,1,0,0},{0,1,0,0},{0,0,0,0}},
- {{0,0,0,0},{0,1,1,0},{1,1,0,0},{0,0,0,0}},
- {{1,0,0,0},{1,1,0,0},{0,1,0,0},{0,0,0,0}},
- {{0,0,0,0},{0,1,1,0},{1,1,0,0},{0,0,0,0}},
- },
- {
- {{0,1,0,0},{1,1,0,0},{1,0,0,0},{0,0,0,0}},
- {{0,0,0,0},{1,1,0,0},{0,1,1,0},{0,0,0,0}},
- {{0,1,0,0},{1,1,0,0},{1,0,0,0},{0,0,0,0}},
- {{0,0,0,0},{1,1,0,0},{0,1,1,0},{0,0,0,0}},
- },
- {
- {{1,0,0,0},{1,0,0,0},{1,1,0,0},{0,0,0,0}},
- {{0,0,0,0},{1,1,1,0},{1,0,0,0},{0,0,0,0}},
- {{1,1,0,0},{0,1,0,0},{0,1,0,0},{0,0,0,0}},
- {{0,0,0,0},{0,0,1,0},{1,1,1,0},{0,0,0,0}},
- },
- {
- {{0,1,0,0},{0,1,0,0},{1,1,0,0},{0,0,0,0}},
- {{0,0,0,0},{1,0,0,0},{1,1,1,0},{0,0,0,0}},
- {{1,1,0,0},{1,0,0,0},{1,0,0,0},{0,0,0,0}},
- {{0,0,0,0},{1,1,1,0},{0,0,1,0},{0,0,0,0}},
- },
- };
- code unsigned char MappingTableMask[NUMBERBLOCKOFLINE+2][NUMBERBLOCKOFROW+4]={
- {1,1,0,0,0,0,0,0,0,0,0,0,1,1},
- {1,1,0,0,0,0,0,0,0,0,0,0,1,1},
- {1,1,0,0,0,0,0,0,0,0,0,0,1,1},
- {1,1,0,0,0,0,0,0,0,0,0,0,1,1},
- {1,1,0,0,0,0,0,0,0,0,0,0,1,1},
- {1,1,0,0,0,0,0,0,0,0,0,0,1,1},
- {1,1,0,0,0,0,0,0,0,0,0,0,1,1},
- {1,1,0,0,0,0,0,0,0,0,0,0,1,1},
- {1,1,0,0,0,0,0,0,0,0,0,0,1,1},
- {1,1,0,0,0,0,0,0,0,0,0,0,1,1},
- {1,1,0,0,0,0,0,0,0,0,0,0,1,1},
- {1,1,0,0,0,0,0,0,0,0,0,0,1,1},
- {1,1,0,0,0,0,0,0,0,0,0,0,1,1},
- {1,1,0,0,0,0,0,0,0,0,0,0,1,1},
- {1,1,0,0,0,0,0,0,0,0,0,0,1,1},
- {1,1,0,0,0,0,0,0,0,0,0,0,1,1},
- {1,1,1,1,1,1,1,1,1,1,1,1,1,1},
- {1,1,1,1,1,1,1,1,1,1,1,1,1,1}
- };
- void ShowRussiaCellBlock(unsigned char x,unsigned char y,unsigned char OnOff,unsigned char SharpType) large
- {
- if(OnOff)
- {
- OledShowIconNew(6,IM_GAME_TETRIS_BLOCK_01+SharpType*(IM_GAME_TETRIS_BLOCK_02-IM_GAME_TETRIS_BLOCK_01),x*6+14,y*6+41);
- }
- else
- {
- OledShowIconNew(6,IM_GAME_TETRIS_BLOCK_BLACK,x*6+14,y*6+41); //TONY061229
- }
- }
- void ShowSharp(unsigned char x,unsigned char y,unsigned char Shape11,unsigned char Status,unsigned char OnOff) large
- {
- unsigned char i,j;
- for(i=0;i<4;i++)
- {
- for(j=0;j<4;j++)
- {
- if(RussiaM[Shape11][Status][i][j]==1)
- {
- if(OnOff)
- {
- ShowRussiaCellBlock(x+j-2,y+i,1,Shape11);
- }
- else
- {
- ShowRussiaCellBlock(x+j-2,y+i,0,Shape11);
- }
- }
- }
- }
- }
- /*
- void ShowOneLineCellBlock(unsigned char y,unsigned char OnOff) large
- {
- unsigned char i;
- for(i=0;i<NUMBERBLOCKOFROW;i++)
- {
- if(OnOff)
- {
- ShowRussiaCellBlock(i,y,1);
- }
- else
- {
- ShowRussiaCellBlock(i,y,0);
- }
- }
- }
- */
- void ShowAllCellBlock() large
- {
- unsigned char i,j;
- for(i=0;i<NUMBERBLOCKOFLINE;i++)
- {
- for(j=0;j<NUMBERBLOCKOFROW;j++)
- {
- if(MappingTable[i][j+2])
- ShowRussiaCellBlock(j,i,1,0);
- else
- ShowRussiaCellBlock(j,i,0,0);
- }
- }
- }
- void TFT_ShowGameLevel_Russian(unsigned char cLevel) large
- {
- GameShowNumber(cLevel,GAME_LEV_NUMB_COL,GAME_LEV_NUM_ROW);
- }
- void TFT_ShowGameScore(unsigned int Score) large
- {
- // BYTE bI,bN;
- // for(bI=0;bI<5;bI++)
- // {
- // bN=Score%10;
- // Score /= 10;
- // GameShowNumber(Score,GAME_SCO_NUM_COL,GAME_SCO_NUM_ROW);
- GameShowNumber(Score,GAME_SCO_NUM_COL,GAME_SCO_NUM_ROW);
- // }
- }
- void TFT_ShowGameRussianBMP()
- {
- OLED_CLEAR_ALL();
- OledShowIconNew(6,IM_GAME_TETRIS_BG,0,0);
- }
- unsigned char RussianMove(unsigned char x,unsigned char y,unsigned char Shape11,unsigned char Status) large
- {
- unsigned char i,j;
- for(i=0;i<4;i++)
- {
- for(j=0;j<4;j++)
- {
- if(RussiaM[Shape11][Status][i][j]+MappingTable[y+i][x+j]==2)
- {
- return 0;
- }
- }
- }
- return 1;
- }
- void CreateNewSharp() large
- {
- unsigned int RandomNumber;
- Russia_A=5;
- Russia_B=0;
- SharpType=New_SharpType;
- SharpStatus=New_SharpStatus;
- ShowSharp(Russia_A,Russia_B,SharpType,SharpStatus,1);
- RandomNumber= TH0;
- RandomNumber<<= 4;
- RandomNumber+=TL0;
- New_SharpType=RandomNumber%7;
- New_SharpStatus=RandomNumber%4;
- ShowSharp(15,5,SharpType,SharpStatus,0);
- ShowSharp(15,5,New_SharpType,New_SharpStatus,1);
- if(!RussianMove(Russia_A,Russia_B,SharpType,SharpStatus))
- {
- GameFlag=3;
- OledShowIconNew(6,IM_GAME_CONTINUE_SELECT,SUBMENU_COL,SUBMENU_ROW);
- OledShowIconNew(6,IM_GAME_EXIT_NOSELECT,SUBMENU_COL,SUBMENU_ROW+SUBMENU_OFF);
- gc_AttemptExit=0;
- /*ZQF Del 2006.04.03*/
- // TFT_ShowGameStates(GAME_OVER_STR);
- }
- }
- void ChangeSharp(unsigned char *x,unsigned char *y,unsigned char *Shape11,unsigned char *Status) large
- {
- if(RussianMove(*x,*y,*Shape11,(*Status+1)%4))
- {
- ShowSharp(*x,*y,*Shape11,*Status,0);
- *Status=(*Status+1)%4;
- ShowSharp(*x,*y,*Shape11,*Status,1);
- return;
- }
- }
- void AllAreOneLine() large
- {
- unsigned char i,j,k,l;
- unsigned char AllAreOne[4];
- k=0;
- for(i=0;i<NUMBERBLOCKOFLINE;i++)
- {
- for(j=2;j<NUMBERBLOCKOFLINE;j++)
- {
- if(MappingTable[i][j]!=1)
- break;
- }
- if(j>12)
- {
- AllAreOne[k]=i;
- k++;
- }
- }
- if(k>0)
- {
- i=1;
- for(l=0;l<k;l++)
- {
- i=2*i;
- }
- i--;
- GameRussianScore=GameRussianScore+i*(unsigned int)100;
- if(GameRussianScore>60000)
- {
- if(GameLevel_Russian>GameRussianHistoryLevel)
- {
- NandPrivateEn();
- FsRead(SAVE_SETTING_NAND_ADD,1,FS_DATA_0_0);
- GameRussianHistoryLevel=GameLevel_Russian;
- gxbFsData[SRAM_GAME_LEVEL_RUSSIAN]=GameLevel_Russian;
- //gxbFsData[SRAM_GAME_LEVEL_SNAKE]=GameSnakeHistoryLevel;
- //gxbFsData[SRAM_GAME_LEVEL_BOXMAN]=GameBoxHistoryLevel;
- NandPrivateDis();
- NandFinishJob();
- }
- if(GameLevel_Russian<9)
- {
- GameLevel_Russian++;
- }
- else
- {
- GameLevel_Russian=0;
- }
- GameRussianScore=0;
- InitGameRussian();
- }
- for(l=0;l<k;l++)
- {
- for(j=0;j<10;j++)
- MappingTable[AllAreOne[l]][j+2]=0;
- }
- ShowAllCellBlock();
- for(l=0;l<k;l++)
- for(i=0;i<AllAreOne[l]+1;i++)
- for(j=0;j<NUMBERBLOCKOFROW;j++)
- if((AllAreOne[l]-i)!=0)
- MappingTable[AllAreOne[l]-i][j+2]=MappingTable[AllAreOne[l]-1-i][j+2];
- else
- {
- MappingTable[AllAreOne[l]-i][j+2]=0;
- }
- /*ZQF Del 2006.04.03*/
- TFT_ShowGameScore(GameRussianScore);
- ShowAllCellBlock();
- }
- }
- void GoDown(unsigned char *x,unsigned char *y,unsigned char *Shape11,unsigned char *Status) large
- {
- unsigned char i,j;
- if(RussianMove(*x,*y+1,*Shape11,*Status))
- {
- ShowSharp(*x,*y,*Shape11,*Status,0);
- (*y)++;
- ShowSharp(*x,*y,*Shape11,*Status,1);
- return;
- }
- else
- {
- for(i=0;i<4;i++)
- {
- for(j=0;j<4;j++)
- {
- if(RussiaM[*Shape11][*Status][i][j])
- MappingTable[*y+i][*x+j]=1;
- }
- }
- AllAreOneLine();
- CreateNewSharp();
- }
- }
- void GoLeft(unsigned char *x,unsigned char *y,unsigned char *Shape11,unsigned char *Status) large
- {
- if(RussianMove(*x-1,*y,*Shape11,*Status))
- {
- ShowSharp(*x,*y,*Shape11,*Status,0);
- (*x)--;
- ShowSharp(*x,*y,*Shape11,*Status,1);
- return;
- }
- }
- void GoRight(unsigned char *x,unsigned char *y,unsigned char *Shape11,unsigned char *Status) large
- {
- if(RussianMove(*x+1,*y,*Shape11,*Status))
- {
- ShowSharp(*x,*y,*Shape11,*Status,0);
- (*x)++;
- ShowSharp(*x,*y,*Shape11,*Status,1);
- return;
- }
- }
- void InitGameRussian() large
- {
- unsigned char i,j;
- for(i=0;i<NUMBERBLOCKOFLINE+2;i++)
- {
- for(j=0;j<NUMBERBLOCKOFROW+4;j++)
- {
- MappingTable[i][j]=MappingTableMask[i][j];
- }
- }
- // GameLevel_Russian=0;
- //GameLevel_Russian=GameLevel_Russian%9;//已经改为在设置级别里面设置
- GameRussianScore=0;
- // GameFlag=0;
- GameFlag=1;//一进入游戏就开始运行
- //TFT_ClearAll();
- TFT_ShowGameRussianBMP();
- New_SharpType=New_SharpType%7;
- New_SharpStatus=New_SharpStatus%4;
- gc_GameTimer=GameSpeed[GameLevel_Russian];
- CreateNewSharp();
- TFT_ShowGameLevel_Russian(GameLevel_Russian);
- TFT_ShowGameScore(GameRussianScore);
- /*ZQF Del 2006.04.03*/
- // TFT_ShowGameStates(GAME_WELCOME_STR);
- }
- void Exe_Russian_TimerOut()
- {
- if(gxb_GameOption==GAME_OPTION_START)
- {
- switch(GameFlag)
- {
- case 1:
- if(!gc_GameTimer)
- {
- gc_GameTimer=GameSpeed[GameLevel_Russian];
- GoDown(&Russia_A,&Russia_B,&SharpType,&SharpStatus);
- }
- break;
- case 3:
- //GameFlag=4;
- break;
- default:
- break;
- }
- }
- }
- void Exe_Game_Russian_Working(BYTE Key_Value) large
- {
- switch(Key_Value)
- {
- case KEY_FUNC_LONG:
- xbKeyFlag = TRUE;
- GameFlag=2;//=2,试图退出;
- OledShowIconNew(6,IM_GAME_CONTINUE_SELECT,SUBMENU_COL,SUBMENU_ROW);
- OledShowIconNew(6,IM_GAME_EXIT_NOSELECT,SUBMENU_COL,SUBMENU_ROW+SUBMENU_OFF);
- gc_AttemptExit=0;
- break;
- case KEY_LEFT_BREAK:
- case KEY_LEFT_LONG:
- GoLeft(&Russia_A,&Russia_B,&SharpType,&SharpStatus);
- break;
- case KEY_RIGHT_BREAK:
- case KEY_RIGHT_LONG:
- GoRight(&Russia_A,&Russia_B,&SharpType,&SharpStatus);
- break;
- //case KEY_VOL_UP_BREAK: //test now, please check it...
- case KEY_UP_BREAK:
- ChangeSharp(&Russia_A,&Russia_B,&SharpType,&SharpStatus);
- break;
- case KEY_VOL_DOWN_BREAK:
- case KEY_VOL_DOWN_LONG:
- // case KEY_VOL_BREAK:
- GoDown(&Russia_A,&Russia_B,&SharpType,&SharpStatus);
- break;
- default:
- break;
- }
- }
- void Exe_Game_Russian_AttemptExit(BYTE Key_Value) large
- {
- switch(Key_Value)
- {
- case KEY_UP_BREAK:
- if(gc_AttemptExit)
- {
- gxb_GameOption=SELECT_GAME_OPTION_MENU;
- GameFlag=0;
- gc_AttemptExit=0;
- InitGameOptionMode();
- }
- else
- {
- gc_AttemptExit=0;
- GameFlag=1;
- ShowAllCellBlock();
- GoDown(&Russia_A,&Russia_B,&SharpType,&SharpStatus);
- gc_GameTimer=GameSpeed[GameLevel_Russian];
- }
- xbKeyFlag = FALSE;
- break;
- case KEY_FUNC_BREAK:
- gc_AttemptExit=0;
- GameFlag=1;
- ShowAllCellBlock();
- GoDown(&Russia_A,&Russia_B,&SharpType,&SharpStatus);
- gc_GameTimer=GameSpeed[GameLevel_Russian];
- xbKeyFlag = FALSE;
- break;
- //case KEY_VOL_UP_BREAK: //test now, please check it...
- //case KEY_VOL_DOWN_BREAK:
- case KEY_LEFT_BREAK:
- case KEY_RIGHT_BREAK:
- gc_AttemptExit=~gc_AttemptExit;
- if(gc_AttemptExit)
- {
- OledShowIconNew(6,IM_GAME_CONTINUE_NOSELECT,SUBMENU_COL,SUBMENU_ROW);
- OledShowIconNew(6,IM_GAME_EXIT_SELECT,SUBMENU_COL,SUBMENU_ROW+SUBMENU_OFF);
- }
- else
- {
- OledShowIconNew(6,IM_GAME_CONTINUE_SELECT,SUBMENU_COL,SUBMENU_ROW);
- OledShowIconNew(6,IM_GAME_EXIT_NOSELECT,SUBMENU_COL,SUBMENU_ROW+SUBMENU_OFF);
- }
- xbKeyFlag = FALSE;
- break;
- default:
- break;
- }
- }
- void Exe_Game_Russian_AttemptOver(BYTE Key_Value) large
- {
- switch(Key_Value)
- {
- case KEY_UP_BREAK:
- if(gc_AttemptExit)
- {
- gxb_GameOption=SELECT_GAME_OPTION_MENU;
- GameFlag=0;
- gc_AttemptExit=0;
- InitGameOptionMode();
- }
- else
- {
- InitGameRussian();
- }
- break;
- case KEY_FUNC_BREAK:
- // gc_AttemptExit=0;
- // GameFlag=1;
- // ShowAllCellBlock();
- // GoDown(&Russia_A,&Russia_B,&SharpType,&SharpStatus);
- // gc_GameTimer=GameSpeed[GameLevel_Russian];
- break;
- //case KEY_VOL_UP_BREAK: //test now, please check it...
- //case KEY_VOL_DOWN_BREAK:
- case KEY_LEFT_BREAK:
- case KEY_RIGHT_BREAK:
- gc_AttemptExit=~gc_AttemptExit;
- if(gc_AttemptExit)
- {
- OledShowIconNew(6,IM_GAME_CONTINUE_NOSELECT,SUBMENU_COL,SUBMENU_ROW);
- OledShowIconNew(6,IM_GAME_EXIT_SELECT,SUBMENU_COL,SUBMENU_ROW+SUBMENU_OFF);
- }
- else
- {
- OledShowIconNew(6,IM_GAME_CONTINUE_SELECT,SUBMENU_COL,SUBMENU_ROW);
- OledShowIconNew(6,IM_GAME_EXIT_NOSELECT,SUBMENU_COL,SUBMENU_ROW+SUBMENU_OFF);
- }
- break;
- default:
- break;
- }
- }
- void Exe_Game_Russian_Start(BYTE Key_Value) large
- {
- switch(GameFlag)
- {
- case 1:
- Exe_Game_Russian_Working(Key_Value);
- break;
- case 2:
- Exe_Game_Russian_AttemptExit(Key_Value);
- break;
- case 3:
- Exe_Game_Russian_AttemptOver(Key_Value);
- break;
- default:
- break;
- }
- }
- void Exe_Game_Russian_Introduce(BYTE Key_Value) large
- {
- XBYTE bI;
- switch(Key_Value)
- {
- case KEY_UP_BREAK:
- case KEY_FUNC_BREAK:
- gxb_GameOption=SELECT_GAME_OPTION_MENU;
- InitGameOptionMode();
- break;
- case KEY_LEFT_BREAK:
- //case KEY_VOL_UP_BREAK: //test now, please check it...
- switch(gxbLangueType)
- {
- case LANGUAGE_TYPE_EN:
- case LANGUAGE_TYPE_CN:
- case LANGUAGE_TYPE_TW:
- if(gxbGameIntroducePage>1)
- {
- OledShowIconNew(6,IM_GAME_ABOUT_BG_01,0,0);
- gxbGameIntroducePage--;
- for(bI=0;bI<7;bI++)
- StrShowSysString(cbRussianIntroStr[(gxbGameIntroducePage-1)*7+bI],SYS_OPOION_COL,bI*16+SYS_OPOION_ROW);
- }
- break;
- default:
- break;
- }
- break;
- case KEY_VOL_DOWN_BREAK:
- case KEY_RIGHT_BREAK:
- switch(gxbLangueType)
- {
- case LANGUAGE_TYPE_EN:
- if(gxbGameIntroducePage<RUSSIAN_INTRODUCE_TOTALEN_PAGE)
- {
- OledShowIconNew(6,IM_GAME_ABOUT_BG_01,0,0);
- gxbGameIntroducePage++;
- if(gxbGameIntroducePage!=RUSSIAN_INTRODUCE_TOTALEN_PAGE)
- {
- for(bI=0;bI<7;bI++)
- StrShowSysString(cbRussianIntroStr[(gxbGameIntroducePage-1)*7+bI],SYS_OPOION_COL,bI*16+SYS_OPOION_ROW);
- }
- else
- {
- for(bI=0;bI<3;bI++)
- StrShowSysString(cbRussianIntroStr[(gxbGameIntroducePage-1)*7+bI],SYS_OPOION_COL,bI*16+SYS_OPOION_ROW);
- }
- }
- break;
- break;
- case LANGUAGE_TYPE_CN:
- if(gxbGameIntroducePage<RUSSIAN_INTRODUCE_TOTALCN_PAGE)
- {
- OledShowIconNew(6,IM_GAME_ABOUT_BG_01,0,0);
- gxbGameIntroducePage++;
- if(gxbGameIntroducePage!=RUSSIAN_INTRODUCE_TOTALCN_PAGE)
- {
- for(bI=0;bI<7;bI++)
- StrShowSysString(cbRussianIntroStr[(gxbGameIntroducePage-1)*7+bI],SYS_OPOION_COL,bI*16+SYS_OPOION_ROW);
- }
- else
- {
- for(bI=0;bI<3;bI++)
- StrShowSysString(cbRussianIntroStr[(gxbGameIntroducePage-1)*7+bI],SYS_OPOION_COL,bI*16+SYS_OPOION_ROW);
- }
- }
- break;
- case LANGUAGE_TYPE_TW:
- if(gxbGameIntroducePage<RUSSIAN_INTRODUCE_TOTALTW_PAGE)
- {
- OledShowIconNew(6,IM_GAME_ABOUT_BG_01,0,0);
- gxbGameIntroducePage++;
- if(gxbGameIntroducePage!=RUSSIAN_INTRODUCE_TOTALTW_PAGE)
- {
- for(bI=0;bI<7;bI++)
- StrShowSysString(cbRussianIntroStr[(gxbGameIntroducePage-1)*7+bI],SYS_OPOION_COL,bI*16+SYS_OPOION_ROW);
- }
- else
- {
- for(bI=0;bI<3;bI++)
- StrShowSysString(cbRussianIntroStr[(gxbGameIntroducePage-1)*7+bI],SYS_OPOION_COL,bI*16+SYS_OPOION_ROW);
- }
- }
- break;
- default:
- break;
- }
- break;
- default:
- break;
- }
- }
- void Exe_Game_Russian_Setup(BYTE Key_Value) large
- {
- switch(Key_Value)
- {
- case KEY_UP_BREAK:
- case KEY_FUNC_BREAK:
- gxb_GameOption=SELECT_GAME_OPTION_MENU;
- InitGameOptionMode();
- break;
- //case KEY_VOL_UP_BREAK: //test now, please check it...
- //case KEY_VOL_UP_LONG:
- case KEY_RIGHT_BREAK:
- case KEY_RIGHT_LONG:
- if(GameLevel_Russian<9)
- {
- GameLevel_Russian++;
- GameShowNumber(GameLevel_Russian,GAME_LV_COL,GAME_LV_ROW);
- }
- break;
- case KEY_VOL_DOWN_BREAK:
- case KEY_VOL_DOWN_LONG:
- case KEY_LEFT_BREAK:
- case KEY_LEFT_LONG:
- if(GameLevel_Russian)
- {
- GameLevel_Russian--;
- GameShowNumber(GameLevel_Russian,GAME_LV_COL,GAME_LV_ROW);
- }
- break;
- default:
- break;
- }
- }
- void Exe_Game_Russian_History(BYTE Key_Value) large
- {
- switch(Key_Value)
- {
- case KEY_UP_BREAK:
- case KEY_FUNC_BREAK:
- gxb_GameOption=SELECT_GAME_OPTION_MENU;
- InitGameOptionMode();
- break;
- default:
- break;
- }
- }
- void Exe_Game_Russian(BYTE Key_Value) large
- {
- switch(gxb_GameOption)
- {
- case SELECT_GAME_OPTION_MENU:
- Exe_Select_Game_Option(Key_Value);
- break;
- case GAME_OPTION_START:
- Exe_Game_Russian_Start(Key_Value);
- break;
- case GAME_OPTION_INTRODUCE:
- Exe_Game_Russian_Introduce(Key_Value);
- break;
- case GAME_OPTION_SETUP:
- Exe_Game_Russian_Setup(Key_Value);
- break;
- case GAME_OPTION_HISTORY:
- Exe_Game_Russian_History(Key_Value);
- break;
- default:
- break;
- }
- }