π
<-
Chat plein-écran
[^]

Plein de questions compliquées (pour moi en tout cas ^^ )

Pour TI-Nspire OS 3.0 ou ultérieur.

Plein de questions compliquées (pour moi en tout cas ^^ )

Message non lude Orian » 27 Fév 2016, 00:04

Salut,
Ceci est un topic où je vais poser 4 questions (voire plus plus tard) sur le lua car là je suis coincé dans mon programme (en image, s'il vous plait).
Pour commencer, voici une image du programme, histoire que vous compreniez à peu près ce que je dis (je dis pas à quoi servira le programme une fois fini, c'est une surprise :P ) Image
Tout les carrés sont censé être bleu, le rouge est déplaçable, il indique notre position

Maintenant, place aux questions :D

-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-


NUMBER 1 (là c'est pour faire un anti-erreurs) :
l'une des fonctions de ce programme est de remplir le carré où l'on est positionné avec du vert (si si, c'est super utile ) comme suit :

Image etape 1

Image etape 2

Image etape 3

Et ainsi de suite, comme un serpent. La question est : comment puis-je empêcher que le carré colorié en vert à l'étape 2 soit remis en bleu SI le carré de l'étape 3 n'est pas remis en vert ? Autrement dis, si l'on considère tout les carrés vert comme appartenant à une chaîne, comment empêcher qu'un carré de millieu de chaîne soit remis en bleu ? le but est de pouvoir remettre en bleu uniquement le dernier carré de la chaîne afin de ne pas avoir de trou (je ne suis pas sûr d'être claire)

NUMBER 2 (bon, ce que je souhaite faire ici, c'est surtout pour que mon programme soit propre dans l'ensemble) :
Image

Voici une belle boîte de dialogue (capture d'écran de TabVar) comment puis-je en ouvrir une en Lua ?

NUMBER 3 (Mais pas forcément la plus utile, c'est surtout pour l'ergonomie) :
Une fois que j'ai créé un menu avec
Code: Tout sélectionner
toolpalette.register(Menu)

Comment puis-je ouvrir mon menu en appuyant le bouton central du touchpad ?

NUMBER 4 (Alors là c'est la plus importante, c'est là dessus que repose le principal des anti-erreurs prévu) :
Admettons que l'on ai un menu à 8 options. Je souhaite bloquer certaines options de ce menu en fonctions de certaines conditions, par "bloquer", j'entend option inutilisable, en gris, comme les options 1 3 et 5 sur la photo, vous remarquerez le skill exceptionnelle (ou pas) en photo-montage pour cacher tout source de spoil :P

Image

J'explique plus en détail ce que je cherche à faire : il y a trois conditions A, B, et C. si la condition A n'est pas vérifiée, les options 1 et 3 sont bloquées, si la condition B n'est pas vérifiée, l'option 6 est bloquée... et ainsi de suite, sachant que les conditions sont indépendantes. Voici l'une de mes tentatives infructueuses, seul les blocages de la première condition sont appliqué, et ceux peu importe que la condition soit vérifiée ou pas :

Code: Tout sélectionner
if nombreDeCarreVert == 1 then
    toolpalette.enable("Options :", "Option 1", false)
    toolpalette.enable("Options :", "Option 3", false)
elseif nombreDeCarreVert == 2 then
    toolpalette.enable("Options :", "Option 6", false)
...


Mais ça marche pas :/

-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-

Voilà, l'ai poser toutes mes questions. Il me reste à préciser que l'option "faire un menu comme ProbasMaster ou FormulaPro" est la solution de dernier recours puisque ce programme est pour moi un énorme exercice sous forme de projet.

D'avance merci, et désolé pour l'énorme pavé que je viens d'écrire :)
Avatar de l’utilisateur
OrianPremium
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Prochain niv.: 48.1%
 
Messages: 56
Inscription: 05 Juil 2015, 15:35
Localisation: 5/2
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile
Classe: PC

Re: Plein de questions compliquées (pour moi en tout cas ^^

Message non lude Adriweb » 27 Fév 2016, 02:42

Salut,

1) Pas sûr d'avoir bien compris, mais si tu gardes l'état de la grille dans une table 2D (table de table), donc genre grid = { {0,0,1}, {1,0,1}, {1,1,0} } par exemple, après dans le on.paint tu n'as plus qu'à t'occuper de dessiner ce qu'il faut en fonction de l'état de chaque valeur de la table (et tu peux avoir d'autres valeurs que 0 ou 1 selon ce que tu veux...)

2) On ne peut pas... directement. Je sais que c'est un peu embêtant, mais tu peux regarder du côté des D2Editor pour avoir un input mathématique directement: https://wiki.inspired-lua.org/Category:D2Editor Il y a un tutorial ici : http://compasstech.com.au/TNS_Authoring ... tut22.html

3) On ne peut pas non plus - il n'y a que la touche :nsme: qui va l'ouvrir

4) Ce code devrait fonctionner - vérifie que tu as bien écris les bons noms, et que ce code est appelé/exécuté lorsque change nombreDeCarreVert.
Image

MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)
Avatar de l’utilisateur
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 80.1%
 
Messages: 14605
Images: 1216
Inscription: 01 Juin 2007, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Twitter/X: adriweb
GitHub: adriweb

Re: Plein de questions compliquées (pour moi en tout cas ^^

Message non lude Orian » 27 Fév 2016, 16:50

Salut Adriweb, merci de ta réponse,

Bon, on va continuer sous forme de liste de question / réponse ^_^ :

1) Alors non pas bien compris, car je viens de me rendre compte que je me suis mal exprimé, désolé, je vais corriger tout ça. :)
Le problème n'est pas lié à on.paint, chaque carré est en fait une classe dont l'une des composante indique la position de ce carré (position 0 si le carré n'est pas dans la chaîne) dans la chaîne, l'objectif est d'empêcher un carré vert de milieu de chaîne de repasser à la position 0 :

Code: Tout sélectionner
{1, 2, 3, 4, 5, 6, 7, 8}   -- ce que l'on doit faire pour repasser le cinquième carré en bleu
{1, 2, 3, 4, 5, 6, 7}
{1, 2, 3, 4, 5}
{1, 2, 3, 4}

{1, 2, 3, 4, 6, 7, 8}  -- la chaîne qu'il ne faut pas avoir


avec des mots maintenant : si je veux repasser le cinquième carré vert en bleu, je dois repasser les carré 8, 7, et 6 en bleu (dans cet ordre) afin de ne pas avoir de saut dans la chaîne comme illustré à la ligne 6.
Voilà, j'espère avoir été un peu plus clair. :)

2) Donc là, effectivement c'est embêtant, peut-être que TI pensera à y remédier dans une future MàJ, donc pour l'instant je me contenterai d'un solution qui réduira un peu les possibilité car m'intéressé au D2Editor tout de suite risquerai de me faire dépasser la date limite que je me suis fixé, mais ça pourrait être intéressant, plus tard, de créer une fonction qui nous fait une belle boîte de dialogue avec D2Editor. :)

3) bon bah là, il y a pas trop le choix, tant pis, mon programme ne sera pas contrôlable uniquement avec le touchpad. ^=^

4) Et là c'est ma faute : le code n'est pas exécuté à chaque changement du nombre de carré vert, je l'ai laissé comme ça juste après les lignes qui définissent le menu, ça risquait pas d'être activé. ^_^ ''

Donc merci beaucoup, je vais pouvoir avancer maintenant, j'ai même trouvé une solution pour la question : comme les carrés "connaissent" leurs positions dans la chaîne, il suffit d'incrémenter une variable positionMAX à chaque fois qu'un carré est colorié et ensuite de comparé la position du carré avec la valeur de positionMAX .:D
Avatar de l’utilisateur
OrianPremium
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Prochain niv.: 48.1%
 
Messages: 56
Inscription: 05 Juil 2015, 15:35
Localisation: 5/2
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile
Classe: PC


Retourner vers Nspire-Lua

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 7 invités

-
Rechercher
-
Social TI-Planet
-
Sujets à la une
Comparaisons des meilleurs prix pour acheter sa calculatrice !
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
Phi NumWorks jailbreak
123
-
Faire un don / Premium
Pour plus de concours, de lots, de tests, nous aider à payer le serveur et les domaines...
Faire un don
Découvrez les avantages d'un compte donateur !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partenaires et pub
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
1676 utilisateurs:
>1657 invités
>14 membres
>5 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Autres sites intéressants
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)