Comment vérifier la valeur d'une variable ?

Questions à propos du scripting. Hors Shader, GUI, Audio et Mobile.
EdLooping
Messages : 49
Inscription : 07 Juin 2017 01:53

Comment vérifier la valeur d'une variable ?

Message par EdLooping » 07 Juin 2017 19:23

Bonjour. Je débute sur Unity et en c# et après quelques recherches y a un truc tout bête que je comprends pas.
Imaginons une scène où je place un cube. Ce cube par exemple il va être bleu. Je lui attribue une variable "PointDeVie" qui va de 0 à 100.
Et je veux par exemple que quand la variable PointDeVie est égale à 8 et seulement à 8 il devienne rouge.

En basic j'aurais tout simplement écrit :

Code : Tout sélectionner

if (PointDeVie = 8)
{
	Blablabla...
}
mais en c# comment on fait ?
J'ai déclaré ma variable en private float PointDeVie;
Et si j'écris ça, ça me dit qu'on peut pas transformer un float en bool.
Mais bool c'est juste false ou true, donc 0 et 1.
Comment on fait sur une variable float ou int ?
Je sais c'est vraiment con comme problème et tout simple. Juste une erreur de syntaxe je pense.
Merci de vos réponses !!

Nazarick
Messages : 60
Inscription : 03 Avr 2017 21:44

Re: Comment checker la valeur d'une variable ?

Message par Nazarick » 07 Juin 2017 19:56

EdLooping a écrit : if (PointDeVie = 8)
{
   Blablabla...
}
Si tu dois comparer (donc ce que tu fais dans une condition), utilises l'opérateur "==" et non simplement "=" qui te permet d'assigner une valeur à une autre.

Code : Tout sélectionner

        private int lifePoint;

        private void JustDoIt()
        {
            if(lifePoint == 8)
            {
                GetComponent<SpriteRenderer>().color = Color.red;
            }
        }

EdLooping
Messages : 49
Inscription : 07 Juin 2017 01:53

Re: Comment vérifier la valeur d'une variable ?

Message par EdLooping » 08 Juin 2017 19:30

C'était vraiment tout con. Merci !!

Avatar de l’utilisateur
ZJP
Messages : 5748
Inscription : 15 Déc 2009 06:00

Re: Comment vérifier la valeur d'une variable ?

Message par ZJP » 09 Juin 2017 14:57

EdLooping a écrit :...J'ai déclaré ma variable en private float PointDeVie;
Cela à déjà fait l'objet de nombreuses discutions (*) que je résume en une phrase (et un lien :mrgreen: ) : "Éviter de faire des comparaisons d’égalité avec des Floats"

(*) Exemples :
viewtopic.php?f=7&t=1171&p=4797
viewtopic.php?f=7&t=11323 (A lire !!!!! )

Répondre

Revenir vers « Scripting »