Aller au contenu
Laurent2a

besoin de votre aide en LUA svp

Recommended Posts

Bonjour à tous !

 

J'essaie désespérément d'incrémenter le nom d'une variable pour en utiliser le contenu et modifier en série une liste de variables.

pour l'exemple j' ai les variables mvt1H qui contient l'heure d'une mouvement de volet, mvt1M contient les minutes du même mouvement et ainsi dessuinte pout le second mouvement qui sera représenté par mvt2H et mvt2M...

à partir de là je fais une boucle où je vais modifier en série les heures de mouvement.

Dans une variable (mvtH pour les heures ou mvtM pour les minutes) je recompose le nom de ma variable cible ce qui me permettra ensuite de pouvoir incrémenter la partie numérique de la variable pour passer à la suivante (mvt1H à mvt2H par exemple) une fois le mouvement 1 modifié.

mvtH contient bien pour le premier mouvement "mvt1H" et contiendra bien "mvt2H" pour le second mouvement mais comment faire pour utiliser cela pour récupérer LA VALEUR de la variable dont j'ai recomposé le nom... pour le mouvement 1 il me faut récupérer le 08 de mvt1H et le 12 de mvt1M pour lancer mes modifications et passer au mouvement 2.

 

je plante complètement...

 

merci d'avance pour vos idées et bonne journée

 



local i = 1
local TotalVar = 4 -- pour les 6 variables de mouvement pour le test
mvt1H="08"	--heure mouvement 1
mvt1M="12"	--minute mouvement1
 mvt2H="08" 	--heure mouvement 2
mvt2M="30"	--minute mouvement2
 mvt3H="09" 	--heure mouvement 3
mvt3M="40"	--minute mouvement3

while i < TotalVar do
  
mvtH="mvt" ..i .."H" -- c'est là que je ne sais pas faire comprendre que je veux la valeur  08 pour le premier mouvement et pas mvt1H
mvtM ="mvt" ..i .."M" -- et puis là du coup ou je souhaite récupérer 12 quand j'appelle mvtM qui doit me remonter la valeur de mvt1M
fibaro:debug (mvtM)
fibaro:debug (mvtH)
 -- à partir de la comment récupérer la valeur de mvt1H et mvt1M pour lancer mes modifications ?
i=i+1
  end

 

Modifié par Laurent2a

Partager ce message


Lien à poster
Partager sur d’autres sites

il me semble qu'on appelle ça les "indirections".

Je suis sûr que ce soit possible en LUA.

 

ce serait plus simple d'utiliser un tableau avec tes 6 valeurs !!

et une boucle qui parcourt ce tableau.

 

Partager ce message


Lien à poster
Partager sur d’autres sites
il y a une heure, jjacques68 a dit :

il me semble qu'on appelle ça les "indirections".

Je suis sûr que ce soit possible en LUA.

 

ce serait plus simple d'utiliser un tableau avec tes 6 valeurs !!

et une boucle qui parcourt ce tableau.

 

Bonsoir jjacques68 et merci beaucoup pour ta réponse!

En effet je peux utiliser un tableau, les 6 valeurs sont pour l'exemple, il y en a bien plus mais en effet un tableau balayé par une boucle peut parfaitement fonctionner, par contre comment puis-je stocker le résultat dans un nouveau tableau ? je suis novice en Lua désolé.

l'idée générale est la suivante. j'ai une série d'heures correspondants à des mouvements de volets. je veux modifier ces heures en y ajoutant un nombre de minute aléatoire mais ces nouveaux horaires doivent être mis à jour soit dans des variables soit dans un tableau (c'est plus propre) afin d'être utilisés comme déclencheurs dans ma scène de gestion de volets. 
j'ai testé avec le tableau que tu m'as conseillé, tout fonctionne jusqu'au moment où je doit sauvegarder l'heure calculée avant de passer à la suivante. 

donc saurais tu comment changer le nom de la variable contenant l'horaire calculé à chaque tour de boucle ou comment sauvegarder cela dans un tableau ?
encore merci pour ton aide.

  • Like 1

Partager ce message


Lien à poster
Partager sur d’autres sites

×