Vous n'êtes pas identifié(e).
et rebonjour a tous !
aujourdhui nous allons utiliser les subroutines !
alors une subroutine ca sert a quoi ? a utiliser plusieurs conditions pour n'en faire qu'une tout simplement
petit exemple : j'ai dans mon avion 3 reservoir de carburant ; un centrale un gauche un droit
je veux maintenant allumer une led si l'un des 3 est inferieur a 30% de sa capacité par ex ..
je vais donc utiliser une subroutine qui va analyser en permanence l'etat de mes reservoirs et declencher la led si l'un des 3 est inferieur a 30%
1- declarer les variables
je recherche comme toujours dans le sdk les offsets de capacité des reservoirs centre gauche et droit
ok ici l'offset $0B74 de longueur 4 nous donne la valeur en pourcentage du reservoir centrale
l'offset $0B7C pour le gauche et $0B94 pour le droit
on peut lire que dans la case de commande un reservoir plein a 100 % est egale a 128 multiplié par 65536
ce qui veut dire que 100% est egal a 8388608 !
maintenant petit produit en croix pour convertir cette valeur pour 30 % (retour en 5 eme ....)
ca nous donne 2516582 !
ok maintenant on sait que la valeurs qu'il faudra inscrire dans sioc sera de 2516582 pour dire 30%
c'est bon tout le monde suit??
on continue
je declare maintenant mes variables ainsi que ma led
EDIT INSERVAR
pareil pour les autres
ok c'est good jusque la !
maintenant la suite
ok maintenant nous allons faire comprendre a cette subroutine que si un des 3 reservoirs est en dessous de 30% il faut allumer l'alarme
CLIC dROIT ET NEWCOMMAND
alors ca veut dire quoi jusque la ?
LO est une variable interne comme on pourrai dire dans une equation mathematique X est egal a ?
ca permet de regrouper ici 2 valeurs ; celle du fuel centre et du droit
mais ils nous manque le fuel gauche donc continuont ...
voila donc pour finaliser tout ca L2 est egale aux trois valeurs des reservoirs
vous noterez que j'ai utilisé AND et non pas + sinon les 3 valeurs auraient été additionnées ducoup ca ne marche pas pour cette exemple
maintenant la commande d'allumage
CLIC DROIT SUR LA CONDITION IF ET NEWCOMMAND
donc voila ici si un des 3 reservoirs atteind 30% la led s'allume
maintenant le contraire
CLIC DROIT SUR LA SUBROUTINE ET NEW COMMAND
CLIC DROIT SUR ELSE ET NEWCOMMAND
RECLIC DROIT SUR LA CONDITION IF ET NEWCOMMAND
voila c'est presque fini maintenant il faut lier les variables de fuel a la subroutine
3- APPELER LA SUBROUTINE
clic droit sur les variables de fuel et newcommand
pareil pour les deux autres ..
et voilaaaa!!
ducoup on resume
ma subroutine dit que si un de mes 3 reservoirs est en dessous de 30% alors une led d'alarme s'allume et si c'est le contraire elle s'eteind.
pour lier cette subroutine au variables des reservoirs j'appel (CALL) la subroutine
les subroutines sont utiles pour plein d'autre choses comme une alarme de circuit hydraulique par exemple ....sur le meme principe
http://www.youtube.com/watch?v=2chwYMN6ZME
Hors ligne