SDL_EventState переключатель - PullRequest
       2

SDL_EventState переключатель

0 голосов
/ 22 декабря 2010

Я использую SDL_EventState для отключения и включения определенных событий.Однако, по какой-то причине, если я установил любое состояние на «включено» или «выключено», я не могу изменить его нигде в программе.Чтобы объяснить дальше, вот мой цикл.

void game::startLoop()
{
    while(QUIT == false)
    {
        getRoomUpdate();
        applySurface(-15, 280, zombie_lefthand, buffer);
        applySurface(455, 280, zombie_righthand, buffer);

        SDL_Flip(buffer);

        SDL_WaitEvent(&gameEvent);
        {
            switch(gameEvent.type)
            {
                case SDL_QUIT:
                QUIT = true;
                break;

                case SDL_KEYUP:
                switch(gameEvent.key.keysym.sym)
                {
                    case SDLK_LEFT:
                    if(isTwoWay == true)
                        SDL_EventState(SDL_KEYUP, 1);
                        startLoop();
                        log("Left key pressed.");
                        SDL_EventState(SDL_KEYUP, 0);

                    case SDLK_RIGHT:
                    if(isTwoWay == true)
                        SDL_EventState(SDL_KEYUP, 1);
                        startLoop();
                        log("Right key pressed.");
                        SDL_EventState(SDL_KEYUP, 0);

                    case SDLK_UP:
                    if(isTwoWay == false)
                        SDL_EventState(SDL_KEYUP, 1);
                        startLoop();
                        log("Up key pressed.");
                        SDL_EventState(SDL_KEYUP, 0);

                    default:
                    SDL_EventState(SDL_KEYUP, 0);
                }
            }
        }
    }
}

1 Ответ

0 голосов
/ 16 января 2012

Возможно, если вы попробовали чужой код.
Если бы это сработало, вы могли бы попытаться преобразовать их код во что-то похожее на ваш (функционально)

Удачи!
постскриптум Я думаю, что вы должны использовать SDL_ENABLE и SDL_DISABLE.

...