Click Menu::drawPlayMenu() { initPlayMenu(); sizeM = imgMenu->getSize(); position0.X = 0; position0.Y = 0; position1.X = sizeM.Width; position1.Y = sizeM.Height; rectangle.UpperLeftCorner = position0; rectangle.LowerRightCorner = position1; driver->draw2DImage(imgMenu, position0, rectangle, 0, irr::video::SColor(255, 255, 255, 255), true); one->draw(); two->draw(); three->draw(); cancelP->draw(); ia->draw(); switch(event->getChoice()) { case Click::ONE: return Click::ONE; case Click::TWO: return Click::TWO; case Click::THREE: return Click::THREE; case Click::CANCEL: return Click::CANCEL; case Click::IA: return Click::IA; default: break ; } return Click::NOP; }
int menuWiimote(WPADData *wd, u32 wpaddown) { checkSelected(wd); // button A selects an option if(wpaddown & WPAD_BUTTON_A) { switch(curmenunum) { case MAIN_MENU : switch(msel) { case 0: //play menu playClick(); killMainMenu(); initPlayMenu(); break; case 1 : //hi score playClick(); killMainMenu(); initHighscoreMenu(); break; case 2 : //optionsmenu playClick(); killMainMenu(); initOptionMenu(); break; case 3 : //sound menu playClick(); killMainMenu(); initSoundMenu(); break; case 4 : //exit playClick(); killMainMenu(); return EXIT; } break; case PLAY_MENU : switch(msel) { case 0 : playClick(); killPlayMenu(); return ONE_PLAYER_GAME; break; case 1 : playClick(); killPlayMenu(); return TWO_PLAYER_COOP; break; case 2 : playClick(); killPlayMenu(); return TWO_PLAYER_VERSUS; break; case 3 : playClick(); killPlayMenu(); initMainMenu(); break; } break; case OPTIONS_MENU : switch(msel) { case 0 : // change tileset playClick(); killMenu(); initTilesetMenu(); break; case 1 : // change layout playClick(); killMenu(); initLayoutMenu(); break; case 2 : // hover hint playWrong(); break; case 3 : // language selection playClick(); killMenu(); initLangMenu(); break; case 4 : // rumble on/off if(opt_rumble) opt_rumble=false; else opt_rumble=true; playClick(); break; case 5 : // widescreen on/off if(opt_widescreen) opt_widescreen=false; else opt_widescreen=true; GRRLIB_Widescreen(opt_widescreen); playClick(); break; case 6 : // back playClick(); killMenu(); initMainMenu(); break; } break; case SOUND_MENU : switch(msel) { case 2 : playClick(); killSoundMenu(); initMainMenu(); break; } break; case LANG_MENU : if(msel>-1) { int tmp_lang=msel + (curpage==0?0:9); if(tmp_lang>NORWEGIAN) return NOTHING; opt_lang=tmp_lang; setLanguage(); playClick(); killLangMenu(); initOptionMenu(); } if(btnover) { curpage++; curpage = curpage % 2; playClick(); } break; case LAYOUT_MENU : if(msel>-1) { playClick(); int tmp_sel = msel + (curpage==0?0:6); opt_layout=tmp_sel; killLayoutMenu(); initOptionMenu(); } if(btnover) { curpage++; curpage = curpage % 2; playClick(); } break; case TILESET_MENU : { if(msel>-1) { playClick(); opt_tileset=msel; killTilesetMenu(); initOptionMenu(); } } break; case HIGHSCORE_MENU: { playClick(); killHighscoreMenu(); initMainMenu(); } break; } } if (curmenunum==SOUND_MENU && wd->btns_h & WPAD_BUTTON_A) { switch(msel) { case 0 : xmusic=wd->ir.x; opt_music = (int) (((double)xmusic-soundhs[0][0])/soundhs[0][2]*64); return MUSIC_BAR + opt_music; break; case 1 : xsound=wd->ir.x; opt_sound = (int) (((double)xsound-soundhs[1][0])/soundhs[1][2]*255); playWrong(); break; } } // button B acts the same as back if(wpaddown & WPAD_BUTTON_B) { switch(curmenunum) { case MAIN_MENU : break; case PLAY_MENU : playClick(); killPlayMenu(); initMainMenu(); break; case OPTIONS_MENU : playClick(); killMenu(); initMainMenu(); break; case SOUND_MENU : playClick(); killSoundMenu(); initMainMenu(); break; case LANG_MENU : playClick(); killLangMenu(); initOptionMenu(); break; case LAYOUT_MENU : playClick(); killLayoutMenu(); initOptionMenu(); break; case TILESET_MENU : { playClick(); killTilesetMenu(); initOptionMenu(); } break; case HIGHSCORE_MENU: { playClick(); killHighscoreMenu(); initMainMenu(); } break; } } if(wpaddown & WPAD_BUTTON_PLUS) { if((curmenunum==LANG_MENU || curmenunum==LAYOUT_MENU) && curpage==0) curpage++; } if(wpaddown & WPAD_BUTTON_MINUS) { if((curmenunum==LANG_MENU || curmenunum==LAYOUT_MENU) && curpage==1) curpage--; } return NOTHING; }