#1 [↑][↓] 04-07-2019 07:52:27

fwouedd
Membre
Inscription : 17-07-2017
Renommée :   

[P3D][FSX]Besoin d'aide LUA FSUIPC

Bonjour.

J'arrive pas à m'en sortir.

Je voudrais attribuer trois fonctions provenant de l'autopilote KAP140 de Milviz à mon Yoke.
Je dispose de FSUIPC en version registered, je sais comment creer un fichier en .LUA et comment l'attribuer à une touche.

Par contre, j'arrive pas du tout à remplir mes fichiers LUA de façon à "simplement" lancer les deux lvar nécessaires pour les trois fonctionnalités suivantes (copié collé de la documentation de l'AP, et y'a rien d'autre à part "LVar names to be used with FSUIPC Lua scripts:") :

-DEC100 knob = (L:KAP140_LuaDEC100_KeyDown, bool) (L:KAP140_LuaDEC100_KeyUp,bool)

-INC100 knob = (L:KAP140_LuaINC100_KeyDown, bool) (L:KAP140_LuaINC100_KeyUp,bool)

- HDG button = (L:KAP140_LuaHDG_KeyDown, bool) (L:KAP140_LuaHDG_KeyUp,bool)

J'ai essayé pas mal de trucs qui feraient certainement rigoler quelqu'un qui connait un peu la programmation. Mais du coup, j'ai vraiment besoin d'aide parce que rien ne marche.

Merci par avance.

Hors ligne

#2 [↑][↓] 04-07-2019 17:31:38

Bobonhom
Membre
Lieu : Les Laurentides Québecoise
Inscription : 24-04-2012
Renommée :   125 
Site Web

Re : [P3D][FSX]Besoin d'aide LUA FSUIPC

Déposé ton script LUA ici, on verra bien ce qui marche pas...

Dans ma Bibliothèque Voir ma signature section projet Catalina), section LVARS... Il y a beaucoup d'info...

Voilà le principe:

Le principe du script LUA dans FSUIPC


79et5g.jpg

Hors ligne

#3 [↑][↓] 04-07-2019 19:10:00

fwouedd
Membre
Inscription : 17-07-2017
Renommée :   

Re : [P3D][FSX]Besoin d'aide LUA FSUIPC

Et bien merci beaucoup. Tout fonctionne en suivant ton exemple :

-- param FWD
-- 1 = KAP140 INC100
-- 2 = KAP140 DEC100
-- 3 = KAP140 APM
-- 4 = KAP140 HDG
-- 5 = KAP140 ALT


-- 1 = KAP140 INC100
if ipcPARAM == 1 then 
    ipc.writeLvar("L:KAP140_LuaINC100_KeyDown", 1)
    ipc.sleep(10)
    ipc.writeLvar("L:KAP140_LuaINC100_KeyUp", 1)
    ipc.sleep(10)

-- 2 = KAP140 DEC100
elseif ipcPARAM == 2 then
    ipc.writeLvar("L:KAP140_LuaDEC100_KeyDown", 1)
    ipc.sleep(10)
    ipc.writeLvar("L:KAP140_LuaDEC100_KeyUp", 1)
    ipc.sleep(10)

-- 3 = KAP140 APM
elseif ipcPARAM == 3 then
    ipc.writeLvar("L:KAP140_LuaAPM_KeyDown", 1)
    ipc.sleep(10)
    ipc.writeLvar("L:KAP140_LuaAPM_KeyUp", 1)
    ipc.sleep(10)

-- 4 = KAP140 HDG
elseif ipcPARAM == 4 then
    ipc.writeLvar("L:KAP140_LuaHDG_KeyDown", 1)
    ipc.sleep(10)
    ipc.writeLvar("L:KAP140_LuaHDG_KeyUp", 1)
    ipc.sleep(10)
   
-- 5 = KAP140 ALT
elseif ipcPARAM == 5 then
    ipc.writeLvar("L:KAP140_LuaALT_KeyDown", 1)
    ipc.sleep(10)
    ipc.writeLvar("L:KAP140_LuaALT_KeyUp", 1)
    ipc.sleep(10)

end

Je sais pas ce que j'ai foutu hier soir, j'avais vu ton message et j'arrivais à rien. Et là, je relis ton explication, ça me parait d'une clarté absolue et tout fonctionne. Bon, faut que je vire l'APM, ça marche moins bien que la touche Z pour activer l'autopilote, mais c'est super.

Merci encore.

Dernière modification par fwouedd (04-07-2019 19:14:52)

Hors ligne

#4 [↑][↓] 04-07-2019 19:52:10

Bobonhom
Membre
Lieu : Les Laurentides Québecoise
Inscription : 24-04-2012
Renommée :   125 
Site Web

Re : [P3D][FSX]Besoin d'aide LUA FSUIPC

Cool!

Bravo! Et bon vol!


79et5g.jpg

Hors ligne

#5 [↑][↓] 05-07-2019 12:32:28

fwouedd
Membre
Inscription : 17-07-2017
Renommée :   

Re : [P3D][FSX]Besoin d'aide LUA FSUIPC

Si jamais ça peut faire gagner un peu de temps à quelqu'un, je pose le script complet, avec toutes les commandes (sauf l'APM qui marche mal) ici :

-- param
-- 1 = KAP140 HDG
-- 2 = KAP140 NAV
-- 3 = KAP140 APR
-- 4 = KAP140 REV
-- 5 = KAP140 ALT
-- 6 = KAP140 DOWN
-- 7 = KAP140 UP
-- 8 = KAP140 ARM
-- 9 = KAP140 BARO
-- 10 = KAP140 INC1000
-- 11 = KAP140 DEC1000
-- 12 = KAP140 INC100
-- 13 = KAP140 DEC100

-- AP button = AP_MASTER (default B key- Hold for engage)
-- HDG button = AP_HDG_HOLD (default Ctrl-H keys)
-- NAV button = AP_NAV1_HOLD (default Ctrl-N keys)
-- APR button = AP_APR_HOLD (default Ctrl-A keys)
-- REV button = AP_BC_HOLD (default Ctrl-B keys)


-- 1 = KAP140 HDG
if ipcPARAM == 1 then
    ipc.writeLvar("L:KAP140_LuaHDG_KeyDown", 1)
    ipc.sleep(10)
    ipc.writeLvar("L:KAP140_LuaHDG_KeyUp", 1)
    ipc.sleep(10)

-- 2 = KAP140 NAV
elseif ipcPARAM == 2 then
    ipc.writeLvar("L:KAP140_LuaNAV_KeyDown", 1)
    ipc.sleep(10)
    ipc.writeLvar("L:KAP140_LuaNAV_KeyUp", 1)
    ipc.sleep(10)

-- 3 = KAP140 APR
elseif ipcPARAM == 3 then
    ipc.writeLvar("L:KAP140_LuaAPR_KeyDown", 1)
    ipc.sleep(10)
    ipc.writeLvar("L:KAP140_LuaAPR_KeyUp", 1)
    ipc.sleep(10)

-- 4 = KAP140 REV
elseif ipcPARAM == 4 then
    ipc.writeLvar("L:KAP140_LuaREV_KeyDown", 1)
    ipc.sleep(10)
    ipc.writeLvar("L:KAP140_LuaREV_KeyUp", 1)
    ipc.sleep(10)
   
-- 5 = KAP140 ALT
elseif ipcPARAM == 5 then
    ipc.writeLvar("L:KAP140_LuaALT_KeyDown", 1)
    ipc.sleep(10)
    ipc.writeLvar("L:KAP140_LuaALT_KeyUp", 1)
    ipc.sleep(10)

-- 6 = KAP140 DOWN
elseif ipcPARAM == 6 then
    ipc.writeLvar("L:KAP140_LuaDOWN_KeyDown", 1)
    ipc.sleep(10)
    ipc.writeLvar("L:KAP140_LuaDOWN_KeyUp", 1)
    ipc.sleep(10)

-- 7 = KAP140 UP
elseif ipcPARAM == 7 then
    ipc.writeLvar("L:KAP140_LuaUP_KeyDown", 1)
    ipc.sleep(10)
    ipc.writeLvar("L:KAP140_LuaUP_KeyUp", 1)
    ipc.sleep(10)

-- 8 = KAP140 ARM
elseif ipcPARAM == 8 then
    ipc.writeLvar("L:KAP140_LuaARM_KeyDown", 1)
    ipc.sleep(10)
    ipc.writeLvar("L:KAP140_LuaARM_KeyUp", 1)
    ipc.sleep(10)

-- 9 = KAP140 BARO
elseif ipcPARAM == 9 then
    ipc.writeLvar("L:KAP140_LuaBARO_KeyDown", 1)
    ipc.sleep(10)
    ipc.writeLvar("L:KAP140_LuaBARO_KeyUp", 1)
    ipc.sleep(10)

-- 10 = KAP140 DEC1000
elseif ipcPARAM == 10 then
    ipc.writeLvar("L:KAP140_LuaDEC1000_KeyDown", 1)
    ipc.sleep(10)
    ipc.writeLvar("L:KAP140_LuaDEC1000_KeyUp", 1)
    ipc.sleep(10)

-- 11 = KAP140 INC1000
elseif ipcPARAM == 11 then
    ipc.writeLvar("L:KAP140_LuaINC1000_KeyDown", 1)
    ipc.sleep(10)
    ipc.writeLvar("L:KAP140_LuaINC1000_KeyUp", 1)
    ipc.sleep(10)

-- 12 = KAP140 DEC100
elseif ipcPARAM == 12 then
    ipc.writeLvar("L:KAP140_LuaDEC100_KeyDown", 1)
    ipc.sleep(10)
    ipc.writeLvar("L:KAP140_LuaDEC100_KeyUp", 1)
    ipc.sleep(10)

-- 13 = KAP140 INC100
elseif ipcPARAM == 13 then
    ipc.writeLvar("L:KAP140_LuaINC100_KeyDown", 1)
    ipc.sleep(10)
    ipc.writeLvar("L:KAP140_LuaINC100_KeyUp", 1)
    ipc.sleep(10)
end

A+.

Dernière modification par fwouedd (05-07-2019 19:21:36)

Hors ligne

Pied de page des forums