Tu utilise quel lib?
Je sais que par exemple avec la sdl, il y'a une fonction qui attend qu'un événement se passe et le renvoi (tant qu'il y a pas eu l'événement, le programme est en pause), il existe peut être l'equivalent dans la lib que tu utilise.
Tu peux sinon boucler (avec un while) tant qu'il y a pas eu d'action (le programme ne se mettra pas en pause mais tu peux toujours mettre un wait avec une petite valeur pour ne pas trop utiliser le cpu si c'est ce que tu cherche à faire).
Attention cependant, en utilisant ces méthodes pour mettre le programme en pause, il n'y aura pas d'actualisation (de données ou de l'écran (donc pas d'animations tant que le joueur ne realise pas une action)) à part si tu fait ca dans un autre thread.