Hola, estoy haciendo un juego en C++ con SDL y tengo un problema con los eventos.
En mi juego hay un menú, y para capturar los eventos en el menú uso SDL_WaitEvent(). Una vez puesto lo que es el juego, con la opción "Jugar" del menú que he mencionado, el personaje se puede desplazar por la pantalla, para esto obtengo el estado directamente del teclado (tecla[SDLK_x]).
El problema es que cuando estoy en el juego (en el menú no, en la parte donde el jugador se desplaza) se siguen captando las presiones de tecla del menú. Por lo tanto, si el usuario aprieta la flecha hacia arriba durante el juego (para mover al personaje), cuando regrese al menú automáticamente se apretará la tecla.
He probado cambiando SDL_WaitEvent() por SDL_PollEvent(), no conseguí nada, y también probé a acceder directamente al estado del teclado, pero me daba problemas al intentar salir de un bucle con break.
En el manual que leí de SDL, SDL_PollEvent() guardaba los eventos en una lista, pero no sabía que SDL_WaitEvent() tambien lo hiciese...
¿Cómo lo soluciono?
Gracias, espero haberme explicado bien.