Entrer un code en cliquant sur un clavier "image"

Salut à tous
J’essaie de créer un jeu pont and click assez simple, une énigme, des indices puis un code à saisir (le clavier pour saisir le code est une image interactive).
J’ai crée une variable (VCode) qui devrait si l’on clique sur les bonnes touches évoluer jusqu’à 9 puis qui afficherait l’image finale mais bien sûr ça ne fonctionne pas snif snif
Mon code étant 963000159
J’ai mis en pièce jointe deux captures d’écran de mes codes.


Salut! La réponse est assez simple :wink:
Lorsque tu fais “= valeur”
Tu indiques à ta variable quelle vaudra cette nouvelle valeur.
Ainsi, en faisant “variable = 1” ta variable vaudra 1.
Si la deuxième action fait “variable = 2” ta variable prendra la valeur 2 et non plus 1.
Ce que tu souhaites, c’est que lorsque tu ajoutes le nouveau nombre, ta variable ai toujours l’ancien.
Pour ce faire, il suffit de dire que ta “variable = ta variable + la nouvelle valeur”
Cependant, faire ça avec des nombres revient à procéder à un calcul.
Pour ajouter les nombres sans passer par des opérations, il suffit de déclarer ta variable comme une variable texte.
Ainsi, lors d’un ajout d’un code/chiffre, ta variable = ton code actuelle + nouveau chiffre.

Astuce, pour tester, il est toujours important d’affecter à un objet texte le résultat de ta variable et de l’actualiser en continue, comme un débugger, comme ça tu peux avoir le résultat de ta variable en continue et remarquer le problème.

Dans l’exemple qui suit, lorsque j’appuie sur “a”, ma variable va avoir un “1” en plus, si j’appuie sur b, il ajoutera “2”, non pas comme une addition mais une suite de caractères.

Ps : Dans ton code, tu remarques que ton affection du nouveau nombre à toujours besoin d’avoir le clic gauche de pressé, seul l’interaction avec l’objet change, tu pourrais passer ton “clic gauche” en événement général et les “curseur sur l’object …” en tant que sous événement. Ca te fait des lignes en moins, et c’est ton jeu qui en est plus heureux :stuck_out_tongue:

Si tu as des questions, n’hésites pas. :slight_smile:

Salut Jéjé
Mille mercis pour ta prompte réponse, je m’en va de ce pas mettre en pratique tes précieux conseils.
Encore merci :smiley:

Haha tout le plaisir est pour moi :smiley:
N’hésite pas à mettre un “résolue” dans le titre de ton premier post histoire que les gens soient au courant que c’est fix :stuck_out_tongue:

En fait je dois être un peu concon voire totalement mal comprenant …
J’ai selon tes conseils créé tant bien que mal une variable texte avec mon code (ai-je fais comme il faut?) .(pièce jointe 01)
Quand je teste avec le débogueur, les numéros saisis sont pris en compte mais il commence toujours par inscrire un"0" au début alors que mon code est 963000159 et non pas 0963000159 (pièce jointe 02)
J’ai l’impression que cela fonctionne presque mais en plus, si cela fonctionnait, je ne sais même pas comment comparer le code saisi avec le bon code.
Bref après avoir essayé diverses formules, expressions et autres, je patauge grave et ne sais plus par quel bout prendre le problème (Purée cela doit être quand même facile de rentrer un code et de vérifier si c’est le bon , ce qui serait le point final de mon mini jeu… suis vraiment pas doué ) :angry:
Donc je sollicite une aide pédagogique, didactique pour un sous-doué car j’avance à tâtons sans comprendre ce que je fais… ce qui est le pire car je ne peux pas apprendre si je ne comprends pas. :frowning:
Je reste bien sûr à dispo pour répondre.
La bise.


clavier débogger.JPG

Je te post une réponse claire et expliqué avec la partie code demain avec screenshot. :slight_smile:

Finalement réponse à 5h du matin haha
Alors nous y voilà. L’explication étape par étape.

Tout d’abord la seule variable dont on aura besoin “LeCode”, c’est cette variable qui prendra comme valeur ce que le joueur fait comme code :
LesVariables.png

La scène:
LaScene.png

Et pour finir le code :


Etape 1 : Comme tu l’as remarqué, à la création de ta variable, commencer à vide c’est pas son truc. Pour régler ça, tu lui dis qu’au lancement de la scène ( donc ça ne s’exécute qu’une seul fois et pas en boucle), ta variable LeCode doit devenir vide, car tu vas t’en servir pour créer ton code. Ainsi oust le “0” on peut commencer à tester notre vrai code :smiley:

Etape 2 : Vu que lorsque l’utilisateur fait toujours un clic gauche pour ajouter un nombre, je le met en événement général pour éviter les répétitions de cette action.

Etape 2 a : Si je clic gauche et que ma souris est sur le nombre 1, alors ma variable prendra sa valeur précédente et “1” en plus.

Etape 2 b : Meme chose pour le nombre 2. ( Tu peux donc répéter ça jusqu’à 9 )

Etape 2 c : Si l’utilisateur clic gauche et que la variable LeCode ( variable qui comme tu l’auras compris prend les valeurs que l’utilisateur a rentré ) correspond à un texte souhaité donc dans ton jeu, c’est le code, alors le joueur a bien déchiffré le code. Le code à obtenir du coup ici est “221122”.
Dans mon exemple, si il a juste, les images sont alors supprimées, mais c’est à toi de changer par ce que tu veux qu’il se passe quand l’utilisateur réussi.

En espérant t’avoir redonné de la motivation, si tu as encore des problèmes, n’hésite pas :laughing:

Salut Jeje
Alors là, si je n’arrive pas à finir mon jeu, c’est que je ne le mérite pas et il ne me restera plus qu’à m’inscrire à un atelier canevas point de croix qui sera peut-être à mon niveau d’(in)compétence.
Je suis confus de t’avoir fait travaillé à 5h du mat :blush: et en même temps je suis super content :smiley: de ta sollicitude et de l’intérêt que tu portes à mon petit problème.
Dès que j’aurai mis en pratique la programmation, je fais un édit et j’inscris en gros: RESOLU.
En espérant ne plus t’embêter,… sincèrement merci pour ta bienveillance et ta gentillesse.
La bise

Haha plus d’une fois j’ai eu des problèmes et la communauté m’a aidé
Share your knowledge. It is a way to achieve immortality.
Ne soit pas confus de quoi que ce soit, c’était un plaisir de faire ça :stuck_out_tongue:
Haha parfait :laughing:

Diantre, bigre, fichtre, voila ti pas que je n’arrive pas à éditer le titre du topic …je voudrais mettre que le problème est résolu.
Comment que je fais?

Mon problème est résolu un grand merci à Jeje.

En éditant ton premier poste, tu dois pouvoir modifier le titre du sujet.
Si tu ne peux pas ( je ne vois pas pourquoi :confused: ) ce n’est pas trop grave, ils verront en défilant plus en bas ce topic :wink: