feature(server): game loop for demo mode
Implémentation de la boucle d'exécution pour le mode "Tester le jeu". Le serveur envoie des événements et s'attend à ce que le client lui répond entre les événements NextQuestion et TimesUp.
Ajouts
- Événement NextQuestion: indique au client qu'on passe à la prochaine question, la question est envoyée avec
- Événement TimesUp: indique au client que le compteur est terminé, celui-ci doit envoyer ses dernières réponses
- Événement Results: envoie au client les résultats
- Événement EndGame: la partie est terminée
- Événement Answer: envoie au serveur les choix de réponses
Modifications
- GameRoomService stocke des classes au lieu d'interfaces. Ces classes contiennent elle-même leur propre boucle d'exécution. Cela permet d'avoir plusieurs jeux sans causer de conflits.
Conséquences
- L'implémentation n'est faite que pour les questions QCM. Il faudra adapter le code aux questions QRL plus tard.
- L'implémentation ne supporte pas complètement un mode multijoueur. Il faudra adapter le code aux prochains sprints.