jjacques68 598 Signaler ce message Posté(e) 8 août 2017 (modifié) Bonjour à tous, J'ai un algorithme casse-tête : Je souhaite dans une scène, qui peut être déclenchée par plusieurs VG, exécuter une fonction. La fonction à exécuter est différente suivant le nom de la VG qui fait le déclenchement... Voilà ce que j'ai fait, ça marche mais je trouve ça hyper compliqué !!!!! pour ce que c'est... y a pas moyen de simplifier ?? --[[ %% properties %% events %% globals VG1 VG2 --]] local Trigger=fibaro:getSourceTrigger() --variable Objet contenant les fonctions local Objet = { VG1 = function (self) print("Fonction pour la VG1") end, VG2 = function (self) print("Fonction pour la VG2") end, } --variable contenant les Trigger et les actions associées local VGTrigger = { ["VG1"] = Objet:VG1(), ["VG2"] = Objet:VG2(), } --execution de la fonction pcall(VGTrigger[Trigger.varName]) merci à vous !!! Modifié 8 août 2017 par jjacques68 plantage dans le copier/coller Partager ce message Lien à poster Partager sur d’autres sites
PdB 22 Signaler ce message Posté(e) 9 août 2017 Bonjour, Pas simple en effet!!! Voici ce que j'utilise pour le même résultat: --[[ %% properties %% events %% globals VG1 VG2 --]] local Trigger=fibaro:getSourceTrigger() if Trigger["varName"] == "VG1" then print("action pour la VG1") end if Trigger["varName"] == "VG2" then print("action pour la VG2") end Partager ce message Lien à poster Partager sur d’autres sites
jjacques68 598 Signaler ce message Posté(e) 9 août 2017 Ah ok vu comme ça je restais bloqué sur des fonctions je sais pas pourquoi Envoyé de mon iPhone en utilisant Tapatalk Pro Partager ce message Lien à poster Partager sur d’autres sites
pepite 1 272 Signaler ce message Posté(e) 9 août 2017 Bonjour, Le résultat est le même Mais ta solution fait : WAOUW le developpeur ;-) Partager ce message Lien à poster Partager sur d’autres sites
jjacques68 598 Signaler ce message Posté(e) 9 août 2017 oui en effet 1 Partager ce message Lien à poster Partager sur d’autres sites