[Unity] bouton enfoncé
Fermé
docteur_nemo
Messages postés
21
Date d'inscription
vendredi 7 juillet 2017
Statut
Membre
Dernière intervention
17 juillet 2018
-
Modifié le 17 juil. 2018 à 16:36
Utilisateur anonyme - 17 juil. 2018 à 18:57
Utilisateur anonyme - 17 juil. 2018 à 18:57
3 réponses
Utilisateur anonyme
17 juil. 2018 à 16:49
17 juil. 2018 à 16:49
Bonjour,
Je ne connais pas Unity, mais C# oui.
Je te propose une solution basée sur Winform, en espérant que cela puisse s’adapter à Unity.
Il existe les événements MouseDown et MouseUp.
On peut aussi utliser des timers (y’en a plusieurs sortes).
Voici le principe, il y a une méthode Avancer
Dans l’événement MouseDown
Le timer doit avoir un intervalle ni trop rapide ni trop lent 100 à 200 ms me parraissent bien, mais c’est à tester.
Dans la méthode abonnée au timer (Tick, Elasped, etc selon le type de timer)
Et enfin dans le MouseUp du bouton
Ainsi dès que le bouton est enfoncé, le personnage avance.
Puis le timer va faire avancer le personnage tous à chaque déclenchement, jusqu’à ce que le bouton soit relâché.
Je ne connais pas Unity, mais C# oui.
Je te propose une solution basée sur Winform, en espérant que cela puisse s’adapter à Unity.
Il existe les événements MouseDown et MouseUp.
On peut aussi utliser des timers (y’en a plusieurs sortes).
Voici le principe, il y a une méthode Avancer
private void Avancer() { // ici tout le code pour avancer une fois. }
Dans l’événement MouseDown
Avancer(); timerAvancer.Start(); // ou .Enabled = true selon le type de timer
Le timer doit avoir un intervalle ni trop rapide ni trop lent 100 à 200 ms me parraissent bien, mais c’est à tester.
Dans la méthode abonnée au timer (Tick, Elasped, etc selon le type de timer)
Avancer();
Et enfin dans le MouseUp du bouton
timerAvancer.Stop();
Ainsi dès que le bouton est enfoncé, le personnage avance.
Puis le timer va faire avancer le personnage tous à chaque déclenchement, jusqu’à ce que le bouton soit relâché.