📄 menu.cpp
字号:
else glCallList(dl+1); glBindTexture(GL_TEXTURE_2D, tex[15].prop.texture); glCallList(dl+3); //sound glTranslatef(0.0,-0.22,0.0f); if(var.menuItem==5) glCallList(dl+2); else glCallList(dl+1); glBindTexture(GL_TEXTURE_2D, tex[16].prop.texture); glCallList(dl+3); if(var.menuPressed) { switch(var.menuItem) { case 1: var.menu=1; break; case 6: var.menu=3; break; case 5: var.menu=4; break; } var.menuPressed=0; } var.menuNumItems=6; } else if(var.menu==3) { //Video options glLoadIdentity(); glTranslatef(0.0, 0.54,-3.0f); glCallList(dl+4); glBindTexture(GL_TEXTURE_2D, tex[17].prop.texture); glCallList(dl+3); //Toggle glTranslatef(0.0,-0.22,0.0f); if(var.menuItem==6) glCallList(dl+2); else glCallList(dl+1); glBindTexture(GL_TEXTURE_2D, tex[18].prop.texture); glCallList(dl+3); //Eyecandy glTranslatef(0.0,-0.22,0.0f); if(var.menuItem==5) glCallList(dl+2); else glCallList(dl+1); glBindTexture(GL_TEXTURE_2D, tex[19].prop.texture); glCallList(dl+3); //1600 glTranslatef(0.0,-0.22,0.0f); if(var.menuItem==4) glCallList(dl+2); else glCallList(dl+1); glBindTexture(GL_TEXTURE_2D, tex[20].prop.texture); glCallList(dl+3); //1024 glTranslatef(0.0,-0.22,0.0f); if(var.menuItem==3) glCallList(dl+2); else glCallList(dl+1); glBindTexture(GL_TEXTURE_2D, tex[21].prop.texture); glCallList(dl+3); //background glTranslatef(0.0,-0.22,0.0f); if(var.menuItem==2) glCallList(dl+2); else glCallList(dl+1); glBindTexture(GL_TEXTURE_2D, tex[22].prop.texture); glCallList(dl+3); //Back glTranslatef(0.0,-0.22,0.0f); if(var.menuItem==1) glCallList(dl+2); else glCallList(dl+1); glBindTexture(GL_TEXTURE_2D, tex[32].prop.texture); glCallList(dl+3); if(var.menuPressed) { switch(var.menuItem) { case 1: var.menu=2; break; case 2: if(!setting.showBg) setting.showBg=1; else setting.showBg=0; writeSettings(); break; case 3: setting.resx = 1024; setting.resy = 768; initScreen(); writeSettings(); break; case 4: setting.resx = 1600; setting.resy = 1200; initScreen(); writeSettings(); break; case 5: if(setting.eyeCandy) setting.eyeCandy=0; else setting.eyeCandy=1; writeSettings(); break; case 6: if(setting.fullscreen) setting.fullscreen=0; else setting.fullscreen=1; initScreen(); writeSettings(); break; } var.menuPressed=0; } var.menuNumItems=6; } else if(var.menu==4) { //Audio glLoadIdentity(); glTranslatef(0.0, 0.54,-3.0f); glCallList(dl+4); glBindTexture(GL_TEXTURE_2D, tex[23].prop.texture); glCallList(dl+3); //Sound on glTranslatef(0.0,-0.22,0.0f); if(var.menuItem==6) glCallList(dl+2); else glCallList(dl+1); glBindTexture(GL_TEXTURE_2D, tex[24].prop.texture); glCallList(dl+3); //Sound off glTranslatef(0.0,-0.22,0.0f); if(var.menuItem==5) glCallList(dl+2); else glCallList(dl+1); glBindTexture(GL_TEXTURE_2D, tex[25].prop.texture); glCallList(dl+3); //Back glTranslatef(0.0,-0.88,0.0f); if(var.menuItem==1) glCallList(dl+2); else glCallList(dl+1); glBindTexture(GL_TEXTURE_2D, tex[26].prop.texture); glCallList(dl+3); if(var.menuPressed) { switch(var.menuItem) { case 1: var.menu=2; break; case 5: setting.sound=0; initSound(); break; case 6: setting.sound=1; initSound(); break; } var.menuPressed=0; } var.menuNumItems=7; } else if(var.menu==5) { //New game? glLoadIdentity(); glTranslatef(0.0, 0.54,-3.0f); glCallList(dl+4); glBindTexture(GL_TEXTURE_2D, tex[28].prop.texture); glCallList(dl+3); //Easy glTranslatef(0.0,-0.22,0.0f); if(var.menuItem==6) glCallList(dl+2); else glCallList(dl+1); glBindTexture(GL_TEXTURE_2D, tex[29].prop.texture); glCallList(dl+3); //Normal glTranslatef(0.0,-0.22,0.0f); if(var.menuItem==5) glCallList(dl+2); else glCallList(dl+1); glBindTexture(GL_TEXTURE_2D, tex[30].prop.texture); glCallList(dl+3); //Back glTranslatef(0.0,-0.88,0.0f); if(var.menuItem==1) glCallList(dl+2); else glCallList(dl+1); glBindTexture(GL_TEXTURE_2D, tex[32].prop.texture); glCallList(dl+3); if(var.menuPressed) { switch(var.menuItem) { case 1: var.menu=1; break; case 5: //New Game, Normal player.difficulty=1; resumeGame(); initNewGame(); break; case 6: //New game, easy player.difficulty=0; resumeGame(); initNewGame(); break; } var.menuPressed=0; } var.menuNumItems=7; } else if(var.menu==6) { //Exit glLoadIdentity(); glTranslatef(0.0, 0.54,-3.0f); glCallList(dl+2); glBindTexture(GL_TEXTURE_2D, tex[11].prop.texture); glCallList(dl+3); //Yes glTranslatef(0.0,-0.44,0.0f); if(var.menuItem==5) glCallList(dl+2); else glCallList(dl+1); glBindTexture(GL_TEXTURE_2D, tex[12].prop.texture); glCallList(dl+3); //Noes! glTranslatef(0.0,-0.22,0.0f); if(var.menuItem==4) glCallList(dl+2); else glCallList(dl+1); glBindTexture(GL_TEXTURE_2D, tex[13].prop.texture); glCallList(dl+3); if(var.menuPressed) { switch(var.menuItem) { case 4: //no var.menu=1; break; case 5: //Yes var.quit=1; break; } var.menuPressed=0; } var.menuNumItems=5; } else if(var.menu==7) // highscores { //Highscores glLoadIdentity(); glTranslatef(0.0, 0.54,-3.0f); if(var.menuItem==7) glCallList(dl+2); else glCallList(dl+4); glBindTexture(GL_TEXTURE_2D, tex[6].prop.texture); glCallList(dl+3); int i; glTranslatef(0.0, -0.75, 0.0f); glBindTexture(GL_TEXTURE_2D, tex[33].prop.texture); glEnable(GL_TEXTURE_2D); glColor4f(1.0,1.0,1.0,1.0); glBegin( GL_QUADS ); glTexCoord2f( 0.0, 0.0 ); glVertex3f( -0.8, 0.63, 0.0 ); glTexCoord2f( 1.0, 0.0 ); glVertex3f( 0.8, 0.63, 0.0 ); glTexCoord2f( 1.0, 1.0 ); glVertex3f( 0.8,-0.63, 0.0 ); glTexCoord2f( 0.0, 1.0 ); glVertex3f( -0.8,-0.63, 0.0 ); glEnd( ); glLoadIdentity(); glTranslatef(0.0, 0.43,-3.0f); for(i=0; i < 20; i++) { glTranslatef(0.0, -0.06, 0.0); glEnable(GL_TEXTURE_2D); glColor4f(1.0,1.0,1.0,1.0); glBindTexture(GL_TEXTURE_2D, texHighScore[i]); glBegin( GL_QUADS ); glTexCoord2f(-0.01f, 0.01525f); glVertex3f( -0.78, 0.03, 0.0 ); glTexCoord2f(0.99f,0.01525f); glVertex3f( 0.78, 0.03, 0.0 ); glTexCoord2f(0.99f,0.04); glVertex3f( 0.78,-0.03, 0.0 ); glTexCoord2f(-0.01f,0.04); glVertex3f( -0.78,-0.03, 0.0 ); glEnd( ); } if(var.menuPressed) { switch(var.menuItem) { case 7: //Yes var.menu=1; break; } var.menuPressed=0; } } }};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -