Probleme Export.lua

Bugs, problèmes d'installation, de patch, optimisation

Topic author
-FAB-
Apprenti-Mécano
Apprenti-Mécano
Messages : 211
Inscription : 03 février 2007

Probleme Export.lua

#1

Message par -FAB- »

Bonjour ,

Je cherche désespérément a utiliser "LoGetMechInfo()" , plus précisément le parametre "gear" sans succés :sad:.
Dans l'export de FC2 on trouve :

Code : Tout sélectionner

LoGetMechInfo() -- mechanization info result_is = { gear = {status,value,main = {left = {rod},right = {rod},nose = {rod}}} flaps = {status,value} .... ..... ..... }

Quelqu'un a t'il réussi ?

Michelange
WSO Co-pilote
WSO Co-pilote
Messages : 915
Inscription : 25 septembre 2006

#2

Message par Michelange »

LoGetMechInfo() te retourne un tableau de plusieurs valeurs et en plus il contient d'autres tables.

Si une valeur particulière t'intéresse il faut la pointer, exemples :

Status_gear = LoGetMechInfo().gear.status
Left_gear = LoGetMechInfo().gear.main.left

tu peux tester le résultat obtenu en l'écrivant dans un fichier exemple :
(il faut créer un fichier test.log vide avec bloc notes dans le répertoire temp)

local file = io.open("./Temp/test.log", "w")
io.output(file)
io.write(Left_gear)
io.close()

Topic author
-FAB-
Apprenti-Mécano
Apprenti-Mécano
Messages : 211
Inscription : 03 février 2007

#3

Message par -FAB- »

Merci pour ton aide .
J'aurais du préciser que j'ai déja fait quelques essais avant de poster .

En fait , j'en suis la :

Code : Tout sélectionner

_LoGetMechInfo = _LoGetMechInfo.value) Mafonctiontest(_LoGetMechInfo.gear.value)
Ca me renvoie 1 ou 0

Par contre je n'arrive pas a intégrer "left" , "right" ou nose"
Je vais essayé comme tu me le suggere
[/b]

Code : Tout sélectionner

[B]Mafonctiontest(_LoGetMechInfo.gear.value.right)[/B][B] Mafonctiontest(_LoGetMechInfo.gear.value.nose) Mafonctiontest(_LoGetMechInfo.gear.value.left)[/B]

Topic author
-FAB-
Apprenti-Mécano
Apprenti-Mécano
Messages : 211
Inscription : 03 février 2007

#4

Message par -FAB- »

Bon je n'y arrive toujours pas :crying: .

Si j'essai ca , pas de probleme , Mafonctiontest me renvoi 0 ou 1:

Code : Tout sélectionner

Mafonctiontest(_LoGetMechInfo.gear.main) Mafonctiontest(_LoGetMechInfo.gear.status)
Par contre j'ai essayé 2, 3 trucs en rajoutant left , mais sans résultat

Code : Tout sélectionner

Mafonctiontest(_LoGetMechInfo.gear.main.left) Mafonctiontest(_LoGetMechInfo.gear.left.main) Mafonctiontest(_LoGetMechInfo.left.gear.main)
Une autre idée ?

Michelange
WSO Co-pilote
WSO Co-pilote
Messages : 915
Inscription : 25 septembre 2006

#5

Message par Michelange »

Mafonctiontest(_LoGetMechInfo.gear.main)

main devrait te renvoyer un tableau de 3 valeurs ? non ?
la valeur des rod's devraient être entre 0 et 1 (radians) du coup faut voir comment les variables sont traitées en lua et comment les tableaux sont exploitées.

Je ne suis pas expert en lua ni c++ mais je me demande s'il ne faut pas définir un tableau comme variable voir un syntaxe du type {l,r,n}= LoGetMechInfo.gear.main

Prends aussi exemple sur des scripts existants (Lotact, tactview et d'autres que tu trouveras sur Lockonfiles, et le forum de ED)

Topic author
-FAB-
Apprenti-Mécano
Apprenti-Mécano
Messages : 211
Inscription : 03 février 2007

#6

Message par -FAB- »

Michelange a écrit :Mafonctiontest(_LoGetMechInfo.gear.main)

main devrait te renvoyer un tableau de 3 valeurs ? non ?
Je pensais aussi mais ce n'est pas le cas ou alors je m'y prend mal .
je vais creuser un peu plus

EDIT 17h :
En regardant de plus pret la programmation des tables lua , je me suis inspiré de ca pour avancer sans résultat

Mes derniers essais qui ne fonctionnent pas :

Code : Tout sélectionner

Mafonctiontest(_LoGetMechInfo.gear.value.main[align=left]) Mafonctiontest(_LoGetMechInfo.gear.value.main["left"])

Topic author
-FAB-
Apprenti-Mécano
Apprenti-Mécano
Messages : 211
Inscription : 03 février 2007

#7

Message par -FAB- »

Oups , je viens de me rendre compte que j'avais oublié de poster la solution a mon probleme , désolé :

Code : Tout sélectionner

_LoGetMechInfo = LoGetMechInfo() Mafonctiontest(_LoGetMechInfo.gear.nose.rod*100) Mafonctiontest(_LoGetMechInfo.gear.main.left.rod*100) Mafonctiontest(_LoGetMechInfo.gear.main.right.rod*100)
Voila
Répondre

Revenir à « Support technique »