Envoyé par
LDiCesare
Question animation:
Est-ce que quelqu'un a une technique permettant de s'assurer qu'on a fini de jouer des animations?
Contexte: Je fais un jeu avec du combat tour par tour. C'est pas physics-based.
Je veux arrêter le tour d'un personnage contrôlé par l'ia soit au bout de 0.5s si elle fait rien, soit après qu'elle ait joué ses animations (e.g. je lui dis bouge puis attaque donc elle doit enchainer des animations suivant la séquence idle-move-idle-attack-idle).
J'arrive à savoir si mon AnimationController est en train de jouer une animation, et si cette animation a une transition. Donc en théorie, je devrais être capable de me rendre compte que je suis dans l'état idle final. Sauf que si je fais ce test dans un Update() et que les animations n'ont pas encore commencé à jouer, je suis peut-être encore dans l'état idle de départ.
Bref, vu que le contrôle de l'animation passe par des coroutines donc des threads différents du thread où je contrôle la logique, j'ai l'impression de ne pas pouvoir contrôler finement ce que je veux.
Comme j'attends toujours au moins 1/2s. histoire que le joueur voie que tel personnage a joué sans bouger ni attaquer, je m'épargne un peu le problème mais je suis pas convaincu par ma solution.
Quelqu'un a déjà eu affaire à ce genre de problématiques?