|
| Démarches
|

Je réalise un jeu.
Voici mes procédures:
pour depart
rg vt vc df
suite
continuer
fin
pour suite
lc fforme 37 fcap 90
fin
pour continuer
si touche? [donne "a ascii liscar]
si :a = 333 [fcap 90]
si coorx = 150 [fcap 270]
si coorx = -150 [fcap 90]
av 1 attends 1
continuer
fin
Lorsque je rentre dans la page pour la première fois, je reçois un message d'erreur a n'a pas de valeur dans continuer
c'est normal !
à la 2e. ligne de la procédure "continuer" tu dis si :a = 331 [fcap 270]
Tu vas donc voir ce que contient la variable (la boîte) "A, or elle n'existe même pas lorsque tu commences ton jeu !
En effet, l'ordinateur ne retient pas les variables et leur contenu d'une séance à l'autre !
Il te faut donc absolument recréer ta variable dès le début de ton programme, quitte à ne rien mettre dedans !
Sinon tu auras toujours un message d'erreur parce que l'ordi ne trouve pas la variable dont tu parles.
Pour créer une variable vide (une boîte vide), tu écris le plus tôt possible (par exemple à la première ligne de la procédure DEPART ) DONNE "A " (tu écris un guillemet avec rien derrière )
Lorsque la forme arrive à 150 ou -150 elle effectue un mouvement vers la droite puis vers la gauche (de 1) et reste bloquée à ce stade .
Encore normal ...
comme toujours en informatique !
Tu dis dans ta procédure CONTINUER que si la variable "A contient 333 il faut aller vers le cap 90.
Alors, même si tu es arrivé à la coordonnée X = 150 , la tortue fichera le camp vers la gauche, mais UNE SEULE FOIS !
En effet, puisque ton programme recommence à l'infini, dès que l'ordinateur relis la deuxième ligne de ta procédure (si :a = 333 [fcap 90] ) la tortue repart vers la droite.
En effet tu as oublié de remettre ta variable à zéro, c'est à dire, lui faire "oublier" qu'il y avait 333 dedans !
Tu devrais donc rajouter DANS les crochets de cette ligne de programme DONNE "A "
|
|
|