J'ai poster sur openClasseRoom mais je viens ici car ca concerne Unity
Alors j'ai un problème, je suis entrain de faire un petit programme, une sorte de roulette russe avec une flèche.
Tout fonctionne a l'aide du clavier, mais des que j'importe le joystick, ça bug.
C'est a dire que mon problème est :
Que ça fonctionne que dans un sens, je n'arrive a tourner qu'a droite.
Si j'actionne le joystick gauche vers la gauche, ça tourne a droite.
Si je lâche tout, la flèche tourne toute seul dans le bon sens, et dès que je veux encore tourner a gauche, hop elle repart a droite, je relâche hop elle repart a gauche.
Bon pour le deuxième problème c'est parce que dans la condition je dit que, "si je n'utilise pas le joystick alors tourne a gauche"
Je n'arrive pas a déterminer quand la direction du joystick passe a gauche ou a droite de l'axe.
Voici le code:
Code : Tout sélectionner
float joy = Input.GetAxis ("Horizontal");
if (Input.GetKey (KeyCode.RightArrow) || joy !=0)
{
vitesseGiration += 0.1f * Time.deltaTime;
}
else if (Input.GetKey (KeyCode.LeftArrow) || joy ==0)
{
vitesseGiration -= 0.1f * Time.deltaTime;
giration.transform.Rotate (new Vector3 (0, -joy, 0));
}
else
{
vitesseGiration -= 0.01f * Mathf.Sign(vitesseGiration) * Time.deltaTime;
if (Mathf.Abs(vitesseGiration) <= vitesseMinimumGiration)
{
vitesseGiration = 0.0f;
}
}
giration.transform.Rotate (new Vector3 (0, vitesseGiration, 0));