Annonce

Réduire
Aucune annonce.

Comment retrouver une commande à partir du bouton d'un appareil ?

Réduire
X
 
  • Filtre
  • Heure
  • Afficher
Tout nettoyer
nouveaux messages

  • Comment retrouver une commande à partir du bouton d'un appareil ?

    Bonjour,
    J'ai cherché désespérément les commandes des boutons pour me créer des raccourcis - je ne trouve pas les commandes des avionics masters (au plafonnier) EC135 V5. Est-ce que quelqu'un saurait comment retrouver une commande à partir du bouton d'un appareil ?

  • #2
    Salut,

    Je n'ai pas la solution, mais la Dataref existe c'est: rotorsim/ec135/avionics [0,0]
    Donc il faudrait créer un script Lua avec create_command() pour avoir un raccourci joystick ou clavier.
    Hélas je ne sais pas le faire, mais peut-être que quelqu'un sur ce forum pourra t'aider.
     Catalina Hotas Warthog Palonnier TPR

    Commentaire


    • #3
      Salut !

      Je ne peux pas tester mais le script ressemble à celui ci pour affecter un switch au clavier ou joystick .

      je me suis inspiré de cette page sur XP.org

      Code:
      -- Check if we are in the ec135 aircraft, you can have multiple of these for different aircraf inside a single script
      if (PLANE_ICAO == "ec135") then
      	
      	-- Create a callback function that we will call with our button
      	function AceKEY_Avionics_On()
      	-- This is where the magic happens - command_once() will call whatever Xplane command you need.
      	command_once("rotorsim/ec135/avionics")
      	end
      	-- Register the command into Xplane
      	create_command("FlyWithLua/AceKEY/Avionics_On", "Avionics_On", "AceKEY_Avionics_On()", "", "")	
      
      	-- This is the same thing for the Down action
      	function AceKEY_Transponder_Off()
      		command_once("rotorsim/ec135/Avionics_Off")
      	end
      	create_command("FlyWithLua/AceKEY/Avionics_Off", "Avionics_Off", "AceKEY_Avionics_Off()", "", "")	
      end
      il faut changer .txt par .lua
      scriptavionics.txt
      Dernière modification par playrec, 17 avril 2021, 12h48. Motif: ajout fichier
      XP12.09rc5 - Zibo.4.00.12 - ZHSI - FDStoXP - Midwest plugin - FSCB737TQ - Sismo Connector - xATC Chatter - Simheaven - Traffic Global
      pc1-xp - i7 8700k 4,8 GHz - Win10pro - Asus Maximus X - 64go ram - gtx 1080ti - ssd - 2x32" lcd Asus pb328q 2x2560x1440
      pc2-zhsi - i5 4590 - 24go ram - GT710 - LittleNavmap 24" + 4x lcd mip+ 2x5" cdu

      B737 OEM siège → cpt-f/o ← Ace B737 column yoke - FDS full mip + 2 cdu - CPFlight mcp/efis/pedestal - Sismo fwd/aft overhead - FSC non motorized TQ - palonnier MFG

      Commentaire


      • #4
        Je ne pense pas que cela fonction,
        Déjà le code ICAO c'est "ec35" mais ce n'est qu'un détail ;)

        Et à rotorsim/ec135/avionics il faut envoyer comme valeur: [1,1]
        C'est une valeur de Type: int[2]
        Donc dans le cas présent, [0,0] pour les deux switch des avionics sur off
        Et [1,1] pour les deux sur ON
         Catalina Hotas Warthog Palonnier TPR

        Commentaire


        • #5
          J'ai trouvé la solution, je te prépare un script Lua dès que possible ;)
           Catalina Hotas Warthog Palonnier TPR

          Commentaire


          • #6
            Pour répondre à ta question de base, quand il n'y a pas de raccourci pour un bouton, moi je recherche une Dataref qui pourrait correspondre, avec le plugin DataRefTool.
            Et après on peut essayer de créer un script Lua pour combler ce manque.

            Le script suivant met sur On ou Off les deux Avionics en même temps.
            Il est facilement modifiable si tu veux que les Avionics soient indépendants.

            Tu places le script dans le dossier script du plugin FlyWithLua, tu peux par exemple le nommer : EC35_Avionics.lua
            Puis tu trouveras les raccourcis dans + ec135 overheadpanel

            Code:
               if (PLANE_ICAO == "EC35") then
            
            function Avionics_on()
            set_array("rotorsim/ec135/avionics", 0, 1)
            set_array("rotorsim/ec135/avionics", 1, 1)
            end
            
            create_command("ec135/overheadpanel/Avionics_on", "Avionics on", "Avionics_on()", "", "")
            
            function Avionics_off()
            set_array("rotorsim/ec135/avionics", 0, 0)
            set_array("rotorsim/ec135/avionics", 1, 0)
            end
            
            create_command("ec135/overheadpanel/Avionics_off", "Avionics off", "Avionics_off()", "", "")
            
            
               end
            Voilà ;)
             Catalina Hotas Warthog Palonnier TPR

            Commentaire


            • #7
              Bonsoir,
              Merci pour vos réponses. J'avoue que tout ça me dépasse - je ne maitrise pas du tout les scripts dans X-Plane.
              Je n'ai pas trouvé dans de plugin FlyWithLua dans mon X-Plane.
              Voici ce que j'ai dans le dossier Aircraft : EC 135 V5 EMS\plugins\ec135 :
              Cliquez sur l'image pour la voir en taille réelle 

Nom : 		Sans titre.png 
Affichages :	1 
Taille :		11,4 Ko 
ID : 			470582
              Je ne vais pas retourner sur X-Plane mais je regarderai demain...
              Encore merci et j'espère que j'arriverai à comprendre la logique du truc car j'ai pas mal de touches à rajouter que je ne trouve pas dans les appareils

              Commentaire


              • #8
                Envoyé par TXS Voir le message
                Pour répondre Ã* ta question de base, quand il n'y a pas de raccourci pour un bouton, moi je recherche une Dataref qui pourrait correspondre, avec le plugin DataRefTool.
                Et après on peut essayer de créer un script Lua pour combler ce manque.

                Le script suivant met sur On ou Off les deux Avionics en même temps.
                Il est facilement modifiable si tu veux que les Avionics soient indépendants.

                Tu places le script dans le dossier script du plugin FlyWithLua, tu peux par exemple le nommer : EC35_Avionics.lua
                Puis tu trouveras les raccourcis dans + ec135 overheadpanel

                Code:
                   if (PLANE_ICAO == "EC35") then
                
                function Avionics_on()
                set_array("rotorsim/ec135/avionics", 0, 1)
                set_array("rotorsim/ec135/avionics", 1, 1)
                end
                
                create_command("ec135/overheadpanel/Avionics_on", "Avionics on", "Avionics_on()", "", "")
                
                function Avionics_off()
                set_array("rotorsim/ec135/avionics", 0, 0)
                set_array("rotorsim/ec135/avionics", 1, 0)
                end
                
                create_command("ec135/overheadpanel/Avionics_off", "Avionics off", "Avionics_off()", "", "")
                
                
                   end
                VoilÃ* ;)
                Un énorme MERCI ! ça fonctionne !
                J'ai téléchargé le plugin : https://forums.x-plane.org/index.php.../&_fromLogin=1
                Maintenant, j'essaie de comprendre le plugin DataRefTool pour appliquer la méthode Ã* d'autres touches.
                Un grand MERCI !

                Commentaire


                • #9
                  Pour les dataref, j'ai installé :
                  - datareftool : https://github.com/leecbaker/datareftool/releases
                  - DataRefEditor : https://www.xsquawkbox.net/xpsdk/med...itor_12-11.zip

                  J'ai ensuite cherché à faire un script pour affecter une touche à la batterie (qui n'est pas un array mais une value) :
                  Code:
                  dataref("battery_switch", "rotorsim/ec135/battery", "writeable")
                  if (PLANE_ICAO == "EC35") then
                  	function battery()
                  		if (battery_switch == 1) then
                  			battery_switch = 2
                  		else
                  			battery_switch = 1
                  		end
                  		return
                  	end
                  end
                  create_command("ec135/overheadpanel/Battery", "Battery", "battery()", "", "")
                  ça fonctionne mais si vous avez des suggestions de simplification, je suis toujours preneur.

                  Commentaire


                  • #10
                    Je ne suis pas un pro des scripts, mais pour un bouton poussoir, je pense que c'est parfait. Moi j'ai des switches donc j'aurais fait autrement :
                    Code:
                       if (PLANE_ICAO == "EC35") then
                    
                    -- Avionics
                    
                    	function Avionics_on()
                    set_array("rotorsim/ec135/avionics", 0, 1)
                    set_array("rotorsim/ec135/avionics", 1, 1)
                    end
                    
                    create_command("ec135/overheadpanel/Avionics_on", "Avionics on", "Avionics_on()", "", "")
                    
                    function Avionics_off()
                    set_array("rotorsim/ec135/avionics", 0, 0)
                    set_array("rotorsim/ec135/avionics", 1, 0)
                    end
                    
                    create_command("ec135/overheadpanel/Avionics_off", "Avionics off", "Avionics_off()", "", "")
                    
                    	
                    -- Battery
                    	
                    	function battery_on()
                    	set("rotorsim/ec135/battery", 2)
                    	end
                    	
                    create_command("ec135/overheadpanel/Battery_on", "Battery on", "battery_on()", "", "")
                    	
                    	function battery_off()
                    	set("rotorsim/ec135/battery", 1)
                    	end
                    	
                    create_command("ec135/overheadpanel/Battery_off", "Battery off", "battery_off()", "", "")
                    
                    	end

                    Si tu veux, et je pense que c'est mieux, tu peux grouper les raccourcis dans le même script.
                     Catalina Hotas Warthog Palonnier TPR

                    Commentaire


                    • #11
                      Merci TXS pour avoir trouvé la solution !
                      XP12.09rc5 - Zibo.4.00.12 - ZHSI - FDStoXP - Midwest plugin - FSCB737TQ - Sismo Connector - xATC Chatter - Simheaven - Traffic Global
                      pc1-xp - i7 8700k 4,8 GHz - Win10pro - Asus Maximus X - 64go ram - gtx 1080ti - ssd - 2x32" lcd Asus pb328q 2x2560x1440
                      pc2-zhsi - i5 4590 - 24go ram - GT710 - LittleNavmap 24" + 4x lcd mip+ 2x5" cdu

                      B737 OEM siège → cpt-f/o ← Ace B737 column yoke - FDS full mip + 2 cdu - CPFlight mcp/efis/pedestal - Sismo fwd/aft overhead - FSC non motorized TQ - palonnier MFG

                      Commentaire


                      • #12
                        Oui un grand MERCI à TXS - ça m'a bien servi...

                        Maintenant, je commence à chercher à avoir accès directement aux commandes (avec python) sans passer par des raccourci clavier pour affecter des boutons Touch Portal qui est un genre de streamDeck. Mais c'est chaud

                        Commentaire


                        • #13
                          Merci, et quel courage ! Moi je préfère ne pas trop mettre mon nez dans le cambouis pour passer plus de temps à faire des balades en hélicoptère.
                          Et comme la solution avec les scripts Lua font l’affaire, je m’en contente.
                          Par contre je suis preneur si tu trouves des trucs ;)
                           Catalina Hotas Warthog Palonnier TPR

                          Commentaire


                          • #14
                            Envoyé par TXS Voir le message
                            Merci, et quel courage ! Moi je préfère ne pas trop mettre mon nez dans le cambouis pour passer plus de temps à faire des balades en hélicoptère.
                            Et comme la solution avec les scripts Lua font l’affaire, je m’en contente.
                            Par contre je suis preneur si tu trouves des trucs ;)
                            Pour l'instant, j'ai quelques lignes de script en python (activé par touch portal) qui modifient le .lua puis touch portal actionne la touche raccourci de reload de FlyWithLua qui met à jour le script .lua et actionne le bouton. Ensuite, avec l'activation des bonnes dataref, j'ai un script python (toujours activé par touch portal) et qui récupère l'état de la variable (bouton) qui a normalement changé -> confirmation à touch portal que le bouton a bien bougé -> actualisation de l'affichage touch portal du bouton en position allumé s'il était éteint.
                            Mais c'est un peu lourd. J'aimerais récupérer une dataref directement dpuis x-plane et renvoyer (par python) une commande vers x-plane sans passer par FlyWithLua. Mais je cherche encore...
                            Si je réussi à produire une truc fiable, je pourrai te fournir les bases de python - et peut-être un jour créer un plugin tout prêt...

                            Commentaire


                            • #15
                              Salut,

                              Je ne sais pas si c'est hors sujet mais voilà :

                              J'ai appris récemment, en utilisant FlyWithLua, comment dialoguer avec les instruments (p.e. SAITEK et GOFLIGHT) qui se connecte via USB. Si c'est une piste à explorer, je peux partager mon expérience.

                              Pour le moment, il y a encore un peu de travail pour finir ce projet.
                              J'avais déjà mentionné sur ce sujet, sur ce forum.

                              cdlt,
                              Shankar
                              Papy retraité mais un éternel débutant dans le monde de X-Plane (et SimVol).
                              Windows 10 64bits, i7-8700, Ram DDR4 2*16Go, GTX 1080i, NVMe SSD 500Go+ 1To, HDD 3To double écran (Z35 et Dell ~25?), XP 11.50r3 (et sauvegarde 11.41 - r1 au cas où!!)
                              Saitek : Yoke, Rudder, Throttle, Switch, Multi et Radio Panel
                              PS : N'étant pas francophone dans ma jeunesse, vous m'excuserez mes fautes d'orthographe !!!

                              Commentaire

                              Chargement...
                              X