void CRegist::Mouse (int button, int state, int x, int y) { if (state == 1) { TWidget* focussed = ClickGUI(x, y); if(focussed == textbuttons[0]) QuitRegistration (); else if(focussed == textbuttons[1]) { g_game.player_id = player->GetValue(); State::manager.RequestEnterState (NewPlayer); } } }
void RegistMouseFunc (int button, int state, int x, int y) { int foc, dir; if (state == 1) { GetFocus (x, y, &foc, &dir); switch (foc) { case 0: ChangeRegistSelection (foc, dir); break; case 1: ChangeRegistSelection (foc, dir); break; case 2: QuitRegistration (); break; case 3: old_last = last_player; Winsys.SetMode (NEWPLAYER); break; } } }
void CRegist::Keyb (unsigned int key, bool special, bool release, int x, int y) { TWidget* focussed = KeyGUI(key, 0, release); if (release) return; switch (key) { case SDLK_ESCAPE: State::manager.RequestQuit(); break; case SDLK_RETURN: if (focussed == textbuttons[1]) { g_game.player_id = player->GetValue(); State::manager.RequestEnterState (NewPlayer); } else QuitRegistration (); break; } }
void RegistKeys (unsigned int key, bool special, bool release, int x, int y) { if (release) return; switch (key) { case 27: Winsys.Quit (); break; case 13: if (curr_focus == 3) { old_last = last_player; Winsys.SetMode (NEWPLAYER); } else QuitRegistration (); break; case SDLK_TAB: curr_focus++; if (curr_focus > 3) curr_focus = 0; break; case SDLK_DOWN: ChangeRegistSelection (curr_focus, 1); break; case SDLK_UP: ChangeRegistSelection (curr_focus, 0); break; } }