µLua DS - Forum officiel | Official forum Forum Index

µLua DS - Forum officiel | Official forum
Le bon endroit pour en savoir plus sur MicroLua et pour parler de vos projets ! | The right place to learn more about MicroLua and talk about your projects !

 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister   ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

"Bug" avec Color

 
Post new topic   Reply to topic    µLua DS - Forum officiel | Official forum Forum Index -> Section française -> Report de bugs
Previous topic :: Next topic  
Author Message
Ced-le-pingouin


Offline

Joined: 16 Jan 2009
Posts: 559
Localisation: Belgique

PostPosted: Thu 6 Aug 2009 - 12:26    Post subject: "Bug" avec Color Reply with quote

Depuis que je teste + de scripts "réels" dans MLS, et que je dois regarder le code source de Micro Lua et uLibrary pour comprendre quand ça fonctionne pas, je découvre des choses que je ne soupçonnais pas.

En voici une première.

thermo_nono, c'est grâce à un de tes scripts que j'ai découvert ça. Dans ton CommandButton.lua (qui fait partie de Command EZ), à la ligne 49 tu as ceci:
 
Code:


 screen.drawRect(SCREEN_DOWN, Command.x1+Command.depth+1, Command.y1+Command.depth+1, Command.x2-Command.depth-1, Command.y2-Command.depth-1, 0, 0, 0)



Ca fait complètement planter mon MLS, car après les 4 coordonnées du rectangle, normalement il n'y a qu'un paramètre, une couleur. Donc de type Color. Dans mon sim, ce type, en interne, est un objet wxColour de la lib wxWidgets. Donc quand tu passes 0, Lua se plaint que le paramètre est du mauvais type...

Mais tu sais quoi? Dans le vrai Micro Lua, ton script ne provoque aucune erreur! En fait, j'ai vu dans les sources que, comme c'est souvent le cas en C, une couleur RGB est représentée en mémoire par un nombre. Donc derrière le "vrai" type Color de ML se cache en fait un nombre.


Dans ton appel, le premier 0 est donc pris comme la couleur (en entier, pas la composante rouge), ce qui équivaut à... noir! Donc malgré l'erreur de paramètre, non seulement ça plante pas, mais en plus la couleur demandée est la bonne Smile ! Si tu modifies le 2è ou le 3è zéro, je suis quasi certain que la couleur ne changera pas (ça restera noir).

Voilà voilà. Pour l'instant, dans MLS, et uniquement dans screen.drawRect(), je détecte si le paramètre "color" passé est un nombre, pour l'adapter à mon système de couleur et éviter que ton script plante. Après, si tu corriges un jour, je pourrai enlever le check, car ça permettra en MLS de voir directement qu'il y a un problème de paramètre (car erreur Lua), alors qu'en ML ça passerait (en ne faisant pas forcément ce qui est demandé toutefois, vu que les 2 nombres suivants sont ignorés par drawRect()).


Last edited by Ced-le-pingouin on Thu 6 Aug 2009 - 12:56; edited 1 time in total
Back to top
Publicité






PostPosted: Thu 6 Aug 2009 - 12:26    Post subject: Publicité

PublicitéSupprimer les publicités ?
Back to top
thermo_nono
Modérateur

Offline

Joined: 31 Dec 2008
Posts: 2,415
Localisation: La Géhenne

PostPosted: Thu 6 Aug 2009 - 12:41    Post subject: "Bug" avec Color Reply with quote

holalaa comment j'ai pu faire ça ?.. je vais essayer de corriger ça aussi vite que possible (mais pas aujourd'hui j'ai pa le temps).
merci beaucoup, et content de voir que mes codes sont lus ^^ 
_________________
“Qui reçoit une idée de moi reçoit de la connaissance sans diminuer la mienne, comme celui qui allume sa chandelle à la mienne reçoit la lumière sans me plonger dans l’obscurité.” - Thomas Jefferson


Back to top
Visit poster’s website MSN
Ced-le-pingouin


Offline

Joined: 16 Jan 2009
Posts: 559
Localisation: Belgique

PostPosted: Thu 6 Aug 2009 - 12:59    Post subject: "Bug" avec Color Reply with quote

Bah paradoxalement, pendant que je développais le gros de Micro Lua Simulator, je ne lisais quasiment aucun script. J'avais pas trop le temps et je testais des choses bien particulières avec juste quelques scripts, toujours les mêmes.

Mais maintenant que MLS devient plus utilisable et charge les scripts à la volée, je l'améliore en exécutant des scripts existants, car je trouve des bugs.

D'ailleurs, j'en profite pour te féliciter justement, ton UFO trajectory maker est vraiment très bien fait. On dirait vraiment un "produit fini" (dans le bon sens du terme "produit", pour une fois).


Back to top
thermo_nono
Modérateur

Offline

Joined: 31 Dec 2008
Posts: 2,415
Localisation: La Géhenne

PostPosted: Thu 6 Aug 2009 - 13:08    Post subject: "Bug" avec Color Reply with quote

^^ merci.. étant d'un niveau moyen en maths et notament en trigo je me suis donné beaucoup de mal pour celui là. 
Pour l'interface tactile je me suis fait plaisir : entre deux séances de trigo, j'me reposait en bidouillant l'interface.
_________________
“Qui reçoit une idée de moi reçoit de la connaissance sans diminuer la mienne, comme celui qui allume sa chandelle à la mienne reçoit la lumière sans me plonger dans l’obscurité.” - Thomas Jefferson


Back to top
Visit poster’s website MSN
thermo_nono
Modérateur

Offline

Joined: 31 Dec 2008
Posts: 2,415
Localisation: La Géhenne

PostPosted: Thu 6 Aug 2009 - 14:51    Post subject: "Bug" avec Color Reply with quote

ça y est, j'ai corrigé le code (je corrige en même temps les stylus boxes)
voici donc la v1.1 de CommandEZ
http://sites.google.com/site/microlua/Home/projets/command-ez
_________________
“Qui reçoit une idée de moi reçoit de la connaissance sans diminuer la mienne, comme celui qui allume sa chandelle à la mienne reçoit la lumière sans me plonger dans l’obscurité.” - Thomas Jefferson


Back to top
Visit poster’s website MSN
Ced-le-pingouin


Offline

Joined: 16 Jan 2009
Posts: 559
Localisation: Belgique

PostPosted: Thu 6 Aug 2009 - 15:17    Post subject: "Bug" avec Color Reply with quote

Super. Il fonctionne maintenant sans "hack" dans MLS v0.4 beta 2 Very Happy

Back to top
thermo_nono
Modérateur

Offline

Joined: 31 Dec 2008
Posts: 2,415
Localisation: La Géhenne

PostPosted: Thu 6 Aug 2009 - 16:09    Post subject: "Bug" avec Color Reply with quote

Okay
_________________
“Qui reçoit une idée de moi reçoit de la connaissance sans diminuer la mienne, comme celui qui allume sa chandelle à la mienne reçoit la lumière sans me plonger dans l’obscurité.” - Thomas Jefferson


Back to top
Visit poster’s website MSN
Display posts from previous:   
Post new topic   Reply to topic    µLua DS - Forum officiel | Official forum Forum Index -> Section française -> Report de bugs All times are GMT + 1 Hour
Page 1 of 1

 
Jump to:  

Index | Create a forum | Free support forum | Free forums directory | Report a violation | Cookies | Charte | Conditions générales d'utilisation
Powered by phpBB © 2001, 2005 phpBB Group