[Résolu] Plusieurs clicks pour changer de couleur

Bonjour à toutes et à tous,
Je débute avec Gdevelop et je rencontre un problème que je n’arrive pas résoudre.
je veux cliquer sur un texte pour qu’un autre texte change de couleur : 1 click pour qu’il passe du noir au rouge, un autre click pour qu’il passe du rouge au noir.

ça marche lorsque j’entre la condition pour passer du noir au rouge, mais dès lors que j’ajoute les conditions pour mon second click pour passer du rouge au noir, rien ne se passe, le texte reste noir.

voici les événements

par avance merci.

Try
Condition 1
The cursor/touch is on ChangeDeCluloeur
---- Subcondition
Left mouse…
The Text of = “noir”
Trigger Once

Condition 2
The cursor/touch is on ChangeDeCluloeur
---- Subcondition
Left mouse…
The Text of = “rouge”
Trigger Once

Pour info, les pavés de conditions 1 et 2 sont exécutés en même temps, ce qui entre en contradiction avec les actions situées “Change color…” et “Change the text…”

A+

Merci pour la réponse,
du coup j’ai essayé ça :
evenements%202%20clicks%20et%20subconditions
mais ça ne marche pas.

You need to add Trigger Once along with the Left mouse was released

Merci pour la piste.
Peut-on faire en sorte qu’il traite les conditions une après l’autre ?

J’ai essayé :


mais ça ne marche pas non-plus.

j’ai essayé de bien différencier les 2 conditions : dans l’une la variable couleur est noir, dans l’autre elle est rouge. Dans ma logique, même si elles s’opèrent en même temps : une seule peut être valide. Mais rien ne se passe. :frowning_face:
ça donne ça

Il faut toujours grouper ce qui est commun, comme par exemple ici pour les conditions (ces images sont des montages) :
Conditions :
image



Actions :

Ajoute aussi 1 “Trigger once” juste à la fin du 1er pavé de conditions

Je viens d’essayer, mais ça ne marche pas. ça marche quand il n’y a que la première sous-condition, mais dès que j’ajoute la deuxième, plus rien ne se passe.


:sweat:

Raisonnons logiquement : si seul le 1er cas fonctionne, j’en déduis que la variable globale vaut toujours “noir”.
Donc, cela voudrait dire qu’il manque quelque chose à ton code comme sans doute des “Trigger Once” aux bon endroit.
Essaie d’en mettre à la fin de chacune des sous-conditions.
Si persistence d’un problème, faudra aller voir du côté du débogueur de GDevelop pour examiner pas à pas le changement de la variable “couleur”

La couleur est noire au début, puis passe au rouge, puis repasse aussitôt au noir. C’est le bloc dans son ensemble qui est exécuté une fois.
Pour régler le problème, tu peux par exemple regarder le doElse de l’image suivante :

j’ai testé les Trigger Once à toutes les conditions, pareil…

Je pensais justement que ma variable couleur=“noir”/ ou couleur=“rouge” faisait un peu la même chose que dans ton exemple. Je dois sûrement mal utiliser les variables dans ce process (mal placées peut-être)…

Dans mon exemple, qui n’est pas le mien d’ailleurs, ton rouge/noir correspond à flip horizontally oui/non.

J’ai finalement trouvé une solution à ce problème.
La variable “couleur” passe par 3 états “rouge” “noir” “noir encore” et la souris alterne entre du release et du press.
ça donne ça :

merci pour les pistes

1 Like