Contenu du cours
Jeu FPS Avec Unreal Engine
Jeu FPS Avec Unreal Engine
Logique de Fin de Jeu
Dans ce chapitre, nous allons configurer les conditions pour le gameover lorsque le joueur n'a plus de santé ! Il existe plusieurs façons de le faire. Par exemple, vous pourriez configurer une nouvelle fonction qui vérifie la santé du joueur et affiche le Widget Gameover une fois que la santé est inférieure ou égale à zero
, puis utiliser un Event Tick
pour appeler constamment cette fonction.
Cependant, ce n'est pas une très bonne pratique ! La raison en est que vous devez éviter d'utiliser Event Tick
lorsque vous le pouvez, car il se déclenche constamment et si vous avez beaucoup d'instructions qui s'exécutent en utilisant un Event Tick
, vous augmenterez la demande sur l'ordinateur et le processeur, surtout si les calculs sont complexes. Cela dit, bien que ces calculs ne soient pas particulièrement complexes, nous allons implémenter cette fonctionnalité directement dans notre fonction Take Damage.
Alors ouvrons la fonction TakeDamage que nous avons créée dans le FirstPersonCharacter
au début de ce cours. Ici, nous pouvons vérifier si la valeur de la variable PlayerHealth
est tombée à zero
ou moins directement après avoir mis à jour la valeur ! C'est une bonne pratique.
Donc à la fin de la fonction où nous avons notre Set Player Health, tirez sur la broche verte et cherchez less or equal to
. Laissez l'autre entier être 0
et en utilisant une branche, vérifiez si la valeur de PlayerHealth
est tombée en dessous de 0
comme indiqué ci-dessous.
Ensuite, obtenez le Player Controller et définissez le mode d'entrée sur UI uniquement et définissez le Show Mouse Cursor sur True
. De cette façon, nous nous assurons que le joueur peut cliquer sur les boutons que nous avons placés dans le blueprint Gameover
.
Créez un widget et cherchez WBP_Gameover
et ajoutez-le à la vue. Enfin, cherchez le nœud Set Game Paused et cochez la case pour que, une fois l'écran Gameover affiché, le jeu soit également en pause ! C'est tout !
Merci pour vos commentaires !