Par exemple, j'ai une classe de jeu et elle en garde une intqui suit la vie du joueur. J'ai un conditionnel
if ( mLives < 1 ) {
// Do some work.
}
Cependant, cette condition continue de se déclencher et le travail est effectué à plusieurs reprises. Par exemple, je veux régler une minuterie pour quitter le jeu en 5 secondes. Actuellement, il continuera de le régler à 5 secondes à chaque image et le jeu ne se termine jamais.
Ce n'est qu'un exemple, et j'ai le même problème dans plusieurs domaines de mon jeu. Je veux vérifier une condition, puis faire quelque chose une fois et une seule fois, puis ne pas vérifier ou refaire le code dans l'instruction if. Certaines solutions possibles qui viennent à l'esprit sont d'avoir un boolpour chaque condition et de définir le boolmoment où la condition se déclenche. Cependant, dans la pratique, cela devient très compliqué à gérer bools, car ils doivent être stockés en tant que champs de classe ou statiquement dans la méthode elle-même.
Quelle est la bonne solution à cela (pas pour mon exemple, mais pour le domaine problématique)? Comment feriez-vous cela dans un jeu?