0
votes

Unity: Shooter 2D-caractère Animation ne fonctionne qu'une fois

Je voulais que mon animation joue chaque fois que mon personnage tire le pistolet mais que l'animation ne fonctionne que lorsqu'elle tire la première fois et non les autres. J'ai l'impression que ce sera quelque chose de très simple dans le code, mais je suis allé ici et je n'ai toujours pas trouvé de solution. Quelqu'un peut-il me donner un indice, s'il vous plaît?

Voici la partie d'animation dans le code: xxx


2 commentaires

Voulez-vous avoir deux bretelles d'ouverture sous votre méthode update ?


Eliasar, ce n'est pas tout le code de ce script ... seulement l'animation parte ... J'ai d'autres fonctions dans le même script ...


3 Réponses :


0
votes

Je ne sais pas si votre isfire est défini sur FALSE après avoir joué l'animation de tir. Si cela a été vrai et que vous ne l'avez pas transigué à d'autres animations de Mecanim et n'avez pas défini l'animation à la boucle.


0 commentaires

0
votes

Vous devez soit définir isfire = false quelque part dans votre code, ou vous devez utiliser animator.settrigger .

de l'unité de l'unité xxx


0 commentaires

0
votes

En réalité, vous utilisez des déclencheurs, pas des bools, lors de l'animation de ces types d'animations, ce qui devient vrai, puis faux. Copiez le script ci-dessous et modifiez le type de variable en déclencheur de BOOL dans l'onglet Animator dans l'unité. Cela devrait fonctionner. xxx


5 commentaires

Désolé, ce jeu c'est mon passe-temps ... Je travaille tard la nuit dernière ... Je n'ai essayé que ce code maintenant ... mais maintenant ça ne tire pas du tout ... Je dois me rapprocher du code pour voir mon erreur...


vous devez changer la variable pour déclencher de Bool


Allez à l'onglet Animator et ajoutez une variable de déclenchement dans la languette des propriétés de l'animateur et renommez cette variable à Isfire. Supprimer le Bool Isfire déjà créé, puis exécutez le script, cela devrait fonctionner. Supposons que vous vouliez aller à l'état de feu de l'état idéal lorsque la gâchette de pelleanimhash est tirée, puis effectuez la transistion de l'idéal pour tirer et de définir la condition sur Isfire et de faire une transition d'un incendie à l'état idéal sans condition et ne modifiez pas Hasexittime. HasExittime doit être vérifié. Essayez ceci, cela fonctionnera.


.i a fait comme vous avez dit et changer la variable mais maintenant il joue l'animation une seule fois et avant que je clique avec la souris ... et rien de plus .... quand je clique sur la souris il n'y a pas d'animation maintenant ...


Naresh Bisht, ça a fonctionné !! Je devais faire une autre transition dans l'animateur. Merci beaucoup!! :) Je dois résoudre est le retard entre la balle tourné et le mouvement de la main dans l'animation ....