예제 #1
0
void CRaceSelect::Keyb(unsigned int key, bool special, bool release, int x, int y) {
	if (release) return;
	KeyGUI(key, 0, release);
	switch (key) {
		case SDLK_ESCAPE:
			State::manager.RequestEnterState (GameTypeSelect);
			break;
		case SDLK_u:
			param.ui_snow = !param.ui_snow;
			break;
		case SDLK_t:
			g_game.force_treemap = !g_game.force_treemap;
			break;
		case SDLK_c:
			g_game.treesize++;
			if (g_game.treesize > 5) g_game.treesize = 1;
			break;
		case SDLK_v:
			g_game.treevar++;
			if (g_game.treevar > 5) g_game.treevar = 1;
			break;
		case SDLK_RETURN:
			if (textbuttons[1]->focussed())
				State::manager.RequestEnterState (GameTypeSelect);
			else
				SetRaceConditions ();
			break;
	}
}
void CGameConfig::Keyb (unsigned int key, bool special, bool release, int x, int y) {
	if (release) return;

	if (key != SDLK_UP && key != SDLK_DOWN)
		KeyGUI(key, 0, release);
	switch (key) {
		case SDLK_q:
			State::manager.RequestQuit();
			break;
		case SDLK_ESCAPE:
			State::manager.RequestEnterState (*State::manager.PreviousState());
			break;
		case SDLK_RETURN:
			if (textbuttons[0]->focussed())
				State::manager.RequestEnterState (*State::manager.PreviousState());
			else if (textbuttons[1]->focussed())
				SetConfig ();
			break;
		case SDLK_UP:
			DecreaseFocus();
			break;
		case SDLK_DOWN:
			IncreaseFocus();
			break;
	}
}
예제 #3
0
void CScore::Keyb (unsigned int key, bool special, bool release, int x, int y) {
	KeyGUI(key, 0, release);
	if (release) return;
	switch (key) {
		case SDLK_ESCAPE: State::manager.RequestEnterState (GameTypeSelect); break;
		case SDLK_q: State::manager.RequestQuit(); break;
		case SDLK_s: Score.SaveHighScore (); break;
		case SDLK_l: Score.LoadHighScore (); break;
		case SDLK_RETURN: State::manager.RequestEnterState (GameTypeSelect); break;
	}
}
예제 #4
0
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;
	}
}
예제 #5
0
void CNewPlayer::Keyb(sf::Keyboard::Key key, bool release, int x, int y) {
	if (release) return;

	KeyGUI(key, release);
	switch (key) {
		case sf::Keyboard::Escape:
			State::manager.RequestEnterState(Regist);
			break;
		case sf::Keyboard::Return:
			if (textbuttons[0]->focussed()) State::manager.RequestEnterState(Regist);
			else QuitAndAddPlayer();
			break;
		default:
			break;
	}
}
void CNewPlayer::Keyb_spec (SDL_keysym sym, bool release) {
	if (release) return;

	KeyGUI(sym.sym, sym.mod, release);
	switch (sym.sym) {
		case SDLK_ESCAPE:
			State::manager.RequestEnterState (Regist);
			break;
		case SDLK_RETURN:
			if (textbuttons[0]->focussed()) State::manager.RequestEnterState (Regist);
			else QuitAndAddPlayer ();
			break;
		default:
			break;
	}
}
void CEventSelect::Keyb (unsigned int key, bool special, bool release, int x, int y) {
    if (release) return;
    switch (key) {
    case SDLK_ESCAPE:
        State::manager.RequestEnterState (GameTypeSelect);
        break;
    case SDLK_q:
        State::manager.RequestQuit();
        break;
    case SDLK_RETURN:
        if (textbuttons[1]->focussed()) State::manager.RequestEnterState (GameTypeSelect);
        else if (Events.IsUnlocked (event->GetValue(), cup->GetValue())) EnterEvent();
        break;
    case SDLK_u:
        param.ui_snow = !param.ui_snow;
        break;
    default:
        KeyGUI(key, 0, release);
    }
}
예제 #8
0
void CEventSelect::Keyb(sf::Keyboard::Key key, bool release, int x, int y) {
	if (release) return;
	switch (key) {
		case sf::Keyboard::Escape:
			State::manager.RequestEnterState(GameTypeSelect);
			break;
		case sf::Keyboard::Q:
			State::manager.RequestQuit();
			break;
		case sf::Keyboard::Return:
			if (textbuttons[1]->focussed()) State::manager.RequestEnterState(GameTypeSelect);
			else if (Events.IsUnlocked(event->GetValue(), cup->GetValue())) EnterEvent();
			break;
		case sf::Keyboard::U:
			param.ui_snow = !param.ui_snow;
			break;
		default:
			KeyGUI(key, release);
	}
}